實(shí)例講解HTML安全隱患
一.Html安全隱患
1.CSRF攻擊【漏洞
之前外我寫過(guò)一篇《淺談CSRF攻擊方式》,如果想詳細(xì)了解CSRF原理及其防御之術(shù),可以看一下。
這里簡(jiǎn)單距個(gè)例子說(shuō)明一下:
存在CSRF漏洞Html代碼:
- <form action="Transfer.php" method="POST">
- <p>ToBankId: <input type="text" name="toBankId" /></p>
- <p>Money: <input type="text" name="money" /></p>
- <p><input type="submit" value="Transfer" /></p>
- </form>
以上漏洞的攻擊代碼:
- <form method="POST" action="http://www.Bank.com/Transfer.php">
- <input type="hidden" name="toBankId" value="hyddd">
- <input type="hidden" name="money" value="10000">
- </form>
- <script>
- document.usr_form.submit();
- </script>
如果用戶在登陸www.Bank.com后,訪問(wèn)帶有以上攻擊代碼的頁(yè)面,該用戶會(huì)在毫不知情下,給hyddd轉(zhuǎn)賬10000塊。這就是CSRF攻擊。
2.包含不同域的Js腳本【隱患】
在Html頁(yè)面中,包含如:
- <script src="http://www.hyddd.com/hello.js"/>
不同域的腳本文件,是一種值得慎重考慮的行為,因?yàn)槟惆驯菊军c(diǎn)的安全和其他站點(diǎn)的安全綁定在一起了。黑客可以通過(guò)入侵修改www.hyddd.com的hello.js文件,達(dá)到攻擊的效果。比如說(shuō):JavaScript Hijacking(關(guān)于JavaScript Hijacking可以參考《深入理解JavaScript Hijacking原理》)。
3.Html中的Hidden Field【隱患】
注意對(duì)隱藏字段的使用。比如hidden的<input>標(biāo)簽。
不要把敏感的信息存放在隱藏字段中,以防被別人更改替換和瀏覽器緩存。
4.上傳文件【隱患】
請(qǐng)慎重對(duì)待上傳文件這一功能,因?yàn)楣粽哂锌赡芙柽@個(gè)機(jī)會(huì)執(zhí)行惡意代碼,如圖:
所以請(qǐng)小心處理上傳文件功能。
以上是我搜集到的4種關(guān)于Htm的安全隱患,僅僅是和Html相關(guān)的問(wèn)題,不包括,如:JSP,ASP...,資料的主要來(lái)源都是Fortify的一些文章 。
【編輯推薦】