前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[译文] 恶意代码分析:1.您记事本中的内容是什么?受感染的文本编辑器notepad++

[译文] 恶意代码分析:1.您记事本中的内容是什么?受感染的文本编辑器notepad++

作者头像
Eastmount
发布2024-05-08 11:23:42
680
发布2024-05-08 11:23:42
举报

这是作者新开的一个专栏,主要翻译国外知名安全厂商的技术报告和安全技术,了解它们的前沿技术,学习它们威胁溯源和恶意代码分析的方法,希望对您有所帮助。当然,由于作者英语有限,会借助LLM进行校验和润色,最终结合自己的安全经验完成,还请包涵!

这篇文章将介绍文本编辑器notepad++如何被感染的,通过恶意链接引导用户下载恶意的编辑器,并分析其恶意行为,类似于上游供应链攻击或钓鱼攻击,并且对中国用户造成一定影响。一方面,作为用户,我们需要防范类似的攻击并从正版官方网站中下载应用程序;另一方面,通过该文章我们能分析恶意软件逆向分析过程,以及关键代码特征提取及分析方式(如spacex命名)。基础性技术文章,希望您喜欢!

  • 当时看标题作者第一反应是:记事本中嵌入恶意代码或钓鱼链接发起攻击,想了半天不知道如何实现。究竟能否利用记事本TXT文件发起攻击呢?又将如何防御?值得深思
  • 原文标题:《What’s in your notepad? Infected text editors target Chinese users》
  • 原文链接:https://securelist.com/trojanized-text-editor-apps/112167/
  • 文章作者:SERGEY PUZAN
  • 发布时间:2024年3月13日
  • 文章来源:https://securelist.com

前言

“恶意广告(Malvertising)” 是一种广泛采用的策略,旨在诱使受害者访问含有恶意内容的网站,其通常会在搜索结果的顶部放置广告块,以增加用户点击链接的概率。此外,搜索结果顶部的网站也往往更容易获得用户的信任。一年前,我们的专家已经讨论过如何通过Google Ads传播的 RedLine 窃密软件的恶意广告行为。攻击者利用诸如拼写错误(typosquatting)等技术,以模仿流行应用的官方网站,从而最大限度地提高欺骗性。

当前,类似的威胁已影响到中国互联网上广受欢迎的搜索引擎的用户。我们的研究团队发现了两起相关案例,影响了流行文本编辑器的修改版本:

  • 在第一个案例中,恶意资源出现在广告区域
  • 在第二个案例中,恶意资源出现在搜索结果的顶部

我们尚未确定该威胁的所有细节,因此本文档将在获取进一步信息后进行必要的更新。


一.搜索引擎中的恶意网站

以下截图展示了搜索引擎反馈的两个包含了恶意链接的结果,左图在搜索notepad++的广告区域中发现了恶意链接,右图是搜索vnote的结果。

  • notepad++
  • vnote

在搜索notepad++时,我们观察到恶意网站会利用广告模块来传播其内容。当打开该网站时,细心的用户会立即注意到一个异常现象:网站地址中包含了vnote,且标题宣称提供的是Notepad-- (一款与Notepad++类似的产品,同样作为开源软件被分发),但图片却醒目地展示了 Notepad++。实际上,从这里下载得到的软件是Notepad-- 。

该网站提供了针对三大主流操作系统平台(Windows、Linux、macOS)的安装程序。然而,这里仅有两个恶意链接,分别指向macOS和Linux版本的下载页面。Windows版本的链接则指向官方存储库,因此不是恶意链接。

上图展示了点击恶意Notepad–下载按钮所对应的链接。其显示了恶意安装包的来源为:

  • vnote-1321786806[.]cos[.]ap-hongkong[.]myqcloud[.]com

同时,在搜索 vnote 时发现第二个页面试图模仿该程序的官方网站:

遗憾的是,在调查时,曾指向 VNote 潜在恶意版本的链接已失效。尽管如此,它们与 Notepad-- 链接指向了相同的资源。


二.携带恶意载荷的文本编辑器

该部分我们将分析感染软件的恶意行为,以及挖掘其背后的意图。

鉴于我们拥有 Linux 和 macOS 平台上的假冒 Notepad-- 样本,我们可以进一步逆向分析它们。所下载的应用程序与原始版本存在多处差异,并且Linux和macOS的恶意版本在功能上非常相似。

接下来,我们将分析 macOS 版本(MD5: 00fb77b83b8ab13461ea9dd27073f54f)。它是一个 DMG 格式的磁盘映像文件,其内容除了包含一个名为 NotePad-- 的可执行文件(MD5: 6ace1e014863eee67ab1d2d17a33d146)外,其他方面均与原始版本(2.0.0)相同。

在对 main 函数进行深入分析时,我们发现,在应用程序启动之前,对名为 Uplocal 的可疑类进行了初始化。需要注意,该类在原始 Notepad-- 的源代码中并不存在。

此类仅实现了一个名为 run 的方法。其主要功能是将文件下载到 /tmp/updater 路径并执行它。下图展示了 Uplocal 类 run 方法的载荷(Payload)。

该文件的下载地址如下:

  • hxxp://update[.]transferusee[.]com/onl/mac/<md5_hash>

其中, <md5_hash> 是通过执行以下 bash 命令并在 GetComputerUUID 函数中获取设备序列号的 MD5 哈希值。

代码语言:javascript
复制
ioreg -rd1 -c IOPlatformExpertDevice |  awk '/IOPlatformSerialNumber/ { print $3; }'

Linux版本与macOS版本略有不同:

  • 文件从相同的地址下载,但位于目录 /onl/lnx/ 下,即为: – hxxp://update[.]transferusee[.]com/onl/lnx/<md5_hash>
  • <md5_hash> 是设备 MAC 地址的 MD5 哈希值

不幸的是,在我们进行调查时,服务器已不再提供所下载的文件。因此,我们无法确定该文件原本应包含的内容。

然而,我们确定该服务器还有一个子域 dns[.]transferusee[.]com,它通过名为 DPysMac64(MD5: 43447f4c2499b1ad258371adff4f503f)的 Mach-O 文件进行访问,该文件之前已上传到 VT,但在调查时未被任何供应商检测到。

此外,该文件被存储在预期神秘更新程序应从同一服务器下载的同一位置上。下图展示了从 update[.]transferusee[.]com 加载 DPysMac64 文件。

由此,我们可以相当确信地推断出,该更新程序(updater)是一个中间步骤,其最终目的应当是引导加载 DPysMac64。此外,该服务器还托管了一个名为 DPysMacM1 的文件,其名称暗示它是专为运行于Apple Silicon处理器上的系统而构建的。然而,实际上它与 DPysMac64 为同一文件。

该应用程序被确认为一个后门程序,与所谓的 Geacon 高度相似。

  • Geacon 是一个开源实现的 CobaltStrike 代理,用Go语言编写而成。

尽管攻击者在其项目中删除了对 Geacon 的任何直接提及(mention),但我们发现了大量与 geacon_plusgeacon_proBeaconTool 的实现相匹配的代码片段、名称、函数和模块。例如,它们几乎拥有完全相同的 sysinfo 模块、FirstBlood 函数、EncryptedMetaInfo 函数、PullCommand 函数等。

下图对比了DPysMac64 的 sysinfo 模块(左侧)与 geacon_pro 实例(右侧)的功能列表。

该后门程序配备了两种启动选项——常规启动和作为服务启动。其与C2服务器 dns[.]transferusee[.]com 的通信采用HTTPS协议进行。有趣的是,攻击者将实现远程命令执行功能的项目命名为spacex。

该后门程序包含以下命令列表:


三.受感染应用程序之间的连接

虽然我们无法确定先前从vnote[.]info下载的文件内容,但我们发现,这两个网站上分发应用程序的源地址是相同的。此外,值得一提的是,在检查修改后的NotePad时,我们意外地发现了另一个有趣的细节。在可执行文件的代码中,我们发现了类似于“关于(About)”窗口的文本,但其中的链接并非指向官方项目网站,而是指向了可疑的资源vnotepad[.]com。以下是程序中“关于”窗口的用户界面截图。

“关于”窗口中的链接将我们导向了一个占位页面:

我们认为此现象颇为异常,因此尝试将协议从HTTP切换到HTTPS,进而发现该网站是VNote网站的另一个版本,与我们之前在vnote[.]info上观察到的内容高度相似。此外,在打开该网站时,浏览器警告我们其使用的证书是无效的,因为该证书实际是为vnote[.]info颁发的。

这表明两个案例之间存在明确且直接的联系,以及高度的相似性,即修改后的VNote编辑器与 NotePad-- 的目的相似,均涉及下一阶段的感染传递。


四.总结

我们持续对上述威胁进行深入研究,并探寻尚未披露的中间阶段。此外,我们已确定Linux和macOS应用程序中的更改是相同的,这暗示可能存在一个与我们在macOS上发现的类似的Linux后门。

还有很多细节直接我们分析,尤其当我们需要逆向分析一个样本并挖掘其背后机理时。

入侵指标(Indicators of Compromise,简称IOC)

文件:

链接:

本文参与?腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2024-05-08,如有侵权请联系?cloudcommunity@tencent.com 删除

本文分享自 娜璋AI安全之家 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 一.搜索引擎中的恶意网站
  • 二.携带恶意载荷的文本编辑器
  • 三.受感染应用程序之间的连接
  • 四.总结
相关产品与服务
腾讯云代码分析
腾讯云代码分析(内部代号CodeDog)是集众多代码分析工具的云原生、分布式、高性能的代码综合分析跟踪管理平台,其主要功能是持续跟踪分析代码,观测项目代码质量,支撑团队传承代码文化。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com