最近の脆弱性 › CVE-2024-4577

PHP Group PHP のOSコマンドインジェクションの脆弱性(CVE-2024-4577)

この解説はAIを使用して作成しています。誤りを含む可能性があり、内容は保証できません。必ず公式情報をご確認ください。

基本情報(データから表示)

CVE番号CVE-2024-4577
製品PHP Group PHP
深刻度(CVSS)9.8 緊急CVSS v3.1
NVD による評価
詳細(ベクター)CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
KEVへの追加日2024-06-12
米国政府機関の対応期限2024-07-03
ランサムウェアでの悪用悪用が確認されている
弱点の種類(CWE)CWE-78

何が起きた

Windows で Apache と PHP-CGI を組み合わせて使う場合に、OS コマンドインジェクションの弱点が見つかりました。特定のコードページ(文字の割り当て表)を使う設定では、Windows の「Best-Fit」という文字の置き換えによって、ある文字が PHP のオプションとして解釈されてしまいます。その結果、スクリプトのソースコードを読まれたり、サーバー上で好きな PHP のコードを実行されたりするおそれがあります。ネットワーク経由で、ログインしていない攻撃者でも悪用でき、実際の悪用が確認され、ランサムウェアの攻撃にも使われたことが分かっています。

攻撃の流れ

データをもとに、AIを使用して作成した図です。実際の攻撃は、これと異なる場合があります。

攻撃の流れ: 1. 攻撃者が細工した文字を含む要求を送る → 2. Windows が文字を別の文字に置き換える → 3. PHP-CGI がそれをオプションと解釈する → 4. サーバー上で PHP のコードが実行される1攻撃者が細工した文字を含む要求を送る2Windows が文字を別の文字に置き換える3PHP-CGI がそれをオプションと解釈する4サーバー上で PHP のコードが実行される攻撃の流れ: 1. 攻撃者が細工した文字を含む要求を送る → 2. Windows が文字を別の文字に置き換える → 3. PHP-CGI がそれをオプションと解釈する → 4. サーバー上で PHP のコードが実行される1攻撃者が細工した文字を含む要求を送る2Windows が文字を別の文字に置き換える3PHP-CGI がそれをオプションと解釈する4サーバー上で PHP のコードが実行される

誰が影響を受ける

Windows で Apache と PHP-CGI を使っている人・組織が対象です。影響を受けるのは PHP の 8.1 系の 8.1.29 より前、8.2 系の 8.2.20 より前、8.3 系の 8.3.8 より前です。PHP の勧告では、Windows の地域が日本、中国、香港、マカオ、シンガポール、台湾の場合に影響を受けるとされています。この弱点は、以前の CVE-2012-1823 への修正をすり抜けるものです。

何をすればいい

使っている系列に応じて、8.1.29、8.2.20、8.3.8 以降に更新されているか確認してください。あわせて公式の案内を確認してください。

やることチェックリスト

用語メモ

PHP-CGI
Web サーバーから PHP のプログラムを動かすための方式の1つです。
OS コマンドインジェクション
入力に命令を紛れ込ませ、サーバーの OS に本来は許されていない命令を実行させる攻撃です。
コードページ
文字をコンピューター内の番号に割り当てるための表です。言語や地域ごとに違うものが使われます。

元データ(英語・CISA KEV より)

PHP-CGI OS Command Injection Vulnerability

概要

PHP, specifically Windows-based PHP used in CGI mode, contains an OS command injection vulnerability that allows for arbitrary code execution. This vulnerability is a patch bypass for CVE-2012-1823.

推奨対応

Apply mitigations per vendor instructions or discontinue use of the product if mitigations are unavailable.

公式情報