转至:https://blog.csdn.net/xinxin_2011/article/details/84936581

服务器使用的是Centos7.2 64位系统。发现服务器异常,一般先想到用top命令查看占用CPU高的进程,但如果是高手入侵,可能会替换掉你系统的一些重要命令。所以建议装系统后,把诸如/usr/bin目录的top、ps、kill等重要命令先备份好。一旦发现被入侵,先检查这些命令是否被篡改,如果你使用凶手的kill,当然怎么也杀不死对方了。
这里发现没异常,直接使用top命令:

这里是一个名为sustse进程,先别急着kill掉,把PID号(9594)记下来。用ps命令查看进程详细信息:

赶紧去/var/tmp/目录下看一下,有哪些文件:

果然有可疑的sustse文件,而且sustse3、kworkerds和kworkerds3与该文件大小一致,应该是副本,都删除掉,并杀死sustse进程:

kill -9 9594

光结束这个进程还不够,一般都会有定时任务能够重启的,这里使用crontab命令查看下:

果然有,使用crontab –e命令将其删除(操作与vi类似修改文件):

这样恶意代码暂时就无法启动了,再检查一下启动文件是否有日期异常的,防止系统重启后恶意程序又被启动。需要检查/etc/rc.d目录下的init.d和rcx.d(x从0-6)所有文件。
然后缉拿真凶,使用who命令查看一下用户信息:

没有异常,检查一下系统最近系统登录信息,看看是否被入侵,使用lastlog命令:

除了自己root登录过,其他没有异常。再使用last命令列出当前和曾经登入系统的用户信息:

这里除了自己登录外,还有个218.68.199.250的IP登录过,在18:15分还重启过系统,问题就是他了,入侵者可能创建一个新的存放用户名及密码文件,可以查看/etc/passwd及/etc/shadow文件:

passwd-是passwd文件最后一次备份,对比两个文件,可以鉴别是否被修改掉。Shadow文件与此类似。
通过查看/var/log/secure日志文件,尝试发现入侵者的信息,这里查看密码验证通过的信息:

为防止再次入侵,不仅要修改root密码,最好修改ssh登录端口,使用命令“vi /etc/ssh/sshd_config”将默认的22端口改为别的,比如2233。别忘在防火墙里开放这个端口,要不登录不了了,终端执行:

iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 2233 -j ACCEPT
iptables-save

为保险起见,查看一下已开放的端口:

iptables -nL --line-number

然后重启ssh服务,执行命令:

systemctl restart sshd.service

这时原来连接会断开的,然后把端口改为2233再重新登录即可。另外如果确认某个IP是恶意的访问(比如上文的218.68.199.250),可以在防火墙中将其禁掉:

iptables -I INPUT -s 218.68.199.250 -j DROP

设置完后别忘了重启防火墙才能生效。

Linux系统发现占用CPU达100%的进程并处理的更多相关文章

  1. Linux系统内存占用90%以上 ?

    问题: [root@dbserver01 zx_epp_db]# free -m total used free shared buffers cached Mem: 15953 14706 1246 ...

  2. Linux系统内存占用90%以上——解决方法

    Linux系统内存占用90%以上--解决方法   首先要明确一个问题:Linux系统内存占用90%以上,是否属于正常范围?网上有详细的解释,这属于正常现象~~~    www.2cto.com   L ...

  3. 【SQL Server】SQL Server占用CPU使用率100%的解决方法

    原文:[SQL Server]SQL Server占用CPU使用率100%的解决方法 近日,帮一个客户解决了服务器CPU占用率高达100%的问题. 以前做的一个某污水处理厂自控系统项目,客户反映其自控 ...

  4. 阿里云kubernetes遭入侵pubg进程占用cpu资源100%解决方法

    发现服务器CPU占用100%,通过top命令发现pubg -c config.json -t 2占用CPU资源,kill进程会自动启动.黑客入侵方式是kubernetes创建pod. Name: ku ...

  5. 【转】Linux 下取进程占用 cpu/内存 最高的前10个进程

    # Linux 下 取进程占用 cpu 最高的前10个进程ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head # linux 下 取进程占用内存 ...

  6. linux下获取占用CPU资源最多的10个进程

    linux下获取占用CPU资源最多的10个进程,可以使用如下命令组合: ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head linux下获取占用 ...

  7. 操作系统复习——如何查看一个进程的详细信息,如何追踪一个进程的执行过程 ,如何在 Linux 系统下查看 CPU、内存、磁盘、IO、网卡情况?epoll和select区别?

    1. 如何查看一个进程的详细信息,如何追踪一个进程的执行过程 通过pstree命令(根据pid)进行查询进程内部当前运行了多少线程:# pstree -p 19135(进程号) 使用top命令查看(可 ...

  8. linux 下取进程占用 cpu/内存 最高的前10个进程

    linux下获取占用CPU资源最多的10个进程,可以使用如下命令组合: ;|head linux下获取占用内存资源最多的10个进程,可以使用如下命令组合: ;|head 命令组合解析(针对CPU的,M ...

  9. Linux下查看占用CPU资源最多的几个进程

    linux下获取占用CPU资源最多的10个进程: ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head linux下获取占用内存资源最多的10个进 ...

随机推荐

  1. golang中结构体中的嵌套

    package main import "fmt" type Base struct { name string } func (b *Base) m1() int { retur ...

  2. zabbix-server3.4安装

    1.安装yum源 rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-1.el7.noarch.rp ...

  3. (2)puppet单机测试命令apply

    单机测试apply命令: 以独立的方式,将清单中的配置应用于本机,也就是说,根据配置清单配置当前服务器. 1.apply这个子命令有很多选项,而我们常用的有debug.verbose.noop等,de ...

  4. vue中清除路由缓存

    beforeRouteLeave (to, from, next) { if (to.name === 'pageA') { /* pageA是需要跳转的路由 */ // console.log('返 ...

  5. Java高级语法之反射

    Java高级语法之反射 什么是反射 java.lang包提供java语言程序设计的基础类,在lang包下存在一个子包:reflect,与反射相关的APIs均在此处: 官方对reflect包的介绍如下: ...

  6. mysql加强(4)~多表查询

    mysql加强(4)~多表查询:笛卡尔积.消除笛卡尔积操作(等值.非等值连接),内连接(隐式连接.显示连接).外连接.自连接 一.笛卡尔积 1.什么是笛卡尔积: 数学上,有两个集合A={a,b},B= ...

  7. 用socket写一个简单的服务器

    import socketsk=socket.socket()sk.bind(("127.0.0.1",7001))sk.listen()def login(url): with ...

  8. Vue 之 浏览本地图片功能

      template <input type="file" ref="input_file" @change="fileChange" ...

  9. VC中如何将资源打包并释放到指定文件夹

    转载请注明来源:https://www.cnblogs.com/hookjc/ 很多时候,我们可能要将某些文件打包到资源中,然后当程序执行的时候,发现缺少某些文件时,进行自我修复,以维持程序的正常执行 ...

  10. CSS布局居中

    1.把margin设置为auto,此方法只能进行水平的居中,且对浮动元素或绝对定位元素无效.