Hsinchu, Taiwan – Jun 19, 2024 – 台湾の有名なサイバーセキュリティ研究者、オレンジ・ツァイ氏が、アジア中の多数のシステムに影響を与える重大なPHP脆弱性、CVE-2024-4577を発見しました。この脆弱性は、特に繁体字中国語(コードページ950)、簡体字中国語(コードページ936)、および日本語(コードページ932)のロケールで設定されたMS-Windows環境に対して重要です。PHPがこれらのロケールでCGIとして設定されている場合、この脆弱性はリモートコード実行を可能にする可能性があり、大きな脅威となっています。

PHPチームは、CVE-2024-4577が公表される前に、新しいバージョンをリリースすることでこの脆弱性に迅速に対応しました。しかし、多くの組織はまだPHPのバージョンをアップグレードしておらず、そのシステムは依然として脆弱なままです。ハッカーは、CVE-2024-4577を悪用するための自動化プログラムを開発し、アジア諸国全域で未更新のシステムをスキャンしています。

PHPベースのウェブアプリケーションを開発するためには、通常、ウェブサーバー、PHP、およびデータベースを設定する必要があります。しかし、これらのコンポーネントをインストールして設定することは非常に複雑です。そのため、Apache Web Server、MariaDB、PHP、およびPerlを統合した便利なオープンソースプロジェクトであるXAMPPのようなものがあります。これにより、単一のインストールで4つのソフトウェアパッケージすべてがインストールおよび設定され、すぐに使用可能になります。XAMPPはMS-Windows環境で非常に人気があります。しかし、XAMPPのデフォルト設定はCVE-2024-4577を悪用する攻撃に対して脆弱です。アジアのMS-Windowsシステム上の他のPHPインストールも脆弱である可能性があります。したがって、この脆弱性は重大な影響を及ぼしています。

Lionicの侵入防止シグネチャは、CVE-2024-4577を効果的に防御できます。以下は、Lionic社によるCVE-2024-4577の監視状況です。

CVE-2024-4577の公表後、この脆弱性に対処する侵入防止シグネチャの検出率が大幅に増加しました。

Proof of Concept

以前、CVE-2012-1823や他のいくつかのセキュリティレポートは、CGIモードで使用される際のPHPの不適切なオプションによるセキュリティ脆弱性を明らかにしました。

例えば、PHPコマンドラインの「-s」オプションは、HTML構文のハイライト付きソースコードを出力します。CVE-2012-1823以前は、次のURLが「index.php」のソースコードを表示し、実行する代わりにその内容を表示しました。

http://www.example.com/index.php?-s

これを解決するために、CVE-2012-1823が報告され、CGIモードでのハイフン「-」オプションを拒否するようにPHPが修正されました。

しかし、MS-WindowsがUnicodeをASCIIに変換する際に Best-Fit メソッドを使用するため、CVE-2024-4577はハイフン「-」を伝達できるセキュリティホールを発見しました。具体的には、ハイフン「-」のASCII値は0x2Dです。驚くべきことに、このコンテキストでは0xADが0x2Dとして解釈されますが、PHPによって拒否されません。

これにより、以前の脆弱性が再度導入され、さまざまな攻撃手法が可能になります。例えば、以下のトリックはHTTP POSTリクエストを使用して、PHPを介して人気のあるMS-Windowsコマンド「dir」を実行することができます。

POST /index.php?%add+allow_url_include%3don+%add+auto_prepend_file%3dphp%3a//input HTTP/1.1
Host: example.com
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 31

<?php echo shell_exec("dir"); ?>

ご覧の通り、ハッカーは無害な「dir」コマンドを他の有害なコマンドに置き換えることができます。

Lionic Actions

現在、Lionicの最新の侵入防止シグネチャはCVE-2024-4577を防御する能力を持っています。以下は、この脆弱性に関連する侵入防止ルールの一部のリストです。

Rule ID Description
8101535 PHP-CGI Query String Parameter Injection

 

Conclusion

MS-Windowsシステムで英語、韓国語、西ヨーロッパなど他のロケールを使用している場合、さまざまなPHP使用シナリオが存在するため、すべての潜在的な攻撃経路を特定して対策することは困難です。CVE-2024-4577や他の未発見の脆弱性がこれらのロケールにまだ存在する可能性があります。最大限の保護を確保するためには、可能な限り最新のPHPバージョンにアップグレードすることが強く推奨されます。

ソフトウェアを最新バージョンに更新することは常に脆弱性を修正する最良の方法です。しかし、Lionicは最新のシグネチャを搭載した Pico-UTMTera-UTMDual Ark-UTM を提供し、「Virtual Bug Fix」ソリューションとしています。これらのネットワークセキュリティ製品により、ユーザーはシステムをパッチするために必要な時間を取りながら保護された状態を維持できます。

ネットワーク管理者がサイバーセキュリティを真剣に考え、システム内の脆弱性について常に情報を得ることは非常に重要です。脆弱性の修正に常に心を砕くことなく、サーバーを保護したいネットワーク管理者は、Lionicのセキュリティ製品を採用し、強固かつタイムリーな保護を確保することができます。

 

References:

  1. “Security Alert: CVE-2024-4577 - PHP CGI Argument Injection Vulnerability”, https://devco.re/blog/2024/06/06/security-alert-cve-2024-4577-php-cgi-argument-injection-vulnerability-en/
  2. “CVE-2024-4577”, https://nvd.nist.gov/vuln/detail/CVE-2024-4577

 

Lionicについて

Lionic Corporationは、ディープ・パケット・インスペクション(Deep Packet Inspection、DPI)ソリューションを提供する世界的な企業です。Lionicの技術はDPIソフトエンジンとDPI技術を基に製作したアプリケーションと二種類が含まれます。アプリケーションはサイバーセキュリティソリューション(アンチウィルス、不正侵入防止、マルウェアサイト防止を含まれ)とコンテンツ管理ソリューション(アプリケーション認識、デバイス認識、アプリケーションベースのQoS、Webコンテンツフィルタリング、親子制御を含まれ)と含まれます。Lionicのセキュリティ、コンテンツ管理ソリューション、クラウドベースのスキャンサービス、シグネチャサブスクリプションサービスは、すでに世界中に広がっています。