本文将介绍 Linux 环境下 7 个较常见的流行恶意软件家族, 以及其对应的清除步骤.
与 Windows 下五花八门的勒索病毒家族不同, Linux 下感染量较大的恶意软件就几个家族. 但这几个家族占据了全球大部分的感染主机, 几乎呈现出垄断的趋势. 本文将介绍 Linux 环境下 7 个较常见的流行恶意软件家族, 以及其对应的清除步骤.
七大恶意软件家族
1. BillGates
BillGates 在 2014 年被首次发现, 由于其样本中多变量及函数包含字符串 "gates" 而得名, 该病毒主要被黑客用于 DDos, 其特点是会替换系统正常程序 (ss,netstat,ps,lsof) 进行伪装.
主机中毒现象:
在 / tmp / 目录下存在 gates.lod,moni.lod 文件.
出现病毒文件夹 / usr/bin/bsd-port/.
主机访问域名 www.id666.pw.
系统文件 (ss,netstat,ps,lsof) 被篡改过, 修改时间异常.
病毒清除步骤:
清除 / usr/bin/bsd-port/getty,.SSH 等病毒进程.
清除 / usr/bin/bsd-port/getty,/usr/bin/.sshd 等病毒文件.
从 / usr/bin/dpkgd / 目录恢复原系统文件.
2. DDG
DDG 是目前更新最频繁的恶意软件家族, 同时感染量也十分庞大, 黑客使用 P2P 协议来控制这个僵尸网络, 来实现隐藏 C&C 的目的, 该病毒的主要目的为蠕虫式挖矿, 特点是版本迭代过程中, 病毒文件名保持以 ddg. 和 i.sh 的规范命名.
主机中毒现象:
/tmp / 目录下出现有 ddgs.+ 数字的 ELF 文件.
在 / tmp / 目录下存在 qW3xT. 和 SzDXM 等随机名文件.
存在下载 i.sh 的定时任务.
病毒清除步骤:
清除随机名挖矿进程及对应文件.
删除母体文件 ddg.*.
删除带有 i.sh 字符串的定时任务.
删除 SSH 缓存公钥 authorized_keys.
3. SystemdMiner
SystemdMiner 使用 3 种方式 (YARN 漏洞, Linux 自动化运维工具,.SSH 缓存密钥) 进行传播, 该病毒前期的文件命名带有 Systemd 字符串, 而后期版本已更换为随机名, 其特点是, 善用暗网代理来进行 C&C 通信.
主机中毒现象:
定时访问带有 tor2web,onion 字符串的域名.
在 / tmp 目录下出现 systemd 的文件(后期版本为随机名).
存在运行 systemd-login 的定时任务(后期版本为随机名).
病毒清除步骤:
清除 / var/spool/cron 和 / etc/cron.d 目录下的可疑定时任务.
清除随机名的挖矿进程.
清除残留的 systemd-login 和. sh 病毒脚本.
4. StartMiner
StartMiner 于今年 2 月被发现, 由于其进程及定时任务中包含 2start.jpg 字符串而得名, 该病毒通过 SSH 进行传播, 其特点是会创建多个包含 2start.jpg 字符串的恶意定时任务.
主机中毒现象:
定时任务里有包含 2start.jpg 的字符串.
/tmp / 目录下存在名为 x86_的病毒文件.
/etc/cron.d 出现多个伪装的定时任务文件: apache,nginx,root.
病毒清除步骤:
结束挖矿进程 x86_.
删除所有带有 2start.jpg 字符串的定时任务.
清除所有带有 2start.jpg 字符串的 wget 进程.
5. WatchdogsMiner
2019 年一个同样以 Redis 未授权访问漏洞及 SSH 爆破传播的 WatchdogsMiner 家族被发现, 由于其会在 / tmp / 目录下释放一个叫 watchdogs 的母体文件而得名. WatchdogsMiner 的初始版本会将恶意代码托管在 pastebin.com 上以绕过检测, 不过后续版本已弃用, 改为自己的 C&C 服务器. systemten.org. 该病毒的特点是样本由 go 语言编译, 并试用了伪装的 hippies/LSD 包(github_com_hippiesLSD).
主机中毒现象:
存在执行 pastebin.com 上恶意代码的定时任务.
/tmp / 目录下存在一个名为 watchdogs 的病毒文件.
访问 *.systemten.org 域名.
病毒清除步骤:
(1) 删除恶意动态链接库 /usr/local/lib/libioset.so
(2) 清理 crontab 异常项
(3) 使用 kill 命令终止挖矿进程
(4) 排查清理可能残留的恶意文件:
- chattr -i /usr/sbin/watchdogs /etc/init.d/watchdogs /var/spool/cron/root /etc/cron.d/root;
- chkconfig watchdogs off;
- rm -f /usr/sbin/watchdogs /etc/init.d/watchdogs.
(5) 由于文件只读且相关命令被 hook, 需要安装 busybox 并使用 busybox rm 命令删除.
6. XorDDos
XorDDoS 僵尸网络家族从 2014 年一直存活至今, 因其解密方法大量使用 Xor 而被命名为 XorDDoS, 其主要用途是 DDos 公网主机, 特点是样本运用了 "多态" 及自删除的方式, 导致主机不断出现随机名进程, 同时采用了 Rootkit 技术隐藏通信 IP 及端口.
主机中毒现象:
存在病毒文件 / lib/libudev.so.
在 / usr/bin,/bin,/lib,/tmp 目录下有随机名病毒文件.
存在执行 gcc.sh 的定时任务.
病毒清除步骤:
清除 / lib/udev / 目录下的 udev 程序.
清除 / boot 下的随机恶意文件(10 个随机字符串数字).
清除 / etc/cron.hourly/cron.sh 和 / etc/crontab 定时器文件相关内容.
如果有 RootKit 驱动模块, 需要卸载相应的驱动模块, 此次恶意程序主要它来隐藏相关的网络 IP 端口.
清除 / lib/udev 目录下的 debug 程序.
7. RainbowMiner
RainbowMiner 自 2019 年就频繁出现, 由于其访问的 C&C 域名带有 Rainbow 字符串而得名, 其最大的特点是会隐藏挖矿进程 kthreadds, 排查人员会发现主机 CPU 占用率高, 但找不到可疑进程.
主机中毒现象:
隐藏挖矿进程 / usr/bin/kthreadds, 主机 CPU 占用率高但看不到进程.
访问 Rainbow66.f3322.NET 恶意域名.
创建 SSH 免密登录公钥, 实现持久化攻击.
存在 cron.py 进程持久化守护.
病毒清除步骤:
下载 busybox:wget http://www.busybox.net/downloads/binaries/1.31.0-defconfig-multiarch-musl/busybox-x86_64.
使用 busybox top 定位到挖矿进程 kthreadds 及母体进程 pdflushs, 并清除.
删除 / usr/bin/kthreadds 及 / etc/init.d/pdflushs 文件, 及 / etc/rc*.d / 下的启动项.
删除 / lib64 / 下的病毒伪装文件.
清除 python cron.py 进程.
加固建议
Linux 恶意软件以挖矿为主, 一旦主机被挖矿了, CPU 占用率高, 将会影响业务, 所以, 需要实时监控主机 CPU 状态.
定时任务是恶意软件惯用的持久化攻击技巧, 应定时检查系统是否出现可疑定时任务.
企业还大量存在 SSH 弱密码的现象, 应及时更改为复杂密码, 且检查在 / root/.SSH / 目录下是否存在可疑的 authorized_key 缓存公钥.
定时检查 Web 程序是否存在漏洞, 特别关注 Redis 未授权访问等 RCE 漏洞.
来源: http://netsecurity.51cto.com/art/202005/617281.htm