Ubuntu16.04.06 LTS -bash 进程占用cpu很高,中了挖矿病毒

Posted 玩电脑的辣条哥

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ubuntu16.04.06 LTS -bash 进程占用cpu很高,中了挖矿病毒相关的知识,希望对你有一定的参考价值。

环景:

Ubuntu16.04.06 LTS

问题描述:

-bash 进程占用cpu很高,别的进程开启运行过后就被它killed,-bash一直占用50%的CPU,服务器被拉的嗷嗷叫

在这里插入图片描述

解决方案:

1.netstat -antlp|grep -e -bash -e rsync 查看进程通信信息**

在这里插入图片描述与外国157.245.164.26地址通信

htop
在这里插入图片描述

2.root@ps-SYS-4028GR-TR:/# crontab -l 查看计划任务

          • /dev/shm/.bash/bash

删除crontab任务:crontab -r

3.ls -l /proc/28505/exe #28505为当时进程号 查看进程位置
lrwxrwxrwx 1 root root 0 Nov 5 13:04 /proc/28505/exe -> /usr/bin/-bash (deleted)
显示的是这个样子 exe -> /usr/bin/-bash (deleted) 表示在运行已经被删除,是刻意隐藏代码的一种手段

进程和文件定时任务清除后,还是会隔一段时间自动开启
继续检查

4.查看环境变量.bash_profile时发现存在异常:

root@ps-SYS-4028GR-TR:~# cat .bash_profile 查看环境变量
cp -f -r – /bin/bprofr /bin/-bash 2>/dev/null && /bin/-bash -c >/dev/null 2>&1 && rm -rf – /bin/-bash 2>/dev/null

5.发现木马文件/bin/bprofr

删除,rm –rf /bin/bprofr,执行时报如下错误:
rm –rf /bin/bprofr : Operation not permitted

root@ps-SYS-4028GR-TR:/bin# lsattr bprofr 查看文件属性
----ia-------e-- bprofr
root@ps-SYS-4028GR-TR:/bin# chattr -ia bprofr 去除属性
root@ps-SYS-4028GR-TR:/bin# rm -rf bprofr 删除文件
继续观察观察····

才消停几个小时,又发作
查看bin目录下5个文件,-bash(大爷)、 initdr、 sysdr、 bprofr(之前已经删了)、 crondr,这5大包工头黑壳工具,4个都是属于uucps组
在这里插入图片描述
在这期间一不留神误删了正常bash,欲哭无泪····
恢复文章
在这里插入图片描述

6.删除5大包工头和环境变量(提示没有权限,更改权限再删除)
root@ps-SYS-4028GR-TR:~# vi .bash_profile
提示没有权限
[7]+ Stopped vi .bash_profile
root@ps-SYS-4028GR-TR:~# lsattr .bash_profile
----ia-------e-- .bash_profile
root@ps-SYS-4028GR-TR:~# chattr -ia .bash_profile
root@ps-SYS-4028GR-TR:~# vi .bash_profile
root@ps-SYS-4028GR-TR:~# cat .bash_profil

把这些文件导出用火绒扫了下,360扫不出
在这里插入图片描述在这里插入图片描述

入侵排查整理

  1. 定时任务排查

定时任务crontab是挖矿病毒都会用到的东西,所以定时任务一定要看。

1crontab-l #列出所有的定时任务

2crontab -r #删除所有的定时任务,可能会删除我们自己的配置信息,不推荐使用

3crontab -e #编辑crontab文件

一些需要关注的定时任务文件

1/var/spool/cron/* #centos的

2/var/spool/cron/crontabs/* #ubuntu的

3/var/spool/anacron/*

4/etc/crontab

5/etc/anacrontab #异步定时

6/etc/cron.hourly/*

7/etc/cron.daily/*

8/etc/cron.weekly/

9/etc/cron.monthly/*

  1. 用户密码

排查/etc/passwd

1stat/etc/passwd #查看密码文件上一次修改的时间,如果最近被修改过,那就可能存在问题。

2cat /etc/passwd | grep-v nologin #查看除了不可登录以外的用户都有哪些,有没有新增的

3cat /etc/passwd | grepx: 0#查看哪些用户为root权限,有没有新增的

4cat /etc/passwd | grep/bin/bash#查看哪些用户使用shell

  1. 导出操作记录

如果攻击者没有删除造作记录,我们可以从操作记录中发现一些我们想要的东西

1exportHISTTIMEFORMAT= "%F %T whoami "#设置history显示时间和用户名

2history> /home/xxx/history.log

  1. 日志

日志总是能发现一些蛛丝马迹,所以日志也同样重要。存放在/var/log目录下的东西都认真看一下

1/var/ log/secure #记录安全相关的日志,重点看一下

2/var/ log/btmp #登陆失败的日志记录

3lastb -f btmp-2020xxxx #可以查看过去的某个登录失败记录

4/var/ log/wtmp #登陆成功的日志记录

5#wtmp和btmp只能使用 last和lastb命令查看,不能直接打开看内容的。

6/var/ log/yum.log #安装记录,我们可以看一下最近有没有安装一些特殊的依赖库什么的

  1. 进程排查

1top 命令可以直接清除看到实施情况。

2ps aux --sort=pcpu | head -10#查看cpu占用率前十的进程,有时候可以发现top发现不了的东西

3ls -l /proc/*/exe | grep xxx #如果我们知道恶意程序的启动文件大致位置,可以使用这个发现无文件的恶意进程

  1. 域名hosts

有一些挖矿程序会修改 /etc/hosts文件,请看一下其中内容是否被更改过

前两天在另外的项目组上发现的某个挖矿病毒就会修改hosts文件

这是从那台服务器上提取的一些恶意的配置内容

10 .0.0.0aliyun.one

20 .0.0.0lsd.systemten.org

30 .0.0.0pastebin.com

40 .0.0.0pm.cpuminerpool.com

50 .0.0.0systemten.org

7.网络连接

有时候我们通过网络连接发现有些IP很可以,就可以通过ip找到进程发现问题。

1netstat-antlp | grep x.x.x.x | awk ‘{print $7}’ | cut -f1 -d “/”#获取存在某ip的进程id号

以上是关于Ubuntu16.04.06 LTS -bash 进程占用cpu很高,中了挖矿病毒的主要内容,如果未能解决你的问题,请参考以下文章

ubuntu16.04.06新建系统用户

Ubuntu16.04用户使用Sudo命令不用输入密码,免密码

从Ubuntu 14.04 LTS版升级到Ubuntu 16.04 LTS

将 Ubuntu 16.04 LTS 升级到 Ubuntu 18.04 LTS

如何从Ubuntu14.04LTS更新到Ubuntu16.04LTS

无法登录 Ubuntu 20.04 LTS [关闭]