WordPress曝9.8分高危漏洞,可執行遠程代碼攻擊
GiveWP Donation插件中存在一個嚴重的安全漏洞(編號為CVE-2025-0912),該漏洞已導致超過10萬家WordPress網站面臨未經身份驗證的遠程代碼執行(RCE)攻擊風險。該漏洞的CVSS評分為9.8(嚴重),其根源在于插件在處理Donation 表單時未能正確驗證用戶輸入的數據。
漏洞詳情與利用方式
該漏洞的核心問題在于插件對Donation 表單中card_address參數的處理方式。在3.19.4及更早的版本中,插件未能對通過該字段傳遞的序列化數據進行驗證或清理,從而導致了PHP對象注入(CWE-502)問題。在處理Donation 數據時,give_process_donation_form()函數未經驗證就直接反序列化用戶輸入,使得攻擊者能夠構造惡意載荷,實例化任意PHP對象。
此外,插件代碼庫中存在可利用的POP(面向屬性編程)鏈,使得攻擊者能夠通過串聯諸如析構函數或wakeup方法等“小工具”方法,將對象注入漏洞升級為系統命令執行。據Wordfence的報告,該漏洞繞過了WordPress的安全隨機數(nonce)機制,且無需身份驗證,任何外部攻擊者均可利用。
成功利用此漏洞可能導致以下后果:
- 任意文件刪除(包括wp-config.php)
- 數據庫憑據泄露
- 通過Web shell安裝后門
潛在影響與應對措施
GiveWP插件廣泛應用于非營利組織、宗教團體和政治活動的捐贈系統中,因此受影響的網站可能面臨財務欺詐、捐贈者數據泄露以及聲譽損害等風險。攻擊者可能篡改網站內容、重定向捐贈款項,甚至部署加密貨幣挖礦程序。此外,由于該插件集成了PayPal和Stripe等支付網關,還可能導致交易系統的二次泄露。
Defiant的安全分析師警告稱,盡管修復該漏洞的3.20.0版本已經發布,但仍有超過30%的受影響網站未進行更新。新版插件通過實施嚴格的輸入驗證和移除不安全的反序列化邏輯解決了這一問題。
建議的緩解措施
網站管理員應立即采取以下行動:
- 將GiveWP插件更新至3.20.0或更高版本。
- 審計服務器日志,檢查是否存在針對/wp-json/givewp/v3/donations路徑的可疑POST請求。
- 部署Web應用防火墻(WAF)規則,阻止包含序列化數據的card_address參數。
- 監控未經授權的文件更改或新管理員用戶的創建。
對于無法立即修補的網站,暫時可通過禁用捐贈小工具或限制表單提交為經過reCAPTCHA驗證的用戶來緩解風險。
盡管目前尚未觀察到該漏洞被主動利用,但其利用簡單且影響廣泛,極有可能成為勒索軟件組織的目標。WordPress安全團隊敦促使用GiveWP插件的組織訂閱漏洞披露信息,并實施如MalCare的實時漏洞防護等原子級安全措施。
總結
鑒于WordPress驅動著全球超過43%的網站,此次漏洞再次凸顯了在非營利組織等關鍵Web基礎設施中,嚴格進行第三方插件審計和自動化補丁管理的必要性。