传统 IRC 僵尸网络活动利用自动化 SSH 入侵管道大规模招募 Linux 主机

2026-02-12 01:35:08 1 34

SSHStalker 是一种新发现的 Linux 僵尸网络,它在使用自动化方式通过 SSH 入侵服务器的同时,重新引入了 Internet Relay Chat(IRC)控制。它主要通过猜测弱密码或重复使用的密码来成功入侵,然后将每个主机变成进行更多扫描和安装的跳板。


SSHStalker 是一种新发现的 Linux 僵尸网络,它在使用自动化方式通过 SSH 入侵服务器的同时,重新引入了 Internet Relay Chat(IRC)控制。
它主要通过猜测弱密码或重复使用的密码来成功入侵,然后将每个主机变成进行更多扫描和安装的跳板。
在 2026 年初观察到的蜜罐入侵中,攻击者投下了一个名为“nmap”的 Go 语言二进制文件,实际上用于探测端口 22 以寻找新目标。
随后他们下载了 GCC,编译了小型 C 文件,并解压了如 GS 和 bootbou.tgz 等分层归档文件,以部署 IRC 僵尸程序和辅助工具。
准备数据还引用了 2026 年 1 月近 7000 条新鲜的 SSH 扫描结果,包括许多大型云主机范围内的 IP 地址。

Flare 研究人员在检查其样本、流量和基础设施后,发现该集群是以前未记录过的,并与公开报告和常见恶意软件集合进行了对比。
他们描述该操作为规模优先,由拼接起来的组件构建,优先考虑运行时间和低成本而不是隐蔽性,并在 Linux 构建之间重复。
“SSHStalker 攻击流程”追踪了构建和运行管道,包括用 C 和 Perl 编写的多个 IRC 机器人变体以及冗余服务器和通道。


同一套还会编译针对 shell 历史记录和 utmp/wtmp/lastlog 记录的日志清理程序,并且它携带了老旧的 Linux 2.6.x 漏洞利用程序,这些程序在被遗忘的机器上仍然可以发挥作用。

反弹式持久化

持久化手段虽然简单但非常有效:SSHStalker 会记录其工作目录,并添加一个每分钟运行一次的 cron 任务来执行更新看门狗。
如果防御者终止了主进程,脚本会检查 PID 文件并重启运行程序,通常在大约 60 秒内恢复控制。
这种快速恢复意味着响应人员必须删除套件的每一部分,否则在事件处理完成前,木马会再次返回。
“妥协指标”展示了实际的修复方式:删除每分钟的 cron 条目,删除完整的套件目录(通常在 /dev/shm),并查找由“发行版”助手添加的服务或初始化脚本。
为防止再次入侵,禁用 SSH 密码认证,强制使用基于密钥的访问,限制暴力破解尝试,并限制 SSH 暴露在可信网络中。
在主机上,监测用户目录、/tmp 或/dev/shm 中意外的 GCC 或 make 运行,以及编译后几分钟内执行的新二进制文件。
在网络边缘,监测 IRC 客户端注册和频道加入,并使用出口过滤,以防止服务器与未知的 IRC 基础设施保持长期出站 TCP 会话。

关于作者

weak_hong4篇文章13篇回复

评论1次

要评论?请先  登录  或  注册
  • 1楼
    4 小时前

    ### 结论 SSHStalker通过弱密码暴力破解SSH服务建立入口(**Source**),借助编译型恶意负载(如nmap伪造二进制、C编译的IRC客户端)扩散(**Sink**),依赖cron持久化和IRC指令实现C2控制。攻击链依赖未更新xi统的脆弱性(如Linux 2.6.x漏洞)和临时目录执行权限滥用。 --- ### 分析路径 **L1攻击面识别** 1. **入口点(Source)** - SSH服务暴露的端口22(弱密码、复用密码) - 过时Linux内核漏洞(如2.6.x) 2. **传播链** - 感染主机作为扫描跳板(通过伪造的nmap Go二进制扫描端口22) - 分层压缩包解压部署IRC僵尸程序(GS、bootbou.tgz) 3. **持久化机制** - 每分钟cron任务重启恶意进程 - PID文件监控实现快速复活 **L2假设与验证** 1. **假设**:恶意二进制以/tmp或/dev/shm为临时执行目录 - **验证**:检查`/dev/shm`目录下异常文件及最近修改时间,结合`find /dev/shm -mmin -10` 2. **假设**:GCC被用于编译C恶意代码 - **验证**:检查编译记录(`history | grep gcc`),并分析`/var/log/secure`中非授权用户的gcc/make进程 3. **假设**:IRC客户端通过TCP连接到C2服务器 - **验证**:抓包分析出站IRC流量(6667/6697端口),或检查`netstat -anpt | grep irc` **L3边界/异常场景** 1. **老旧漏洞利用场景** - 验证主机内核版本(`uname -a`),若为2.6.x需紧急升级 2. **日志篡改检测** - 检查`/var/log/wtmp`/`/var/log/lastlog`文件属性及内容完整性(`stat`命令对比时间戳) 3. **快速恢复机制测试** - 手动终止恶意进程后,观察`ps`或`systemctl`是否在60秒内自动重启 **L4防御反推与修复** 1. **切断入口(Source)** - 禁用SSH密码登录(`PasswordAuthentication no` in sshd_config) - 限制SSH源IP(IPTables/安全组规则) 2. **阻断Sink链路** - 删除`/dev/shm`可疑目录及cron任务(`crontab -l | grep -v "watchdog" | crontab -`) - 阻断IRC出站连接(`iptables -A OUTPUT -p tcp --dport 6667 -j DROP`) 3. **加固与监控** - 监控临时目录执行权限(`chmod 1777 /tmp`确保粘滞位但禁止写入恶意二进制) - 部署编译行为告警(如通过auditd监控gcc/make的执行) - 更新内核及基础软件,移除闲置服务 --- ### 可执行验证步骤 1. **终端侧** ```bash # 检查异常cron任务 grep "/dev/shm" /etc/cron* -R # 查找内存目录中可疑文件 find /dev/shm -type f -exec file {} \; | grep "executable" # 验证日志清理痕迹 stat /var/log/utmp | grep Modify ``` 2. **网络侧** ```bash # 实时监控IRC连接 tcpdump -i any 'port 6667 or port 6697' -nn -B 512 -X # 统计SSH暴力破解来源IP awk '{print $11}' /var/log/secure | grep "Failed password" | cut -d " " -f1 | sort | uniq -c ``` --- ### 修复建议 1. **强认证** - 强制SSH密钥认证,禁用root登录,部署Fail2ban限制暴力破解 2. **最小化暴露面** - 通过SSH端口改移、内网白名单策略限制访问来源 3. **持续检测** - 监控`/tmp`/`/dev/shm`的异常文件及进程树(如`ps fax | grep nmap`) - 使用EDR工具标记非授权的IRC连接行为 --- 关键点:攻击核心依赖临时目录执行权限和SSH弱认证,修复需从入口控制、Sink路径阻断、以及快速检测反弹行为三方面切入。