# HTML 注入测试
## 目的
识别并利用 HTML 注入漏洞,允许攻击者将恶意 HTML 内容注入 Web 应用程序。此漏洞使攻击者能够修改页面外观、创建钓鱼页面,并通过注入的表单窃取用户凭据。
## 前置条件
### 所需工具
- 带有开发者工具的 Web 浏览器
- Burp Suite 或 OWASP ZAP
- Tamper Data 或类似代理
- 用于测试 Payload 的 cURL
### 所需知识
- HTML 基础知识
- HTTP 请求/响应结构
- Web 应用程序输入处理
- HTML 注入与 XSS 的区别
## 输出与交付物
1. **漏洞报告** - 已识别的注入点
2. **利用证明** - 内容篡改演示
3. **影响评估** - 潜在的钓鱼和篡改风险
4. **修复指南** - 输入验证建议
## 核心工作流
### 第一阶段:理解 HTML 注入
当用户输入在未经过滤的情况下被反映在网页中时,就会发生 HTML 注入:
html
欢迎,
?name=
注入内容
欢迎,
注入内容
与 XSS 的主要区别:
- HTML 注入:仅渲染 HTML 标签
- XSS:执行 JavaScript 代码
- HTML 注入通常是通往 XSS 的垫脚石
攻击目标:
- 修改网站外观(篡改)
- 创建虚假登录表单(钓鱼)
- 注入恶意链接
- 显示误导性内容
### 第二阶段:识别注入点
映射应用程序以寻找潜在的注入面:
1. 搜索栏和搜索结果
2. 评论区
3. 用户个人资料字段
4. 联系表单和反馈
5. 注册表单
6. 页面上反映的 URL 参数
7. 错误消息
8. 页面标题和页眉
9. 隐藏表单字段
10. 页面上反映的 Cookie 值
常见的易受攻击参数:
?name=
?user=
?search=
?query=
?message=
?title=
?content=
?redirect=
?url=
?page=
### 第三阶段:基础 HTML 注入测试
使用简单的 HTML 标签进行测试:
html
测试注入
粗体文本
斜体文本
下划线文本
红色文本
注入的 DIV
注入的段落
换行符
<a href="http://atta