某天中午老板微信发来一个域名,手机打开看是个色情网站,如下图:
老板说网站被黑了,原来是网站被黑帽搞了SEO,让应急恢复网站业务。
用电脑浏览器访问网站,发现页面内容为空白,但右键打开源码发现有东西:
会对访问者的UA进行检测,并且JS会进一步检测是否为手机UA,检测到手机UA才会跳转到色情页面。
用向日葵连接运维电脑进行远程应急,连上后,发现网站是用虚拟主机来搭建。
通常购买虚拟主机服务后,虚拟主机控制台会提供一个FTP地址和FTP账号密码,开发把源码上传至虚拟主机FTP服务器上进行网站部署,然后在主机管理页面绑定域名就能访问网站业务。整个部署过程虚拟主机服务商仅提供FTP账号密码进行文件管理,无法对网站服务器进行管理控制。
控制台有文件管理功能、数据库管理、主机状态管理。
首先来到主机状态管理,先把网站给关停,然后进行文件管理功能,对网站目录压缩,下载源码进行分析
分析web.config
.htaccess
httpd.ini
文件内容均未发现异常,排除劫持配置文件导致的SEO
.htaccess
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !^.*(\.css|\.js|\.gif|\.png|\.jpg|\.jpeg|\.bmp)$
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
RewriteRule ^(.*)App/Tpl/(.+).html$ / [NC,F]
</IfModule>
web.config
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="OrgPage" stopProcessing="true">
<match url="^(.*)$" />
<conditions logicalGrouping="MatchAll">
<add input="{HTTP_HOST}" pattern="^(.*)$" />
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="index.php/{R:1}" />
</rule>
<rule name="disableDownloadHtml">
<match url="^App/Tpl/.*.html$" ignoreCase="true" />
<action type="CustomResponse" url="/" statusCode="403" statusReason="Forbidden" statusDescription="Forbidden" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
httpd.ini
RewriteRule (.*)$ /index\.php\?s=$1 [I]
对整个目录都进行搜索(大佬们有没有更好的搜索工具推荐),搜索结果显示整个网站源码文件中只有一个文件被修改 :
\wwwroot\Data\runtime\Data\config_cn.php
文件在runtime
缓存目录下,config.cn.php
文件内容返回一个数组,想到把文件里面的seo内容给删掉看看网站会不会恢复正常。结果删除相应内容后访问网站还是会发生跳转,继续分析可能是网站配置被修改,打开数据库查找相关的config表进行排查:
果不其然,seo内容被注入到数据库内。删掉数据库中的SEO内容,并且把config.cn.php
内容修改后网站业务恢复正常。
由于是虚拟主机无法对网站wwwroot目录以外的目录进行访问,所以无法获取网站服务器内的各种日志,通过查看虚拟主机控制面板,也没有日志管理功能,这里无法通过日志进行溯源分析。但是我们可以对网站进行分析。
访问网站后台,发现该网站使用youdiancms
搭建:
访问数据库admin表,发现存在多个管理用户:
并且所有密码都是MD5加密,cmd5能查到所有密码,登录后台进行分析,在基本设置
功能内看到了SEO内容,
继续分析其他设置,上传设置
:
可以看到被添加php、php3等后缀,后台可以直接任意文件上传,分析服务器文件也发现了大马:
test.php
由此推测黑客利用弱口令登录后台直接修改配置文件进行色情SEO,并且利用youdiancms
后台文件上传功能获得网站服务器控制权限。
中途相关负责人联系到大厂工程师进群协助:
学习下大厂的应急处置流程:
首先大概是安装waf agent
对服务器进行扫描
发现是虚拟主机后采用另外一套方案,直接修改域名cname解析上saas waf进行防护:
开waf授权:
saas waf配置:
把域名CNAME 记录值 配置成saas waf提供的地址:
waf生效:
大厂YYDS,向大厂学习应急处理流程。