N1CTF2025 WEB方向详细writeup(全)
字数 1303 2025-08-22 12:23:24
N1CTF2025 WEB方向漏洞利用技术详解
1. Gavatar 头像上传漏洞利用
1.1 漏洞分析
- 系统处理上传的两种方式,其中URL上传方式存在安全风险
- 虽然不能直接利用伪协议执行命令,但可以通过cnext技术进行攻击
- 关键点在于获取回显信息
1.2 利用步骤
- 注册用户名为"123"的账户
- 上传图片后会跳转到
/avatar.php?user=id - 修改send方法获取回显
- 通过发包和访问
1.php触发漏洞
1.3 技术要点
- 需要关注回显点的位置
- 参考脚本:Gavatar_exp.py
- 相关技术参考:
2. Traefik 中间件漏洞利用
2.1 漏洞分析
- 题目利用traefik作为中间件
- 路由配置问题:main.go有三个路由,但dynamic.yml只配置了两个
- 需要
X-Forwarded-For: "127.0.0.1"请求头才能访问flag
2.2 利用步骤
- 重写dynamic.yml文件
- 利用文件上传漏洞上传zip压缩包(系统会自动解压)
- 使用ZIP Slip技术覆盖配置文件
- 上传poc.zip后访问/flag获取flag
2.3 技术要点
- 文件路径:
C:\removeDisk\ideProject\PythonProject\CalcPin\dynamic.yml - 需要修改为dynamic.yml实际所在位置
3. Backup 命令执行漏洞
3.1 漏洞分析
- 网页底部提示可通过POST传参执行命令
- 参数:
__2025.happy.new.year - 无任何过滤措施
3.2 利用步骤
- 发现根目录有backup.sh
- primary目录可写文件
- 写入webshell后使用蚁剑连接
- 利用通配符匹配特性执行命令
3.3 技术要点
- cp命令特性利用:
- 参考:cp命令详解
- 注意靶机使用
-H参数而非-h - 参数顺序影响执行结果
4. EasyDB SQL注入漏洞
4.1 漏洞分析
- 使用H2数据库
- 存在SQL注入漏洞但有以下限制:
- 使用executeQuery方法
- 不能使用CREATE相关指令
- 不支持堆叠注入
- WAF过滤关键词
4.2 利用步骤
- 使用LINK_SCHEMA重新链接到H2
- 传入INIT的SQL语句
- 使用concat函数绕过黑名单
- 在登录框发包执行攻击
4.3 技术要点
- 攻击脚本示例(1.sql):
-- 使用LINK_SCHEMA技术
-- 通过concat绕过过滤
5. Display CSP绕过技术
5.1 漏洞分析
- CSP策略留有script-src为self
- 代码审计发现path参数可控
5.2 利用步骤
- 控制path参数(以/开头)
- 补全为//注释并换行
- 构造插入script的payload
- 使用iframe + srcdoc加载
5.3 技术要点
- 最终payload示例:
<!-- 注意编码问题 -->
<iframe srcdoc="..."></iframe>
总结
本次比赛涉及多种WEB安全技术:
- 文件上传漏洞利用
- 中间件配置错误利用
- 命令注入与参数滥用
- SQL注入与WAF绕过
- CSP策略绕过技术
每种技术都需要深入理解系统工作原理和特定配置,才能有效发现和利用漏洞。