Chapter 1 — From Gozi to ISFB: The history of a mythical malware family.
引言
Gozi恶意软件家族,特别是其演变为ISFB(又名Ursnif)的分支,在网络安全威胁领域占据了一个独特的地位。自2007年首次出现以来,它已经从一个相对简单的银行木马演变为一个高度模块化、功能强大且持久存在的威胁。本章将追溯Gozi到ISFB的演变路径,剖析其技术架构、关键变种以及它如何在长达十多年的时间里持续适应并存活下来。
起源:Gozi (2007)
Gozi恶意软件最早于2007年被发现。它最初是一个专门针对Windows系统的银行木马,其主要目的是窃取用户的银行凭证和其他敏感信息。Gozi的初始版本就已经展示出一些先进的技术特征:
- 感染载体:通常通过垃圾邮件或漏洞利用工具包进行传播。
- 持久性机制:使用Rootkit技术隐藏自身进程和文件,以逃避检测。
- 数据窃取:它能够注入恶意代码到用户的浏览器进程,记录键盘输入(键盘记录),并截取网络流量(表单抓取),以获取登录凭据。
- 模块化设计:早期版本已具备一定程度的模块化,允许攻击者后续加载额外的功能组件。
Gozi因其有效性和隐蔽性迅速引起了执法机构和安全研究人员的注意。2007年,美国联邦调查局(FBI)的“操作火鸟”行动导致了对几名涉嫌分发Gozi的黑客的逮捕和起诉。
进化:Gozi 2.0 与分裂
在最初的作者被捕后,Gozi的源代码被泄露到了网上。这导致了两个主要分支的出现:
- Gozi 2.0/IFSB:这是由原始Gozi代码库发展而来、功能更加强大的分支。它继承了核心的数据窃取能力,并大幅改进了其模块化架构、通信协议和反分析技术。这个分支最终演变成了我们今天所知的ISFB(Ursnif)。
- 其他变种:泄露的代码也被其他犯罪团伙利用,催生了诸如“Gozi-Ex”之类的多个变种,但这些变种的影响力通常不及ISFB分支。
ISFB/Ursnif的崛起
ISFB(也被许多安全厂商称为Ursnif或Dreambot)代表了Gozi家族的“精英”分支。它从一个单纯的银行木马演变为一个全功能的“恶意软件即服务”(Malware-as-a-Service, MaaS)平台。其关键技术进步包括:
- 高度模块化:核心的“加载器”(Loader)非常轻量,负责与命令与控制(C&C)服务器通信,并根据指令下载和执行各种插件模块。这些模块功能独立,如:
- 网络注入(WebInject):用于在银行网页中动态插入虚假字段或整个页面,诱骗用户输入更多信息。
- 凭据窃取器。
- 远程控制(VNC)模块。
- 勒索软件模块(在某些活动中被观察到)。
- 复杂的通信协议:使用加密和自定义协议与C&C服务器通信,经常模仿合法流量(如使用HTTPS),以绕过网络检测。
- 强大的反分析和规避技术:
- 虚拟机(VM)和沙箱检测。
- 反调试技术。
- 代码混淆和加壳。
- 仅在特定地理区域或针对特定银行目标激活的“地理围栏”功能。
- 分销模式:ISFB主要通过“挂马”(Exploit Kit)和“恶意广告”(Malvertising)活动进行传播,同时也被一些高级持续性威胁(APT)组织用于针对性攻击。
持续威胁与变种
ISFB显示出非凡的适应性和长寿性。其背后的运营者持续更新代码,修复漏洞,并添加新功能以应对安全产品的检测。多年来,出现了多个著名的ISFB活动浪潮,每个浪潮都引入了细微的变化和新模块。
该恶意软件家族也与“Dridex”和“TrickBot”等其他大型银行木马存在交集和合作,有时共享基础设施或进行联合攻击。
结论
从Gozi到ISFB的历程,是一个恶意软件在压力下(执法打击、代码泄露、竞争)不断进化、专业化和商业化的典型案例。它从一个单一功能的威胁,成长为一个灵活、健壮且持续盈利的网络犯罪平台。其模块化架构、强大的隐身能力以及对“服务化”模式的采纳,使其成为过去十多年来最具影响力和持久性的金融威胁之一。理解它的历史和技术演变,对于防御当前和未来的类似威胁至关重要。