中国领先的IT技术网站
|
|

Linux 服务器中木马及木马清除

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

作者:zpp来源:厦门微思网络|2017-11-17 10:24

开发者大赛路演 | 12月16日,技术创新,北京不见不散


一、背景

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

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

二、发现并追踪处理

1、查看流量图发现问题

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

2、top动态查看进程

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

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

  1. killall -9 nginx1  
  2. rm -f /etc/nginx1 

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

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

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

7、更多异常文件的发现

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

三、木马手动清除

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

1、简单判断有无木马

  1. #有无下列文件 
  2. cat /etc/rc.d/init.d/selinux 
  3. cat /etc/rc.d/init.d/DbSecuritySpt 
  4. ls /usr/bin/bsd-port 
  5. ls /usr/bin/dpkgd 
  6. #查看大小是否正常 
  7. ls -lh /bin/netstat 
  8. ls -lh /bin/ps 
  9. ls -lh /usr/sbin/lsof 
  10. ls -lh /usr/sbin/ss 

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

  1. ps netstat ss lsof 

3、删除如下目录及文件

  1. rm -rf /usr/bin/dpkgd (ps netstat lsof ss) 
  2. rm -rf /usr/bin/bsd-port #木马程序 
  3. rm -f /usr/bin/.sshd #木马后门 
  4. rm -f /tmp/gates.lod 
  5. rm -f /tmp/moni.lod 
  6. rm -f /etc/rc.d/init.d/DbSecuritySpt(启动上述描述的那些木马变种程序) 
  7. rm -f /etc/rc.d/rc1.d/S97DbSecuritySpt 
  8. rm -f /etc/rc.d/rc2.d/S97DbSecuritySpt 
  9. rm -f /etc/rc.d/rc3.d/S97DbSecuritySpt 
  10. rm -f /etc/rc.d/rc4.d/S97DbSecuritySpt 
  11. rm -f /etc/rc.d/rc5.d/S97DbSecuritySpt 
  12. rm -f /etc/rc.d/init.d/selinux(默认是启动/usr/bin/bsd-port/getty) 
  13. rm -f /etc/rc.d/rc1.d/S99selinux 
  14. rm -f /etc/rc.d/rc2.d/S99selinux 
  15. rm -f /etc/rc.d/rc3.d/S99selinux 
  16. rm -f /etc/rc.d/rc4.d/S99selinux 
  17. rm -f /etc/rc.d/rc5.d/S99selinux 

4、找出异常程序并杀死

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

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

  1. #ps 
  2. /root/chattr -i -a /bin/ps && rm /bin/ps -f 
  3. yum reinstall procps -y 或 cp /root/ps /bin 
  4. #netstat 
  5. /root/chattr -i -a /bin/netstat && rm /bin/netstat -f 
  6. yum reinstall net-tools -y 或 cp /root/netstat /bin 
  7. #lsof 
  8. /root/chattr -i -a /bin/lsof && rm /usr/sbin/lsof -f 
  9. yum reinstall lsof -y 或 cp /root/lsof /usr/sbin 
  10. #ss 
  11. /root/chattr -i -a /usr/sbin/ss && rm /usr/sbin/ss -f 
  12. yum -y reinstall iproute 或 cp /root/ss /usr/sbin 

【编辑推荐】

  1. 无服务器技术大神不得不说的五个技巧
  2. Web服务器、应用程序服务器、HTTP服务器区别
  3. 如何确保您的服务器完全容错
  4. 如何设计运维友好的服务器端系统
  5. 服务器租用托管数据中心日新月异,管理层面该当如何?
【责任编辑:武晓燕 TEL:(010)68476606】


点赞 0
分享:
大家都在看
猜你喜欢

视频课程+更多

热门职位+更多

读 书 +更多

Fedora Core 5 Linux架站与网管

Linux出色的网络功能堪称当今操作系统中的佼佼者,无论在功能还是在支持能力上都有令人满意的表现。Linux内置的多个服务器,几乎包含了目前...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊