有关研究报告显示,双枪恶意程序的僵尸 *** 利用国内的常用服务进行管理。该僵尸 *** 的数量超过了 10 万。研究人员观察到双枪恶意程序使用百度贴吧图片来分发配置文件和恶意软件,使用了阿里云存储来托管配置文件,利用百度统计管理感染主机的活跃情况,恶意程序样本中还多次发现了腾讯微云的 URL 地址。
它之一次将 BAT 三大厂商的服务集成到了自己的程序中。百度已经采取行动阻断恶意代码下载链接,以下为报告全文。
近日,我们的域名异常监测系统 DN *** on 捕捉到域名 pro.csocools.com 的异常活动。根据数据覆盖度估算,感染规模超过100k。我们通过告警域名关联到一批样本和 C2,分析样本后发现是与双枪恶意程序相关的团伙开始新的大规模活动。近年来双枪团伙屡次被安全厂商曝光和打击,但每次都能死灰复燃高调复出,可见其下发渠道非常庞大。本次依然是因为受感染主机数量巨大,导致互联网监测数据异常,触发了netlab的预警系统。本报告中我们通过梳理和这些URL相关的C2发现了一些模式,做了一些推测。
我们观察到恶意软件除了使用百度贴吧图片来分发配置文件和恶意软件,还使用了阿里云存储来托管配置文件。为了提高灵活性和稳定性,加大阻拦难度,开发者还利用百度统计这种常见的 *** 服务来管理感染主机的活跃情况。同时我们在样本中多次发现了腾讯微云的URL地址,有意思的是我们在代码中并没有找到引用这些地址的代码。至此,双枪团伙之一次将BAT三大厂商的服务集成到了自己的程序中,可以预见使用开放服务来管理僵尸 *** 或将成为流行趋势。有必要澄清的是,这些公开服务本身均为技术中立,此恶意代码中滥用这些公开服务完全是其作者的蓄意行为,各主要互联网公司均在用户许可中明确反对并采取措施抵御这些恶意滥用行为。
5月14日起,我们联系到了百度安全团队,采取了联合行动,对该恶意代码的传播范围做了度量,并采取了抵御措施。截止本文发稿,相关的恶意代码下载链接已经被阻断。百度安全团队对该事件的声明见文末。
从告警域名入手,通过DNS解析记录和样本流量分析建立IOC关联,过滤掉孤立和噪音节点,我们找到了一组与此次传播活动有关的关键C2。从下面截取的部分IOC关联图可以看出,几乎所有的域名都和两个关键的ip 地址 125.124.255.20 和 125.124.255.79 有关,围绕这两个ip地址,双枪团伙从19年下半年开始依次启用了一批域名来控制和下发恶意程序。事实上这个团伙长期且稳定的控制了大量 125.124.255.0/24 网段的ip地址,可以看出他们拥有非常丰富的 *** 资源。
通过样本溯源可以看到,这次大规模感染主要是通过诱导用户安装包含恶意代码的网游私服客户端,具体感染方式大体分为两种,下面进行深入分析。
各类私服入口
点击下载链接跳到私服主页
登录器下载 “蟠龙军衔.zip”
含恶意代码的私服客户端启动器被用户下载并执行,恶意代码访问配置信息服务器,然后根据配置信息从百度贴吧下载并动态加载名为 cs.dll 的最新版本恶意程序。cs.dll 中的敏感字串使用了一种变形的 DES 加密 *** ,这种加密算法和我们之前捕捉到的双枪样本高度相似。我们从样本主体 exe 文件入手,逐步分析上述恶意行为。
文件结构
“蟠龙军衔.exe” PE Resource 中包含 7 个文件,Widget.dll 是客户端组件,资源文件中的cs.dll 是旧版的恶意程序。4 个 .sys 文件是私服客户端的驱动程序,虽然命名为Game Protect,但我们在代码中发现了劫持流量插入广告的代码。
下载配置信息
启动器创建线程访问加密配置文件 http://mtdlq.oss-cn-beijing.aliyuncs.com/csc *** t.txt
页面包含 8 行 16 进制字串,与密钥 B2 09 BB 55 93 6D 44 47 循环异或即可解密。
解密后是 8 个百度贴吧图片的地址。
下载图片文件切割并重组 cs.dll 文件
直接访问图片地址,图片文内容看起来像是随机生成的。
恶意程序会下载图片文件,每张图片使用 ><>>>< 为标记来分隔图像数据和恶意代码数据。
把所有恶意代码拼接起来我们得到了阶段 2 的恶意程序 cs.dll。
恶意程序通过内存映射的方式加载上述 cs.dll,然后调用导出函数 abcd() 进入阶段 2 ,所以并没有文件落地。
cs.dll 会进行一些简单的虚拟机和杀软对抗,利用百度统计服务上报 Bot 信息,释放第 3 阶段 VMP 加壳的驱动程序(包含x86/x64两个版本)。
DES 解密算法
样本中的 DES 解密算法为恶意软件作者自定义实现,加密模式为 CBC,无填充。DES 加密算法的转换表与旧版(“双枪”木马的基础设施更新及相应传播方式的分析)相同 。本次恶意活动涉及的 DES 解密,都涉及 2 层解密,之一层解密,先以 Base64 算法解码字符串 dBvvIEmQW2s= 得到一份二进制数据,再以空密钥 \x00\x00\x00\x00\x00\x00\x00\x00 对上述二进制数据解密,得出字串 helloya\x00,再以此字串作为密钥,用自研 DES 算法解密其他大量密文数据。完整的解密过程如下:
检查虚拟主机环境 VM 和 WM
通过检查注测表项判断是否是 VMWare 主机,如果是 VM 主机代码则直接返回。
创建 Bot ID
使用系统 API 创建主机的 Bot ID,写入注册表 SOFTWARE\\PCID,
利用百度统计服务管理 Bot
恶意软件的开发者借用了百度统计接口的一些标准字段来上报主机敏感信息,利用百度统计这种常见的 *** 行为来管理感染主机的活跃情况。因为百度统计服务被大量网站使用,从流量上看是一套合规的浏览器 *** 行为,所以很难将其区分出来,加大了安全厂商打击的难度。
恶意程序首先使用一个名为 DataWork() 的函数伪造浏览器请求,下载 hm.js 脚本。
保存返回信息中的用户 Cookie 信息 HMACCOUNT 到注册表。
通过 http://hm.baidu.com/hm.gif? 接口,恶意程序将提取到的统计脚本的版本信息this.b.v、用户 Cookie 信息、bot_id 和伪造的其它统计信息组包上报,恶意软件开发者使用百度统计的后台可以方便的管理和评估感染用户。
从 Dat 资源解密,创建,安装驱动
检查是否安装了 XxGamesFilter 等私服客户端驱动。
根据安装情况和操作系统版本选择不同的资源 ID,每一个资源对应不同版本的驱动(32 位系统使用 ID 为 111 或 109 资源,64 位系统使用 ID 为 110 或 112 的资源)。
资源是简单加密过的,以解密 32 位驱动为例,首先倒转数据顺序,然后逐字节和系统版本数值 32 异或,得到一个 VMP 加壳的驱动文件。
测是否存在 TeSafe 驱动,如果存在刚中断感染流程。计算 TeSafe+{Computer Name} 的 MD5 值,检测是否存在名为该 MD5 字串的驱动,如果存在说明系统已经被感染过,也会中断感染流程。
//拼接字串 +00 54 65 53 61 66 65 2B 57 49 4E 2D 52 48 39 34 50 TeSafe+WIN-RH94P +10 42 46 43 37 34 41 00 00 00 00 00 00 00 00 00 00 BFC74A.......... //拼接字串的MD5值 +00 46 34 36 45 41 30 37 45 37 39 30 33 33 36 32 30 F46EA07E79033620 +10 43 45 31 33 44 33 35 44 45 31 39 41 41 43 34 32 CE13D35DE19AAC42如果系统 EnableCertPaddingCheck 注册表项关闭,则替换文件末尾 16 字节为随机数据。这样每个感染主机上的样本 HASH 值完全不一样,可以对抗基于 HASH 查杀的方案。
将驱动程序释放到 TEMP 目录下,文件名为长度为 7 的随机字符串。例如:"C:\Users\{User Name}\AppData\Local\Temp\iiitubl"
注册驱动文件启动服务并检测安装是否成功。
驱动运行后会拷贝自己到 Windows/system32/driver/{7个随机字符}.sys ,伪造驱动设备信息为常见的合法驱动,如 fltMgr.sys ,向系统进程 Lassas.exe 和 svchost.exe 注入 DLL 模块。完成整个初始化过程后,就形成了一个驱动和 DLL 模块通过 DeviceIoControl() 通信合作来完成作务的工作模式,这是一个驱动级别的下载器。所有敏感的配置信息都保存在驱动内部,DLL 通过调用驱动来获得配置服务器相关信息,根据下载的配置信息去百度贴吧下载其它恶意代码,进行下一阶段的恶意活动。
驱动运行后用APC注入法向系统进程 Lassas.exe 注入 DLL 模块。
DLL 配合驱动的执行过程。
DLL 首先尝试创建互斥对象 {12F7BB4C-9886-4EC2-B831-FE762D4745DC} ,防止系统创建多个实例。
接着会检查宿住进程是否是 Lsass.exe 或 svchost.exe,确保不是运行在沙箱之类的分析环境中。
尝试创建设备 "\\.\F46EA07E79033620CE13D35DE19AAC42" 句柄,建立和驱动模块的通信。
向驱动发送 0x222084 设备控制码,获得连接服务器的配置信息。和配置服务器的通信使用 HTTPS+DES 的双重加密方式,配置信息包含三个重要的部分:
主机信息上报服务 https://cs.wconf5.com:12709/report.ashx,供 DLL 上报主机基本信息。
bot id,安装时间等基本信息。
是否安装 360 杀毒,是否是虚拟机环境。
是否是无盘工作站。
上报主机信息使用DES加密,密钥为 HQDCKEY1。
访问 https://cs.wconf5.com:12710/123.html 下载配置信息:
配置信息依然是变形 DES 加密,解密密钥为 HQDCKEY1。解密后可以看到配置信息使用自定义的格式,两个百度图片为一组,截取有效数据拼接为一个有效文件:
配置信息 https://share.weiyun.com/5dSpU6a 功能未知:
所有驱动样本返回的配置信息都包含一个腾讯微云地址,直接访问该地址可以看到若干字符和数字组成的无意义字串。我们在收集到的配置信息中发现,每组数据中的配置信息服务器和微云保存的数据存在特定的模式。以上图为例,访问腾讯微云,获取字符串 cs127,其同组数据中的配置文件服务器的子域为 cs.xxxx.com ,端口为127xx。这看起来像是一种动态生成配置文件服务器地址的策略,推测可能是还在开发阶段的功能,所以样本中并未包含对应代码。
完成上述初始化过程后,驱动开始根据配置文件进入真正的功能操作。根据解析的配置文件,dll和驱动模块配合可以完成非常复杂的功能,下面罗列其中一部分功能。
更新驱动文件
程序会使用另一套算法得到DES解密密钥 HelloKey,最后用 DES 算法解出最终数据:
劫持进程ip地址。
向系统中添加证书
下载文件到 TEMP 目录并创建进程。
篡改 DNS配置
PAC *** 劫持
感染方式 2 依然是以私服客户端为载体,但是在技术细节上有较大差异。
登录器下载页面:
下载后的登录器:
多款类似游戏的私服客户端的组件 photobase.dll 被替换成同名的恶意 DLL 文件,恶意 DLL 文件的 PE Resource 中包含 3 个关键文件:
恶意 photobase.dll 有两个关键动作:
后续感染流程同上。 这是一套标准的 DLL 劫持加载方式。
恶意 photobase.dll 文件会首先为即将释放的恶意驱动文件生成一个随机文件名,文件名为 10 个随机字符,文件后缀为 .dat,并把自身 PE Resource 中相应的驱动文件放到 %windir%\Temp\ 目录下。
然后为落地的恶意驱动文件注册系统服务,并启动服务:
恶意驱动接下来的活动与前面之一种感染方式雷同,即下载、解密并最终加载其他恶意文件。
在恶意 photobase.dll PE Resource 中的真 photobase.dll 文件的前 2 个字节被置空:
恶意 photobase.dll 从 PE Resource 中提取这份文件的时候,会把这前 2 个字节以 MZ(PE 文件头) 填充:
然后,恶意的 photobase.dll 文件会为刚载入的真正的 photobase.dll 文件载入动态链接库、导入相关函数,最后,把真 photobase.dll 中的导出函数转发到自己的导出函数中。部分转发的导出函数如下:
以上面高亮的导出函数 Sqm::AddToStream() 为例,恶意 photobase.dll 中的转发实现如下:
基于海量威胁情报,百度安全反黑产开放平台配合测算出僵尸 *** 的规模。平台同时启动相关措施,尝试对受僵尸 *** 控制的用户进行风险提示。在本次联合行动中,通过黑产威胁情报分析、共享、应对等举措,我们对于双枪团伙的作案技术手段、逻辑及规则形成进一步认知。
相关附录:https://www.cnbet *** /articles/tech/983871.htm
(稿源:solidot,封面源自 *** 。)
Hackernews 编译,转载请注明出处: 据观察,一个利益熏心的黑客正在部署一个全新的针对 Oracle Solaris 系统的 rootkit,目的是ATM机网络,并在不同银行使用伪造的卡进行未经授权的现金提款。 威胁情报和事件应急公司 Mandiant 正在追踪名为 UNC2891的组织,...
据熟悉此事的人士透露,以色列阻止乌克兰购买NSO集团开发的飞马(Pegasus)间谍软件,因为其担心俄罗斯官员会因此而感到愤怒。在《卫报》和《华盛顿邮报》的联合调查之后,这一启示为以色列跟俄罗斯的关系有时会破坏乌克兰的进攻能力提供了新的见解–并跟美国的优先事项相矛盾。 自俄罗斯于2月24日对乌克兰...
美国总统拜登警告美国企业主管立即加强其公司的网络防御,准备应对潜在的来自俄罗斯的网络攻击,以报复使该国经济陷入瘫痪的制裁。拜登在一份白宫声明中写道,”根据不断变化的情报,政府正在重申以前的警告,即俄罗斯可能对美国进行恶意的网络攻击。” “我的政府将继续使用一切工具来阻止、破坏,并在必要时回应针对关...
东欧国家数字转型部负责人表示,由于大规模分布式拒绝服务(DDoS)攻击,多个乌克兰政府网站于周三下线了。DDoS攻击通过使用大量的请求来提供网页进而使网站陷入瘫痪。Mykhailo Fedorov在Telegram上表示,一些银行网站也被关闭了。 乌克兰外交部、部长内阁和议会网站在周三早些时候仍无...
BlackMatter勒索软件团伙袭击了爱荷华州的一家农业企业“新合作社”,并要求590万美元的赎金。 周一,几名安全研究人员最先关注了对这次黑客攻击事件,该公司也坦诚自己遭到了网络攻击,并相应地关闭了自己的系统。这是继5月份REvil团伙对JBS发起勒索软件攻击之后,对农业行业的又一次重大打击。研...
在过去几个月里,美国企业遭受了一系列破坏性的的勒索软件攻击,有鉴于此,国土安全部的网络安全和基础设施安全局(CISA)发布了一份防止和应对此类攻击的建议清单。这份名为《保护敏感信息和个人信息免受勒索软件导致的数据泄露》的信息表包含许多建议。此外,该文件建议公司如果成为勒索软件攻击的目标,不要支付赎金...