Ninja Forms WordPress 插件漏洞允許網站接管和電子郵件劫持
流行的插件已安裝在超過一百萬個網站上,并且具有四個漏洞,這些漏洞允許各種嚴重的攻擊,包括網站接管和電子郵件劫持。
Ninja Forms是一個由超過一百萬個站點使用的WordPress插件,其中包含四個嚴重的安全漏洞,這些漏洞使遠程攻擊者可以接管WordPress站點并造成各種問題。
Ninja Forms使WordPress網站設計師可以使用拖放功能創建表單,而無需任何編碼技能。
這四個漏洞使特權較低的用戶(甚至只是簡單地注冊了站點的用戶)也可以進行一系列惡意活動。這包括竊聽站點電子郵件,接管管理員帳戶,將任意加載項安裝到目標站點以及將站點所有者重定向到惡意目標。
其中三個漏洞確實需要社會工程學才能成功。
漏洞1:使用SendWP插件通過身份驗證的電子郵件劫持和帳戶接管
研究人員說,第一個漏洞使擁有訂閱級或更高訪問權限的攻擊者濫用SendWP攔截所有郵件流量,包括管理帳戶的密碼重置鏈接。SendWP是電子郵件傳遞和日志記錄服務,旨在簡化使用WordPress的郵件處理。

具有訂閱者或更高權限訪問易受攻擊的WordPress站點的攻擊者可以使用自己的SendWP帳戶建立一個SendWP連接,以便將WordPress站點中的所有郵件都路由通過并登錄到攻擊者的SendWP帳戶中。
據Wordfence稱,如果被利用,最終可能會通過使用管理員帳戶修改主題/插件文件或上傳惡意主題/插件來導致遠程代碼執行和網站接管,該漏洞還帶來了9.9的CVSS評估。 10(CVE尚待解決所有錯誤)。
研究人員警告說:“到那時,他們可以監視所有通過電子郵件發送的數據,從表單提交的用戶個人識別信息(PII)到您網站上生成的報告。” “此外,如果攻擊者可以發現帳戶的用戶名,則攻擊者可能會觸發重置管理用戶帳戶的密碼。”
根據周二發布的Wordfence分析,實現這一目標并不困難。
研究人員解釋說:“為了提供此功能,該插件會注冊AJAX操作wp_ajax_ninja_forms_sendwp_remote_install。” “此AJAX操作與wp_ajax_ninja_forms_sendwp_remote_install_handler函數綁定在一起,該函數檢查是否已安裝并激活SendWP插件。如果當前未安裝該插件,則它將執行SendWP插件的安裝和激活。”
成功安裝插件后,該函數將返回注冊URL,以及client_name,client_secret,register_url和client_url。這用于向用戶顯示注冊頁面,并輕松地將其WordPress實例與SendWP連接。
“很不幸,此AJAX操作沒有功能檢查,也沒有任何隨機數保護,因此使低級用戶(例如訂戶)可以安裝和激活SendWP插件并檢索所需的client_secret密鑰根據分析,建立“ SendWP連接”。
研究人員指出,SendWP是付費的附加組件,每個站點每月花費9美元,這可能會緩解廣泛的自動化利用。
漏洞2:經過驗證的OAuth連接密鑰披露
第二個漏洞的CVSS估計值為7.7,并且存在于Ninja Forms“附加組件管理器”服務中,該服務是一個集中式儀表板,允許用戶遠程管理所有購買的Ninja Forms附加組件。
根據Wordfence的說法,攻擊者可以使用自己的帳戶為易受攻擊的WordPress網站建立OAuth連接,并能夠在他們選擇的目標網站上安裝所有購買的插件。
為了完成惡意連接,攻擊者將需要誘使站點管理員單擊特殊鏈接,以更改的AJAX操作來更新站點數據庫中的client_id參數。
分析稱:“該插件注冊了AJAX操作wp_ajax_nf_oauth,該操作用于檢索包含必需信息的connection_url(例如client_secret),以與Ninja Forms附件管理門戶建立OAuth連接。” “不幸的是,沒有對此功能進行功能檢查。”
這意味著低級用戶(例如訂戶)能夠觸發操作并檢索與儀表板建立連接所需的連接URL。研究人員說,攻擊者還可以為已經建立的OAuth連接檢索client_id。
漏洞3:跨站點請求偽造OAuth服務斷開連接
第三個漏洞是Ninja Forms附加組件管理器僅需單擊幾下即可輕松斷開已建立的OAuth連接的功能。該漏洞的CVSS等級為6.1,使其具有中等嚴重性。
攻擊者可以發送斷開當前OAuth連接的請求-Wordfence指出,這“對于網站所有者來說可能是令人困惑的體驗”。為此,他們需要制作一個合法的請求,將其托管在外部,并誘使管理員單擊鏈接或附件。
“為了提供此功能,該插件注冊了一個AJAX操作wp_ajax_nf_oauth_disconnect并綁定到函數disable()。Wordfence表示,disconnect()函數將通過刪除與數據庫中的連接設置關聯的選項來簡單地斷開已建立的連接。“很遺憾,此功能沒有隨機數保護。”
漏洞4:管理員打開重定向
OAuth連接過程中存在最后一個問題。嚴重等級為CVSS 4.8。
要利用此漏洞,攻擊者需要制作一個特殊的URL,并將重定向參數設置為任意站點,然后對管理員進行社交工程以使其單擊鏈接。如果成功,則可以將管理員重定向到外部惡意站點,該站點可能利用惡意軟件感染管理員的計算機。
“該插件注冊了一個AJAX操作wp_ajax_nf_oauth_connect,該操作已注冊到函數connect(),該函數用于在用戶完成OAuth連接過程后將網站所有者重定向回WordPress網站的Ninja Forms服務頁面,”分析。“默認情況下,此函數使用wp_safe_redirect將網站所有者重定向回admin.php?page = ninja-forms#services頁面。”
但是,問題是可以將“ redirect”參數換成不同的值,從而將站點管理員重定向到該參數中提供的任意URL。
研究人員解釋說:“重定向URL上沒有任何保護措施可以驗證重定向的位置,也沒有任何保護措施可以防止攻擊者使用該功能將站點管理員重定向到惡意位置。” “雖然使用了wp_verify_nonce(),但已將其注釋掉并使其無法使用。”
插件的母公司Saturday Drive已修補了所有漏洞,已在3.4.34.1版中修復。
WordPress插件安全問題
WordPress插件仍然存在嚴重漏洞。今年1月,研究人員警告一個名為Orbit Fox的WordPress插件中的兩個漏洞(一個嚴重),攻擊者可以利用該漏洞將惡意代碼注入易受攻擊的網站和/或控制網站。
同樣在1月份,WordPress網站用于構建新聞訂閱的彈出廣告的名為Popup Builder –響應式WordPress彈出–訂閱和新聞通訊插件的開發人員發布了一個嚴重漏洞。攻擊者可能利用此漏洞發送帶有自定義內容的新聞通訊,或者刪除或導入新聞通訊訂閱者。