一键安装藏隐患,phpStudy 批量入侵的分析与溯源

一、前言近日,腾讯安全云鼎实验室监测到大量主机被入侵并添加了一个名为“vusr_dx$”的隐藏帐号;同时,云鼎实验室还监测到此类帐号被大量创建的同时存在对应帐号异地登录的情况。Windows 的帐号名…

一,导言 最近,腾讯安全云台实验室检测到大量主机遭到入侵,并添加了一个名为“vusr_dx $”的隐藏帐户。同时,Yunding Lab还检测到这些帐户是大量创建的,并且有相应的远程登录帐户。案件。 当Windows的帐户名称后跟“$”符号时,帐户信息将不会显示在net user命令中。这是攻击者隐藏帐户的常用方法。通常,开发人员不会添加此类帐户。 Yunding Lab跟踪并分析了事件,恢复了攻击者的入侵和入侵后操作。 二,入侵技术分析 通过分析被黑客攻击的所有主机并添加“vusr_dx $”隐藏帐户,发现大多数主机都安装了phpStudy组件,phpinfo和phpMyAdmin存在于web目录中,而MySQL root用户有50%的弱密码。从这里你可以推断出可能导致入侵的原因: 用户通过  phpStudy在自己的云主机上部署PHP环境。默认情况下,phpinfo和phpMyAdmin包含在内,任何人都可以访问。 MySQL安装的默认密码是弱密码,因此黑客通过phpMyAdmin使用弱密码登录MySQL,然后使用MySQL的某些方式获取系统权限。 MySQL获取系统权限的常用方法一般有以下几种: 用户通过  phpStudy在自己的云主机上部署PHP环境。默认情况下,phpinfo和phpMyAdmin包含在内,任何人都可以访问。 MySQL安装的默认密码是弱密码,因此黑客通过phpMyAdmin使用弱密码登录MySQL,然后使用MySQL的某些方式获取系统权限。 使用  SELECT'<system('$ _ POST [cmd]);>'将Webshell写入Web目录INTO OUTFILE'/path/to/webroot'  statement或general_log。由于phpStudy的某些原因,其PHP进程在执行命令后是一个非常高权限的用户(通常是管理员用户或SYSTEM权限)。 使用    MySQL UDF执行命令。通常UDF用于执行命令。 PHP具有较低的权限,但MySQL是高权限的情况,或者PHP使用disable_functions来限制调用系统命令的方式,因此UDF用于绕过disable_functions。 两种类型的攻击者都可能使用。由于攻击者是一种大规模,连续的入侵操作,因此可以推断出攻击者必须使用脚本进行攻击。

图1.每天攻击者成功攻击的计算机数量 通过进一步的分析和调查,发现攻击者的攻击方法是使用MySQL弱密码登录,修改general_log指向Web目录中的sheep.php文件,然后使用shell创建一个帐户。下表是general_log中时间和帐户创建时间之间的对应关系,它证明了攻击者的攻击方法。

攻击者使用的SQL语句如下所示:

图2.攻击者有效负载使用的SQL语句

图3. Sheep.php文件内容 Failure when receiving data from the peer Failure when receiving data from the peer Failure when receiving data from the peer