背景

  Hades一个充满神秘色彩的APT组织,该组织因为2017年12月22日针对韩国平昌冬奥会的攻击活动被首次发现,后来卡巴斯基将该次事件的攻击组织命名为Hades。但是该攻击组织的归属问题却一直未有明确定论。一方面由于该组织在攻击事件中使用的破坏性恶意代码(Olympic Destroyer)与朝鲜Lazarus组织使用的恶意代码存在相似性。而另一方面则有部分美国媒体认为该事件的幕后黑手是俄罗斯情报机构,他们故意模仿了其他组织的攻击手法以制造虚假flag迷惑安全人员。

事件分析

本次分析样本疑似Hades组织针对乌克兰的又一次攻击行动。样本详细信息如下所示:

打开诱饵文档页面显示空白,需要启动宏代码才会显示文档内容:(之前样本也会以同样方式诱导用户启用宏代码)

诱饵内容与乌克兰公民参与军事服役等内容相关:

该诱饵文档内容实际来源于一个国外的网站(uteka.ua),该网站专门面向经理和会计师等领域人员提供有关未解决和有争议问题的实用信息。原文内容如下所示:

宏代码经过混淆处理,解混淆后会首先修改文档属性显示诱饵内容,然后创建desktop.ini与C:\ProgramData\pagefile.dll文件:(别问我怎么解混淆,问就是Notepad++)

pagefile.dll文件是.NET平台后门程序,由宏代码通过RegSvcs.exe加载执行,然后与C2服务器(mopub[.]space)进行通讯。

关联分析

通过关联分析发现该样本与Hades组织存在较强关联。本次样本的攻击目标、宏代码相似度等方面均与猎影实验室此前发布的“魔鼠行动(OPERATION TRICKYMOUSE)-以新冠病毒为主题攻击乌克兰”相吻合。

两次事件都是针对乌克兰作为攻击目标:

宏代码在数据初始化、解密算法、执行功能等方面也基本相同:(实际的可以下载2个样本对比一下)

两个样本都在代码起始位置使用相同方式通过函数初始化要保存到本地的文件数据:(本次样本会多出一些无用的混淆代码,批量删除就可以)

然后使用相同方式初始化变量,同时解密函数也完全相同:(如果是静态分析可以把解密函数扣出来单独执行)

最后,在主函数中代码的功能逻辑也完全相同:

之前样本:

总结

当前网络上对于Hades组织的披露信息还相对较少,根据我们掌握的信息暂时很难描绘出该组织全貌。然而只要该组织继续活跃,我们相信是狐狸总会有露出尾巴的时候。后续会对该组织进行持续关注与追踪。

IOC

Mopub[.]space

172.67.213.215

0c6f6079cf6959fb55141c49b62f7308

bc9f3ca5f2ff492e8c82c1c6cb244844

参考链接

《魔鼠行动(OPERATION TRICKYMOUSE)-以新冠病毒为主题攻击乌克兰》链接:

https://ti.dbappsecurity.com.cn/blog/index.php/2020/02/25/operation-trickymouse/

诱饵文档原文链接:

https://uteka.ua/ua/publication/commerce-12-zarplaty-i-kadry-3-izmeneniya-v-voinskix-obyazannostyax-i-vedenii-voinskogo-ucheta?utm_source=facebook&utm_medium=smm&utm_content=post

【APT】Hades APT组织针对乌克兰发起网络攻击事件分析的更多相关文章

  1. FireEye APT检测——APT业务占比过重,缺乏其他安全系统的查杀和修复功能

    摘自:https://zhidao.baidu.com/question/1694626564301467468.html火眼,APT威胁下快速成长 FireEye的兴起开始于2012年,这时段正好迎 ...

  2. 短信发送接口被恶意访问的网络攻击事件(四)完结篇--搭建WAF清理战场

    前言 短信发送接口被恶意访问的网络攻击事件(一)紧张的遭遇战险胜 短信发送接口被恶意访问的网络攻击事件(二)肉搏战-阻止恶意请求 短信发送接口被恶意访问的网络攻击事件(三)定位恶意IP的日志分析脚本 ...

  3. 短信发送接口被恶意访问的网络攻击事件(三)定位恶意IP的日志分析脚本

    前言 承接前文<短信发送接口被恶意访问的网络攻击事件(二)肉搏战-阻止恶意请求>,文中有讲到一个定位非法IP的shell脚本,现在就来公布一下吧,并没有什么技术难度,只是当时花了些时间去写 ...

  4. 使用GPA针对android应用的绘制分析

    使用GPA针对android应用的绘制分析 以前经常用GPA来perf端游的绘制,很多perf工具例如perfhud,pix对于加壳的程序总是束手无策,但是GPA却不受这个限制,可以自动HOOK 3D ...

  5. 1010针对一个binlog日志的分析

    针对一个BINLOG日志的分析 -- 当前binlog_format | ROW[root@109 mysql]# cat wang1010.txt/*!50530 SET @@SESSION.PSE ...

  6. hbase 学习(十四)Facebook针对hbase的优化方案分析

    使用hbase的目的是为了海量数据的随机读写,但是在实际使用中却发现针对随机读的优化和gc是一个很大的问题,而且hbase的数据是存储在Hdfs,而Hdfs是面向流失数据访问进行设计的,就难免带来效率 ...

  7. 【原创】Silverlight客户端发起WebRequest请求分析

    Silverlight网站部署后,客户端浏览器访问的时候会 下载 网站的xap文件包等信息,把程序代码放到本地执行,因为本地机器上安装了silverlight运行库. 所以如果silverlight前 ...

  8. 针对无线信道衰落特性分析3G,4G,5G的关键技术异同点

    1 无线信道特性对3G系统的影响 2

  9. selenium.common.exceptions.ElementNotVisibleException: Message: element not visible处理方法:selenium针对下拉菜单事件的处理

    使用Selenium爬虫时,可能会遇到一些下拉菜单,动态加载,如果直接使用find_element_by_函数会报错,显示selenium.common.exceptions.ElementNotVi ...

  10. 基于知识图谱的APT组织追踪治理

    高级持续性威胁(APT)正日益成为针对政府和企业重要资产的不可忽视的网络空间重大威胁.由于APT攻击往往具有明确的攻击意图,并且其攻击手段具备极高的隐蔽性和潜伏性,传统的网络检测手段通常无法有效对其进 ...

随机推荐

  1. journalctl查看内核/应用日志

    Systemd统一管理所有Unit的启动日志.带来的好处就是,可以只用journalctl一个命令,查看所有日志(内核日志和应用日志).日志的配置文件是/etc/systemd/journald.co ...

  2. Linux编译安装中的--prefix

    本文主要说明--prefix参数的作用,其主要用在编译安装源代码应用中的./configure环节. 1.源码安装一般包括几个步骤:配置(configure),编译(make),安装(make ins ...

  3. java.sql.SQLIntegrityConstraintViolationException: Duplicate entry '1' for key 'PRIMARY'

    你设置的主键里面已经有一个值为1的数值了,再插入一个就重复了. 但是主键是不能重复的.

  4. Tomcat异常处理机制

    声明 源码基于Spring Boot 2.3.12中依赖的Tomcat 异常例子 tomcat中返回错误页面目前主要是以下两种情况. 执行servlet发生异常 程序中主动调用response.sen ...

  5. jmeter压测dubbo接口,参数为dto时如何写传参及有错误时的分析思路

    一.传参 1. 无论dubbo接口传参是否为dto,所有参数都是在args的tab传进去的. 2. 如果dto中有自定义对象,paramType为自定义dto名,paramValue为其他参数组成的j ...

  6. ssh 远程报错 Permission denied, please try again.(密码输入正确也无法登录)

    登录KVM  查看sshd服务systemctl  status sshd 报错显示error: cloud not get  shadow  information forXXX 问题原因: 服务器 ...

  7. linux并行执行线程

    资料来源: (1) https://www.jianshu.com/p/d8d58846c53f(作者:黄甫一) 1.并行任务较少时: (1) 给需要并行运行的命令行在结尾加上"&& ...

  8. Hibernate的工作流程

  9. 在集群上运行Spark应用

    初识Spark真的存在很多疑问:Spark需要部署在集群里的每个节点上吗?Spark怎么有这么多依赖,这些依赖分别又有什么用?官网里边demo是用sbt构建的,难道还有再学一下sbt吗? --就是这么 ...

  10. 接口拿到的id和传到后台的id不一致,导致查询详情和编辑报错

    碰到这个问题真是百思不得其解.接口上打印的值和数据库一致,浏览器查看response的反馈也一致.但是一在页面打印请求回来的值,就变了,变成了另一个id,但是其他数据又和数据库一致. 查了一圈也没有查 ...