记录并浅析一次服务器被黑事件

一.基本情况

[[319287]]

偶然发现一台web服务器很怪异,其网站页面上增加了一堆外文的页面链接,点击一篇进去之后,内容如下图所示:

该网站是中文网站,绝不可能存在上述的页面内容,同时页面中嵌入一堆的JS代码。很明显,该网站已经被黑,为避免遭受进一步的危害,紧急采取措施让服务器下线。由于该台服务器部署于单位异地远程机房,下线后无法直接对服务器进行分析,只是采取远程协同分析日志文件的方式(拿到一些web日志文件,以及一些异常PHP文档),因此无法实施深入分析。

服务器是windows系统,使用Apache作为web服务器,网站基于PHP+WordPress开发。服务器基本情况:

二.页面简单分析

上图中的JS代码如下表所示:

经过简单分析,很明显上表中的这段代码应该是攻击者的XSS跨站漏洞利用代码,主要用于获取访问该页面的用户的cookie信息,根据函数名称getCookie也很容易得知其功能。

上述代码中base64加密部分解密后后内容如下:

可知,攻击者XSS服务器为193.238.46.57,地址查询如下图所示,目前该页面无法访问。

三.日志分析

1、access.log日志

分析该日志,发现了密码暴力猜解记录、漏洞攻击历史记录、wordpress登陆操作、网页爬虫等记录。

a) 大量暴力破解或DDOS攻击报文

通过查看日志发现,每天有大量的IP访问wordpress网站xmlrpc.php文件。利用POST方式提交发送数据,由于日志中无法看到POST数据报文内容,猜测应该是用于暴力密码穷举;wordpress管理登陆接口做了防暴力破解防护,利用xmlrpc.php接口可以绕过上述登陆限制,可以通过post数据到xmlrpc.php进行密码破解尝试,该行为也导致服务器资源损耗严重。

b) 大量漏洞攻击记录

日志中同样发现大量的漏洞攻击记录,尤其是对ThinkPHP5远程代码执行漏洞的利用尝试,说明恶意网络攻击行为很频繁。下表是服务器一天中遭受漏洞攻击的情况:

提取恶意URL列表如下:

c) WordPress登陆操作

从access.log 中发现了一些Wordpress后台管理成功登陆的操作,说明Wordpress的账户密码已失陷,根据时间和登陆IP判断不属于管理员。同时这些操作重复次数多,且发生操作的IP也不定,因此怀疑本台服务器的攻击者不止一个,可能是遭受多个自动化的网络攻击行动所致。

d) 网页爬虫记录

分析一天的日志文件,从中发现了如下的爬虫信息,如下表所示,其中SEMrushBot和头条爬虫在这一天中最为活跃。

对于网站运营者来说,发现网站被黑后采取措施对被黑服务器系统进行清理。但是其实由于“搜索引擎爬虫”的不辞辛劳的卖力干活,其实网站被黑的页面已被爬取并留存证据。

2、error.log日志

查看error.log发现了一些问题,比如大批量的错误提示在一堆怪异英文名字命名的PHP文件中“找不到“check_is_bot.php”文件,最早出现的提示是2018年1月20日,说明服务器早在2年前就已经被黑,如下表:

于是,跑到C:\phpStudy\WWW\wordpress2\wp-content\plugins\anything-order-by-terms\modules\,发现目录下确实多了一堆怪异英文名字的PHP文件。

anything-order-by-terms是一个wordpress插件,通过该插件,可以在管理屏幕上的内置列表中轻松拖放来安排任何帖子类型和术语。(使用者已不知道是否自己安装)

改名下总共有430多个PHP文件以及几十个php.suspected文件,一些php文件名列表如下图所示:

同时,发现这些文件的生成时间是:2018年1月12日15:29分钟。

于是到往前追溯,发现1月12日13:33有异常的错误日志,关联到404.php

此外,在这些目录下面,确实发现check_is_bot.php相关的文件:check_is_bot.php.suspected,同时在目录下也发现了其他的一堆以php.suspected结尾的文件,如下图所示,判断应该是被杀毒软件重命名了。

check_is_bot.php的文件内容如下:

解码后的PHP代码如下图所示:

打开任意一个怪异英文名php文件,发现其实是一个html页面,其中每个页面首部都添加了一段PHP代码,用于包含check_is_bot.php,并且执行一段js代码。如下表所示:

jscs.min.js的内容查看如下:

简单分析代码,先对M5s字符串进行处理,处理的代码如下,即每隔2个字节经过parseInt转换,再转换成字符串,接着调用setTimeout执行。

四.小结

本次分析只是简单记录服务器被黑的情况,由于网站本身对外提供服务功能有限,日常访问使用人数不多,导致运营者基本没有维护管理,从几年都没有发现问题可以看出。相信这种情况,很多单位都存在,有些小网站系统由于一时的业务需要,利用开源框架架设完毕后,功能能用就放着不管了,后续不会投入资源进行更新、维护和管理,甚至都不记得有这个网站系统。随着网络安全监督力度加大,这些容易被忽视的网站很容易出现违法违规情况,如果遭受网络攻击后造成不良影响,可能影响企业的正常经营活动,建议必须投入资源关注:

1、汇总摸清单位所有对外服务器的情况;

2、明确各个服务器使用和管理责任部门和人员;

3、实施网站日常巡查制度;

4、勤更新升级补丁;

5、限制网站后台管理;

6、定期实施网络安全评估;

7、投入资源建设、升级网站安全防护软硬件系统。

 

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/136074.html<

(0)
管理的头像管理
上一篇2025-03-01 22:13
下一篇 2025-03-01 22:14

相关推荐

  • jsp空间购买和交换数据空间怎么买,有哪些注意事项?

    购买JSP空间时,是否考虑过数据交换空间的性能?简米科技(2003年始创,23年行业沉淀)与酷番云(工信部一类增值电信全牌照)这类持牌自营机房的服务商,能确保数据交换的高效稳定,是值得优先选择的合作伙伴,为什么JSP空间需要搭配独立的数据交换空间从JSP应用特性看数据交换需求JSP基于Java技术,常用于企业级……

    2026-08-11
    0
  • 建网站用香港空间效果怎么样,香港空间稳定吗?

    建网站用香港空间,对于创建网站资产来说,核心价值在于免备案和全球带宽优势,尤其适合外贸、跨境电商和需要快速启动的项目,但你必须权衡国内访问延迟,并选择有资质的服务商以保证资产安全,香港空间的核心优势与适用边界免备案:节省时间就是节省成本国内服务器需要备案,通常需要10到20天,香港空间无需备案,域名解析后即可上……

    2026-08-11
    0
  • Java连接云数据库的方法是什么,如何操作

    Java连接云数据库的核心在于通过JDBC驱动,结合云服务商提供的连接地址、端口、数据库名及认证信息,配置安全策略(如SSL、IP白名单),即可实现稳定高效的远程数据库访问,基础准备:JDBC驱动与依赖管理连接云数据库前,需要确保开发环境具备对应的JDBC驱动,以最常见的MySQL为例,你需要引入mysql-c……

    2026-08-11
    0
  • 建网站公安联网备案必须使用数据码吗,备案流程是什么

    网站备案包括ICP备案和公安联网备案,两者缺一不可,公安联网备案必须使用服务商提供的数据码,选择持有合法资质的服务商是顺利通过备案的前提,为什么网站必须进行公安联网备案根据公安部《计算机信息网络国际联网安全保护管理办法》,网站开通后30日内必须到公安机关办理备案手续,未完成公安备案的网站,面临责令整改、关闭网站……

    2026-08-10
    0
  • 建一个企业网站大概需要多少钱?,怎么收费?

    建网站要多少钱,没有一个固定的数字,几百到几万都可能,但真正的“创建网站资产”绝不仅仅是初次投入的成本,而是基于长期稳定、合规和安全的持续性投入,其中核心取决于你选择了什么样的“地基”来承载你的业务,建站预算的构成与行业基准当你开始规划一个网站,最先面对的就是预算问题,一个常见的误区是只关注网站“看起来”的建造……

    2026-08-10
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注