ディレクトリトラバーサル攻撃の対策

ディレクトリトラバーサル攻撃の対策

定義

ディレクトリトラバーサル : Directory Traversalとは、
サーバー内の非公開ディレクトリへ不正アクセスすること。攻撃されると情報漏えいや改ざんなどの被害が考えられる。

対策

基本対策

  • 非公開ディレクトリにアクセス拒否を設定(以下の例はapacheの場合) 以下の設定では、「/」以下全てのディレクトリをアクセス拒否設定した後、ドキュメントルート以下に対してすべてアクセス許可設定している。
  <Directory />
      Require all denied
  </Directory>
  <Directory /var/www/html>
      Require all granted
  </Directory>
  • httpdの実行ユーザに、非公開ディレクトリに対するOS上の参照まーミッションを与えない 以下の例では、「../private」を自分にしか参照権限を与えていない。
  $ chmod 700 ../private

入力データに対してサニタイズ処理

他の対策もあるが、上記が一番よく使われて有効な対策であろう。

参考資料