如何让“瘟疫”渗透Linux系统而不留痕迹
安全研究人员发现了一种异常隐蔽的Linux后门,甚至连VirusTotal都未能检测到,该后门通过恶意可插入认证模块(PAM)危害系统。Nextron研究人员将其命名为“瘟疫”,这种隐蔽后门让攻击者能够悄无声息地绕过认证,建立持久的安全外壳(SSH)访问。
“瘟疫深度集成到认证栈中,能够在系统更新后存活,并几乎不留下任何取证痕迹,”研究人员在博客文章中表示。“结合分层混淆和环境篡改,这使得使用传统工具检测异常困难。”
该植入程序伪装成Linux可信认证框架PAM,使攻击者能够获得隐蔽访问。自2024年7月29日开始活跃,并在2025年3月出现了新变种,研究人员补充道。
Nextron观察到的有效负载带有Debian、Ubuntu和其他发行版的编译痕迹,表明针对Linux环境的更广泛目标。
集成到认证栈中
瘟疫的架构使其能够深度集成到系统认证栈中,通过一个看似良性的共享库文件(libselinus.so.8)操作,同时劫持PAM函数,如“pam_sm_authenticate()”,这是验证用户登录凭据的机制。
注入使瘟疫成为登录过程的一部分,通过硬编码密码为攻击者提供隐藏后门,无需用户认证,研究人员补充道。由于它在认证级别操作,不需要单独的恶意软件加载器或持久性机制。后门在每次调用PAM栈时触发,例如通过SSH或sudo。
劫持合法系统行为的设计也使瘟疫能够抵抗升级,并难以用传统安全工具检测,包括VirusTotal上的防病毒引擎。
“尽管过去一年中该后门的多个变种已更新到VirusTotal,但没有一个防病毒引擎将其标记为恶意,”研究人员表示。“据我们所知,没有关于此威胁的公开报告或检测规则可用,表明它已在多个环境中悄悄规避检测。”
根据博客中分享的截图,过去一年上传到VirusTotal的数十个变种注册了0/66的检测率。
从混淆到审计规避
瘟疫的隐蔽性从编译时开始。早期版本使用简单的基于XOR的字符串编码,但后来的变种部署了多层加密,包括自定义KSA/PRGA例程和基于DRBG的阶段,以混淆解密的有效负载和字符串。
使用高级加密例程,包括密钥调度算法(KSA)、伪随机生成算法(PRGA)和确定性随机位生成(DRBG)等算法,为规避静态签名扫描和基于沙箱的分析工具提供了分层保护。
尽管运行时间长,但瘟疫的归属仍然未知。然而,恶意软件的作者在反混淆例程后留下了一些线索。一个名为“hijack”的样本在“pam-authenticate”后打印的消息中引用了电影《黑客》。“呃,瘟疫先生,先生?我认为我们有一个黑客,”消息说。
Nextron建议采用基于行为、内存和PAM的取证策略。此外,建议安全团队主动审计PAM配置,监控/lib/security/中新删除的.so文件,并跟踪环境级篡改或可疑的清理行为。