记录服务器被入侵病毒:ssh密码被更改登录失败、恶意程序跑满了cpu、jar包启动失败自动kill、一直弹出You have new mail in /var/spool/mail/root

记录服务器被入侵病毒:ssh密码被更改登录失败、恶意程序跑满了cpu、jar包启动失败自动kill、一直弹出You have new mail in /var/spool/mail/root

问题现象:

ssh登录密码:无缘无故没人动服务器密码就被更改过,也向同事咨询过没人动过服务器,然后通过修改密码重新登录服务器。
jar包启动失败:启动jar包,随后不久直接被kill

[root@k8s-n4 discovery]# java -jar discovery-1.0.0.RELEASE.jar 

################################################
# #
# ## # # ## ### ### ## ### #
# # # # # # # # # # # # # #
# ### # # ### # # # ## # #
# # # ### ### # # # ### # # ### #
# #
# Obfuscation by Allatori Obfuscator v6.4 DEMO #
# #
# http://www.allatori.com #
# #
################################################

2021-02-18 09:08:01.045  INFO 19907 --- [           main] s.c.a.AnnotationConfigApplicationContex: Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@1376c05c: artup date [Thu Feb 18 09:08:01 CST 2021]; root of context hierarchy
...
Killed

不断弹出You have new mail in /var/spool/mail/root:
查看这个的相关内容会发现一直有ERROR

|| ERROR || already running…

From root@k8s-n4.localdomain  Thu Feb 18 09:12:01 2021
Return-Path: <root@k8s-n4.localdomain>
X-Original-To: root
Delivered-To: root@k8s-n4.localdomain
Received: by k8s-n4.localdomain (Postfix, from userid 0)
	id 9ABDD43E1F; Thu, 18 Feb 2021 09:12:01 +0800 (CST)
From: "(Cron Daemon)" <root@k8s-n4.localdomain>
To: root@k8s-n4.localdomain
Subject: Cron <root@k8s-n4> /root/.sshd/sshd
Content-Type: text/plain; charset=UTF-8
Auto-Submitted: auto-generated
Precedence: bulk
X-Cron-Env: <XDG_SESSION_ID=5360>
X-Cron-Env: <XDG_RUNTIME_DIR=/run/user/0>
X-Cron-Env: <LANG=en_US.UTF-8>
X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <HOME=/root>
X-Cron-Env: <PATH=/usr/bin:/bin>
X-Cron-Env: <LOGNAME=root>
X-Cron-Env: <USER=root>
Message-Id: <20210218011201.9ABDD43E1F@k8s-n4.localdomain>
Date: Thu, 18 Feb 2021 09:12:01 +0800 (CST)

||  ERROR  || already running...

第一反应是以为服务器资源不足导致的

查看运行内存、磁盘空间都是足够的
在这里插入图片描述
在这里插入图片描述

被人入侵了,搞了个定时任务,把CPU资源全占用了。系统为了保持稳定,所以自动kill进程

top #查看占用CPU等情况

在这里插入图片描述

直接去进行kill这个sshd的程序会重新生成新的
kill -9 2172 #将这个名为sshd、pid为2172的程序kill掉

crontab -l #查看定时任务
果然这个就是根本问题 被写入了定时任务

在这里插入图片描述

解决

直接把定时任务修改清除

crontab -e #修改定时任务
#进入编辑模式之后直接删除然后wq保存退出

修改root密码

passwd root #修改root密码 建议修改复杂密码 可以去搜个随机密码

删除病毒文件
在这里插入图片描述
在这里插入图片描述

rm -rf /root/.sshd #直接把这个可疑的目录删除掉

查看进程详情
ll /proc/7289
在这里插入图片描述
我也删除了/usr/bin/sshd程序 并通过yum重新安装、启动
然后修改了ssh的端口号 将默认的22端口号做修改

查看计划性任务,因为并不是只通过crontab -e这一种方法进行修改
检查cron.目录下是否有新增的程序
在这里插入图片描述
检查了/etc/cron
所有目录下,我看到有几个都新增了这pwnrig程序我就都删除了
直接删除删除不了 因为添加了—-ia属性
在这里插入图片描述
进行删除
随后我怕还有cron计划性任务被修改了东西,我就通过yum进行卸载了然后再重新安装。

检查是否有新增用户,查看到/home目录下新增一个user用户也是近期添加的
使用userdel user 删除用户并不成功
可以通过直接修改/etc/passwd以及/etc/shadow文件
看到文件最下面有关于user用户的信息直接删除并保存退出

大概是我以上步骤操作后,我再次尝试这个kill程序,这个程序会被我kill掉,但是当我重新连接服务器的时候,也就是linux服务器用户登录的时候这个程序还是会生成,也就是说用户登录的时候会加载环境变量,这个攻击者把服务器的环境变量做了修改,导致我一登陆就会产生这个程序!

登陆是加载环境变量
检查文件
cat /etc/profile
cat /root/.bash_profile
果然发现了端倪
在这里插入图片描述
直接进去修改保存不了,被修改了文件属性
在这里插入图片描述
删除添加的东西然后进行保存

由刚才环境变量的文件中可以得知他把/bin/下的一个程序进行了复制
进入到/bin目录下,因为之前得知大概的时间在Feb月进行筛查在这里插入图片描述
可以看到几个可疑的文件都进行删除

[root@k8s-n4 bin]# rm -rf bprofr 
rm: cannot remove ‘bprofr’: Operation not permitted
[root@k8s-n4 bin]# rm -rf crondr 
rm: cannot remove ‘crondr’: Operation not permitted
[root@k8s-n4 bin]# rm -rf initdr
rm: cannot remove ‘initdr’: Operation not permitted
[root@k8s-n4 bin]# rm -rf sysdr
rm: cannot remove ‘sysdr’: Operation not permitted
[root@k8s-n4 bin]# chattr -ia bprofr crondr initdr sysdr
[root@k8s-n4 bin]# rm -rf bprofr crondr initdr sysdr

最后再尝试kill这个进程,这个名为sshd的程序被我kill了,并且不会重新生成,以及重新登录服务器的时候也不会产生这个程序
解决前:
在这里插入图片描述
解决后:
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/101819.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 压力测试tps是啥意思_高并发压力测试

    压力测试tps是啥意思_高并发压力测试最近在对代码进行压力测试,这里整理一下压测中的指标和方法。文章目录1压力测试中的指标1.1TPS1.2QPS1.3平均处理时间(RT)1.4并发用户数(并发量)1.5换算关系1.5TPS和QPS的区别2压力测试方法3相关文档1压力测试中的指标1.1TPSTPS即TransactionsPerSecond的缩写,每秒处理的事务数目。一个事务是指一个客户机向服…

    2022年4月19日
    94
  • loadlibrary 失败的解决方法

    loadlibrary 失败的解决方法前段时间由于工作的电脑问题,只好重装电脑。然而,在我使用Qt尝试使用Loadlibrary动态调用DLL时却不成功,然后我使用Qt自带的动态调用API来尝试,依旧失败。起初觉得有点意外,搞了两天无果。后来才想起重装前曾经有装过某一个烧录工具,后来我尝试了一下,果然!Loadlibrary又调用成功了!我尝试找原因,结果我发现,原来Loadlibrary失败,是因为一个简单的原因,就是我没用

    2022年7月13日
    16
  • 《剑指offer》– 斐波那契数列、跳台阶问题 、变态跳台阶问题、矩阵覆盖

    《剑指offer》– 斐波那契数列、跳台阶问题 、变态跳台阶问题、矩阵覆盖

    2021年9月26日
    64
  • Java:JVM垃圾回收机制[通俗易懂]

    Java:JVM垃圾回收机制[通俗易懂]JVM垃圾回收机制提到Java垃圾回收机制就不得不提到一个方法:system.gc()用于调用垃圾收集器,在调用时垃圾收集器将运行以回收未使用的内存空间,它将尝试释放被丢弃对象所占用的空间。作为程序员有必要了解gc方法,这也是在面试中经常会被问及的问题:我们从三个方面来理解gc:1.JVM如何确定哪些空间能被回收?2.JVM会在什么时候进行垃圾清除的动作?3.JVM如何清除垃圾的?1.JVM如…

    2022年6月3日
    37
  • ScriptManager局部刷新「建议收藏」

    ScriptManager局部刷新「建议收藏」ScriptManager和UpdatePanel控件联合使用可以实现页面异步局部更新的效果。其中的UpdatePanel就是设置页面中异步局部更新区域,它必须依赖于ScriptManager存在,因为ScriptManger控件提供了客户端脚本生成与管理UpdatePanel的功能。几个重要的属性:ScriptManager控件的EnablePartialRendering属性:true…

    2022年7月13日
    14
  • ora00279解决办法_oracle物化视图日志表

    ora00279解决办法_oracle物化视图日志表某物化视图在增量刷新的时候报错ora-00920,尝试全量刷新的时候,报错ora-00904。BEGINDBMS_MVIEW.REFRESH(‘MV_ABCD_K_PPLLCJ’,’F’);END;ORA-12018:在创建”MYJUKKA”.”MV_ABCD_K_PPLLCJ”的代码时出现以下错误ORA-00920:无效的关系运算符ORA-06512:在”SYS.SNAPSHOT”,line…

    2022年9月20日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号