Linux系统常见的病毒介绍(附解决方案)

与Windows下五花八门的勒索病毒家族不同,Linux下感染量较大的恶意软件就几个家族。但这几个家族占据了全球大部分的感染主机,几乎呈现出垄断的趋势。本文将介绍Linux环境下7个较常见的流行恶意软件家族,以及其对应的清除步骤。

七大恶意软件家族

BillGates

BillGates在2014年被首次发现,由于其样本中多变量及函数包含字符串”gates”而得名,该病毒主要被黑客用于DDos,其特点是会替换系统正常程序(ss、netstat、ps、lsof)进行伪装

主机中毒现象:

[1] 在/tmp/目录下存在gates.lod、moni.lod文件。

[2] 出现病毒文件夹/usr/bin/bsd-port/。

[3] 主机访问域名www.id666.pw。

[4] 系统文件(ss、netstat、ps、lsof)被篡改过,修改时间异常。

病毒清除步骤:

[1] 清除/usr/bin/bsd-port/getty、.ssh等病毒进程。

[2] 清除/usr/bin/bsd-port/getty、/usr/bin/.sshd等病毒文件。

[3] 从/usr/bin/dpkgd/目录恢复原系统文件。

DDG

DDG是目前更新最频繁的恶意软件家族,同时感染量也十分庞大,黑客使用P2P协议来控制这个僵尸网络,来实现隐藏C&C的目的,该病毒的主要目的为蠕虫式挖矿,特点是版本迭代过程中,病毒文件名保持以ddg.和i.sh的规范命名。

主机中毒现象:

[1] /tmp/目录下出现有ddgs.+数字的ELF文件。

[2] 在/tmp/目录下存在qW3xT.和SzDXM等随机名文件。

[3] 存在下载i.sh的定时任务。

病毒清除步骤:

[1] 清除随机名挖矿进程及对应文件。

[2] 删除母体文件ddg.*。

[3] 删除带有i.sh字符串的定时任务。

[4] 删除ssh缓存公钥authorized_keys。

SystemdMiner

SystemdMiner使用3种方式(YARN漏洞、Linux自动化运维工具、.ssh缓存密钥)进行传播,该病毒前期的文件命名带有Systemd字符串,而后期版本已更换为随机名,其特点是,善用暗网代理来进行C&C通信。

主机中毒现象:

[1] 定时访问带有tor2web、onion字符串的域名。

[2] 在/tmp目录下出现systemd的文件(后期版本为随机名)。

[3] 存在运行systemd-login的定时任务(后期版本为随机名)。

病毒清除步骤:

[1] 清除/var/spool/cron和/etc/cron.d目录下的可疑定时任务。

[2] 清除随机名的挖矿进程。

[3] 清除残留的systemd-login和.sh病毒脚本。

StartMiner

StartMiner于今年2月被发现,由于其进程及定时任务中包含2start.jpg字符串而得名,该病毒通过ssh进行传播,其特点是会创建多个包含2start.jpg字符串的恶意定时任务。

主机中毒现象:

[1] 定时任务里有包含2start.jpg的字符串。

[2] /tmp/目录下存在名为x86_的病毒文件。

[3] /etc/cron.d出现多个伪装的定时任务文件:apache、nginx、root。

病毒清除步骤:

[1] 结束挖矿进程x86_。

[2] 删除所有带有2start.jpg字符串的定时任务。

[3] 清除所有带有2start.jpg字符串的wget进程。

WatchdogsMiner

2019年一个同样以Redis未授权访问漏洞及SSH爆破传播的WatchdogsMiner家族被发现,由于其会在/tmp/目录下释放一个叫watchdogs的母体文件而得名。WatchdogsMiner的初始版本会将恶意代码托管在pastebin.com上以绕过检测,不过后续版本已弃用,改为自己的C&C服务器.systemten.org。该病毒的特点是样本由go语言编译,并试用了伪装的hippies/LSD包(github_com_hippiesLSD)。主机中毒现象:

[1]存在执行pastebin.com上恶意代码的定时任务。

[2]/tmp/目录下存在一个名为watchdogs的病毒文件。

[3]访问*.systemten.org域名。

病毒清除步骤:

[1] 删除恶意动态链接库 /usr/local/lib/libioset.so

[2] 清理 crontab 异常项[3] 使用kill命令终止挖矿进程

[4] 排查清理可能残留的恶意文件:

(a) chattr -i /usr/sbin/watchdogs /etc/init.d/watchdogs /var/spool/cron/root /etc/cron.d/root;

(b) chkconfig watchdogs off;

(c) rm -f /usr/sbin/watchdogs /etc/init.d/watchdogs。

[5] 由于文件只读且相关命令被hook,需要安装busybox并使用busybox rm命令删除。

XorDDos

XorDDoS僵尸网络家族从2014年一直存活至今,因其解密方法大量使用Xor而被命名为XorDDoS,其主要用途是DDos公网主机,特点是样本运用了“多态”及自删除的方式,导致主机不断出现随机名进程,同时采用了Rootkit技术隐藏通信IP及端口。主机中毒现象:

[1] 存在病毒文件/lib/libudev.so。

[2] 在/usr/bin,/bin,/lib,/tmp目录下有随机名病毒文件。

[3]存在执行gcc.sh的定时任务。

病毒清除步骤:

[1] 清除/lib/udev/目录下的udev程序。

[2] 清除/boot下的随机恶意文件(10个随机字符串数字)。

[3] 清除/etc/cron.hourly/cron.sh和/etc/crontab定时器文件相关内容。

[4] 如果有RootKit驱动模块,需要卸载相应的驱动模块,此次恶意程序主要它来隐藏相关的网络IP端口。

[5] 清除/lib/udev目录下的debug程序。

RainbowMiner

RainbowMiner自2019年就频繁出现,由于其访问的C&C域名带有Rainbow字符串而得名,其最大的特点是会隐藏挖矿进程kthreadds,排查人员会发现主机CPU占用率高,但找不到可疑进程。

主机中毒现象:

[1] 隐藏挖矿进程/usr/bin/kthreadds,主机CPU占用率高但看不到进程。

[2] 访问Rainbow66.f3322.net恶意域名。

[3] 创建ssh免密登录公钥,实现持久化攻击。

[4] 存在cron.py进程持久化守护。

病毒清除步骤:

[1] 下载busybox:wget http://www.busybox.net/downlo..._64。

[2] 使用busybox top定位到挖矿进程kthreadds及母体进程pdflushs,并清除。

[3] 删除/usr/bin/kthreadds及/etc/init.d/pdflushs文件,及/etc/rc*.d/下的启动项。

[4] 删除/lib64/下的病毒伪装文件。

[5] 清除python cron.py进程。

加固建议

1、Linux恶意软件以挖矿为主,一旦主机被挖矿了,CPU占用率高,将会影响业务,所以,需要实时监控主机CPU状态。

2、定时任务是恶意软件惯用的持久化攻击技巧,应定时检查系统是否出现可疑定时任务。

3、企业还大量存在ssh弱密码的现象,应及时更改为复杂密码,且检查在/root/.ssh/目录下是否存在可疑的authorized_key缓存公钥。

4、定时检查Web程序是否存在漏洞,特别关注Redis未授权访问等RCE漏洞。

如有错误或其它问题,欢迎小伙伴留言评论、指正。如有帮助,欢迎点赞+转发分享。

欢迎大家关注民工哥的公众号:民工哥技术之路
image.png

阅读 568

推荐阅读
民工哥技术之路
用户专栏

《Linux系统运维指南 从入门到企业实战》一书作者。专注系统架构、高可用、高性能、高并发,数据库、大...

14982 人关注
303 篇文章
专栏主页