SV.UNBOUND_STRING_INPUT.CIN
バインドされていない文字列入力からのバッファ オーバーフロー
複数の文字で構成される文字列をメモリのバッファにコピーするには、文字列コピー関数を使用します。strcpy 関数には、書き込まれるデータのサイズを制限する引数がないので、バッファオーバーフローが発生する場合があります。
SV.UNBOUND_STRING_INPUT.CIN チェッカーは、バッファサイズを指定しない文字列コピー関数つまり getwd() か C++ 入力を使用する関数のどちらかを呼び出すコードを探します。
脆弱性とリスク
文字列コピー関数が、サイズパラメーターなしで呼び出されると、バッファオーバーランエラーが発生することがあります。これは、アプリケーションの不安定性や、注意深く練られた攻撃ではコード挿入やその他の脆弱性につながることがあります。
軽減と防止
この脆弱性を回避するため、入力パラメーターとしてバッファサイズを使用する関数を使用するか、または strlen() のような関数で必要なバッファサイズを指定します。
関連チェッカー
外部参考資料
セキュリティトレーニング
Secure Code Warrior が提供しているアプリケーションセキュリティトレーニング教材。