Web1#
签到题
view-source 一下
得到 qweasdrtyfgh.php
Web2#
index 是一个go to test.php
的超链,进去后一眼文件包含
读了一下 index 跟 test 的源码,没有什么发现,绕不过 strpos
但是 data 流可用,说明开启了allow_url_fopen
和allow_url_include
直接 system 任意命令执行写文件发现当前目录不可写,ls 也看了一下没有别的马子,写到 tmp 再配合文件包含 getshell
这道题拿了二血嘎嘎嘎
Web3#
分析题目,这道题有以下几个限制
1.phone必须是数组
2.avatar在post参数内不能带flag字眼
3.string内不能有任何的root和别的字眼
那么,在 post 内数组绕过第一个,然后再利用__destruct 反序列化链传参即可。链中的 name 使用反序列化字符串逃逸绕过第二个限制,第三个限制只影响 post,post 的 avatar 跟解题无关,且不影响链中的 avatar
Payload:
name=O:9:"user_info":3:{s:4:"name";s:126:"rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootroot";s:5:"phone";a:2:{i:0;i:1;i:1;i:1;}s:6:"avatar";s:5:"/flag";}&phone[]=1&avatar=123
两百分的题。一血多给了十分好耶!是唯一一个解出来的小组!
Misc1#
是一张图片,不是 lsb 也不用改 weight
右键改成.rar 得到未加密压缩包中的 rsa.txt
右键改成.zip 可得一个加密压缩包,内有 flag.txt,不是伪加密
妈的我不会加密阿。丢去问 gpt 秒了
Misc2#
签到题。压缩包内二维码扫描得到 flag 秒了
Crypto1#
签到题。
PWN#
别的大手子教的。我也学不会就是
main 输入两个截断后进入 get_data
这里 的 len 是自定义的可以为 - 1
进入 token 计算会异或一个 48 ('0'),如果我 name 就是 0,这个时候字符串会变为空
当后面赋值的时候因为 len 返回 - 1 就无限赋值了,v7 在 file 上面可以覆盖到 file
算一下栈偏移打过去刚好把 s 中的 flag 覆盖到 file,就打开 flag 并输出
payload
输入 0:0:
此文由 Mix Space 同步更新至 xLog
原始链接为 https://de3ay.com/posts/sec/maoming-ctf-writeup