自今年7月以来,安天CERT监测到多起投递FormBook窃密木马的钓鱼邮件活动,FormBook是一种非常活跃的商业窃密木马,本次捕获的木马具备窃取多种信息、使用数十个C2服务器作为备选,具备一定的对抗检测、对抗分析和反溯源能力。安天智甲可实现对该窃密木马的查杀与有效防护。
01 概述
自今年7月以来,安天CERT监测到多起广撒网式投递窃密木马的钓鱼邮件活动,诱导目标执行附件中的Formbook窃密木马,实施窃密活动。其中捕获到一封对某单位投递的钓鱼邮件。FormBook是一种非常活跃的商业窃密木马,自2016年开始在黑客论坛上以“恶意软件即服务”形式出售,版本不断迭代更新,目前发现的最新版本为4.1,本次监测到的为3.2版本。
FormBook主要被用于窃取目标个人信息,该窃密木马能够自动收集目标系统中浏览器、邮箱客户端、即时通讯客户端和FTP客户端中的敏感信息,具备键盘记录和屏幕获取功能。同时它具有远程控制能力,具体包括更新、下发恶意软件、命令执行、数据回传等功能,实现对目标系统进行长期驻留控制。此次发现的FormBook变种采用C#编写的加载器进行加载,核心功能运行前具有多层解密执行和进程注入操作,同时针对虚拟机和沙箱环境进行检测,使用数十个C2服务器作为备选,具备一定的对抗检测、对抗分析和反溯源能力。
经验证,安天智甲终端防御系统(简称IEP)可实现对该窃密木马的查杀与有效防护。
02 事件对应的ATT&CK映射图谱
2.1 事件对应的ATT&CK映射图谱
攻击者针对目标系统投放FormBook窃密木马,梳理本次攻击事件对应的ATT&CK映射图谱如下图所示。
图2‑1 事件对应的ATT&CK映射图谱
攻击者使用的技术点如下表所示:
表2‑1事件对应的ATT&CK技术行为描述表
ATT&CK阶段/类别 | 具体行为 | 注释 |
资源开发 | 获取基础设施 | 搭建C2服务器 |
初始访问 | 网络钓鱼 | 通过钓鱼邮件传播 |
执行 | 诱导用户执行 | 诱导用户执行邮件附件中的恶意程序 |
持久化 | 利用自动启动执行引导或登录 | 设置注册表自启动项 |
利用计划任务/工作 | 设置计划任务 | |
防御规避 | 反混淆/解码文件或信息 | 解码多层载荷信息 |
隐藏行为 | 隐藏自身行为 | |
混淆文件或信息 | 混淆各层载荷信息 | |
进程注入 | 创建并注入自身进程 | |
虚拟化/沙箱逃逸 | 检测虚拟机或沙箱 | |
凭证访问 | 从存储密码的位置获取凭证 | 读取浏览器等应用软件凭证 |
输入捕获 | 捕获受害者键盘输入 | |
发现 | 发现账户 | 获取系统账户信息 |
发现进程 | 获取系统进程列表 | |
发现系统信息 | 获取系统基础信息 | |
发现系统网络配置 | 获取系统网络信息 | |
发现系统所有者/用户 | 获取系统用户信息 | |
发现系统时间 | 获取系统时间 | |
虚拟化/沙箱逃逸 | 检测虚拟机或沙箱 | |
收集 | 压缩/加密收集的数据 | 对收集的数据进行加密 |
自动收集 | 自动收集受害者数据 | |
收集剪贴板数据 | 收集剪贴板数据 | |
输入捕获 | 捕获受害者键盘输入 | |
获取屏幕截图 | 定时获取受害者屏幕截图 | |
命令与控制 | 使用应用层协议 | 使用应用层协议下发指令 |
数据渗出 | 自动渗出数据 | 自动发送收集的数据 |
使用C2信道回传 | 使用与C2相同的信道回传 |
03 钓鱼邮件分析
攻击者针对目标投放钓鱼邮件,诱导用户解压邮件附件并执行其中的窃密木马,该窃密木马执行后,会在目标系统实现持久化,并自动收集目标系统中浏览器、邮箱客户端、即时通讯客户端和FTP客户端中的敏感信息,然后连接C2服务器,接收下发的控制指令并回传窃取的数据。
攻击者使用钓鱼邮件向目标投递窃密木马,其中收件人邮箱为某单位对外公开的联系邮箱。攻击者采用钓鱼邮件的形式投放具有FormBook窃密木马的压缩包,利用采购支付收据等信息诱导目标解压并运行该窃密木马,实施窃密和控制等功能。
3.1 邮件信息
图3‑1 钓鱼邮件内容
邮件内容为:
3.2 伪造发件人分析
攻击者伪装成NPF PIPES TRADING(L.L.C)(一家位于迪拜的油田设备供应商,主要经营管道材料及相应配件,并为石油、天然气、石化和建筑企业提供服务)的销售主管,让收件人打开附件完成交易。邮件下方的联系电话、传真、网站等均为该供应商的真实信息,但邮箱地址是攻击者的地址,攻击者使用“@npfpip”伪装成供应商的工作邮箱,投递给某单位的一封钓鱼邮件。
图3‑2 NPF PIPES TRADING(L.L.C)信息
通过对邮件信息分析发现,该发件人相关邮箱服务器的IP地址为:103.232.55.10(越南河内)而真实的供应商服务器IP地址归属国家应该在阿拉伯联合酋长国,通过综合分析判定,本次活动是攻击者通过伪造迪拜某供应商公司邮箱发起的钓鱼邮件活动。
图3‑3 邮件服务器地址分析
04 防护建议
针对该窃密木马安天建议企业采取如下防护措施:
4.1 企业防护
(1)安装终端防护:安装反病毒软件,建议安装安天智甲终端防御系统;
(2)加强口令强度:避免使用弱口令,建议使用16位或更长的密码,包括大小写字母、数字和符号在内的组合,同时避免多个服务器使用相同口令;
(3)部署入侵检测系统(IDS):部署流量监控类软件或设备,便于对恶意代码的发现与追踪溯源。安天探海威胁检测系统(PTD)以网络流量为检测分析对象,能精准检测出已知海量恶意代码和网络攻击活动,有效发现网络可疑行为、资产和各类未知威胁;
(4)安天服务:若遭受恶意软件攻击,建议及时隔离被攻击主机,并保护现场等待安全工程师对计算机进行排查;安天7*24小时服务热线:400-840-9234。
4.2 邮件传播防护
(1)接收邮件时要确认发送来源是否可靠,避免打开可疑邮件中的网址和附件;
(2)建议使用沙箱环境执行可疑的文件,在确保安全的情况下再使用主机执行。安天追影威胁分析系统(PTA)采用深度静态分析与沙箱动态加载执行的组合机理,可有效检出分析鉴定各类已知与未知威胁;
经验证,安天智甲终端防御系统可实现对该窃密木马的查杀与有效防护。
05 样本分析
5.1 样本标签
表5‑1 样本标签
病毒名称 | Trojan/Win32.FormBook |
原始文件名 | QFHP.exe |
MD5 | 99E184150C7FAD197A259FE79A3B9F7E |
处理器架构 | Intel 386 or later, and compatibles |
文件大小 | 768.50 KB (786,944 字节) |
文件格式 | BinExecute/Microsoft.EXE[:X86] |
时间戳 | 2021-07-05 20:18:13 |
数字签名 | 无 |
加壳类型 | 无 |
编译语言 | Microsoft C# |
VT首次上传时间 | 2021-07-05 22:46:08 |
VT检测结果 | 54 / 70 |
5.2 多层载荷解密递进执行
样本外部使用C#编写的加载器,将恶意代码隐藏在大量正常代码中,以此躲避检测。样本加载器运行后,解密并加载第二层载荷,调用其中核心函数。
图5‑1 加载第二层载荷
第二层载荷从资源中解密得到第三层载荷,跳转至入口点执行。
图5‑2 解密并执行第三层载荷
第三层载荷再次解密得到第四层载荷,并创建自身新进程,通过进程镂空将第四层载荷注入新进程中执行,第四层载荷是最终有效载荷。
图5‑3 创建进程并将载荷注入其中
5.3 防御规避
最终有效载荷执行后,会初始化一块内存区域,其中包括ntdll基址、LdrLoadDll函数地址、反分析检查结果标识、加密的函数哈希等,执行过程中的静态数据大多来自于此。
图5‑4 动态生成的内存区域
读取自身模块链表,使用CRC32-bzip2算法依次对模块名称进行校验,以此查找ntdll.dll并在内存中创建ntdll.dll的副本,躲避部分API检测软件检测。
图5‑5 创建ntdll副本
检测分析环境,包括进程、模块、常见沙箱用户名、文件等。
表5‑2 检测分析环境列表
进程 | vmwareuser.exe | filemon.exe | vmtoolsd.exe |
vmwareservice.exe | wireshark.exe | vmsrvc.exe | |
vboxservice.exe | netmon.exe | vmusrvc.exe | |
vboxtray.exe | prl_tools_service.exe | python.exe | |
sandboxiedcomlaunch.exe | prl_tools.exe | perl.exe | |
sandboxierpcss.exe | prl_cc.exe | regmon.exe | |
procmon.exe | SharedIntApp.exe | ||
模块 | guard32.dll | SbieDll.dll | |
用户名 | cuckoo | xxxx-ox- | wilbert-sc |
sandbox- | cwsx- | xpamast-sc | |
nmsdbox- | |||
文件 | \\cuckoo\\ | \\sandbox\\ | \\samroot\\ |
\\sandcastle\\ | \\smpdir\\ | \\avctestsuite\\ | |
\\aswsnx\\ |
样本通过进程名的哈希值查找explorer.exe进程,获取进程句柄并分配内存,将自身注入该进程中。
图5‑6 查找explorer进程并注入
注入的程序执行后,会再次注入到一个随机选择的系统程序中,并使用不同的入口点。通过explorer.exe创建的进程与原始样本进程无层级关系,提高隐蔽性。
图5‑7 第二次注入的进程
该系统进程执行后,使用cmd.exe /c del命令删除原始文件。
图5‑8 执行自删除
5.4 数据窃取
循环查找并劫持如下列表中的进程,窃取进程数据,内容包括键盘记录、账号密码等。
表5‑3 目标进程列表
浏览器终端 | 360browser.exe、browser.exe、coolnovo.exe、cyberfox.exe、chrome.exe、dooble.exe 、firefox.exe、ucbrowser.exe、ybrowser.exe、opera.exe、safari.exe、deepnet.exe、icedragon.exe、iridium.exe、k-meleon.exe、maxthon.exe、microsoftedgecp.exe、midori.exe、mustang.exe、orbitum.exe、palemoon.exe、qupzilla.exe、superbird.exe、vivaldi.exe、waterfox.exe |
邮箱客户端 | foxmail.exe、gmailnotifierpro.exe、incmail.exe、operamail.exe、outlook.exe、thunderbird.exe、 |
即时通讯客户端 | whatsapp.exe、skype.exe、icq.exe、pidgin.exe.exe、trillian.exe、yahoomessenger.exe |
FTP客户端 | 3dftp.exe、alftp.exe、filezilla.exe 、flashfxp.exe 、ncftp.exe、coreftp.exe、scriptftp.exe、leechftp.exe、smartftp.exe、webdrive.exe、winscp.exe |
5.5 数据回传
构建数据包,进行数据回传。
图5‑9 构建数据包
样本中配置了多个C2服务器,随机选取多个,分别拼接为“域名/pba2/”的格式进行连接。
表5‑4 配置的C2服务器列表
5.6 远程控制
样本还支持接受C2命令,以实施进一步攻击。
图5‑10 执行C2命令
表5‑5 指令表
指令 | 具体作用 |
1 | 提取%temp%下解密的PE文件,调用ShellExecuteA() |
2 | 更新目标系统中的FormBook |
3 | 卸载目标系统中的FormBook |
4 | 调用ShellExecuteA()执行从数据包中解密的下发命令 |
5 | 删除文件“.sqltie”和“Cookies”并搜索三个主要用户数据路径 |
6 | 重启目标系统 |
7 | 关闭目标系统 |
8 | 将FormBook添加自启动项,并将所有窃取的数据发送至C2服务器 |
9 | 从数据包开头至字符串标志性结尾”GNLX”的数据中解密zip文件,并以随机字符串命名保存至%Temp%中,解压至同一文件夹下。 |
06 小结
商业窃密木马异常活跃,早已经形成了成熟的黑色产业链。在技术方面,商业化窃密木马在反沙箱、反虚拟机的对抗检测以及反溯源上为使用者做足了对抗技术;在运营方面,采用了“恶意软件即服务”的运营模式;在木马管理方面,为购买者提供了易于操作的后台管理接口。通过以上服务手段,极大降低攻击者的技术门槛,造成窃密木马泛滥的局面。安天CERT将持续关注此类恶意软件的发展,为公众提供相关防护建议。
声明:本文来自安天,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。