xss通关攻略

大神们在线讲解下,xss通关攻略
最新回答
ミ猫田喂山风

2026-10-19 13:43:58

XSS通关攻略的核心是通过构造恶意输入绕过过滤机制,触发浏览器执行脚本,具体方法可分为以下类型:

一、基础反射型XSS攻击
  1. 直接注入脚本当后端未对输入参数(如name)进行过滤时,可直接插入<script>alert(1)</script>。例如在第一关中,修改URL参数或表单输入值即可触发弹窗。
  2. 事件属性触发若后端将代码转为文本但未完全过滤,可通过闭合双引号或尖括号插入事件属性。例如第二关中,输入a" onclick="alert(1)或闭合标签后插入"><script>alert(1)</script>。
二、过滤绕过技巧
  1. 单引号闭合绕过当后端使用htmlspecialchars转换双引号为文本,但函数用单引号包围时,改用单引号闭合属性。例如第三关输入a' onclick="alert(1)。
  2. autofocus与onfocus组合若仅过滤闭合尖括号,可通过autofocus自动聚焦元素并触发onfocus事件。例如第四关输入a" autofocus onfocus="alert(1)"。
  3. 协议链接绕过当过滤on和script但未过滤<>时,使用<a href="javascript:alert(1)">,用户点击后触发脚本。
三、编码与大小写绕过
  1. 大小写混淆后端未过滤大小写时,使用<Script>alert(1)</Script>绕过检测(第六关)。
  2. HTML编码对链接检测时,用HTML编码替换关键字。例如第八关输入javascript:alert(3)的编码形式。
四、特殊参数与头部利用
  1. 隐藏参数注入通过未显示的输入标签(如t_sort)注入脚本。例如第十关输入keyword=aaa&t_sort=a"onclick=alert(1)。
  2. HTTP头部注入利用http-referer等头部注入恶意代码,需借助工具(如HackBar)修改请求头(第十一关)。
五、靶场实战示例
  1. Pikachu靶场第一关反射型XSS(GET)通过修改输入长度后注入<script>alert(1)</script>。
  2. xsslabs第一关直接输入未过滤的参数触发弹窗,验证基础反射型漏洞。
六、高级绕过技巧
  1. 双写绕过当过滤on时,双写字符(如oonnclick)绕过检测(第七关)。
  2. 注释混淆闭合字符串后注入恶意代码并注释原代码。例如第二关练习题输入jeff=aaa";alert(666)//,使后续代码失效。

关键点:XSS攻击的核心是理解过滤逻辑,通过构造变形输入(如事件属性、编码、协议链接)绕过防御。实战中需结合靶场环境调整策略,优先测试基础注入,再逐步尝试复杂绕过。