黑客利用WordPress插件漏洞控制數百萬網站

用心做分享,只為給您最好的學習教程

如果您覺得文章不錯,歡迎持續(xù)學習

近期,黑客頻繁利用WordPress插件中的關鍵漏洞,從而控制數百萬個網站。

該漏洞的嚴重性評級為8.8(滿分為10),存在于Elementor Pro中。高級插件 在超過1200萬個由WordPress內容管理系統(tǒng)的網站上運行。

Elementor Pro允許用戶使用各種工具創(chuàng)建高質量的網站,其中之一是WooCommerce,一個單獨的WordPress插件。該漏洞使得,任何在站點上擁有帳戶的人(例如訂閱者或客戶)都可以創(chuàng)建具有完全管理員權限的新帳戶。

該漏洞是由安全公司NinTechNet的研究員杰羅姆Bruandet發(fā)現的。上周,Elementor Pro插件的開發(fā)商Elementor 釋放 版本3.11.7,修補了該漏洞。Bruandet寫道:經過身份驗證的攻擊者可以利用該漏洞,通過啟用注冊(users_can_register )并將默認角色( default_role )設置為“administrator”來創(chuàng)建管理員帳戶,更改管理員電子郵件地址( admin_email ),或者如下所示,通過更改siteurl 在許多其他可能性中:

MariaDB [example]> SELECT * FROM `wp_options` WHERE `option_name`='siteurl';

+-----------+-------------+------------------+----------+

| option_id | option_name | option_value? ? | autoload |

+-----------+-------------+------------------+----------+

|? ? ? ? ? ? 1 | siteurl? ? | https://evil.com | yes? ? |

+-----------+-------------+------------------+----------+

1 row in set (0.001 sec)

現在,一家獨立的安全公司PatchStack的研究人員報告該漏洞正在被積極利用。攻擊來自各種IP地址,包括:

193.169.194.63

193.169.195.64

194.135.30.6

……

上傳到受感染站點的文件通常具有以下名稱:

wp-resortpack.zip

wp-rate.php

lll.zip

被入侵網站的URL經常被更改為:

這個被破壞的訪問控制漏洞源于Elementor Pro使用了“elementor-pro/modules/woocommerce/module.php”組件。當WooCommerce運行時,此腳本注冊以下AJAX操作:

/**

* Register Ajax Actions.

*

* Registers ajax action used by the Editor js.

*

* @since 3.5.0

*

* @param Ajax $ajax

*/

public function register_ajax_actions( Ajax $ajax ) {

? // `woocommerce_update_page_option` is called in the editor save-show-modal.js.

? $ajax->register_ajax_action( 'pro_woocommerce_update_page_option', [ $this, 'update_page_option' ] );

? $ajax->register_ajax_action( 'pro_woocommerce_mock_notices', [ $this, 'woocommerce_mock_notices' ] );

}

and

/**

* Update Page Option.

*

* Ajax action can be used to update any WooCommerce option.

*

* @since 3.5.0

*

* @param array $data

*/

public function update_page_option( $data ) {

? update_option( $data['option_name'], $data['editor_post_id'] );

}

update_option函數“應該允許管理員或商店經理更新一些特定的WooCommerce選項,但用戶輸入沒有經過驗證,并且該函數缺乏功能檢查,只能將其訪問限制為高權限用戶,”Bruandet解釋說。他接著說:Elementor使用自己的阿賈克斯處理程序來管理其大部分AJAX操作,包括 pro_woocommerce_update_page_option ,與全局 elementor_ajax 行動。它位于免費版本的“elementor/core/common/modules/ajax/module.php”腳本中(運行Elementor Pro需要該腳本):

/**

* Handle ajax request.

*

* Verify ajax nonce, and run all the registered actions for this request.

*

* Fired by `wp_ajax_elementor_ajax` action.

*

* @since 2.0.0

* @access public

*/

public function handle_ajax_request() {

? if ( ! $this->verify_request_nonce() ) {

? ? ? ? $this->add_response_data( false, esc_html__( 'Token Expired.', 'elementor' ) )

? ? ? ->send_error( Exceptions::UNAUTHORIZED );

? }

? ...

最后,請所有正在使用Elementor Pro的管理員,請確保運行的是3.11.7或更高版本,避免受到此次攻擊。同時,檢查網站是否有上述PatchStack帖子中列出的感染跡象,如果有任何跡象證明被更改或者入侵,請及時處理。

本文僅作技術分享 切勿用于非法途徑如果您對文中的軟件或者技術感興趣歡迎交流

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容