新聞中心
這篇文章主要介紹界面操作劫持與HTML5安全的示例分析,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
目前成都創(chuàng)新互聯(lián)公司已為1000多家的企業(yè)提供了網(wǎng)站建設(shè)、域名、雅安服務(wù)器托管、網(wǎng)站托管、服務(wù)器租用、企業(yè)網(wǎng)站設(shè)計(jì)、嘉祥網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。
一、界面操作劫持
1)ClickJacking
ClickJacking點(diǎn)擊劫持,這是一種視覺上的欺騙。
攻擊者使用一個(gè)透明的、不可見的iframe,覆蓋在網(wǎng)頁的某個(gè)位置上,誘使用戶點(diǎn)擊iframe。
2)TapJacking
現(xiàn)在移動(dòng)設(shè)備的使用率越來越高,針對(duì)移動(dòng)設(shè)備的特點(diǎn),衍生出了TapJacking(觸屏劫持)。
手機(jī)上的屏幕范圍有限,手機(jī)瀏覽器為了節(jié)約空間,可以隱藏地址欄,手機(jī)上的視覺欺騙會(huì)更加容易實(shí)施。
1. 第一張中最上方顯示了瀏覽器地址欄,同時(shí)攻擊者在頁面中畫出了一個(gè)假的地址欄;
2. 第二張中真實(shí)的瀏覽器地址欄已經(jīng)自動(dòng)隱藏了,此時(shí)頁面中只剩下假的地址欄;
3. 第三張中是瀏覽器地址欄被正常隱藏的情況。
這種針對(duì)視覺效果的攻擊可以被利用進(jìn)行釣魚和欺詐。
3)X-Frame-Options
針對(duì)傳統(tǒng)的界面劫持,通過禁止iframe來防范。
HTTP頭中有一個(gè)響應(yīng)頭X-Frame-Options,有三個(gè)值可以選擇:
1. DENY:該頁面不允許加載任何 iframe頁面。
2. SAMEORIGIN:該頁面可以加載相同域名的 iframe頁面。
3. ALLOW-FROM uri:該頁面可以加載指定來源的 iframe頁面。
二、HTML5安全
HTML5中新增的一些標(biāo)簽和屬性,使得XSS等Web攻擊產(chǎn)生了新的變化,在HTML5 Security Cheatsheet中總結(jié)了這些變化。
1)隱藏URL惡意代碼
反射型XSS中,會(huì)將惡意代碼寫在URL參數(shù)中,這樣的話,用戶也能看到惡意代碼,例如下面的鏈接:
http://www.csrf.net/csrf.html?id=
可以通過window.history來操作瀏覽器的歷史記錄。
pushState()有三個(gè)參數(shù):狀態(tài)對(duì)象、標(biāo)題,可選的URL地址。
history.pushState({},"", location.href.split('?').shift());
執(zhí)行上面那段代碼后就會(huì)將參數(shù)隱藏。
新的URL地址就是下面這個(gè):
“pushState”還可以偽造瀏覽器歷史記錄。
for(i=0; i<10; i++) history.pushState({},"", "/"+i+".html");
2)HTML5下的僵尸網(wǎng)絡(luò)
僵尸網(wǎng)絡(luò)(Botnet)是指在大量的計(jì)算機(jī)中植入特定的惡意程序,使控制者能夠通過若干計(jì)算機(jī)直接向其他計(jì)算機(jī)發(fā)送指令,進(jìn)行網(wǎng)絡(luò)攻擊。
基于Web前端的僵尸網(wǎng)絡(luò)可以用作DDOS攻擊,這里涉及Web Worker技術(shù)和CORS處理機(jī)制,再通過Web蠕蟲傳播。
Web Worker是一種多線程機(jī)制,可以異步執(zhí)行惡意JS代碼,而不影響用戶在瀏覽器中的正常操作。
CORS處理機(jī)制工作在瀏覽器層面,如果服務(wù)器不允許跨站,瀏覽器將攔截服務(wù)器返回的結(jié)果,也就是說跨域請(qǐng)求,服務(wù)器也會(huì)正常響應(yīng)。
那么就可以事先寫好一段異步請(qǐng)求的腳本(worker.js),然后通過Web Worker來執(zhí)行這段腳本,不斷的向目標(biāo)服務(wù)器發(fā)起請(qǐng)求。
var worker_loc = 'worker.js';//封裝了ajax請(qǐng)求的腳本 var target = ' //可實(shí)例化多個(gè) Web Workervar workers = [];for (i = 0; i < 1; i++) { workers[i] = new Worker(worker_loc); workers[i].postMessage(target);//跨域消息傳遞}
以上是“界面操作劫持與HTML5安全的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
文章名稱:界面操作劫持與HTML5安全的示例分析
鏈接URL:http://www.dlmjj.cn/article/jididg.html