
ディレクトリ・トラバーサル
ディレクトリ・トラバーサルとは1
ディレクトリ・トラバーサル攻撃は、Webサーバーの非公開ファイルにアクセスをする攻撃手法です。
外部からのアクセスを想定していない「ディレクトリ(ファイルをグループ化するためのフォルダ)」内部に不正アクセスして、ファイルを閲覧したり書き換えたりするサイバー攻撃です。
ディレクトリ・トラバーサルとは2
ディレクトリ・トラバーサル攻撃はOS(ソフトウェア)の「パス(path)」の脆弱性を悪用したサイバー攻撃で、「パス・トラバーサル」とも呼ばれます。
ちなみに「脆弱性」とは、セキュリティ上のシステムの欠陥(弱点)のことです。
またIT分野におけるパス(path)は、PCに保存しているファイルまでの経路を指し、大きく分けて次の2種類があります。
● 絶対パス
● 相対パス
絶対パスとは
URLで目的のページを指定し、情報がどこに保存されているのかを示す方法です。
Googleなどのブラウザで検索したときアドレスバーに表示されるURL、つまり単純にhttps://・・・から始まるURLが「絶対パス」になります。
【例:https:// abc.com(ドメイン)/sample(ディレクトリ名)/path-01(ファイル名)】
相対パスとは
閲覧しているファイルを起点にし、閲覧したい対象のファイルがどこに保存されているのかを示す方法です。
一般的に、以下のような記述で対象のファイルにアクセスします。
対象のファイルが同一ディレクトリに存在するとき:「../ ファイル名」
対象のファイルが上位のディレクトリに存在するとき:「../ ディレクトリ名 / ファイル名」
※階層が上がるごとに「../」を増やす
(例)「../../ ディレクトリ名 / ファイル名」
被害例 WordPress1
WordPressの設定ファイルが被害に遭う事例が数多く報告されています。
「WordPress(CMS、コンテンツ管理システム)」は拡張機能(プラグイン)が豊富で、世界中で利用者の多いサービス。
しかし拡張機能には「相対パス」の脆弱性が多いため、ディレクトリ・トラバーサル攻撃の格好のターゲットになっています。
最も多い例が「WordPress」の設定ファイル「wp-config.php」への不正アクセスで、攻撃者は以下のような「相対パス」を指定します。
(例)/wp-content/plugins/プラグイン名/download.php?download_file=../../../wp-config.php
被害例 WordPress2
・情報漏えい(機密情報や個人情報)
・データ改ざん、削除
・アカウントの乗っ取り、なりすまし
対策
パラメータのファイル名が指定できないよう改善
ディレクトリ・トラバーサル攻撃では、パラメータを不正に操作し、「../」を指定してディレクトリをさかのぼって相対パスを指定することで、非公開ファイルを外部から閲覧しています。
現在、外部からのパラメータでWEBサーバー内のファイルが直接指定できる状態だと危険です。
できないような仕組みに改善すると、ディレクトリ・トラバーサル攻撃を防ぐことができます。