转至: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. /usr/local /opt

    Linux 的软件安装目录是也是有讲究的,理解这一点,在对系统管理是有益的 /usr:系统级的目录,可以理解为C:/Windows/, /usr/lib理解为C:/Windows/System32. ...

  2. 定义函数返回 ax2 + bx + c = 0 的两个解

    # -*- coding: utf-8 -*- import math def quadratic(a, b, c): s = b*b - 4*a*c if a == 0: x = -c / b re ...

  3. 数据库查询语句遇到:Unknown column 'XXXX' in 'where clause'解决方法

    数据库查询语句遇到:Unknown colunm 'XXX' in 'where clause'解决方法 根本原因:可能是sql语句所用到的数据类型错误(int与String)弄错- 我的情况: 在网 ...

  4. py调用shell

    py调用shell

  5. python类2

    #!/usr/bin/python #coding=utf-8 #好好学习,天天向上 class Car: """一次模拟汽车的简单尝试""" ...

  6. SpringBoot集成MongoDB之导入导出和模板下载

    前言 自己很对自己在项目中集成MongoDb做的导入导出以及模板下载的方法总结如下,有不到之处敬请批评指正! 1.pom.xml依赖引入 <!-- excel导入导出 --> <de ...

  7. [luoguP4139]上帝与集合的正确用法

    \(\text{Description}\) \(\text{Given a number }p(p\leqslant10^7).\) \(\text{Output }2^{2^{2^{2^{\cdo ...

  8. 开源项目(asyncHttpClient) get post 方式提交

    get方式: 1 public static void requestNetForGetLogin(final Context context,final Handler handler ,final ...

  9. JAVA面向对象复习

    对象:真实存在的唯一的事物. 类: 同一种类型的事物公共属性与公共行为的抽取. java面向对象语言: 核心思想: 找适合的对象做适合的事情. 找对象的方式: 方式一: sun已经定义好了很多了类,我 ...

  10. 常用汉字大全:汉字读音表GB2312版(共7809个汉字)

    转载请注明来源:https://www.cnblogs.com/hookjc/ 常用汉字:a1:阿啊呵腌吖锕a2:啊呵嗄a3:啊呵a4:啊呵ai1:哀挨埃唉哎捱锿ai2:呆挨癌皑捱ai3:矮哎蔼霭嗳a ...