文档章节

记一次Linux 病毒清理

LisonSong
 LisonSong
发布于 2015/11/23 10:15
字数 859
阅读 912
收藏 1

#程序员薪资揭榜#你做程序员几年了?月薪多少?发量还在么?>>>

总结:

1、病毒程序每次生成的文件都是 10个随机的字母字符  

2、删除/etc/init.d 下的病毒启动文件 不会触发病毒再生成

3、没有排查思路时,多看看系统日志

最基本的中毒现象:

网卡流量暴增、CPU持续超过100%,发现有一长度为10的随机字符串进程,kill掉,会重新生成另外长度为10的字符串进程。删除文件也会重复生成,非常痛苦。


事后利用病毒的关键词检索发现网上已经有人遇到过类似问题,网上发现源文件的方法:

A、查阅crond相关日志,发现实际执行的内容为/lib/libudev.so ,以此为关键字进行查询

B、strace -tt -p PID  跟踪病毒文件 发现 /lib/libudev.so  然后关键次查询找到 gcc.sh


我在排查中发现病毒源文件的过程:

病毒会开机自启动,开始检查开机自启动的入口


A、cron 定时计划

        发现 gcc.sh 可疑但是不能确定,咨询研发人员,也不能确认。

        找了2个多小时病毒源文件后还是找不到,

        只能find 24 小时内被操作过的文件,过滤掉系统文件,大海捞针。

        最后还是怀疑gcc.sh  尝试将此文件mv 到其他目录,重启服务器后居然会自动生成一个,所以确认是病毒文件。接下来就是顺藤摸瓜了。

B、rc.local

      都是正常的业务启动命令

C、可疑的系统服务  

        发现可疑对象,通过脚本文件定位到  /usr/bin下的病毒文件,但是删除后会立即生成,确认这个只是病毒衍生文件。


排查过程中发现机器在频繁和一个固定IP通讯:

lsof  -p PID 发现就是病毒程序发起的通讯

使用 hosts.deny

或者 iptables封禁此 IP  

网络流量锐减


下面是处理细节:


  1. 网络流量暴增,使用 top 观察有至少一個 10 个随机字母組成的程序執行,佔用大量 CPU 使用率。刪除這些程序,马上产生新的。


    kill掉这个进程或者 rm 掉 /usr/bin/下的病毒文件

       会生成新的进程文件在 /usr/bin 下 同时 生成 服务文件在 init.d/下



  2. 檢查 /etc/crontab 每三分执行 gcc.sh


  3. 查看病毒脚本 gcc.sh,可以看到病毒本体是 /lib/libudev.so。



  4. 刪除上一行例行工作 gcc.sh,並設定 /etc/crontab 无法变动,否則馬上又会产生。

    [root@deyu ~]# rm -f /etc/cron.hourly/gcc.sh ; chattr +i /etc/crontab
  5. 使用 top 查看病毒 mtyxkeaofa,id  16621,不要直接殺掉程序,否则会再产生,而是停止其运行。

    [root@deyu ~]# kill -STOP 16621
  6. 刪除 /etc/init.d 內的服务文件。

    [root@deyu ~]# find /etc -name '*mtyxkeaofa*' | xargs rm -f
  7. 刪除 /usr/bin 內的文件。

    [root@deyu ~]# rm -f /usr/bin/mtyxkeaofa
  8. 查看 /usr/bin 最近变动的文件,如果是病毒删除掉。

    [root@deyu ~]# ls -lt /usr/bin | head
  9. 現在殺掉病毒程序,就不会再产生。

    [root@deyu ~]# pkill mtyxkeaofa
  10. 刪除病毒本体。

    [root@deyu ~]# rm -f /lib/libudev.so


© 著作权归作者所有

LisonSong
粉丝 0
博文 1
码字总数 859
作品 0
技术主管
私信 提问
加载中

评论(0)

如何在Archlinux下上网课

最近,新型冠状病毒肺炎肆虐,学生们不得不延长假期,在家上网课。但有一个大问题:我们没有书。 于是,我们的老师给我们发了PDF格式的电子书,大概长这样: 我们当然可以把它打印出来,但那...

osc_8g67o6g0
02/16
4
0
日常开发用Windows 好还是 Ubuntu好?

最近打算给电脑重新装系统,纠结了很久,不知道应该是换Windows还是Ubuntu,今天通过我自身的体验,来为大家分析一下,日常开发环境到底是用Windows和Ubuntu。 【系统介绍】 Windows系统就不...

osc_fzp57c02
2019/06/16
1
0
Linux操作系统为何会对计算机病毒免疫

可能不少人持这样一种观点,认为 Linux 病毒少是因为Linux不像Windows那么普及,其实这种观点很早已经被人批驳过了,一个最有力的论据是:如果写病毒的人写 Windows 病毒是因为 Windows 用户...

learningloong
2010/09/24
141
0
linux为什么比windows做服务器更好

1.linux本身是网络操作系统,支持所有TCP/IP协议,网络功能是内核中六大模块之一 2.linux和unix兼容,unix是早期的服务器霸主,现在份额逐渐让给linux了 3.linux是多用户多进程系统,windows...

evil_01
2016/03/17
201
1
云服务器中挖矿程序,隐藏进程偷偷的挖之一路赚钱~

阿里云云监控到有两台redis服务器CPU被某进程消耗400%cpu资源 系统查看Top 情况并未找到高消耗进程X7但CPU100%ni Netstat 查找到了一些异常请求,初步判断出组件被提权入侵了 尝试查找异常进...

平头哥他爸
2018/09/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

如何将新的本地分支推送到远程Git存储库并进行跟踪?

问题: I want to be able to do the following: 我希望能够做到以下几点: Create a local branch based on some other (remote or local) branch (via git branch or git checkout -b ) 基......

技术盛宴
55分钟前
31
0
Python笔记:记pandas中几个好用的函数

pandas是python数据分析常用的库之一!从数据加载到预处理,从数据分析到可视化,pandas提供了一站式服务。而以下这几个聚合统计函数,更是好用! 本文主要讲解pandas中的7个聚合统计相关函数...

tengyulong
今天
23
0
使用“ let”和“ var”有什么区别? - What's the difference between using “let” and “var”?

问题: ECMAScript 6 introduced the let statement . ECMAScript 6引入了let语句 。 I've heard it that it's described as a "local" variable, but I'm still not quite sure how it beh......

javail
今天
17
0
如何将文件重置或还原到特定版本? - How can I reset or revert a file to a specific revision?

问题: I have made some changes to a file which has been committed a few times as part of a group of files, but now want to reset/revert the changes on it back to a previous ver......

fyin1314
今天
24
0
OSChina 周五乱弹 —— 头发和不要头发,你总要选一个

Osc乱弹歌单(2020)请戳(这里) 【今日歌曲】 @薛定谔的兄弟 :分享洛神有语创建的歌单「我喜欢的音乐」: 《雾 缀じた街 ふたつのかげ》- Porkkana 手机党少年们想听歌,请使劲儿戳(这里)...

小小编辑
今天
72
1

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部