内存马,通俗讲就是不死马,就是会运行一段永远不退出的程序常驻在PHP进程里,无限执行。
生成过程
不死马.php → 上传到server → server执行文件 → server本地无限循环生成 (一句话.php)
不死马
网上版本
网上流传的不死马
1 |
<?php |
- ignore_user_abort(true):函数设置与客户机断开是否会终止脚本的执行。这里设置为true则忽略与用户的断开,即使与客户机断开脚本仍会执行。
- set_time_limit():函数设置脚本最大执行时间。这里设置为0,即没有时间方面的限制。
unlink(__FILE__)
:删除文件本身,以起到隐蔽自身的作用。- while:循环内每隔usleep(5000)即写新的后门文件
- system():执行的命令用于修改文件的创建或修改时间,可以绕过
“find –name '*.php' –mmin -10”
命令检测最近10分钟修改或新创建的PHP文件,但不一定有用,可选。
升级版
1 |
<?php |
杀死不死马
-
建立一个和不死马一样名字的文件夹,这样不死马就写不进去了。完全杀死不死马,得清理内存。
1
rm -rf .2.php | mkdir .2.php
-
杀进程得在root或者www-data权限下。如上传一句话,然后执行 system(‘kill -9 -1’); 杀死所有进程,在手动删除木马
1
2shell.php: <?php @eval($_GET['9415']); ?>
url访问:shell.php?9415=system('kill -9 -1'); -
用一个脚本竞争写入,脚本同不死马,usleep要低于对方不死马设置的值.
top 查看占用率最高的cpu进程
q 退出
M 根据驻留内存大小进行排序
P 根据CPU使用百分比大小进行排序1
2
3
4
5
6
7<?php
while (1) {
$pid = 不死⻢的进程PID;
@unlink("c.php");
exec("kill -9 $pid");
usleep(1000);
}?> -
重启 apache,php 等web服务(一般不会有权限)
参考文章:
不死马
自己一次线下AWD线下赛总结
FROM :blog.cfyqy.com | Author:cfyqy
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论