库代码的静态分析并不容易,因为Rust的调用约定不规范,且函数名常常缺失,这使得分析过程变得更加复杂。接下来,我们具体来探讨一下这些潜在的问题。
数据传输路径
{
"http": ["https://api.aliyung.org"],
"rust": ["api.aliyung.com:18883"],
"tfm": 1
}
{
"path": "upload@" ,
"method": "POST",
"contentType": "application/json",
"data": ""
}
服务器在原生库中进行响应解码,接着传至SDK。SDK首先执行base64解码,然后依据与http服务器交互的原理进行解密。解密后,SDK通过路径/api/e/d/u将设备信息上传至命令服务器。同时,它也能从服务器接收有关规范恶意软件操作的指令。这一系列动作紧密相连,恶意软件正是利用这一过程进行不良活动。
窃取数据逻辑
恶意软件在/api/e/config/keyword这一地址向KeywordsProcessor处理器索要关键词列表。处理器接收到单词后,从中筛选出图像并上传至命令服务器。通过分析包名com.spark.stat,我们发现原本用于分析的SDK实际上会选择性窃取图库中的内容。
Android感染特征
{
"code": 0,
"message": "success",
"data": {
"uploadSwitch": 1,
"pw": 0,tokenim正版app下载
"rs": ""
}
}
在分析受感染的Android应用时, imtoken钱包app下载安卓版我们发现恶意SDK会将感染设备的详细信息发送至C2服务器。在deviceType字段中,它填写了“android”,这暗示了其他平台可能存在类似的恶意软件。一些受感染的应用除了包含恶意框架外,根目录下还藏有modify_gzip.rb脚本。该脚本是在攻击者开发恶意软件时用来嵌入框架的。
iOS恶意模式
{
"code": 0,
"message": "success",
"data": {
"letterMax": 34,
"letterMin": 2,
"enable": 1,
"wordlistMatchMin": 9,
"interval": 100,
"lang": 1,
"wordMin": 12,
"wordMax": 34
}
}
iOS上的恶意软件与Android平台不同,它们采用了ML Kit接口,能够与谷歌的OCR模型相融合。此外 https://www.chihehuanbao.com,恶意软件中还内置了用于与C2进行通信的自定义协议和Rust库。这一现象反映出,不同操作系统上的恶意软件在技术和策略上各有特色。
框架信息暴露
解密的数据中包含被研究的应用标识符,而框架中还保存了其他应用的包ID,并在选择器[MMCore config]中调用。在研究过程中,部分关联应用已被从App Store移除,但仍有部分应用存在恶意框架。这一现象揭示了恶意框架可能带来的潜在影响范围。
开发背景线索
{
"code": 0,
"message": "success",
"data": {
"keywords": ["助记词", "助記詞", "ニーモニック", "기억코드", "Mnemonic",
"Mnemotecnia", "Mnémonique", "Mnemonico", "Mnemotechnika", "Mnemônico",
"클립보드로복사", "복구", "단어", "문구", "계정", "Phrase"]
}
}
在分析 Android 应用时,发现文字处理器的代码附有中文注释。再结合 iOS 版本的框架,开发人员的主文件夹命名也使用了中文。由此推断,恶意模块的开发者对中国语言非常熟悉。此外,对 iOS 框架中的恶意 Rust 代码进行深入分析,还发现了用于与 Rust 服务器通信的客户端代码,以及加密服务器的相关代码。
现在遇到了难题,这种既复杂又不易察觉的恶意软件开发工具,我们该如何有效应对?各位可以留言谈谈你们的看法,同时点个赞和转发这篇文章,让我们共同讨论研究。