起因
凌晨群内网友的腾讯云服务器被腾讯云提醒在进行对外攻击:
并且提示有对其他服务器的6379端口攻击行为,而6379是redis的默认端口:
经过
按照搜索引擎的结果,该服务器应该是变成了肉鸡,在对外进行DDoS攻击,被害者关闭了redis服务并且通过netstat查看了可疑的发包进程并且kill掉,又删除了攻击者自动下载的masscan和pnscan后,DDoS情况得到缓解。后来在继续排查的时候发现CPU占用率100%,并且htop显示有两个kswapd0在运行,并且还有[scan]和[mass]两个进程,这两个进程也不是好东西。
在通过netstat -antlp
后,我们发现有个欧洲的IP一直连接本机,并且与kswapd0有关,这个IP也就是后面知道的elastic.zzhrecieve.top
:
接着我们通过如下图方式定位恶意程序的位置,并且发现了好玩的东西:
这浓眉大眼的是个挖矿脚本,挖的是门罗币,并且配置文件交代了它的url。接着我们搜到了这个url相关的一篇安全文章:
文章中提到了所有与这个攻击相关的可疑文件,如果后续排查存在困难,可以参考其文末的文件列表来比对,当然想完全清除是比较困难的……
结果
所以你还敢公网裸奔Redis?提高安全意识!
当然如果你是在docker里跑的并且docker被攻击,那么删掉直接重新拉一个新的docker是比较快捷的方法(大嘘)
关于top排查不到占用的问题(htop似乎可以看到):
Top有CPU占用但找不到占用的进程 (被病毒隐藏了)
其他相关博客与网页:
阿里云服务器被入侵执行MoneroOcean(门罗币)挖矿脚本
Watchdog 还是 TeamTNT?一例攻击归因刍议
Watchdog 还是 TeamTNT?一例攻击归因刍议
惊!我的 Redis 被挖矿脚本注入了