リモートファイルインクルードについて説明していきます。
■概要
一般的なWebアプリケーションでは、動的なページ生成を行うために外部のファイルやコンポーネントをインクルード(組み込み)する場合があります。
この際、インクルードされるファイルのパスや場所を動的に指定する場合、セキュリティ上の問題が発生する可能性があります。
■想定される被害
リモートファイルインクルードによって、以下のような被害にあう可能性があります。
どのような被害を受ける可能性があるかあらかじめ把握しておき、攻撃を受けないように対策を検討することが必要です。
・データベースへのアクセス情報の窃取
・システム上のファイルを読み取り・書き込み
・ウェブサイトの改ざん
■対策
リモートファイルインクルードの対策として挙げられるものは以下のようなものとなります。
・外部リソースのパスや場所を指定する際に、入力値の検証と適切なエスケープ処理を行う。
・インクルードするファイルのリストを明示的に指定し、それ以外の外部リソースの参照を禁止する。