當前位置:
首頁 > 最新 > 看我如何利用兩個漏洞實現雅虎郵箱通訊錄信息獲取

看我如何利用兩個漏洞實現雅虎郵箱通訊錄信息獲取

前段時間,我利用了XSS和CORS錯誤配置兩個漏洞實現了對雅虎郵箱用戶的通訊錄信息竊取,這些相關信息包括:受害者姓名、電話號碼和住址等。在此,我來詳細說說整個過程。

跨域資源共享CORS

跨域資源共享(CORS)策略是一種利用附加HTTP頭標記,讓用戶代理獲得不同域伺服器上對特定資源訪問許可權的機制。但出於保護用戶信息安全的目的,大多瀏覽器都會實施「同源策略」(Same Origin Policy)機制,所謂「同源策略」指的是不同源的客戶端腳本在沒有明確授權情況下,不允許讀寫對方的資源,也即網站上的數據只允許相同域名和埠訪問。因此,配置了跨域資源共享(CORS)策略之後,就能實現跨域數據訪問。

跨站腳本漏洞XSS(Cross Site Scripting)

XSS一種客戶端代碼注入方式,利用這種方式可在有漏洞的應用中注入如javascript等運行腳本,實現惡意目的。

研究人員用Burp Suite對*.yahoo.com子域名的不同請求進行了分析,發現一個很有趣的子域名proddata.xobni.yahoo.com,記錄的請求很少,但是都是請求的endpoint都相同——https://proddata.xobni.yahoo.com/v4/contacts。該endpoint含有聯繫人目錄中的每一個聯繫人,而且帶有Access-Control-Allow-Credentials: true的源https://mail.yahoo.com被反射回Access-Control-Allow-Origin。研究人員嘗試修改origin為不同的payload但是並沒有效果,因此研究人員用一個雅虎的子域名替換了該payload。

我利用Burp Suite對*.yahoo.com子域名進行了枚舉之後,發現了一個有意思的域名- proddata.xobni.yahoo.com,雖然該域名涉及的請求不多,但都指向了同一個服務端:https://proddata.xobni.yahoo.com/v4/contacts,該服務端中包含了利用GET請求測試的所有通訊錄聯繫人信息。

我注意服務端響應中包含了Access-Control-Allow-Origin源為https://mail.yahoo.com,且Access-Control-Allow-Credentials: true的頭信息,由此,我嘗試對Access-Control-Allow-Origin源作出一些修改訪問,但可惜一個都成功,之後,我試著把其更改為與mail.yahoo.com不同的其它雅虎子域名。如下:

curl 『https://proddata.xobni.yahoo.com/v4/contacts『 -s -H 『Origin: https://hackerone-cdl.yahoo.com『 —head

得到的響應為:

Access-Control-Allow-Origin: https://hackerone-cdl.yahoo.com

Access-Control-Allow-Methods: GET,POST,PUT,DELETE,OPTIONS

Access-Control-Allow-Credentials: true

從上述信息可知,它可以接受任何.yahoo.com子域名為源,且Access-Control-Allow-Credentials為true,這也說是說,如果在.yahoo.com中發現了XSS漏洞,那麼就可以利用這種CORS錯誤配置漏洞來竊取用戶的通訊錄信息了。Access-Control-Allow-Credentials 頭指定了當瀏覽器的credentials設置為true時是否允許瀏覽器讀取response的內容,具體參考:developer.mozilla

漏洞2: 雅虎郵箱(Yahoo! Mail)服務的XSS漏洞

現在,尋找雅虎XSS漏洞成了關鍵,但遺憾的是,經過好多天的嘗試分析,我也沒有發現一個有效的XSS。之後,通過Twitter發貼信息,我發現安全研究人員Enguerran Gillier (@opnsec) 發現了一個雅虎郵箱相關且暫不修復(wontfix)的複製粘貼型XSS漏洞。於是乎,我馬上通過其給出的POC信息,結合漏洞1作出了一些測試分析。儘管最終利用方式存在一些用戶交互條件,但不管這麼多了,只要證明漏洞存在就好。(PS:後來通過向雅虎提交了漏洞我才發現,由於Enguerran Gillier與Yahoo方面存在一些溝通問題,所以才導致該XSS漏洞被Yahoo方面標記為暫不修復(wontfix)狀態,我是有多幸運啊!)

最終利用方式(PoC)

以下為我的最終PoC,需要受害者用戶登錄雅虎郵箱,之後複製以下頁面中的任意信息,然後粘貼到新建發信正文中,此後,受害者用戶雅虎郵箱中的所有通訊錄信息就會通過61315埠自動發送到我的控制端中:

視頻:

https://www.youtube.com/embed/lK23tBEVKxU

漏洞報送進程

2017.11.8 通過HackerOne向雅虎報送漏洞

2017.11.9 雅虎初次確認分類並發放前期$150美金獎勵

2017.11.15 雅虎方面修復漏洞

2017.12.10 雅虎方面又向我發放了 1850 美元的後期獎勵 (共 2000 美金)

*參考來源:sxcurity,freebuf小編clouds編譯,轉載請註明來自FreeBuf.COM


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 FreeBuf 的精彩文章:

廠商紛紛建議用戶暫停spectre和meltdown相關更新

TAG:FreeBuf |