CTF Week8 WP
作业管理系统
简单的PHP上传,传一个带shell的php文件就可以了.
示例文件
1 | |
来源:题库
LocalCat
验证是否为本地用户,在请求头部添加X-Forwarded-for: 127.0.0.1即可.
来源:题库
电子木鱼
Rust代码审计.
首先看到需要功德才可以拿到flag,然而每次只能增加或减少一个值.
发个包几乎是不可能的. 因此尝试利用减少一个负数来达到增加的效果.
想直接减负数是不可以的.
1 | |
发现源代码的这里有问题,强制转换数据类型可能造成溢出.

因此尝试利用这里,传入一个大整数.

成功!

来源:题库
http
第一关:post 一个数据,hello=http!;

第二关:使用put方法发送请求;
第三关:改cookie.
注释里有提示:

把cookie改成它,然后名字输入admin就可以了.
注意原来有的cookie和需要改成的长得很像,不要混淆,仍然需要改.
得到flag.

来源:题库
简历系统
发现有sql注入,尝试万能拼接语句:
1 | |
成功登录. 发现有一个文件上传,直接上传php文件即可获得shell.
来源:题库
交换大王卡
也是整数溢出. 先在第三个那里加点让点数变为负值,然后再在第三个那里加点,就发现变成点了,再在第三个那里加上2点就可以了.

来源:题库
headach3
直接找响应头即可获得flag.
来源:NewStar CTF 2024
会赢吗
第一部分在注释里;第二部分发现有js,可以在控制台里输出这个函数revealFlag('4cqu1siti0n')获得;第三部分把红字“已封印”改为“解封”再点击按钮;第四部分把<noscript>标签里的内容提出来,再将其属性display: none;删除,点击“无量空处!!”按钮.
最后把四部分拼接起来用base64解码即可.
来源:NewStar CTF 2024
智械危机
首先访问/robots.txt,打开/backd0or.php;然后需要一个command和一个key串,发现key其实就是把command的base64编码串给反转后做md5然后再进行base64编码. 按照逻辑即可发送shell.
来源:NewStar CTF 2024
chocolate
先随便乱输几个数,然后进入提示界面.
第一关,需要输入一个数据num,它的值必须为,不能出现字母和点号,而且必须出现且不能在首位. 因此可以发送一个符号后面接一个即可骗过这些检测,并最终读取到数字.

这里有一个ciphertext,使用工具解码即可进入下一关.
第二关,一些md5的强比较. 考查了md5碰撞、0e绕过和暴力枚举数字匹配md5.

根据步骤做即可.

第三关,PHP垃圾回收,当传入的序列有问题时,Exception会进行无效参数的回收. 而因为指定了chocolate这个类,会在回收之前执行__destruct()函数,从而执行语句并获得答案.

第四关,通过提示“太苦”还是“太甜”二分找出“糖分”的量.

最终获得flag.

来源:NewStar CTF 2024
ezcmsss
首先进入后台. 密码在/www.zip备份中.
上网查询易知极致cms1.9.5存在插件文件上传漏洞,但是为了提高难度出题人有意阻止了从远程服务器下载文件. 因此可以把含shell的php的压缩包先上传至服务器,再调用api通过http://127.0.0.1/***将文件从服务器的本地下载到服务器的本地.
示例:
1 | |

然后调用api解压到/A/exts/目录下,示例:
1 | |

打开目录下刚刚上传的php文件:

大功告成!
来源:NewStar CTF 2024