[Meachines][Hard]Napper
内容提要
该文章介绍了一种名为NAPLISTENER的恶意软件,旨在规避网络检测。文章提供了使用NAPLISTENER扫描工具的示例命令,并介绍了获取用户和管理员密码的方法。最后,文章提到了Elasticsearch分布式搜索和分析引擎。
延伸解读
NAPLISTENER 的隐蔽机制与检测难点
NAPLISTENER 通过内联执行将恶意请求重定向到注册的应用程序,避免在 IIS 日志中留下 404 错误,从而规避基于网络和日志的检测。其 MsEXGHealthd 类中的 Listener 方法创建 HttpListener 对象,处理传入请求并执行 Base64 编码的 .NET 程序集。这种设计使得传统安全工具难以发现异常,防御者需关注非标准 HTTP 头(如 Microsoft-HTTPAPI/2.0)和异常进程行为。
从 Elasticsearch 种子值到密码解密
攻击者利用 Elasticsearch 存储种子和加密数据。种子索引中的 seed 值用于生成 AES 密钥,而 user-00001 索引中的 blob 字段是 Base64 编码的密文。通过逆向 a.exe 可知,程序使用 math/rand 基于种子生成 16 字节密钥,再以 AES CFB 模式解密。掌握种子和密文即可还原备份用户密码,进而通过 RunasCs 提升权限。这凸显了保护密钥管理服务的重要性。
自定义 LAPS 方案的安全风险
文章中的内部文章提到,组织正用自定义方案替换 LAPS,将备份用户密码存储在本地 Elasticsearch 中。然而,该方案存在严重缺陷:种子和加密数据同库存储,且凭据以明文形式出现在 .env 文件中。攻击者一旦访问 Elasticsearch,即可解密密码。这提醒我们,自定义安全方案需经过严格审计,避免引入比原方案更弱的环节。
Q&A
NAPLISTENER恶意软件的主要功能是什么?
NAPLISTENER旨在规避网络检测,处理传入请求并过滤恶意命令。
如何使用NAPLISTENER扫描工具?
可以在Linux或Windows平台上运行NAPLISTENER扫描工具,自动下载依赖程序并执行扫描命令。
NAPLISTENER在什么地区活跃?
NAPLISTENER主要在南亚和东南亚地区活跃。
NAPLISTENER如何处理HTTP请求?
NAPLISTENER通过创建HttpListener对象来处理HTTP请求,并执行Base64编码的.NET程序集。
Elasticsearch在NAPLISTENER中有什么作用?
Elasticsearch用于存储和检索数据,NAPLISTENER利用其数据库生成密钥并解密存储的密码。
如何获取用户和管理员密码?
通过Elasticsearch数据库中的种子值生成密钥,解密存储的密码后可以获取用户备份密码。