首页
论坛
课程
招聘
[原创]Kraken攻击恶意样本
2020-12-1 18:50 1691

[原创]Kraken攻击恶意样本

2020-12-1 18:50
1691

Kraken攻击恶意样本

样本名称 31368f805417eb7c7c905d0ed729eb1bb0fea33f6e358f7a11988a0d2366e942.doc
样本类型 doc
恶意类型 加载器
sha256 31368f805417eb7c7c905d0ed729eb1bb0fea33f6e358f7a11988a0d2366e942
 

启动宏的时候会报错

 

 

查看宏,该宏使用CactusTorch VBA模块发起无文件攻击

 


主要定义了十六进制格式的序列化对象,其中包含一个正在加载到内存中的.Net

 

宏主要使用Kraken.Kraken定义了一个入口类,Set fmt = CreateObject("System.Runtime.Serialization.Formatters.Binary.BinaryFormatter") 创建一个序列化的BinaryFormatter对象,并反序列化对象,Set o = d.DynamicInvoke(al.ToArray()).CreateInstance(entry_class) 通过调用DynamicInvoke,从内存中加载并执行.Net

 

序列化文件:

 

 

提取c#序列化文件

 

 

可以看到其中含有一段PE文件的部分

 

 

PE文件进行提取,可以百分百确定是个c#文件了

 

 

CactusTorch框架能够将名为Kraken.dll的.Net编译二进制文件加载到内存中,并通过Word中的VBScript执行它,此有效负载将Shellcode注入WerFault.exe,WerFault.exe是连接到WER服务并由Microsoft用来跟踪和解决操作系统错误的进程,当Windows功能或应用程序相关的错误发生时,通常会调用该报告服务WerFault.exe,当受害者看到在其计算机上运行WerFault.exe时,他们可能会假设发生了一些错误,而在这种情况下,他们实际上已成为攻击的目标

 

 

可以看到Kraken模块将shellcode注入c:\windows\syswow64\werFault.exe中

 

 


可以看到注入了大概1w+的数值,可以看到shellcode通过loader进行载入

 

 

通过MapAndStart进行了跨进程注入,主要使用了writeprocessmemory,readprocessmemory,resumethread这些api进行shellcode注入

 

 

注入的代码提取:

 

 

 

ida分析:通过dllentrypoint的dllmain_dispatch调用dllmain函数执行dll

 

 

创建线程:

 

 

通过GetTickCount函数来计算是否再沙箱里进行检测,如果计算出的result != 2 退出,因为两次的睡眠前后调用两次,所以 == 2

 

 

检查是否在虚拟机中运行

 

 


检查是否在调试状态:

 

 

virtualalloc分配了可执行的内存空间,用解密的shellcode放入内存中,在CreateThread中执行

 


过掉这些反调试后,到达最后的shellcode的位置

 

 

通过loadlibrary加载api后解密出http类的api进行链接

 


 

 

通过HTTP的API可以最后得到相应的URL:http://www.asia-kotoba.net/favicon32.ico

 

 

如果返回成功将会去相应的新分配的内存位置执行,应该是网站上存有的shellcode,但是此链接现在已经失效了,Shellcode无法进行进一步分析


看雪学院推出的专业资质证书《看雪安卓应用安全能力认证 v1.0》(中级和高级)!

收藏
点赞4
打赏
分享
最新回复 (4)
雪    币: 4239
活跃值: 活跃值 (335)
能力值: ( LV2,RANK:15 )
在线值:
发帖
回帖
粉丝
如斯咩咩咩 活跃值 2020-12-2 12:34
2
0
源神牛啤
雪    币: 4856
活跃值: 活跃值 (2335)
能力值: (RANK:452 )
在线值:
发帖
回帖
粉丝
顾何 活跃值 8 2020-12-2 14:31
3
0

感谢分享,我这里补充下样本,欢迎感兴趣的坛友下载分析。解压密码infected

上传的附件:
雪    币: 10
活跃值: 活跃值 (57)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wx_全都怪我 活跃值 2020-12-3 14:05
4
0
大佬您好 我想问一下提取c#序列化文件 ,这一步是怎么操作的 
雪    币: 2158
活跃值: 活跃值 (1694)
能力值: ( LV6,RANK:158 )
在线值:
发帖
回帖
粉丝
L0x1c 活跃值 1 2020-12-4 09:17
5
0
wx_全都怪我 大佬您好 我想问一下提取c#序列化文件 ,这一步是怎么操作的
宏代码里有数据,自己可以在宏里直接写debug.print 输出出来,复制一下就OK啦
游客
登录 | 注册 方可回帖
返回