- 卷期:v0070
- 出版日期:2024-09-20
作者:陳思蘊 / 臺灣大學計算機及資訊網路中心資訊網路組行政專員、李美雯 / 臺灣大學計算機及資訊網路中心資訊網路組程式設計師
資安研究團隊DEVCORE於2024年6月6日通報PHP重大遠端程式碼執行漏洞(CVE-2024-4577),當時正值端午節連續假期前,且PHP為廣泛使用的開源程式語言,多個網站因此漏洞遭到加密勒索,導致此漏洞引發了大量的關注,並凸顯出網站防護為極嚴峻的挑戰。本文將介紹CVE-2024-4577漏洞的背景,並提供幾項日常防範攻擊的方法。
CVE-2024-4577漏洞背景
資安研究團隊DEVCORE於2024年6月6日通報CVE-2024-4577漏洞,因PHP程式語言在開發時未考慮到字元編碼轉換的特性,特別是在PHP的CGI模式下,利用了Windows作業系統上的「Best-Fit」功能,導致未經身分驗證的遠程攻擊者可透過特定的字元序列繞過原先CVE-2012-1823的防護,並透過參數注入攻擊在PHP伺服器上執行任意程式碼,即便PHP未設定為CGI模式,只要PHP的可執行檔(如:php.exe或php-cgi.exe)位於可存取的目錄中,該漏洞就可能被利用(參考資料[1])。
CVE-2024-4577漏洞影響範圍(Apache)
安裝於Windows作業系統上所有的PHP版本皆受此漏洞影響,詳細版本請參考以下說明。
由於PHP 8.0分支版本、PHP 7以及PHP 5官方已不再提供更新,請網站管理者盡速評估升級版本或採取修補建議。
CVE-2024-4577漏洞影響範圍(XAMPP)
除了常見的Apache與PHP的組合,所有版本的XAMPP於Windows預設安裝時也遭受此弱點影響。
CVE-2024-4577漏洞修補建議
立刻備份並升級至PHP官方最新8.3.8、8.2.20與8.1.29版本,由於PHP CGI模式已經是一種過時且易於出現問題的架構,建議評估採用較為安全的Mod-PHP、FastCGI或PHP-FPM等架構,對於無法升級的系統可透過下列方式暫時緩解弱點。
透過Rewrite規則阻擋攻擊,請注意此規則只作為繁體中文、簡體中文及日文語系中的暫時緩解機制,實務上仍建議更新至已修復版本或採用較安全的架構,如圖1。
勒索組織通常利用系統漏洞進行攻擊,網站管理者應隨時確認作業系統、軟體與所使用套件是否更新至最新的穩定版本。
為了防範駭客攻擊並保障網站安全,網站應定期進行快照或備份,即使網站不幸遭到駭客加密,仍然可以透過還原備份資料恢復網站運作。
- 上版日期:2024-09-20