ZDNet從威脅情報公司「壞包」(Bad packet)那裡了解到,現代版本的PHP程式語言中最近修補的一個安全缺陷正在被用於接管伺服器。該漏洞是PHP 7中的遠程代碼執行(RCE), PHP 7是PHP的較新分支,PHP是用於構建網站的最常用程式語言。這個問題被稱為CVE-2019-11043,它允許攻擊者僅通過訪問一個特製的URL就可以在伺服器上運行命令。利用這個漏洞並不重要,本周早些時候,GitHub上發布了公開的概念驗證的利用代碼。
「GitHub存儲庫中包含的PoC腳本可以通過發送特別製作的請求來查詢目標web伺服器,以確定它是否容易受到攻擊,」成立公司的高級安全響應經理Satnam Narang說。「一旦一個脆弱的目標被識別出來,攻擊者就可以通過添加『?a='在一個脆弱的web伺服器的URL。"- ice (@ice43396118) 2019年10月24日
只有NGINX伺服器受到影響
幸運的是,並非所有支持php的web伺服器都受到影響。只有啟用了PHP-FPM的NGINX伺服器是脆弱的。PHP- fpm,或FastCGI進程管理器,是另一種具有一些附加功能的PHP FastCGI實現。然而,儘管PHP- fpm不是Nginx安裝的標準組件,一些web託管提供商將其作為其標準PHP託管環境的一部分。
其中一個例子是網絡主機提供商Nextcloud,它在10月24日(周四)向客戶發布了一份安全建議,敦促客戶將PHP更新到最新版本7.3.11和7.2.24,這兩個版本是在同一天發布的,包含了CVE-2019-11043的補丁。許多其他的虛擬主機提供商也被懷疑運行脆弱的Nginx+PHP-FPM組合。但是也有一些網站所有者由於技術限制不能更新PHP或者不能從PHP- fpm切換到另一個CGI處理器。
發現PHP7 RCE的Wallarm公司的這篇博客文章介紹了網站管理員如何使用標準的mod_security防火牆工具來阻止網站url中的%0a (newline)字節,並防止任何攻擊。Wallarm公司稱讚其安全研究員安德魯·達諾在上個月的「奪旗」(CTF)比賽中發現了這個漏洞。由於公共PoC代碼的可用性和利用這個bug的簡單性,建議網站所有者檢查伺服器設置,如果他們運行了易受攻擊的配置,則應儘快更新PHP。