千家信息网

Linux服务器被入侵怎么办

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章主要介绍了Linux服务器被入侵怎么办,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、背景晚上看到有台服务器流量跑的很高,明
千家信息网最后更新 2026年11月02日Linux服务器被入侵怎么办

这篇文章主要介绍了Linux服务器被入侵怎么办,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

一、背景

晚上看到有台服务器流量跑的很高,明显和平常不一样,流量达到了800Mbps,第一感觉应该是中木马了,被人当做肉鸡了,在大量发包。

我们的服务器为了最好性能,防火墙(iptables)什么的都没有开启,但是服务器前面有物理防火墙,而且机器都是做的端口映射,也不是常见的端口,按理来说应该是满安全的,可能最近和木马有缘吧,老是让我遇到,也趁这次机会把发现过程记录一下。

二、发现并追踪处理

1、查看流量图发现问题

查看的时候网页非常卡,有的时候甚至没有响应。

2、top动态查看进程

我马上远程登录出问题的服务器,远程操作很卡,网卡出去的流量非常大,通过top发现了一个异常的进程占用资源比较高,名字不仔细看还真以为是一个Web服务进程。

3、ps命令查看进程的路径

发现这个程序文件在/etc目录下面,是个二进制程序,我拷贝了下来,放到了本文附近位置,以供大家在虚拟机上面研究,哈哈。

4、结束异常进程并继续追踪

1

2

killall -9 nginx1

rm -f /etc/nginx1

干掉进程之后,流量立刻下来了,远程也不卡顿了,难道删掉程序文件,干掉异常进程我们就认为处理完成了么?想想也肯定没那么简单的,这个是木马啊,肯定还会自己生成程序文件(果然不出我所料,在我没有搞清楚之前,后面确实又生成了)我们得继续追查。

5、查看登录记录及日志文件secure

通过命令last查看账户登录记录,一切正常。查看系统文件message并没有发现什么,但是当我查看secure文件的时候发现有些异常,反正是和认证有关的,应该是尝试连进来控制发包?

6、再次ps查看进程

其实第一次ps的时候就有这个问题,那时候没有发现,第二次是自习查看每个进程,自习寻找不太正常的进程,发现了一个奇怪的ps进程。

我找了一台正常的机器,查看了一下ps命令的大小,正常的大约是81KB,然后这台机器上面的ps却高达1.2M,命令文件肯定是被替换了。

然后进入另一个ps的目录,看到有如下几个命令,然后我有查询了一下系统的这几个命令,发现都变得很大,都达到了1.2M,这些系统命令文件肯定是都被替换了。

7、更多异常文件的发现

查看定时任务文件crontab并没有发现什么一次,然后查看系统启动文件rc.local,也没有什么异常,然后进入/etc/init.d目录查看,发现比较奇怪的脚本文件DbSecuritySpt、selinux。

第一个文件可以看出他就是开机启动那个异常文件的,第二个应该和登录有关,具体我还不是很清楚,反正肯定是有问题的。

既然和登录有关,那就找和ssh相关的,找到了下面的一个文件,是隐藏文件,这个也是木马文件,我们先记录下来,这样程序名字都和我们的服务名字很相近,就是为了迷惑我们,他们的大小都是1.2M,他们有可能是一个文件。

我有看了一下木马喜欢出现的目录/tmp,也发现了异常文件,从名字上感觉好像是监控木马程序的。

想到这里,替换的命令应该很多,单靠我们去找肯定是解决不了的,我的建议最好是重装操作系统,并做好安全策略,如果不重装,我下面给一下我的方法,具体行不行有待验证。

三、木马手动清除

现在综合总结了大概步骤如下:

1、简单判断有无木马

1

2

3

4

5

6

7

8

9

10

#有无下列文件

cat /etc/rc.d/init.d/selinux

cat /etc/rc.d/init.d/DbSecuritySpt

ls /usr/bin/bsd-port

ls /usr/bin/dpkgd

#查看大小是否正常

ls -lh /bin/netstat

ls -lh /bin/ps

ls -lh /usr/sbin/lsof

ls -lh /usr/sbin/ss

2、上传如下命令到/root下

1

ps netstat ss lsof

3、删除如下目录及文件

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

rm -rf /usr/bin/dpkgd (ps netstat lsof ss)

rm -rf /usr/bin/bsd-port #木马程序

rm -f /usr/bin/.sshd #木马后门

rm -f /tmp/gates.lod

rm -f /tmp/moni.lod

rm -f /etc/rc.d/init.d/DbSecuritySpt(启动上述描述的那些木马变种程序)

rm -f /etc/rc.d/rc1.d/S97DbSecuritySpt

rm -f /etc/rc.d/rc2.d/S97DbSecuritySpt

rm -f /etc/rc.d/rc3.d/S97DbSecuritySpt

rm -f /etc/rc.d/rc4.d/S97DbSecuritySpt

rm -f /etc/rc.d/rc5.d/S97DbSecuritySpt

rm -f /etc/rc.d/init.d/selinux(默认是启动/usr/bin/bsd-port/getty)

rm -f /etc/rc.d/rc1.d/S99selinux

rm -f /etc/rc.d/rc2.d/S99selinux

rm -f /etc/rc.d/rc3.d/S99selinux

rm -f /etc/rc.d/rc4.d/S99selinux

rm -f /etc/rc.d/rc5.d/S99selinux

4、找出异常程序并杀死

5、删除含木马命令并重新安装(或者把上传的正常程序复制过去也行)

我自己重新安装好像不行,我是找的正常的机器复制的命令。

1

2

3

4

5

6

7

8

9

10

11

12

#ps

/root/chattr -i -a /bin/ps && rm /bin/ps -f

yum reinstall procps -y 或 cp /root/ps /bin

#netstat

/root/chattr -i -a /bin/netstat && rm /bin/netstat -f

yum reinstall net-tools -y 或 cp /root/netstat /bin

#lsof

/root/chattr -i -a /bin/lsof && rm /usr/sbin/lsof -f

yum reinstall lsof -y 或 cp /root/lsof /usr/sbin

#ss

/root/chattr -i -a /usr/sbin/ss && rm /usr/sbin/ss -f

yum -y reinstall iproute 或 cp /root/ss /usr/sbin

四、杀毒工具扫描

1、安装杀毒工具clamav

1

yum -y install clamav clamav-milter

2、启动服务

1

service clamd restart

3、更新病毒库

由于ClamAV不是最新版本,所以有告警信息。可以忽略或升级最新版本。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

[root@mobile ~]# freshclam

ClamAV update process started at Sun Jan 31 03:15:52 2016

WARNING: Can't query current.cvd.clamav.net

WARNING: Invalid DNS reply. Falling back to HTTP mode.

Reading CVD header (main.cvd): WARNING: main.cvd not found on remote server

WARNING: Can't read main.cvd header from db.cn.clamav.net (IP: 185.100.64.62)

Trying again in 5 secs...

ClamAV update process started at Sun Jan 31 03:16:25 2016

WARNING: Can't query current.cvd.clamav.net

WARNING: Invalid DNS reply. Falling back to HTTP mode.

Reading CVD header (main.cvd): Trying host db.cn.clamav.net (200.236.31.1)...

OK

main.cvd is up to date (version: 55, sigs: 2424225, f-level: 60, builder: neo)

Reading CVD header (daily.cvd): OK (IMS)

daily.cvd is up to date (version: 21325, sigs: 1824133, f-level: 63, builder: neo)

Reading CVD header (bytecode.cvd): OK (IMS)

bytecode.cvd is up to date (version: 271, sigs: 47, f-level: 63, builder: anvilleg)

4、扫描方法

可以使用clamscan -h查看相应的帮助信息

1

2

3

4

5

clamscan -r /etc --max-dir-recursion=5 -l /root/etcclamav.log

clamscan -r /bin --max-dir-recursion=5 -l /root/binclamav.log

clamscan -r /usr --max-dir-recursion=5 -l /root/usrclamav.log

clamscan -r --remove /usr/bin/bsd-port

clamscan -r --remove /usr/bin/

5、查看日志发现

把发现的命令删掉替换正常的

附录:Linux.BackDoor.Gates.5

经过查询资料,这个木马应该是Linux.BackDoor.Gates.5,找到一篇文件,内容具体如下:

某些用户有一种根深蒂固的观念,就是目前没有能够真正威胁Linux内核操作系统的恶意软件,然而这种观念正在面临越来越多的挑战。与4月相比,2014年5月Doctor Web公司的技术人员侦测到的Linux恶意软件数量创下了新纪录,六月份这些恶意软件名单中又增加了一系列新的Linux木马,这一新木马家族被命名为Linux.BackDoor.Gates。

在这里描述的是恶意软件家族Linux.BackDoor.Gates中的一个木马:Linux.BackDoor.Gates.5,此恶意软件结合了传统后门程序和DDoS攻击木马的功能,用于感染32位Linux版本,根据其特征可以断定,是与Linux.DnsAmp和Linux.DDoS家族木马同出于一个病毒编写者之手。新木马由两个功能模块构成:基本模块是能够执行不法分子所发指令的后门程序,第二个模块在安装过程中保存到硬盘,用于进行DDoS攻击。Linux.BackDoor.Gates.5在运行过程中收集并向不法分子转发受感染电脑的以下信息:

  • CPU核数(从/proc/cpuinfo读取)。

  • CPU速度(从/proc/cpuinfo读取)。

  • CPU使用(从/proc/stat读取)。

  • Gate'a的 IP(从/proc/net/route读取)。

  • Gate'a的MAC地址(从/proc/net/arp读取)。

  • 网络接口信息(从/proc/net/dev读取)。

  • 网络设备的MAC地址。

  • 内存(使用/proc/meminfo中的MemTotal参数)。

  • 发送和接收的数据量(从/proc/net/dev读取)。

  • 操作系统名称和版本(通过调用uname命令)。

启动后,Linux.BackDoor.Gates.5会检查其启动文件夹的路径,根据检查得到的结果实现四种行为模式。

如果后门程序的可执行文件的路径与netstat、lsof、ps工具的路径不一致,木马会伪装成守护程序在系统中启动,然后进行初始化,在初始化过程中解压配置文件。配置文件包含木马运行所必须的各种数据,如管理服务器IP地址和端口、后门程序安装参数等。

根据配置文件中的g_iGatsIsFx参数值,木马或主动连接管理服务器,或等待连接:成功安装后,后门程序会检测与其连接的站点的IP地址,之后将站点作为命令服务器。

木马在安装过程中检查文件/tmp/moni.lock,如果该文件不为空,则读取其中的数据(PID进程)并"干掉"该ID进程。然后Linux.BackDoor.Gates.5会检查系统中是否启动了DDoS模块和后门程序自有进程(如果已启动,这些进程同样会被"干掉")。如果配置文件中设置有专门的标志g_iIsService,木马通过在文件/etc/init.d/中写入命令行#!/bin/bash\n将自己设为自启动,然后Linux.BackDoor.Gates.5创建下列符号链接:

1

2

3

4

ln -s /etc/init.d/DbSecuritySpt /etc/rc1.d/S97DbSecuritySpt

ln -s /etc/init.d/DbSecuritySpt /etc/rc2.d/S97DbSecuritySpt

ln -s /etc/init.d/DbSecuritySpt /etc/rc3.d/S97DbSecuritySpt

ln -s /etc/init.d/DbSecuritySpt /etc/rc4.d/S97DbSecuritySpt

如果在配置文件中设置有标志g_bDoBackdoor,木马同样会试图打开/root/.profile文件,检查其进程是否有root权限。然后后门程序将自己复制到/usr/bin/bsd-port/getty中并启动。在安装的最后阶段,Linux.BackDoor.Gates.5在文件夹/usr/bin/再次创建一个副本,命名为配置文件中设置的相应名称,并取代下列工具:

1

2

3

4

5

6

7

8

9

/bin/netstat

/bin/lsof

/bin/ps

/usr/bin/netstat

/usr/bin/lsof

/usr/bin/ps

/usr/sbin/netstat

/usr/sbin/lsof

/usr/sbin/ps

木马以此完成安装,并开始调用基本功能。

执行另外两种算法时木马同样会伪装成守护进程在被感染电脑启动,检查其组件是否通过读取相应的.lock文件启动(如果未启动,则启动组件),但在保存文件和注册自启动时使用不同的名称。

与命令服务器设置连接后,Linux.BackDoor.Gates.5接收来自服务器的配置数据和僵尸电脑需完成的命令。按照不法分子的指令,木马能够实现自动更新,对指定IP地址和端口的远程站点发起或停止DDoS攻击,执行配置数据所包含的命令或通过与指定IP地址的远程站点建立连接来执行其他命令。

此后门程序的主要DDoS攻击目标是中国的服务器,然而不法分子攻击对象也包括其他国家。下图为利用此木马进行的DDoS攻击的地理分布:

感谢你能够认真阅读完这篇文章,希望小编分享的"Linux服务器被入侵怎么办"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

文件 木马 命令 程序 进程 服务 服务器 后门 系统 配置 地址 攻击 检查 肯定 恶意 数据 时候 流量 目录 软件 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技公司排名 互联网金融监管科技数据 互联网科技公司税收优惠 华宇互联网科技 青岛互联网科技公司 碳银互联网科技有限公司 上海亿帐通互联网科技 上海电发互联网科技有限公司 创业天下互联网科技有限公司 互联网和黑科技的看法 华夏恒生互联网科技013171 朱啸虎曾投资哪些互联网科技企业 怎样加入科技互联网 互联网科技融合创新 南京一网一红互联网科技有限公司 吉林省码上互联网科技电话 华人运通互联网科技公司 科技互联网专业务虚会材料 现代科技的标志之一的互联网 互联网科技企业文化 友谊互联网络科技 多迪互联网科技有限公司 联恩商钥互联网科技有限公司 剑昆互联网络科技有限公司临桂 来此购互联网科技有限公司 美国互联网科技公司 互联网科技股为什么大涨 国产互联网科技公司 科技互联网专业务虚会材料 中国主要互联网科技公司
0