实战|记一次云服务器被黑

VSole2023-03-29 17:32:32

您所使用的设备(IP:*下:

吓我一跳,定睛一看,端口6379,不是radis的默认端口吗?前些阵子写项目就用自己的服务器搭了一个radis服务器,不会被黑了吧?百般纳闷,反正说是24小时内,不管,先睡觉

早上爬起来,想用Xshell登录一下服务器看看,结果死活登不上,再在控制台看看,结果还是登不上,心想:完了,不会真被黑了吧?用腾讯云自动实例检测,提示CPU近期占有率高达92%,但是我在服务器中就挂了一个radis和nginx,有鬼!我最后用VNC登录方式成功登录,书到用时方恨少,Linux的运维命令又忘了不少,下面记记Linux问题排查的命令吧

问题排查

查看CPU状态:


top

分析进程

根据任务管理器中的进程,分析与排查问题,以采取对应解决方案。

如果是业务进程占用了大量 CPU 或内存资源,分析业务程序是否有优化空间,进行优化或者升级服务器配置。

如果是异常进程占用了大量 CPU 或内存资源,则可能中毒,需要自行终止进程或者使用安全软件进行查杀,必要时考虑备份数据,重装系统。

例如:

Top 命令的输出信息主要分为两部分,上半部分显示 CPU 和内存资源的总体使用情况:

第一行:系统当前时间,当前登录用户个数以及系统负载。

第二行:系统总进程数、运行中进程数、休眠、睡眠和僵尸进程数量。

第三行:CPU 当前使用情况。

第四行:内存当前使用情况。

第五行:Swap 空间当前使用情况。

下半部分以进程为维度显示资源的占用情况:

PID:进程 ID。

USER:进程所有者。

PR:进程优先级 NI:NICE 值,NICE 值越小,优先级越高。

VIRT:使用的虚拟内存大小,单位 KB。

RES:当前使用的内存大小,单位 KB。

SHR:使用的共享内存的大小,单位 KB。

S:进程状态。

%CPU:更新时间间隔内进程所使用的 CPU 时间的百分比。

%MEM:更新时间间隔内进程所使用的内存的百分比。

TIME+:进程使用的 CPU 时间,精确到 0.01s。

COMMAND:进程名称。

1. 分析占有率异常的进程,记下第一个字段PID

2. 输入k

3. 输入需要终止进程的 PID ,按 Enter

流量检测小工具

如下命令


yum install iftop -y
yum install lsof -y

安装好后,执行如下命令:


iftop

<=、=> 表示流量的方向

TX 表示发送流量

RX 表示接收流量

TOTAL 表示总流量

Cum 表示运行 iftop 到目前时间的总流量

peak 表示流量峰值

rates 分别表示过去2s、10s和40s的平均流量

根据 iftop 中消耗流量的 IP,执行以下命令,查看连接该 IP 的进程。


lsof -i | grep (你要看的那个ip)

然后就可以查询那个异常IP的归属地:归属地查询(https://www.ip138.com/)

查看端口

查看指定端口:


netstat  -anp  | grep  3306  #3306是你要查询的端口号

监控状态为LISTEN表示已经被占用,最后一列显示被服务mysqld占用,查看具体端口号,只要有如图这一行就表示被占用了

如下命令可以查看所有端口:


netstat   -nultp

综上,你需要找到异常端口,然后想办法关闭它

如下,先查询6379端口


lsof -i:6379

然后kill它


kill -9 PID

如果实在没办法,就重装系统吧!

注意!!!!,安装MySQL,redis这样的软件,一定要设置密码,而且不能是简单密码,云服务器环境复杂,很可能有人利用你的漏洞去攻击别人,我初步猜想是有人请求腾讯云内网ip,通过没有设置密码的redis端口漏洞进行感染操作,我就中招了,很遗憾,进行一番操作还是没有排查出问题,只能重装系统,血的教训啊,呜呜

流量iftop
本作品采用《CC 协议》,转载必须注明作者和本文链接
您所使用的设备(IP:*下:吓我一跳,定睛一看,端口6379,不是radis的默认端口吗?前些阵子写项目就用自己的服务器搭了一个radis服务器,不会被黑了吧?用腾讯云自动实例检测,提示CPU近期占有率高达92%,但是我在服务器中就挂了一个radis和nginx,有鬼!我最后用VNC登录方式成功登录,书到用时方恨少,Linux的运维命令又忘了不少,下面记记Linux问题排查的命令吧问题排查查看CPU状态:top
安服工程师技能手册详细总结
鉴于世上有着许多的 Linux 专家和开发者,显然还存在其他的网络监控工具,但在这篇教程中,我不打算将它们所有包括在内。它按每个进程来分组带宽,而不是像大多数的工具那样按照每个协议或每个子网来划分流量。对我而言, nethogs 是非常容易使用的,或许是因为我非常喜欢它,以至于我总是在我的 Ubuntu 12.04 LTS 机器中使用它来监控我的网络带宽。例如要想使用混杂模式来嗅探,可以像下面展示的命令那样使用选项 -p:nethogs -p wlan0
入站流量和出站流量分开来显示。不过由于基于pcap库,iftop能够过滤流量,并报告由过滤器指定的所选定主机连接的带宽使用情况。没有进一步的选项,仅仅实时显示和更新流量的统计信息。
本文介绍几款Linux运维比较实用的工具,希望对Linux管理员有所帮助。-g设置自动模式可使用的最大文件大小Kbytes。-f指定测试文件的名字完成后自动删除-R产生Excel到标准输出-b指定输出到指定文件上3、实时监控磁盘IO-IOTopIOTop命令是专门显示硬盘IO的命令,界面风格类似top命令。
本文介绍几款Linux比较实用的工具,希望有所帮助。eth0#指定监控网卡接口
VSole
网络安全专家