--《web前端黑客技術(shù)加密》
HTML標簽之間
普通場景
<div id="body">[輸出]</div>
提交
id=1<script>alert(1)</script>
綜合
<div id="body">1<script>alert(1)</script></div>
無法執(zhí)行腳本的標簽
title:定義文檔的標題
textarea:定義多行的文本輸入控件
xmp:定義預(yù)格式文本贸营。
iframe:創(chuàng)建包含另外一個文檔的內(nèi)聯(lián)框架(即行內(nèi)框架)
noscript:定義在腳本未被執(zhí)行時的替代內(nèi)容(文本)
noframes:可為那些不支持框架的瀏覽器顯示文本祠肥。noframes 元素位于 frameset 元素內(nèi)部。
plaintext:純文本拂共,和 pre 一樣,代碼中的空格和換行會直接顯示到頁面上料饥。另外 < 和 > 和 & 也會直接顯示蒲犬。
解決方法:閉合,例如title
</title><script>alert</script>
HTML標簽之內(nèi)
普通場景
<input id="text" value="[輸出]"/>
提交
"onmouseover=alert(1)x="
綜合為:
<input id="text" value=""onmouseover=alert(1)x=""/>
"><script>alert(1)</script>
綜合為:
<input id="text" value=""><script>alert(1)</script>"/>
書上解釋為:這種是閉合屬性后又閉合標簽岸啡,然后直接執(zhí)行腳本
同學(xué)解釋為:input標簽不需要閉合即執(zhí)行原叮,在達到目的后,后面無閉合已無所謂
其它場景
type為hidden
1)閉合
2)若type在輸出后巡蘸,可在payload中加入type=text
例如:
原語句為:
<input value="輸入" type=hidden"/>
payload:
1" onmouserover=alert(1) type="text
綜合為:
<input value="1" onmouserover=alert(1) type="text" type=hidden"/>
2.待續(xù)吧奋隶。。悦荒。