文章总结: 这篇文章分析了一起通过简历进行鱼叉式网络钓鱼的攻击案例。攻击者伪装成求职者,在简历中嵌入恶意.LNK文件,触发PowerShell命令下载恶意软件。该恶意软件具备反虚拟机检测、反杀软、键盘记录、截图等多种功能,并通过创建计划任务实现持久化。文章详细分析了恶意软件的技术实现、C2基础设施和攻击模式,揭示了针对FinTech和加密货币领域的高级攻击手法。
综合评分: null
文章分类: 恶意软件,威胁情报,社会工程学,漏洞分析,应急响应
一封暗藏杀机的简历
二进制空间安全
2025年11月23日 17:24
北京
将二进制空间安全设为”星标⭐️”
第一时间收到文章更新
#
事件背景
该安全事件是一起使用高度复杂的鱼叉式网络钓鱼技术进行渗透的案例, 攻击者伪装成求职者, 向国内企业的人力资源部门和技术招聘团队发送高度定制化的电子邮件。这些邮件通常在看似合法的简历中嵌入恶意的.LNK文件。当受害者执行该.LNK文件时,它会充当投递器(dropper), 触发多个后续Payload的执行, 从而完成入侵初始阶段。
部署的恶意软件会在已攻陷的目标系统中建立持久化机制, 并发起多种信息收集操作, 包括: 截图、读取剪贴板内容以及窃取关键系统元数据。所收集的数据会被秘密传输到由攻击者控制的远程C2服务器。
附件是一份看似正常的PDF格式简历, 从简历的内容来看, 攻击者的目标似乎是针对正在寻求FinTech、加密货币交易所以及交易平台领域就业机会的人。简历内容如下图:
#
技术分析
在对下载的快捷方式文件 “李汉彬.lnk”进行初步静态分析发现, 其中包含长度超过 260 个字符的字符串,与 PowerShell 命令行Payload模式一致。该命令引用一个目标文件路径, 表明LNK 文件作为Payload“投递器”执行向量,用于触发后续基于PowerShell的阶段Payload。如图:
在进一步分析与解析代码过程中, 发现以下关键行为:样本能够下载其他文件,样本会连接到URL: pan.tenire.com下载其他组件,包括: 充当诱饵的简历文档、keytool.exe、CreateHiddenTask.vbs 和 jli.dll。如图:
当执行该LNK文件后, 它会将二阶段Payload下载至目录:C:\Users
此外,恶意软件利用CreateHiddenTask.vbs创建计划任务。该任务每天上午8:00执行keytool.exe,从而确保持久化与定期执行恶意Payload, 如图:
VBScript 通过实例化 COM 对象(WScript.Shell、Schedule.Service、Scripting.FileSystemObject),连接任务计划程序,并以编程方式创建名为 “Security” 的每日任务(触发类型 = 每日,StartBoundary = 2025-08-01T08:01:01,间隔=1 天)。任务执行路径为:%APPDATA%\Security\keytool.exe, 脚本还将任务属性设置为 Author = “Microsoft Corporation”,并在注册任务后自删除,以减少取证痕迹,从而实现持久化的定期执行。如图:
创建的计划任务如下:
#
Keytool与jli.dll分析
通过分析keytool.exe,发现它调用了 jli.dll 的多个导出函数,如: JLI_CmdToArgs、JLI_GetStdArgc、JLI_GetStdArgs等, 如下图:
在对加载器 jli.dll 的分析中,我们发现其会悄悄打开自身的可执行文件(keytool.exe),读取 PE 头信息定义的某一特定区域,并在其中扫描一个明显的 8 字节标记序列:1C 3B 7E FF 1C 3B 7E FF, 一旦找到该标记,标记之后的所有数据会被复制到缓冲区,并视为加密的Payload。随后,函数构造一个256 字节的 S-box,并运行标准的 RC4 流程:使用 ASCII 密钥 “123cba”进行 KSA(密钥调度),然后通过PRGA生成密钥流并与复制的字节异或,从而得到解密后的有效Payload。如下图:
换句话说, 就是在 keytool.exe内部存在一个加密的 shellcode Payload, 恶意代码被隐藏和混淆,静态分析不易发现。当 shellcode 在内存中被解密后,会看到其内置的命令与控制(C2)服务器地址:206.119.175.16, 如下图:
在完成解密后,主进程会调用一组辅助函数, 这些函数似乎用于准备并启动Payload, 随后执行一些与进程相关的维护操作,最后通过等待某个句柄来同步执行。简单来说就是这是一个精简的自解压式加载器, 基于标记的提取 + 使用固定密钥的RC4解密, 它将Payload投放到内存中并触发其执行,同时等待其运行完成。
#
二阶段Payload分析
(1).系统指纹收集
在第二阶段的Payload中, 它会收集CPU信息、用户名、屏幕分辨率、端口号、系统运行时长、网卡信息、MAC 地址、区域设置、虚拟机检查、注册表值及其他标识符。如下图:
其每个子函数的功能如下表:
| | | |
| — | — | — |
| 函数名 | 功能 | 注释 |
| sub_1000BAD5 | 打开HKLM…\Tds\tcp,读取PortNumber DWORD并附加其十进制数 + \r\n | 读取…\Tds\tcp\PortNumber |
| sub_1000BB8B | 读取 GetTickCount() 并附加格式化的运行时间(天/小时/分钟)+ \r\n。 | 简单的正常运行时间指纹;无害但可用于侦察。 |
| sub_1000BC16 | 枚举 HKCU\Software\Tencent\Plugin\VAS 子项(6-11 个字符)或扫描用户文件夹中的数字目录名;附加以空格分隔的结果 + \r\n。 | 指纹识别 QQ/腾讯账号或数字 ID;检测该腾讯密钥枚举或文件夹扫描数字目录名称。 |
| sub_1000BEEE | 使用 NetBIOS(NCBENUM/NCBRESET/NCBASTAT)获取网卡 MAC 地址,格式为 XX-XX-… 并附加 + \r\n。 | 传统的 NetBIOS 调用读取 MAC 地址, 在现代应用程序中并不常见;监控 NetBIOS NCB 使用情况。 |
| sub_1000C07D | 尝试从设备类注册表中读取主 NIC DriverDesc 并将其附加 + \r\n。 | |
| sub_1000C0EF | 将 GetSystemDefaultUILanguage() 映射到存储的区域设置字符串,并在其后附加 \r\n(区域设置指纹识别)。 | 检查用户界面语言是台湾语言、中国大陆语言、香港语言、新加坡语言、澳门语言还是英语(美国/英国) |
#
反虚拟机技巧
恶意软件主要通过查找VirtualBox/VMware进程或VMware注册表项来检测是否处在虚拟机环境中, 如下图:
#
免杀技巧
恶意软件主要利用 COM/WMI 查询 ROOT\SecurityCenter2 中的 AntiVirusProduct,执行 SELECT * FROM AntiVirusProduct,获取每个防病毒软件的 displayName,并对结果进行转换/标准化处理。随后,它会调用函数来定位并卸载检测到的防病毒软件。如下图:
除此之外,恶意软件还会反复通过动态解析的API查询系统的TCP连接表。它通过检查进程路径来识别与 “360Safe”“kingsoft”“Huorong” 相关的进程。 一旦匹配成功,它会将其 TCP 连接状态强制设置为DELETE_TCB,从而终止它们的网络连接。整体来看,这是一个用在破坏安全软件网络活动的反杀软功能。如下图:
#
远程控制命令
恶意软件会捕获用户的可视化活动,包括:截图和录屏, 并在目标主机上投递和安装插件或其他恶意Payload,以下是支持的一些远程控制命令:
| | |
| — | — |
| 操作码 | 作用 |
| 0x78 (120) | 保存IP列表 |
| 0x7B (123) | 会话/硬件ID |
| 0x7D (125) | 文件/传输处理程序 |
| 0x83 (131) | 插件更新(216 字节标头) |
| 0x84 (132) | 插件安装/添加 |
| 0x85 (133) | 过滤器管理 |
| 0x86 (134) | 屏幕截图配置 |
| 0x87 (135) | 剪贴板配置 |
| 0x88 (136) | 键盘记录器控制 |
| 0x89 (137) | 录音/清理 |
| 0x8A (138) | BoxedApp SDK 初始化 |
| 0xA1 (161) | 格式/路由框架 |
| 0xA2 (162) | 自行卸载 |
| 0xA4 (164) | 组/备注字符串 |
| 0xA5 (165) | 信息同步 |
| 0xA6 (166) | 用户界面“OK” |
| 0xA7 (167) | 控制台配置文件 |
| 0xC8 (200) | 传输/插槽设置 |
#
键盘记录功能
恶意软件通过在 ProgramData 下创建专用目录和日志文件(Regedit.log)来准备日志环境,当文件过大时执行简单的日志轮换,并初始化一个 DirectInput 键盘设备,以缓冲输入模式捕获按键。它还会记录启动时的 Caps Lock 状态,以确保按键解释准确。如下图:
#
系统环境探测
恶意软件内置的系统环境探测例程会通过探测注册表键、安全设置、文件路径以及自定义驱动句柄来收集主机信息。它会设置一系列功能标志(a1[26..39]),用于指示 UAC 模式、杀软/驱动是否存在、键盘记录/剪贴板/截图是否启用,以及单实例互斥量状态等。这可以帮助恶意软件决定启用哪些功能、系统存在何种防护,以及是否已有实例在运行。如下图:
其功能标志如下表:
| | | | |
| — | — | — | — |
| 标志符 | 检查项 | 检查动作 | 当该值被设置为(=1)时的含义 |
| a1[26] | 当前用户已配置 IE | 读取 HKCU\Software\Microsoft\Internet Explorer(通过 sub_10009F0E) | 存在 IE 设置值(字符串指针非空) |
| a1[27] | 能够打开 SECURITY 配置单元的能力 | RegOpenKeyExW(HKLM, “SECURITY”, KEY_READ) | |
| a1[28] | 已启用 UAC 安全桌面提示 | HKLM\…\Policies\System\PromptOnSecureDesktop == 1 | 用于提升权限提示的安全桌面已开启 |
| a1[29] | 360 HVM 服务自动启动 | HKLM\SYSTEM\ControlSet001\Services\360Hvm\Start | 值为 1(系统/自动启动) ⇒ 存在 360 驱动/服务 |
| a1[30] | 操作系统字符串包含“Windows” | 通过 sub_1000B109 填充缓冲区,搜索 wcsstr(…,”Windows”) | 主机操作系统看起来像 Windows |
| a1[31] | 存在自定义设备句柄 | CreateFileW(“\.\kcuf063Gate”, …) | 能够打开该设备(可能是 rootkit/驱动的通信入口) |
| a1[32] | “KEYLOG” 功能开关 | “%APPDATA%\A686911000006E”, “KEYLOG”) | 键盘记录文件夹/键存在且已启用 |
| a1[33] | “剪贴板数据”功能开关 | 使用“clipboarddata”进行相同的路径查找 | 已启用剪贴板捕获 |
| a1[34] | “picshotdata” 功能开关 | 使用“picshotdata”进行相同的路径查找 | 屏幕/摄像头快照已启用 |
| a1[35] | VM 路径字节/标志位 | 构建 %APPDATA%\A686911000006E\vmpath,通过 sub_1000CF52/sub_1000AA91 解析 | 提取的字节被设置并复制到全局变量,同时设置此标志位 |
| a1[36] | 存在 “Recording” 子键 | 打开 %APPDATA%\A686911000006E\Recording 文件夹(位于 HKCU 中) | 存在录制配置 |
| a1[37] | 存在单实例互斥量 | CreateMutexW(“Global\A2F1A73B-…E754C”),检查 GetLastError()==ERROR_ALREADY_EXISTS | 另一个实例正在运行(或程序将自身标记为正在运行) |
| a1[38] | 已启用筛选规则 | 检查 %APPDATA%\A686911000006E\FILTER\keyword 或 …\FILTER\netaddr 是否为“0” | 任何非“0”的值 ⇒ 过滤器处于激活状态 |
| a1[39] | “stop” 终止开关 | 将 %APPDATA%\A686911000006E\FILTER\stop 读取到 v18 | 非零字节 ⇒ 停止/禁用行为 |
#
基础设施搜索
在分析该 C2 基础设施后,发现其由SONDERCLOUDLIMITED(SonderCloud Limited)托管。此外,多项关联域名解析至位于香港的IP地址。所有识别到的域名均使用.work顶级域名,并频繁被攻击者使用。如图:
除了用于传递简历诱饵和恶意Payload的pan.tenire.com外,还识别出一个更大规模的基础设施集群,位于 206.119.175.162(AS133199,SonderCloud Limited,香港)。 超过 20 个同类域名(如 app.jinanjinyu.work、app.maitangou.work、app.jiangsuzhaochu.work、app.rongxingu.work、app.xinrendu.work、app.owps.work、app.awps.work 等)指向同一 IP。
一致的命名模式(app.*.work)以及统一的 .work 顶级域名。这表明攻击者已经建立了一套工程化、可自定义配置的基础设施,用于支撑其攻击行为。
#
#
(全文完)
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:二进制空间安全 《一封暗藏杀机的简历》