您的位置:首頁(yè) > 菜鳥(niǎo)學(xué)院 > HTML5跨域消息發(fā)送安全性分析
HTML5是下一代的Web應(yīng)用,它具有許多新的特性,是一種新興的技術(shù)并且在移動(dòng)應(yīng)用中也有著廣泛的使用。但也正是因?yàn)樗囊恍┬绿匦缘某霈F(xiàn)以及廣泛的應(yīng)用,使得其安全性非常值得關(guān)注。
在本文中,我們將針對(duì)HTML5 Web消息發(fā)送(跨域消息發(fā)送)的安全性進(jìn)行分析和研究。
跨域消息發(fā)送
在討論這一問(wèn)題之前,我們先來(lái)了解下在HTML5中是如何實(shí)現(xiàn)跨域的消息發(fā)送。
在HTML5之前,由于同源策略的限制導(dǎo)致在兩個(gè)窗口之間進(jìn)行消息傳送必須是使用相同的協(xié)議、端口和主機(jī)。
HTML5有一種新的方法叫做postMessage(),通過(guò)這一方法,跨域的消息傳送將不再受到同源策略的限制。
以下是postMessage()的語(yǔ)法:
發(fā)送窗口:
Otherwindows:涉及到的其他窗口 Message:被發(fā)送到接收窗口的信息 targetOrigin:接收窗口必須規(guī)定的URL。如果沒(méi)有任何特殊偏好,可以將其規(guī)定為“*”定義“*”為targetOrigin,但這樣做其實(shí)會(huì)存在一些安全隱患,在后文中我會(huì)提到。 Transfer:這個(gè)是任意的。
接收窗口:
當(dāng)otherWindow.postMessage()執(zhí)行時(shí),消息將會(huì)被發(fā)送到接收窗口。
發(fā)送方使用以下這段代碼后,我們就可以接收到這條消息。
通過(guò)該段代碼,我們可以訪問(wèn)數(shù)據(jù)以及這一信息的源。如下所示:
Event.origin:提供信息的源(我們所接收到的信息的URL) Event.data:提供實(shí)際所發(fā)送出的信息內(nèi)容
安全性實(shí)例分析
出于演示需要,我設(shè)立了如下兩個(gè)Lab:
A: http://localhost:8383/ B: http://localhost/
正如你所看到的,上面兩個(gè)URL具有不同的端口,第一個(gè)運(yùn)行在8383端口,第二個(gè)則是在80端口。正是因?yàn)槠湓床煌,所以才?dǎo)致端口不同。
A是發(fā)送窗口,B是接收窗口
現(xiàn)在我們加載第二個(gè)URL(http://localhost/ )作為第一個(gè)URL的iframe:
小編推薦閱讀國(guó)產(chǎn)工具PKAV HTTP Fuzzer滲透測(cè)試助手最新發(fā)布
閱讀FireEye:11.2%的移動(dòng)APP仍存在FREAK漏洞
閱讀惠普漏洞:惠普ArcSight企業(yè)安全系列產(chǎn)品曝高危安全漏洞
閱讀騰訊、360各顯神通,分別秒殺IE、Flash、PDF項(xiàng)目
閱讀蘋(píng)果Mac OS X系統(tǒng)被發(fā)現(xiàn)存在DLL劫持漏洞
閱讀金融行業(yè)平臺(tái)的針對(duì)性防御滲透測(cè)試
閱讀D-Link(友訊)路由器曝遠(yuǎn)程文件上傳及命令注入漏洞(已發(fā)布安全更新)
閱讀Win10將使用P2P進(jìn)行系統(tǒng)更新,引發(fā)安全擔(dān)憂
閱讀美國(guó)最大的無(wú)卡ATM網(wǎng)絡(luò)即將推出,從此告別刷卡!
閱讀谷歌應(yīng)用漏洞泄漏超過(guò)28萬(wàn)條私人WHOIS數(shù)據(jù)
閱讀使命召喚、魔獸世界、英雄聯(lián)盟……專攻游戲的勒索軟件TeslaCrypt
閱讀本站所有軟件,都由網(wǎng)友上傳,如有侵犯你的版權(quán),請(qǐng)發(fā)郵件[email protected]
湘ICP備2022002427號(hào)-10 湘公網(wǎng)安備:43070202000427號(hào)© 2013~2025 haote.com 好特網(wǎng)