このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
システム関数の安全でない呼び出し
サニタイズされていないコマンド引数には悪用可能な脆弱性が含まれる
説明
この欠陥は、処理系定義のコマンド プロセッサを呼び出す関数を使用した場合に発生します。これらの関数には以下が含まれます。
C 標準関数
system()
。POSIX 関数
popen()
。Windows® 関数
_popen()
および_wpopen()
。
リスク
コマンド プロセッサを呼び出す関数の引数がサニタイズされていない場合、悪用可能な脆弱性の原因になる可能性があります。攻撃者は任意のコマンドを実行したり、システム上の任意の場所にあるデータを読み取ったり変更したりできます。
修正方法
コマンド プロセッサを呼び出す system
ファミリ関数を使用しないようにします。代わりに、POSIX の execve()
や WinAPI の CreateProcess()
など、より安全な関数を使用します。
例
結果情報
グループ: セキュリティ |
言語: C | C++ |
既定値: オフ |
コマンド ライン構文: UNSAFE_SYSTEM_CALL
|
影響度: High |
バージョン履歴
R2017b で導入