コンテンツへスキップ
uencoder

LFI

ローカルファイルインクルージョン(LFI)は、攻撃者がファイルパスのパラメータを操作し、サーバに意図しないローカルファイルを読み込ませる脆弱性である。

目的

制御可能なファイルパスによって生じる LFI とその防御を理解する。PHP の include などでよく見られる脆弱性である。

メカニズム

プログラムが include($_GET[page]) でユーザ指定のファイルを読み込む際、攻撃者は ../../etc/passwd を入力してシステムファイルを読み出す。防御策はパスのホワイトリスト、basename の使用、open_basedir の設定である。

ユースケース

  • PHPのファイルインクルージョンのセキュリティ
  • パストラバーサルへの防御
  • 機密ファイルの保護

関連ツール

References