[极客大挑战 2019]HavefunCTF Web题解:一起来撸猫

[极客大挑战 2019]HavefunCTF Web题解:一起来撸猫 题目信息题目名称一起来撸猫题目类型Web难度入门级FlagCTF2{a29fad7b-0dc4-45e3-9bef-01d4f68286ac}题目描述访问页面后可以看到一个可爱的猫猫动画页面底部显示Syclover cl4y。题目要求找到隐藏在页面中的flag。解题过程第一步查看页面源码打开浏览器开发者工具F12查看网页源代码。在HTML代码的底部注释中发现了一段PHP代码php!-- $cat$_GET[cat]; echo $cat; if($catdog){ echo Syc{cat_cat_cat_cat}; } --第二步分析PHP代码逻辑这段代码的功能是通过GET方法接收名为cat的参数将参数值直接输出到页面判断参数值是否等于字符串dog如果条件成立输出flagSyc{cat_cat_cat_cat}第三步构造Payload根据代码逻辑需要在URL中添加catdog参数texthttp://目标IP或域名/?catdog第四步获取Flag访问构造好的URL后页面输出textdogSyc{cat_cat_cat_cat}成功获取flag。知识点总结1. GET参数传递HTTP GET方法通过URL传递参数格式?参数名参数值多个参数用连接?key1value1key2value22. PHP基础语法php$_GET[参数名] // 获取GET参数 echo // 输出内容 if(条件) { } // 条件判断3. 源码审计在CTF比赛中查看页面源代码是最基本的操作开发者工具F12→ Elements/元素标签页可以看到HTML源码注释中可能隐藏关键信息CTF出题角度虽然这是一道基础题但可以看出出题思路清晰适合作为Web方向入门题目建议在真实CTF场景中可以增加更多隐藏或混淆手段扩展思考如果题目难度提升可以这样改造php?php $cat $_GET[cat]; $cat strtolower($cat); // 转小写 if (md5($cat) 某个md5值) { echo $flag; } ?这样就需要通过MD5碰撞或爆破来获取flag难度会大大提高。总结这道题考察的是✅ 查看网页源代码✅ 理解PHP基本语法✅ GET参数传递✅ 简单的条件绕过虽然题目本身很简单但它涵盖了一个完整的CTF Web题的解题流程信息收集 → 代码分析 → Payload构造 → 获取Flag。