零、前言
2018年11月17日下午,准备写篇文章(我的blog基于最新版的wordpress,搭建在香港的一台主机上,非独立IP,使用cPanel进行管理),顺手看了主机的情况,于是出现心塞的发现一个奇怪的php文件。然后:
“哎,这文件时间不对呀”
“打开看看,这好像shell啊”
“卧槽,这是shell啊”
一、Webshell分析
心痛的我第一时间把所有网站数据(代码、日志、数据等)全部打包下载下来,方便后续溯源,然后直接关闭了blog。后面两天因为要搬砖,没来得及去分析,空闲时间就先把blog在aliyun重新搭建了。
手头的事情了结后,开始了溯源分析,首先对整站的所有代码以工具+手工的方式进行了一遍shell搜索,攻击者肯定会在一些隐蔽的地方放置后门,以保证权限的持久。经过搜索全站大约有十几个shell(去重之后大约还剩一半),shell大致分三种:
1、文件包含方式,几乎三分之一的shell都会去包含一个异常的ico文件,其中为shell代码
shell文件名主要是各个目录下的index.php、随机生成以及写入已有文件三种方式,其中一个比较有辨识度的shell名为:
wp-load-5b7a23c0744615b7a23c0744af.php
Google一下,第1页几乎全是它的shell地址
同时还搜到了一个德国的帖子,一个月前晒出他在服务器上发现的shell文件,就包含上面那个同名文件。
然后针对这个”Mister Spy“进一步搜索
首个链接进去是个国外的网站,wikipedia上说这是一个收集存在Web安全漏洞网站的网站,位于爱沙尼亚,点击去可以看到
发现这这个网站会收集入侵网站链接,包含时间、提交者、重要程度、国家、证据链接(一般是个黑页)、系统以及镜像(一个被入侵的详情镜像)。从统计信息上看这个人搞了上万个站?但是这里并没有这个提交者”Mister Spy“的信息。然后搜索到了”Mister Spy“的Youtube账户:
https://www.youtube.com/user/TheMrSpyders
视频都是他如何批量搞站,主要目的在于出售工具,比特币交易
其中一个视频的评论处找到了他的ICQ:712083179
继续搜索,发现其github账号,账号里有他开发的批量工具,根据Youtube上的视频,也许blog里的shell就与工具有关。
也发现wordpress官网关于这个ID的帖子
https://wordpress.org/support/topic/hacked-by-mister-spy-and-font-problem/
那我们整理一下:
ID:Mister Spy
ICQ:712083179
zone-h:http://www.zone-h.org/archive/notifier=Mister Spy
Youtube:https://www.youtube.com/user/TheMrSpyders
Github:https://github.com/MisterSpyx/Mister-Spy-Bot-V4
在其中一个shell中发现了这些信息:
bypass 1.0, Devloped By El Moujahidin (the source has been moved and devloped)
Email: contact@elmoujehidin.net
它是和上面ID存在一定关联,也可能只是shell的开发者。
二、日志分析
根据木马的时间:2018年11月8号4点11分,定位到当时的日志文件,可以看到攻击者进入了后台并通过上传插件的方式获得了webshell。
但是并没有看出来怎么进的后台,然后接着往前翻,发现大约一周前就开始出现了大量扫描和爆破的痕迹,而且还是针对性的字典(也可能是工具动态生成的)
同时发现攻击者每10几次请求就会更换IP,基本上都是恶意IP,然后做了些数据统计,比如访问最高的前20个IP:
203.133.170.13 629 113.250.237.150 245 223.104.210.219 225 123.1.151.44 217 66.249.71.108 117 220.181.125.138 113 31.184.238.156 110 31.184.238.77 109 31.184.238.43 108 31.184.238.27 108 31.184.238.62 108 31.184.238.33 107 31.184.238.52 105 31.184.238.15 102 173.208.200.154 101 221.202.201.85 101 222.223.204.186 101 220.124.240.66 101 84.242.180.254 99 92.247.181.28 98
几乎全是恶意IP
然后统计了7、8、9三天的访问情况,发现每天凌晨01点到05点都有相对较高的访问量
只是还是不知道怎么进的后台,从日志上看攻击者的爆破并没有成功,因为一个成功的登陆的是这样的
它的状态码是302,要向后台跳转;登陆错误是200,返回的界面还是登陆界面。目前想到的一个原因跟我之前在网站目录中放置的一个php文件有关系,当时为了测试某个漏洞运行在上面的一个脚本,本身可以进行任意文件写入,但是不看源码很难发现的。无奈只有11月份当月的日志,没办法详细追查下去。
三、工具分析
上面提到的那个github账号里有四个相关的项目
1、https://github.com/MisterSpyx/Mister-Spy-Bot-V4
里面都是各种webshell以及黑页
2、https://github.com/MisterSpyx/PythonBot
一个自动化漏洞利用工具,内置了许多payload,有点错误,简单调式即可运行,我将blog源码在本地搭建后扫了一遍,没有利用成功。
3、https://github.com/MisterSpyx/Mister-Spy-Bot-V5
无法访问
4、https://github.com/MisterSpyx/Grab-Sites-With-Ips
根据IP反向解析域名
所以被入侵的关键是
4、https://github.com/MisterSpyx/Grab-Sites-With-Ips
根据IP反向解析域名
这个吗
好奇操作手法
具体原因还真不知道,服务器默认删除上个月的日志,主机服务商也没有备份,没法往后查下去