漏洞描述:
PHP是一種在伺服器端執行的指令碼語言,在 PHP 的 8.3.8 版本之前存在命令執行漏洞,由於 Windows 的 “Best-Fit Mapping” 特性,在處理查詢字串時,非ASCII字元可能被錯誤地對映為破折號(-),導致命令列引數解析錯誤,當 php_cgi 執行在Windows平臺上,且內碼表為繁體中文、簡體中文或日文時,攻擊者可以透過特定的查詢字串注入惡意引數,從而執行任意程式碼。
CVSS core: 9.8
FOFA查詢語句:app=“php-CGI”
漏洞危害:攻擊者可以透過特定的查詢字串注入惡意引數,從而執行任意程式碼,以至於接管伺服器。
危害等級:高
影響版本:
PHP 8.3 < 8.3.8
PHP 8.2 < 8.2.20
PHP 8.1 < 8.1.29
其他版本官方已停止維護,可根據實際情況採取相應的措施
解決方案:
1.更新到PHP官方釋出的最新PHP版本:https://www.php.net/downloads
2.對於無法升級PHP的使用者:以下重寫規則可用於阻止攻擊。需要注意的是,這些規則僅對繁體中文、簡體中文和日語語言環境起到臨時緩解作用。在實際操作中,仍然建議更新到補丁版本或遷移架構。
RеԝritеEnɡinе On
RеԝritеCоd %{QUERY_STRING} ^%аd [NC]
RеԝritеRulе .? - [F,L]
3.對於使用 XAMPP fоr Windоԝѕ 的使用者:如果確認不需要 PHP CGI 功能,可以透過修改以下 Aрасhе H
TTP Sеrvеr 配置(httpd-xampp.conf )來避免受到該漏洞的影響:
找到相應的行:ScriptAlias /php-cgi/ "C:/xampp/php/"
並將其註釋掉:# ScriptAlias /php-cgi/ "C:/xampp/php/"
此漏洞已可在Goby漏掃/紅隊版進行掃描驗證:🏴
| 點選可下載Goby漏洞掃描工具
| 獲取更多最新可驗證漏洞
| 關注Goby公眾號獲取最新漏洞情報
| 公眾號傳送暗號"加群“可加入Goby社群大家庭,與群內大佬一起交流學習,還可不定期參與社群活動獲取免費紅隊版啟用碼哦~