WordPress上的PHP Everywhere插件曝出三個高危RCE漏洞
Bleeping Computer 報導稱:安全研究人員在WordPress 的“PHP Everywhere”插件中發現了三個嚴重的遠程代碼執行(RCE)漏洞,導致全球超過3 萬個使用該插件的網站都受到了影響。據悉,該插件旨在方便管理員在頁面、帖子、側邊欄、或任何Gutenberg 塊中插入PHP 代碼,並藉此來顯示基於評估的PHP 表達式的動態內容。
Wordfence 安全分析師指出,CVSS v3 評分高達9.9 的這三個漏洞,可被貢獻著或訂閱者所利用,且波及2.0.3 及以下的所有WordPress 版本。
首先是CVE-2022-24663:
只需發送帶有’短代碼’參數設置的PHP Everywhere 請求,任何訂閱者都可利用該RCE 漏洞,並在站點上執行任何PHP 代碼。
其次是CVE-2022-24664:
貢獻者可藉助插件的元框來利用該RCE 漏洞,前提是創建一則帖子,添加一個PHP 代碼元框,然後進行預覽。
然後是CVE-2022-24665:
具有edit_posts 權限、並可添加PHP Everywhere Gutenberg 塊的貢獻者們,都可利用該RCE 漏洞。
在易受攻擊的插件版本中,PHP Everywhere 並未默認指定’僅管理員權限’可用的安全設置,結果留下了這一隱患。
儘管後兩個漏洞因需要貢獻者的權限級別而不那麼容易被利用,但首個漏洞還是讓業界感到驚詫不已。
舉個例子,只要某個用戶在網站上以’訂閱者’的身份登錄,便足以獲得相應的權限來執行惡意PHP 代碼。
不論怎樣,可在網站上執行任意代碼,都可能導致整個站點被攻擊者所接管—— 這也是所有網站安全事故中最糟糕的一種情況。
截圖(來自:Wordfence)
在2022 年1 月4 日發現了上述漏洞字後,Wordfence 團隊很快就向PHP Everywhere 作者通報了此事。
廠商於2022 年1 月10 日發布了3.0.0 版安全更新,由於需要大量重寫代碼,所以版本號也發生了重大改變。
尷尬的是,儘管開發者行動迅速,但網站管理員普遍不怎麼會定期更新其WordPress 網站和插件。
由WordPress.org 分享的統計數據可知,自Bug 修復方案推出以來,3 萬次安裝中只有1.5 萬次更新了插件。
有鑑於此,考慮到三個RCE 漏洞的嚴重性,我們在此強烈建議所有PHP Everywhere 用戶確保其已升級到最新可用的3.0.0 版本。
需要注意的是,如果你在站點上使用了經典編輯器,則需要先卸載該插件、並找到替代解決方案,以在其組件上託管自定義的PHP 代碼。
因為PHP Everywhere 的3.0.0 版本僅支持基於Block 編輯器的PHP 片段,且作者不大可能致力於恢復落後的Classic 功能。