北京时间9月20日,杭州公安发布《杭州警方通报打击涉网违法犯罪暨‘净网2019’专项行动战果》一文,文章曝光了国内知名PHP调试环境程序集成包“PhpStudy软件”遭到黑客篡改并植入“后门”。截至案发,近百万PHP用户中超过67万用户已被黑客控制,并大肆盗取账号密码、聊天记录、设备码类等敏感数据多达10万多组,非法牟利600多万元。

面对如此性质恶劣的网络攻击事件,360安全大脑已独家完成了针对“PhpStudy后门”的修复支持,能够有效清除和修复该植入“后门”,第一时间守护用户的个人数据及财产安全,建议广大用户尽快前往https://dl.360safe.com/instbeta.exe下载安装最新版360安全卫士进行修复!

案情破获:自2016年开始潜伏,累计67万电脑沦为“肉鸡”

PhpStudy软件对于国内众多开发者而言,并不陌生。它是一款免费的PHP调试环境的程序集成包,集成了最新的Apache、PHP、MySQL、phpMyAdmin、ZendOptimizer多款软件一次性安装,无需配置即可直接使用,具有PHP环境调试和PHP开发功能。因为免费公益、简易方便,现已发展到一定的规模,有着近百万PHP语言学习者、开发者用户。

然而,如此绿色无公害的“国民”开发软件遭到了黑客的毒手,并且犯罪动机竟然出自黑客的技痒和虚荣心。据杭州公安披露,黑客组织早在2016年就编写了“后门”文件,并非法侵入了PhpStudy的官网,篡改了软件安装包植入“后门”。而该“后门”具有控制计算机的功能,可以远程控制下载运行脚本实现用户个人信息收集。

从2016年起,黑客利用该“后门”犯罪作恶一发不可收拾,大量中招的电脑沦为“肉鸡”执行危险命令,不计其数的用户账号密码、电脑数据、敏感信息被远程抓取和回传。据统计,黑客已控制了超过67万台电脑,非法获取账号密码类、聊天数据类、设备码类等数据10万余组,而此案也是2019年以来,国内影响最为严重的供应链攻击事件。

雷霆行动:“后门”涉及多个版本,360安全大脑国内率先支持修复!

值得注意的是,经360安全大脑的监测发现,被篡改的软件版本并不单单是官方通告的PhpStudy2016版本中的Php5.4版本,而是在PhpStudy 2016版和2018版两个版本中均同时被发现有“后门”文件的存在,并且影响部分使用PhpStudy搭建的Php5.2、Php5.3和Php5.4环境。虽然目前官方软件介绍页面中的下载链接已经失效,但在官网历史版本中仍能下载到。除了官网外,一些下载站提供的相同版本的PhpStudy也同样“不干净”。

360安全大脑的进一步深度溯源,确认绝大多数后门位于PhpStudy目录下的“php\php-5.4.45\ext\php_xmlrpc.dll”文件和“\php\php-5.2.17\ext\php_xmlrpc.dll”文件中,不过也有部分通过第三方下载站下载的PhpStudy后门位于“\php53\ext\php_xmlrpc.dll”文件中。通过查看字符串可以发现文件中出现了可疑的“eval”字符串。

(php_xmlrpc.dll文件中可疑的“eval”字符串)

“eval”字符串所在的这段代码通过PHP函数gzuncompress解压位于偏移0xd028到0xd66c处的shellcode并执行。

(解压shellcode并执行)

(部分shellcode)

经过解压之后的shellcode如下图所示,shellcode中经过base64编码的内容即为最终的后门。

(解压后的shellcode)

最终的后门请求C&C地址360se.net,执行由C&C返回的内容,目前该地址已无法正常连接。

(后门代码示意图)

虽然在杭州网警专案组的行动下,已经分别在海南、四川、重庆、广东分别将马某、杨某、谭某、周某某等7名犯罪嫌疑人缉拿,不过经360安全大脑的关联分析,目前网络中仍然有超过1700个存在“后门”的php_xmlrpc.dll文件。

这些通过修改常用软件底层源代码,秘密添加的“后门”,可以在用户无感知的状态下,非法获取用户隐私数据,严重侵害了人民群众的合法权益,甚至危害国家安全。而360安全大脑通过多种技术手段防御,可以第一时间感知此类恶意文件的态势进程,并独家推出了修复方案。同时,360安全大脑特别建议:

1. 前往https://dl.360safe.com/instbeta.exe,尽快下载安装最新版360安全卫士,能有效清除并修复PhpStudy安装目录下的“后门”文件,全面保护个人信息及财产安全;

2. 请及时修改服务器密码,其他使用相同注册邮箱和密码的网络帐户也应该一并修改,消除风险;

3. 不要随意下载,接收和运行不明来源的文件,尽量到PhpStudy官网https://www.xp.cn/下载最新版PhpStudy安装包进行更新,以防中招。

附录:部分IOCs

被篡改的php_xmlrpc.dll:

c339482fd2b233fb0a555b629c0ea5d5

0f7ad38e7a9857523dfbce4bce43a9e9

8c9e30239ec3784bb26e58e8f4211ed0

e252e32a8873aabf33731e8eb90c08df

9916dc74b4e9eb076fa5fcf96e3b8a9c

f3bc871d021a5b29ecc7ec813ecec244

9756003495e3bb190bd4a8cde2c31f2e

d7444e467cb6dc287c791c0728708bfd

2018版PhpStudy安装程序

md5: fc44101432b8c3a5140fcb18284d2797

2016版PhpStudy安装程序

md5: a63ab7adb020a76f34b053db310be2e9

md5:0d3c20d8789347a04640d440abe0729d

URL:

hxxp://public.xp.cn/upgrades/PhpStudy20180211.zip

hxxps://www.xp.cn/phpstudy/phpStudy20161103.zip

hxxps://www.xp.cn/phpstudy/PhpStudy20180211.zip

CC:

www.360se.net:20123

www.360se.net:40125

www.360se.net:8080

www.360se.net:80

www.360se.net:53

bbs.360se.net:20123

bbs.360se.net:40125

bbs.360se.net:8080

bbs.360se.net:80

bbs.360se.net:53

cms.360se.net:20123

cms.360se.net:40125

cms.360se.net:8080

cms.360se.net:80

cms.360se.net:53

down.360se.net:20123

down.360se.net:40125

down.360se.net:8080

down.360se.net:80

down.360se.net:53

up.360se.net:20123

up.360se.net:40125

up.360se.net:8080

up.360se.net:80

up.360se.net:53

file.360se.net:20123

file.360se.net:40125

file.360se.net:8080

file.360se.net:80

file.360se.net:53

ftp.360se.net:20123

ftp.360se.net:40125

ftp.360se.net:8080

ftp.360se.net:80

ftp.360se.net:53

数十万PhpStudy用户被植入后门,快来检测你是否已沦为“肉鸡”!的更多相关文章

  1. 系统清理工具CCleaner被植入后门

    概述 2017年9月18日,有情报披露,著名的系统优化工具CCleaner的某个版本被发现植入后门,大量使用该工具的用户恐将面临泄密风险.这是继Xshell后门事件后,又一起严重的软件供应链来源攻击事 ...

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

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

  3. 借助Docker单机秒开数十万TCP连接

    熟悉网络编程的都清楚系统只有65535个端口可用,1024以下的端口为系统保留,所以除去系统保留端口后可用的只有65411个端口,而一个TCP连接由TCP四元组(源IP.源端口.TCP.目标IP.目标 ...

  4. 向PE文件植入后门代码技术讨论

    写在前面的话 这篇文章将介绍使用codecaves对PE文件植入后门代码.有几个很好的工具可以帮到你了.比如BackdoorFactory和Shelter将完成相同的工作,甚至绕过一些静态分析几个防病 ...

  5. php实现合并两个排序的链表(很多情况下新建数组装东西比连东西逻辑快很多)($cur=$cur->next;的理解)

    php实现合并两个排序的链表(很多情况下新建数组装东西比连东西逻辑快很多)($cur=$cur->next;的理解) 一.总结 $cur=$cur->next;这句话需要好好理解 指$cu ...

  6. 用户、组或角色 '' 在当前数据库中已存在。 (Microsoft SQL Server,错误: 15023)

    SQLServer2008用户组或角色'*****'在当前数据库中已存在问题的解决办法 在迁移数据库的过程中SQLServer SDE的问题 为一个数据库添加一个用户时,提示以下信息:用户.组或角色 ...

  7. python植入后门backdoor程序的方法?

    后门程序 from gevent.backdoor import BackdoorServer server = BackdoorServer((), banner="Hello from ...

  8. 计蒜客 18487.Divisions-大数的所有因子个数-Miller_Rabin+Pollard_rho-超快的(大数质因解+因子个数求解公式) (German Collegiate Programming Contest 2015 ACM-ICPC Asia Training League 暑假第一阶段第三场 F)

    这一场两个和大数有关的题目,都用到了米勒拉宾算法,有点东西,备忘一下. 题目传送门 F. Divisions 传送门 这个题是求一个数的所有因子个数,但是数据比较大,1e18,所以是大数的题目,正常的 ...

  9. 一次ssh被植入后门的经历及解决方案

    昨天发现服务器上面很多程序被挂马了,跟开发一起处理了挂马文件,今早发现游戏后台又打不开了,上服务器发现后台程序的入口文件都被删了,恢复了index.php.admin.php后才能正常访问,晚上谁也没 ...

随机推荐

  1. 【网寻】IE F12 后报错,无法查看 DOM 等信息

    错误图片: 解决办法 : 安装Windows7补丁:KB3008923: 补丁下载地址: http://www.microsoft.com/en-us/download/details.aspx?id ...

  2. Java基础 -4.4

    For循环 for循环也是一种常规的使用结构 public static void main(String[] args) { for(定义循环的初始值;循环判断;修改循环条件) { 循环语句的执行; ...

  3. virtual column make sqlserver using function index

    In sqlserver, it is impossible that if we want to create an function index. Doesn`t means we can not ...

  4. Django 学习组件分页器与自定制分页器

    一.Django 分页器 1.django的分页器基础版 (1)首先是基础数据分别为 from django.db import models # Create your models here. c ...

  5. Centos7 安装redis及简单使用

    一.redis的介绍 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset( ...

  6. 多用块枚举,少用for循环

    本文概要: 1.首先列举了四种可用于遍历的方式:标准的C语言for循环.Objective-C 1.0出现的NSEnumerator.Objective-C 1.0出现的for in快速遍历.块遍历. ...

  7. Codeforces 1249E By Elevator or Stairs? 题解

    这题其实和 NIKKEI 2019-2-D Shortest Path on a Line 差不多的啦,都是一种最短路的变形,把多个点和边关联了起来. 题面 你要从一楼到 \(n\) 楼去,每层楼可以 ...

  8. etc/passwd 和 /etc/shadow 文件内容及其解释

    /etc/passwd 和 /etc/shadow 文件内容及其解释 默认情况下,/etc/passwd 存储有关本地用户的信息 /etc/passwd 采用以下格式: 1)username      ...

  9. 【剑指Offer面试编程题】题目1522:包含min函数的栈--九度OJ

    题目描述: 定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数. 输入: 输入可能包含多个测试样例,输入以EOF结束. 对于每个测试案例,输入的第一行为一个整数n(1<=n&l ...

  10. Spring mvc mybatis 查询结果缺少字段 解决方法

    参考:https://blog.csdn.net/xiaofeifei8421/article/details/43231815