OSコマンドインジェクション

2021-12-21 (火) 13:12:44

OSコマンドインジェクション とは

名称

  • OS Command Injection

概要

  • WebページのフォームにOSコマンドを含めた不正な入力データを与えることで、サーバ上のファイルへの不正なアクセス等を実行させる攻撃。
  • プログラミング言語ごとに用意されているOSコマンドを実行するための関数を使っている場合に、OSコマンドインジェクションの脆弱性があると悪用される。

対策

  • OSコマンドを呼び出す関数を使わない。
  • OSコマンドを呼び出す関数を使う場合
    • 入力可能な文字を制限する
    • 制限外の文字が入力された場合はエラーとする(エスケープ処理は行わない)
  • WAFを使う。

OSコマンドを呼び出す関数

  • Perl
    • exec()
    • open()
  • PHP
    • exec()
    • passthru()
    • proc_open()
    • shell_exec()
    • system()
  • Python
    • os.system()
    • os.popen()

関連サイト

関連用語