信頼できない値が配列添字として使用されています。
入力操作などにより、値が外からプログラムに投入された場合、"tainted" (信頼できない) ものとみなされます。セキュリティー攻撃では、しばしば悪意のあるユーザーにより、プログラムのエントリーポイントに変わった値が配置されるため、信頼できない値には注意する必要があります。この診断では、信頼できない値が配列添字として使用されています。これにより、悪意のあるユーザーは境界違反を引き起こすことができます。
値を使用する前にチェックされていることが明らかな場合は、信頼できないものとして認識されません。
ID |
問題箇所 |
説明 |
---|---|---|
1 |
メモリー読み取り |
信頼できない値が使用された場所 |
2 |
呼び出し位置 |
信頼できない値が取得された呼び出し |
int myArray[10]; int main(int argc, char **argv) { int index = atoi(argv[1]); return myArray[index]; // bad: index is unvalidated value }
© 2010 Intel Corporation. 無断での引用、転載を禁じます。