AhnLab 安全情报中心 (ASEC) 已确认 Lazarus 组织发起攻击,入侵正常服务器并将其用作 C2 的案例。针对国内网络服务器安装Webshell和C2脚本的攻击案例不断出现,也有确认存在LazarLoader恶意软件和提权工具的案例。
1. C2脚本(代理)
2024年5月,确认Lazarus组织攻击了国内某网络服务器,并将其作为第一阶段C2服务器。第一阶段 C2 服务器充当下一阶段 C2 服务器的代理,调解恶意软件与第二阶段 C2 服务器之间的通信。作为参考,由于目标 Web 服务器是 IIS 服务器,因此使用了 ASP 格式的 Web Shell 和 C2 脚本,与卡巴斯基在 2020 年 12 月披露的类型相同。https://securelist.com/lazarus-covets-covid-19-related-intelligence/99906/
图1. 与卡巴斯基发布的C2脚本类型相同
2025 年 1 月确认的攻击也被认为被 Lazarus 组织用作第一阶段 C2 服务器的基础设施,与过去的事件类似。也就是说,第一阶段的C2脚本已经被识别,虽然与过去的案例并不完全相同,但其充当代理的实际功能是相似的。与前一种情况不同的是,通信过程支持 Cookie 数据以及表单数据。
图 2. 新发现的 C2 脚本
如果是表单数据,则根据作为“code”项传递的数字,命令会有所不同,如果是通过cookie传递,则会在内部进行解析和使用。
表 1. 表单模式支持的命令
表 2. Cookie 方法支持的命令
在过去的案例中,都会使用“_ICEBIRD007.dat”和“~F05990302ERA.jpg”这样的文件,而这次使用的数据在引用Webshell变量名时如下。
表 3. 使用的数据文件
2. WebShell分析
2025年1月披露的攻击案例与2024年5月披露的案例类似,都使用了RedHat Hacker Web Shell,以“function2.asp”的名称安装。作为参考,在之前的案例中,RedHat Hacker webshell使用的密码“1234qwer”与HvS-Consulting AG过去发布的报告中提到的相同,但此次使用的webshell的特点是使用“2345rdx”。
图 3. RedHat Hacker Web Shell
除了RedHat Hacker之外,在被感染的系统上还发现了“file_uploader_ok.asp”和“find_pwd.asp”两个webshell,这两个webshell实际上是完全相同的。它是一个不提供UI的Webshell,但支持文件和进程操作、SQL查询等查询功能。作为参考,所有已确认的 Web Shell 和 C2 脚本均采用编码的 VBE 格式,即使在解密后也会被混淆。
webshell“file_uploader_ok.asp”和“find_pwd.asp”检查收到数据的第二、第三个字节是否为“OK”字符串,并使用第一个字节作为密钥对数据包数据进行解密。数据包数据使用第一个1字节密钥以及随机字符串,分别为“xdmCz1eQ:?EkQ0d%c%r%jgY!fjabTTA0”和“#N@BGjn8g5!yCJAfiEFzq04Cqr%dFvcX”。
图4.初始化和转发数据包验证例程
Webshell通过接收JSON格式的数据进行操作,并支持以下命令。
命令 | 功能 |
---|---|
|
OS版本和Web Shell版本响应 |
|
使用 Web 服务器根路径、当前脚本路径和可用驱动器信息进行响应 |
|
目录查找 |
DN | 下载文件 |
|
文件上传 |
|
删除文件或目录 |
|
创建文件或目录 |
|
移动文件 |
|
更改文件修改时间 |
|
计算文件哈希值 |
|
读取文件 |
|
写入文件 |
|
执行命令 |
|
测试 SQL 连接收到的地址 |
sql | SQL 查询或转储 |
表 4. 支持的 Web Shell 命令
3. LazarLoader及提权工具分析
在另一台确认了上述 Web Shell 的 Web 服务器上,还确认了 LazarLoader 恶意软件和负责 UAC Bypass 功能的提权恶意软件。这里,从外部下载有效载荷或者从系统中存储的文件或注册表中读取有效载荷、在内存中解密并执行的恶意软件被归类为 LazarLoader。
根据我们的 ASD(AhnLab Smart Defense)基础设施,攻击者被认为在初始渗透过程中安装了 Web Shell,然后利用它额外安装了 LazarLoader。下面是显示 LazarLoader 通过 IIS Web 服务器进程 w3wp.exe 安装的日志。
图 5. ASD 中确认的 LazarLoader 安装日志
攻击案例中识别的LazarLoader是一种下载器,其特点是用于下载有效载荷的硬编码地址如下:其中经过解密过程检查是否为PE并最终加载到内存的部分和其他的LazarLoader类型是一样的。一个名为“Node.Js_NpmStart”的 16 字节密钥用于解密下载的有效负载。
图6. 用于解密的字符串
攻击中使用的LazarLoader目前无法下载,但据信下载了后门类型。安装后,发现以下日志显示正在执行其他恶意软件。
> rundll32.exe C:ProgramDataUSOSharedsup.etl,SerializeMarketTable_32 x9nsB3iYUWiDT6BZKO5pgtMW -v 62 -m D:/www/**********/********/******/****/ac_lst.exe > C:ProgramDataUSOSharedlog.txt
图7. LazarLoader 运行提权工具
“sup.etl” 是一个看起来像加壳程序的特权提升恶意软件。首次执行时,它使用作为参数传递的密钥“x9nsB3iYUWiDT6BZKO5pgtMW”解密内部加密的原始恶意软件,并在内存中执行。
第一个参数用于解密内部payload,第二个参数,也就是“-v”后面的值为62。解密的有效载荷似乎是由攻击者通过仅获取 UACMe 中的特定功能而制作的。当使用 62 作为参数时,将使用利用“ComputerDefaults.exe”的 UAC 绕过技术,因为这是 UACMe 实际支持的相同数字。如果“-v”选项为 62,则利用“ComputerDefaults.exe”,否则利用“fodhelper.exe”。如果是“11259375”或“0xABCDEF”,则不起作用并终止
命令 | 因素 | 功能 |
---|---|---|
1 |
|
用于解密内部有效载荷的密钥 |
2 | -v | UACMe 号码 |
3 | -m | 要执行的文件路径 |
表 5. 提权工具的参数
所有利用“ComputerDefaults.exe”和“fodhelper.exe”的 UAC 绕过技术都会利用注册表项“HKCUSoftwareClassesms-settingsShellOpencommand”。该方法是在注册表中设置恶意软件路径,即“ac_lst.exe”,本例中以“-m”为参数,然后运行“ComputerDefaults.exe”或“fodhelper.exe”,以管理员权限执行指定的恶意软件“ac_lst.exe”。
图 8. 注册表中设置的恶意软件路径
“ComputerDefaults.exe” 和“fodhelper.exe” 都是 autoElevate 程序,以管理员权限运行,不会弹出 UAC 窗口。该方法在执行指定为子进程的程序时,通过引用上述注册表路径,自动提升权限,并将其作为以管理员权限运行的进程的子进程执行。
作为参考,通过特权升级恶意软件执行的进程是“ac_lst.exe”,它执行恶意软件本身。因此,推测“ac_lst.exe”是在初始渗透过程中作为后门安装的,然后被利用来将特权升级到管理员权限。
4. 结论
ASEC近日确认,Lazarus组织一直在攻击国内网络服务器,并安装Webshell和LazarLoader。在实施这些攻击后,攻击者安装了 C2 脚本并将其用作其他攻击的 C&C 地址。
攻击者可以通过破坏管理不当或未修补的 Web 服务器来安装 Web Shell。管理员应该检查其 Web 服务器上的文件上传漏洞,以防止 Web shell 上传(这是最初的渗透途径)。您应该定期更改密码并设置访问控制,以抵御使用泄露的帐户信息进行的横向移动攻击。您还应注意将 V3 更新到最新版本,以提前防止恶意软件感染。
文件诊断
– Trojan/ASP.Proxy.SC198862 (2025.01. 16. 02)
– WebShell/ASP.Generic (2025.01. 20. 02)
– WebShell/ASP.Generic (2025.01. 20. 02)
– WebShell/ASP.Generic (2025.01. 17. 01)
– Trojan/Win.LazarLoader.C5730315 (2025.02. 14. 03)
– Trojan/Win.LazarLoader.R692195 (2025.02. 14. 03)
– Trojan/Win.UACMe.R455616 (2021.12. 28. 00)
原文始发于微信公众号(Ots安全):Lazarus Group 攻击 Windows Web 服务器案例分析
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论