Pikachu靶场通关记录
字数 1736 2025-08-10 23:41:56
Pikachu靶场通关教学文档
1. 暴力破解
1.1 无验证码爆破
- 直接使用Burp Suite的Intruder模块
- 选择Cluster Bomb攻击类型(逐个匹配测试)
- 根据响应包长度判断正确账号密码
1.2 服务端验证码
- 尝试删除验证码字段(后端会校验)
- 使用固定验证码进行爆破(验证码未失效)
1.3 前端验证码
- 前端生成并验证,后端不验证
- 先获取有效验证码,然后删除验证码字段进行爆破
1.4 Token验证
- 使用Burp的正则匹配功能获取Token
- 改用Pitchfork攻击类型
- 降低线程数,适当sleep防止Token混乱
2. XSS漏洞
2.1 反射型XSS
- 无过滤,直接使用
<script>标签 - 注意长度限制,可修改JS绕过
2.2 存储型XSS
- Payload会持久化存储
- 访问页面即触发,建议使用
console.log而非弹窗
2.3 DOM型XSS
- 输入写入到href属性
- 使用
javascript:alert(1)触发
2.4 XSS盲打
- 攻击管理员后台
- 在用户名和留言处都尝试XSS
2.5 过滤绕过
<script>被过滤时尝试双写或使用其他标签- 使用``
2.6 闭合JS代码
- 分析页面JS代码
- 尝试闭合原有JS并插入新代码
3. CSRF漏洞
3.1 GET型CSRF
- 构造恶意URL包含所有参数
- 诱使受害者点击
3.2 POST型CSRF
- 构造隐藏表单自动提交
- 使用
<form method=post action='目标URL'>
3.3 Token防护
- 检查请求是否携带并验证Token
- 有效Token可防御CSRF
4. SQL注入
4.1 字符型注入
- 使用
' and 1=1和' and 1=2测试 - 确定列数后使用
union select
4.2 搜索型注入
- 语句结构为
like '%输入%' - 使用
%'闭合前半部分
4.3 XX型注入
- 根据报错信息判断闭合方式
- 常见闭合方式:
')、"))等
4.4 INSERT/UPDATE注入
- 注册或更新功能点可能存在
- 使用报错注入如
extractvalue
4.5 DELETE注入
- 删除功能点可能存在
- URL参数中尝试注入
4.6 HTTP头注入
- 修改User-Agent等头部
- 使用报错注入
4.7 盲注
- 布尔盲注:根据页面响应判断
- 时间盲注:使用
sleep()和if组合
4.8 宽字节注入
- 使用
%df'绕过转义 - 原理:GBK编码特性
5. RCE漏洞
5.1 命令注入
- 使用分号分隔命令
- 如
1.1.1.1;ls;
5.2 代码执行
- 直接执行系统命令
- 如
system('ls');
6. 文件包含
6.1 本地文件包含
- 使用
file://协议 - 目录遍历如
../../etc/passwd
6.2 远程文件包含
- 需要
allow_url_include开启 - 包含远程服务器上的文件
7. 文件上传漏洞
7.1 客户端校验
- 修改JS或Burp改包绕过
7.2 MIME类型校验
- 修改Content-Type头
7.3 文件头校验
- 制作图片马
- 添加正确文件头
8. 越权漏洞
8.1 水平越权
- 修改用户ID等参数
- 访问同级用户信息
8.2 垂直越权
- 普通用户访问管理员功能
- 如用户添加功能
9. 其他漏洞
9.1 目录遍历
- 修改URL参数遍历目录
- 如
../跳转
9.2 敏感信息泄露
- 检查前端代码和注释
- 可能包含凭证信息
9.3 PHP反序列化
- 构造恶意序列化数据
- 可能导致XSS或RCE
9.4 XXE漏洞
- 文件读取Payload:
<?xml version="1.0" ?>
<!DOCTYPE note [ <!ENTITY hack SYSTEM "file:///etc/passwd">]>
- 盲注XXE需要外部DTD
9.5 URL跳转
- 修改参数实现恶意跳转
- 不要随意点击陌生链接
9.6 SSRF
- 利用
curl或file_get_contents - 攻击内网服务或读取文件
- 尝试
gopher协议攻击Redis等
总结
本教学文档详细记录了Pikachu靶场中各类Web漏洞的利用方法和技巧,包括但不限于暴力破解、XSS、CSRF、SQL注入、文件上传等常见漏洞类型。每个漏洞类型都提供了具体的利用步骤和Payload示例,可作为Web安全学习的参考手册。