天天看點

一種繞過 CSP 在 Twitter 子站中執行 XSS 的攻擊

本文講的是<b>一種繞過 CSP 在 Twitter 子站中執行 XSS 的攻擊</b>,現在就開始講述發現這一漏洞的過程,首先我對twitter進行了子域名收集,發現了https://careers.twitter.com這一網站,你可以在這一網站上向twitter投履歷,找工作,不過我在這個網站尋找漏洞~

在測試了一段時間之後,我想我在URL中的location參數中找到了一個反射型的xss漏洞:

一種繞過 CSP 在 Twitter 子站中執行 XSS 的攻擊

但是它并沒有彈框,我以為不能使用這一參數對xss進行觸發,後來發現這裡使用了CSP,如下:

CSP阻止了彈框的進行,是以很不幸,我需要在CSP這一方面下下工夫。然後我詢問了XSS方面的大牛 @brutelogic,跟他說了一下我目前碰到的情況,他告訴我想辦法去繞過CSP,然後再進行XSS攻擊。

我嘗試了很多方法,在将要放棄的時候,我發現了在get請求當中還存在一個比較隐蔽的URL:

這一頁面傳回頭部的Content-type是application/javascript,于是我将tpm_cb參數中寫入xss代碼,他會在頁面上顯示:

一種繞過 CSP 在 Twitter 子站中執行 XSS 的攻擊

真的是太幸運了,然後我就将這兩個漏洞結合起來,xss就進行執行了,是以我構造了如下的payload:

可以看到,已經彈框了~

一種繞過 CSP 在 Twitter 子站中執行 XSS 的攻擊

在發現漏洞之後,立刻将漏洞送出到了hackerone,很快對我送出的漏洞進行分類和獎勵,同時twitter團隊也很快修複了xss漏洞,不過CSP繞過漏洞花的時間略長,但是到最後雙方都很滿意。感謝twitter安全團隊以及hackerone社群。

原文釋出時間為:2017年7月8日

本文作者:xnianq

本文來自雲栖社群合作夥伴嘶吼,了解相關資訊可以關注嘶吼網站。

<a href="http://www.4hou.com/web/6163.html" target="_blank">原文連結</a>

繼續閱讀