英國安全公司 Secarma 的研究主管 Sam Thomas 本月在 Black Hat 和 BSides 安全會議上展示了 PHP 程式語言的安全漏洞,並指出該漏洞影響了所有接受使用者資料的 PHP 應用程式和庫,包括 WordPress 等內容管理系統(CMS),並將允許遠端程式攻擊。
序列化(Serialization)與反序列化(Deserialization)是所有程式語言都具備的功能,序列化將物件轉換為字串,以將資料遷移到不同伺服器,服務或應用程式上,然後通過反序列將字串還原到物件。
安全研究員 Stefan Essar 在 2009 年就透露了 PHP 中反序列化黑客控制的資料帶來的風險,而相關的漏洞不僅存在於 PHP 中,還存在於其他程式語言中。
Thomas 公佈的是 PHP 的新攻擊技術,可用於各種場景,例如 XML External Entity(XEE)漏洞或伺服器端偽造請求(SSFR)漏洞等。
Thomas 表示,過去外界認為 XXE 漏洞帶來的最大問題是資訊外洩,但現在可出發程式執行。相關攻擊分為兩個階段。 首先,將包含惡意物件的 Phar 存檔上傳到攻擊目標的本地檔案系統,然後觸發一個基於 phar:// 的檔案操作,就可能導致惡意程式執行。
Thomas 已利用 PHP 的反序列化程式成功攻擊了 WordPress 與 Typo3 內容管理平臺,以及 Contao 所採用的 TCPDF 庫。
來源:開源中國