溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎樣發現雅虎郵箱APP的存儲型XSS漏洞

發布時間:2021-12-23 10:23:30 來源:億速云 閱讀:261 作者:柒染 欄目:數據安全

本篇文章為大家展示了怎樣發現雅虎郵箱APP的存儲型XSS漏洞,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

漏洞情況

我測試的對象是 Yahoo! Mail iOS APP應用,也就是雅虎郵箱的iOS版本,在該APP應用程序的xml文件中存在一個存儲型XSS漏洞。攻擊者可以利用XML特性構造任意HTML/Javascript代碼嵌入郵件,在該APP用戶打開郵件時,都可以實現這種任意代碼渲染呈現,極端點來說,利用XML的實體擴展攻擊,可以形成DoS攻擊,造成APP服務崩潰。

XML實體擴展攻擊:XML Entity Expansion實現,通過在XML的DOCTYPE中創建自定義實體的定義實現,比如,這種定義可以在內存中生成一個比XML的原始允許大小大出很多的XML結構,用它來使這種攻擊得以耗盡網絡服務器正常有效運行的必需內存資源。

漏洞分析

漏洞初報

在任意的雅虎郵箱登錄網頁或客戶端中登錄進入你的雅虎郵箱,然后上傳以下樣式的一個xml文件作為郵件附件,之后,把這封帶以下 yahoo-xss.xml 附件的郵件,發送到你自己的雅虎郵箱或另一雅虎測試郵箱中去。

<?xml version=”1.0″ encoding=”utf-8″?>
<svg xmlns=”http://www.w3.org/2000/svg”>
<script>prompt(document.location)</script>
</svg>

用雅虎郵箱iOS客戶端(Yahoo! Mail iOS APP),進入你的收件測試雅虎郵箱,查看 yahoo-xss.xml 附件,打開它,看看是否有XSS反應。結果是當然有的,會嚇了你一跳。如下:

怎樣發現雅虎郵箱APP的存儲型XSS漏洞注意:我也搞不懂啥原因,雅虎郵箱iOS應用中的XML渲染機制非常怪異危險。如果你收到包含以上yahoo-xss.xml 附件的多個附件,那么,即使你打開其它附件的時候,這個 yahoo-xss.xml 觸發的存儲型XSS都會解析跳出。

我匆匆忙忙地上報了這個漏洞,以下是雅虎安全團隊人員在HackerOne上給我的回應:

怎樣發現雅虎郵箱APP的存儲型XSS漏洞到了這步,接下來我要做的就是想辦法來最大化利用這個漏洞,看看能對雅虎郵箱iOS應用形成什么比較壞的安全威脅和影響。但無奈我一時半會也沒什么頭緒,只好先放一放。

漏洞續報

后來有一天,我突然想到了一種提升漏洞利用且安全無害的方法,那就是我可以用HTTP請求,像“GET”方式一樣,嘗試對本地APP客戶端資源進行獲??!BingGo!我一試,真成了!我可以用這種方法獲取到雅虎郵箱iOS應用的整個緩存數據,其中包括用戶cookie、通訊錄列表、郵件內容等等。

漏洞利用復現

首先,在任意雅虎郵箱網頁或客戶端中登錄你的雅虎郵箱賬戶,上傳一個如下包含如下代碼的XML文件,然后,把它作為附件發送到你的另外一個測試雅虎郵箱中(受害者郵箱)。

怎樣發現雅虎郵箱APP的存儲型XSS漏洞在你的雅虎測試郵箱中打開這個收到的XML附件,基于上面我提到的那個“怪異”的XML解析原因,這里可以想像一種情況:當攻擊者向你發送了一個PPT文檔,但在附件中也附加了以上那個可以觸發XSS的XML文件,那么,當你打開收到的PPT文檔時,這個XML文件也就會同時觸發XSS反應。也就是說,無論你有多少個附件(包括視頻附件),只要包含以上那個XML附件,你打開其它任何一個附件,都會奇怪地觸發XML文件中XSS漏洞。

利用該漏洞,構造key.xml,我可以獲取受害者郵箱中包括發送者、接收者和聯系人在內的通訊錄信息。在XML附件代碼中,XSS漏洞會首先顯示客戶端的瀏覽器版本信息,然后是定位文件位置,再之后是獲取郵件列表信息(這里看網速,估計需要30秒左右的時間)。之后,點擊key.xml的OK之后,郵件列表信息就通過GET方式回傳給攻擊者了,像下圖這樣。我是在內部局域網中做的測試,我的Server接收端用nc -lvvv 8090開啟了8090端口監聽:

怎樣發現雅虎郵箱APP的存儲型XSS漏洞利用該漏洞,構造cachedbpost.xml,我可以獲取受害者的Cookie信息。點擊cachedbpost.xml的OK之后,整個Cache.db文件就會通過POST方式回傳給攻擊者,如下圖所示。我在內部局域網中做的測試,我的Server接收端用nnc -lvvv 8090 > yahoo.db命令開啟了8090端口監聽,并把Cache.dbd存儲為yahoo.db:

怎樣發現雅虎郵箱APP的存儲型XSS漏洞收到完整的Cache.db文件之后,我們把其中的標題頭內容過濾,用以下命令檢索形成完整的受害者cookie信息:

strings yahoo.db | grep -i Cookie -A 10 -B 5

另外,還可以按http服務端來進行枚舉,形成對特定網站的請求cookie:

strings yahoo.db | grep -i https

雅虎安全團隊工作人員接收到該漏洞后,迅速進行了分類、修復和處置。

怎樣發現雅虎郵箱APP的存儲型XSS漏洞怎樣發現雅虎郵箱APP的存儲型XSS漏洞漏洞影響

任何攻擊者可以利用該漏洞,構造特定的XML文件發送給任何用戶,進而獲取到受害者用戶郵箱中包括發送者、接收者、Cookie和聯系人在內的敏感信息。

我的測試環境:

iPhone 6 – iOS v11.2.5.

受影響iOS客戶端版本:

Yahoo! Mail app v4.XX.X (XXXXX)

上述內容就是怎樣發現雅虎郵箱APP的存儲型XSS漏洞,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女