一个高度复杂的APT框架泰姬陵被发现仅用于针对一个中亚外交目标
卡巴斯基实验室的研究人员发现了一个针对中亚外交机构的新型高度复杂的先进持续威胁(APT)框架。与APT相关的恶意软件样本揭示了一个前所未有的复杂代码库,使得它非常难以检测。
被称为TajMahal(泰姬陵)的APT框架是卡巴斯基于2018年底发现的。经过检查的样本显示,自2014年8月以来,该攻击背后的网络间谍组织一直活跃。
是什么让TajMahal变得如此精致?这个框架开发背后的罪犯创建了两个部分,或称为“东京”和“横滨”的package,它们共包含80个恶意模块。
研究人员周三在2019年安全分析师峰会上发布了一份关于TajMahal的报告,研究人员表示,“这是我们见过的任何APT工具集数量最多的插件之一”。
卡巴斯基表示,攻击者的工具包包括后门,加载器,协调器,C2通信器,录音机,键盘记录器,屏幕和网络摄像头,文件和加密密钥窃取程序,甚至是文件索引器,用于组织目标机器的数据建立索引。
一个特别有趣的功能是从可移动存储设备(例如USB驱动器)窃取文档的能力。
首先识别外部驱动器上的文件,然后在第二次使用驱动器时,仅驱动驱动器上的目标文件。
除了中亚外交机构之外,卡巴斯基还没有分享TajMahal在最近一次活动中所针对的具体细节。卡巴斯基说:“一个可能的假设是,我们还没有找到其他额外的受害者。”
卡巴斯基的首席恶意软件分析师Alexey Shulmin表示,APT复杂的通信协议与TajMaha先进的插件库相匹配。
“它有两种类型的命令和控制服务器:紧急和常规,”Shulmin说。“紧急命令用于通过更改紧急域的IP地址向APT发送紧急命令(自行卸载,恢复自身,使用常规C&C或保留非活动模式)。这是一个非常棘手和有趣的方法。“
用TajMahal对该组织进行命名,是因为这是攻击者提供用于数据泄露的XML文件的名称。
研究人员指出,这与在较早的Turla威胁组样本中发现的名为“TadjMakhal”的操作类似。(开始暗示)
“有趣的是,TajMahal唯一已知的受害者似乎也是Zebrocy的目标,虽然没有成功,”Shulmin说。Zebrocy是与APT组Sofacy相关的工具。(暗示加深)
研究人员表示,TajMahal因其隐蔽性而闻名于世。该框架的开发人员已竭尽全力使其不被发现。这些努力中最主要的是使用全新的代码库。
“通常,创建APT需要大量资源,这就是为什么开发人员尝试将以前使用的代码集成到任何新项目中 - 以使APT创建过程更方便,”Shulmin说。然而,重用代码的存在也使得APT的检测和发现更容易,他说。“在这种情况下,整个APT重新创建,使检测变得更加困难。”
隐蔽的进一步努力包括避免行为检测。这包括缺乏可能引发端点或外围防御进行“去除痕迹”的可疑操作。Shulmin说,TajMahal背后的对手更进一步,如果目标试图删除感染,他可以随机化服务名称。
“[如果删除]前端文件或相关的注册表值,它将在重新启动后重新出现,使用新名称和另一种启动类型,”根据卡巴斯基报告。
“TajMahal框架非常有趣和复杂性很高,其包括大量的插件,它们实现了我们以前从未在任何其他APT活动中看到的许多功能,例如拥有它自己的索引器,紧急备用C2,再次连接时从外部驱动器窃取文件,“卡巴斯基研究人员写道。
研究人员强调,泰姬陵仍然不清楚 - 例如目标是如何被感染的。但有一件事是清楚的。随着卡巴斯基对TajMahal的曝光,攻击者将不得不从头开始。
以上为采访内容
从采访内容可以看出,卡巴暗示了多次该背后的组织可能是俄罗斯,但是这样的暗示也同样适用于美国,因为美国模仿俄罗斯的手法来针对中亚目标进行攻击也是极有可能的,而拥有这么高超的APT框架恶意软件的国家,除了大**,也就这两国了。
下面为报告分析内容
'TajMahal'是卡巴斯基实验室在2018年秋季发现的一个以前未知且技术复杂的APT框架。这个完整的间谍框架由两个名为“东京”和“横滨”的包组成。它包括后门,加载器,协调器,C2通信器,录音机,键盘记录器,屏幕和网络摄像头抓取器,文档和加密密钥窃取程序,甚至是受害者机器的自己的文件索引器。我们发现其加密的虚拟文件系统中存储了多达80个恶意模块,这是我们见过的APT工具集中插件数量最多的插件之一。
为了突出其功能,TajMahal能够从受害者以及打印机队列中刻录的CD中窃取数据。它还可以请求从先前看到的USB记忆棒中窃取特定文件; 下次USB连接到计算机时,文件将被盗。
TajMahal至少在过去五年中已经开发和使用。第一个已知的“合法”样本时间戳是从2013年8月开始,最后一个是从2018年4月开始。在受害者的机器上看到TajMahal样本的第一个确认日期是2014年8月。
技术细节
我们发现了两种不同类型的TajMahal包,自称为东京和横滨。卡巴斯基实验室发现的目标系统被两个软件包感染。这表明东京被用作第一阶段感染,在有趣的受害者身上部署了功能齐全的横滨一揽子计划,然后留下来进行备份。这些包共享相同的代码库,我们确定了以下有趣的功能:
能够窃取发送到打印机队列的文档。
为受害者侦察收集的数据包括Apple移动设备的备份列表。
录制VoiceIP应用程序音频时拍摄屏幕截图。
偷了写CD图像。
能够在再次可用时窃取以前在可移动驱动器上看到的文件。
窃取Internet Explorer,Netscape Navigator,FireFox和RealNetworks 的cookie。
如果从前端文件或相关注册表值中删除,则在重新引导后将使用新名称和启动类型重新显示。
受害者
到目前为止,仅仅发现了一名受害者 - 一个来自中亚国家的外交部的目标。
结论
TajMahal框架是一个非常有趣的发现,尤其是其高水平的技术复杂性,这是毫无疑问的。实现许多功能的大量插件是在任何其他APT活动中从未见过的。例如,它有自己的索引器,紧急C2,能够在外部驱动器再次可用时窃取特定文件,等等。
问题是,为什么只为一个受害者解决所有麻烦?一个可能的假设是,因为目前还没有找到其他受害者。目前无法看到恶意软件如何使用VFS中的某个文件,从而为尚未检测到的其他恶意软件版本打开了大门,这一事实进一步强化了这一理论。
下表提供了存储在VFS中的完整文件列表,其中包含描述插件功能的简短描述,
看看这80个模块,你就说牛不牛逼。
IOC
域名和IP
104.200.30.125 50.56.240.153 rahasn.webhop.org rahasn.akamake.net rahasn.homewealth.biz
文件哈希
22d142f11cf2a30ea4953e1fffb0fa7e 2317d65da4639f4246de200650a70753 27612cb03c89158225ca201721ea1aad 412956675fbc3f8c51f438c1abc100eb 490a140093b5870a47edc29f33542fd2 51a7068640af42c3a7c1b94f1c11ab9d 533340c54bd25256873b3dca34d7f74e 684eca6b62d69ce899a3ec3bb04d0a5b 69a19abf5ba56ee07cdd3425b07cf8bf 6cfd131fef548fcd60fbcdb59317df8e 72dc98449b45a7f1ccdef27d51e31e91 7c733607a0932b1b9a9e27cd6ab55fe0 7d5265e814843b24fcb3787768129040 80c37e062aa4c94697f287352acf2e9d 815f1f8a7bc1e6f94cb5c416e381a110 a43d3b31575846fa4c3992b4143a06da 08e82dc7bae524884b7dc2134942aadb 7bcd736a2394fc49f3e27b3987cce64057314359df11ffdf476f809671ec0275 b72737b464e50aa3664321e8e001ff32 ce8ce92fb6565181572dce00d69c24f8 5985087678414143d33ffc6e8863b887 84730a6e426fbd3cf6b821c59674c8a0 d5377dc1821c935302c065ad8432c0d2 d8f1356bebda9e77f480a6a60eab36bb 92f8e3f0f1f7cc49fad797a62a169acd 9003cfaac523e94d5479dc6a10575e60 df91b86189adb0a11c47ce2405878fa1 e17bd40f5b5005f4a0c61f9e79a9d8c2 c1e7850da5604e081b9647b58248d7e8 99828721ac1a0e32e4582c3f615d6e57 f559c87b4a14a4be1bd84df6553aaf56 b9c208ea8115232bfd9ec2c62f32d6b8 061089d8cb0ca58e660ce2e433a689b3 0e9afd3a870906ebf34a0b66d8b07435 9c115e9a81d25f9d88e7aaa4313d9a8f520ee02668a1c7b7c262708e12b1ba6b 7bfba2c69bed6b160261bdbf2b826401 77a745b07d9c453650dd7f683b02b3ed 3a771efb7ba2cd0df247ab570e1408b2 0969b2b399a8d4cd2d751824d0d842b4 fc53f2cd780cd3a01a4299b8445f8511 4e39620afca6f60bb30e031ddc5a4330 bfe3f6a79cad5b9c642bb56f8037c43b 3dfebce4703f30eed713d795b90538b5 9793afcea43110610757bd3b800de517 36db24006e2b492cafb75f2663f241b2 21feb6aa15e02bb0cddbd544605aabad 21feb6aa15e02bb0cddbd544605aabad 649ef1dd4a5411d3afcf108d57ff87af 320b2f1d9551b5d1df4fb19bd9ab253a 3d75c72144d873b3c1c4977fbafe9184 b9cf4301b7b186a75e82a04e87b30fe4 b4e67706103c3b8ee148394ebee3f2687bfbd72441e1f2ed48fbc0f33be00f24 cdb303f61a47720c7a8c5086e6b2a743 2a6f7ec77ab6bd4297e7b15ae06e2e61 8403a28e0bffa9cc085e7b662d0d5412 3ffd2915d285ad748202469d4a04e1f5 04078ef95a70a04e95bda06cc7bec3fa 235d427f94630575a4ea4bff180ecf5d 8035a8a143765551ca7db4bc5efb5dfd cacaa3bf3b2801956318251db5e90f3c 1aadf739782afcae6d1c3e4d1f315cbd c3e255888211d74cc6e3fb66b69bbffb d9e9f22988d43d73d79db6ee178d70a4 16ab79fb2fd92db0b1f38bedb2f02ed8 8da15a97eaf69ff7ee184fc446f19cf1 ffc7305cb24c1955f9625e525d58aeee c0e72eb4c9f897410c795c1b360090ef 9ad6fa6fdedb2df8055b3d30bd6f64f1 44619a88a6cff63523163c6a4cf375dda571660c9cf1696a2f4689b2007a12c7 81229c1e272218eeda14892fa8425883 0ac48cfa2ff8351365e99c1d26e082ad
参考链接:
https://securelist.com/project-tajmahal/90240/
请关注我的微博账号:blackorbird
https://www.weibo.com/blackorbird
一个高度复杂的APT框架泰姬陵被发现仅用于针对一个中亚外交目标相关推荐
- 从零开始实现一个简易的Java MVC框架(六)--加强AOP功能
前言 在前面从零开始实现一个简易的Java MVC框架(四)--实现AOP和从零开始实现一个简易的Java MVC框架(五)--引入aspectj实现AOP切点这两节文章中已经实现了AOP功能并且引用 ...
- 依赖注入[5]: 创建一个简易版的DI框架[下篇]
为了让读者朋友们能够对.NET Core DI框架的实现原理具有一个深刻而认识,我们采用与之类似的设计构架了一个名为Cat的DI框架.在<依赖注入[4]: 创建一个简易版的DI框架[上篇]> ...
- 从零开始实现一个简易的Java MVC框架(九)--优化MVC代码
前言 在从零开始实现一个简易的Java MVC框架(七)--实现MVC中实现了doodle框架的MVC的功能,不过最后指出代码的逻辑不是很好,在这一章节就将这一部分代码进行优化. 优化的目标是1.去除 ...
- 设计一个简易的引导任务框架(2) | 4.23粉丝赠书
今天是4.23世界读书日,公众号向支持的小伙伴们送出下面3本技术图书(三选一)! 参与方式: 本文点赞留言,必须超过20字,以及你想要的图书名字参与活动 积赞最多的前3名读者,将会获得赠书,三选一 活 ...
- 一个完整的Windows程序框架
前面我们演示了带界面的Windows程序,但那仅仅是一个弹窗,调用MessageBox函数就可以实现,不是一个真正意义上的窗口.我们通常所说的窗口包含最大化.最小化.关闭按钮,也包含菜单.单选框.图像 ...
- 【JavaScript框架封装】自己动手封装一个涵盖JQuery基本功能的框架及核心源码分享(单文件版本)...
整个封装过程及阅读JQuery源码的过程基本上持续了一个月吧,最终实现了一个大概30%的JQuery功能的框架版本,但是里面涉及的知识点也是非常多的,总共的代码加上相关的注释大概在3000行左右吧,但 ...
- 【JavaScript框架封装】自己动手封装一个涵盖JQuery基本功能的框架及核心源码分享(单文件版本)
整个封装过程及阅读JQuery源码的过程基本上持续了一个月吧,最终实现了一个大概30%的JQuery功能的框架版本,但是里面涉及的知识点也是非常多的,总共的代码加上相关的注释大概在3000行左右吧,但 ...
- 每天学习一个Android中的常用框架——0.目录
文章目录 1.前言 2.环境 3.目录 3.1 持久化 3.1.1 Litepal 3.1.2 GreenDao 3.1.3 Realm 3.1.4 DBFlow 3.2 网络传输 3.2.1 OkH ...
- 从零开始写一个抖音App——Apt代码生成技术、gradle插件开发与protocol协议
1.讨论--总结前两周评论中有意义的讨论并给予我的解答 2.mvps代码生成原理--将上周的 mvps 架构的代码生成原理进行解析 3.开发一款gradle插件--从 mvps 的代码引出 gradl ...
最新文章
- RNN梯度消失和爆炸的原因 以及 LSTM如何解决梯度消失问题
- 【实验】小型网络WLAN架构实战案例
- BUUCTF-- Linux Labs 1---SSH远程登陆
- ?Web开发者需要知道的CSS Tricks
- Redis 通过 RDB 方式进行数据备份与还原
- Oracle入门(十二G)之序列
- 联想小新air14笔记本黑屏_联想小新air14锐龙版测评,谈谈它的好和坏
- 机器字长、存储字长、指令字长
- c++ public 函数名相同_C++虚函数、重载、覆盖
- centos7 mysql 开机启动_mysqld service 随开机启动 (Centos6,Centos7)
- Oulipo(Hash入门第一题 Hash函数学习)
- django2.2-form表单详解
- Crossin先生的微信打飞机游戏(4)
- java 计算中位数方法
- 汽车洒水器的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
- 小米4c怎么添加语言怎么设置在哪个文件夹,小米4c怎么插卡 小米4c插卡方法【详细步骤】...
- HDU4699 Editor(双栈对弹)
- oracle中毒,oracle数据库中毒恢复 oracle数据库解密恢复 服务器中勒索病毒解密恢复.Hermes666...
- 用matlab求二重积分例题_matlab计算二重积分
- 数据资产盘点的流程和方法