问题发现:
测试服务器看到 ld-linux-x86-64的进程占用cpu极高,user 是 oracle的。
测试环境不会有这么高的oracle负载。区块链技术盛行,让人不得不怀疑被抓去做矿机了。
问题处理:
1. 初步查询
[root@ncserver ~]# find / -name ld-linux*
/usr/glibc-2.17/lib/ld-linux-x86-64.so.2
/usr/share/man/overrides/ru/man8/ld-linux.so.8.gz
/usr/share/man/overrides/ru/man8/ld-linux.8.gz
/usr/share/man/overrides/man8/ld-linux.so.8.gz
/usr/share/man/overrides/man8/ld-linux.8.gz
/usr/share/man/man8/ld-linux.so.8.gz
/usr/share/man/man8/ld-linux.8.gz
/dev/shm/.ssh/stak/ld-linux-x86-64.so.2
/root/glibc-2.17/build/elf/ld-linux-x86-64.so.2
/lib/ld-linux.so.2
/lib64/ld-linux-x86-64.so.2
通过简单分析,/dev/shm/.ssh/stak/ld-linux-x86-64.so.2应该是黑客模拟系统的文件名称,并且还放在.ssh这个隐藏文件夹下。黑客也有可能写其他跟系统类似的文件,也会放在其他用户比较熟悉的文件夹名称下,混淆视听。
2. 确认入侵
当时删的及时,没注意保存截图。在.ssh文件夹下某个文件夹中有个 config.json文件。有句 “pool_address” : “101.99.84.65:80”,查看IP是马来西亚的,基本确定是被拉去做矿工了。
3.查找config.json并删除
[root@ncserver ~]# find / -name config.json
/dev/shm/.ssh/stak/config.json
[root@ncserver ~]# cd /dev/shm/
[root@ncserver shm]# rm -rf .ssh/
4.修改oracle的密码,删除挖矿进程,你也可以将22端口改成其它的端口更保险
[root@ncserver shm]# passwd oracle
[root@ncserver shm]# kill -9 20612
总结:生产环境再怎么注重安全都不为过,下面给出几条自己总结的建议
1.在生产环境中建议修改ssh的默认远程端口。
2.用户的密码尽量设置的复杂
3.root用户尽量不要允许直接登陆操作系统
4.启用防火墙