
Dockerベースのラボ環境。ApacheとPHP 8.1.2をCGIモードで使用し、PHP-CGIの引数インジェクション脆弱性であるCVE-2024-4577を研究するためのものです。
環境ブループリント
OSコンテナ: ubuntu:22.04 (Windows WSL2 上で実行中)。
Webサーバーレイヤー: mod_actions、mod_cgi、mod_cgid をメインの apache2.conf にグローバルに強制設定した Apache2。
言語インタープリター: PHP 8.1.2 は CGI/FastCGI モード (Server API) でのみ厳密に実行。
ファイルアーキテクチャ: 実行コード (index.php) とシミュレートされたチャレンジアセットをホストする機能的な app/ ディレクトリ。
調査対象のコア脆弱性メカニズム
対象の欠陥 (CVE-2024-4577): 認証されていないパラメータが php-cgi 実行エンジンに直接渡されるシステムを標的とする引数インジェクションの問題。
OSエンコーディング制約: ラボはレガシーCGI処理パスを正常に実証しますが、プラットフォームの違いを浮き彫りにします。実際のエクスプロイトは Windows Best-Fit マッピング (CP936 や CP950 などのコードページが Web アプリケーションのチェック後にソフトハイフンを標準ハイフンとして解釈する仕組み) に依存します。コンテナが Ubuntu/UTF-8 ベースラインで実行されるため、その特定の文字変換手法に対してネイティブに免疫があります。
