宏观结构
EXE调用dll文件,dll文件读dat文件并解密dat文件得到第二个dll文件
微观分析
1,样本为32位exe可执行文件
2,IDA分析初步分析
通过Getprocaddress调用dll文件的[email protected]函数
3,分析dll文件
export窗口找run函数,反汇编一下,连续调用了sub_10001BC0,sub_10001BF0,1BC0没什么东西,看1BF0
通过getproadress和getmodulefilenamA获取了文件名称和路径,获取后有加解密操作
看1000,应该是自写的readfile函数,
动态看一下获取的文件,10DC处下个断点
样本文件夹下的一个dat文件,结合上面的加解密操作,应该是通过dll文件获取dat文件路径和名称,然后解密dat文件
4,获取dat文件解密之后的内容
从上面看,解密之后返回给15D0运行,在解密之后,运行之前下断点,
找到2408,下断点一步步执行,
将数据窗口的46D600一直到496000的二进制复制到010重命名1
5,分析解密之后的文件
dll文件
ida分析
跳到10001D11,然后触发其函数10001C80,1C81里面还有10001B60,F5发现很多函数,一个个分析。
大概的意思:case1:修改环境变量利用注册表进行了自启动操作,权限维持,并在%userprofile%路径下创建文件
Case2:创建互斥体,判断文件是否存在,存在则退出,不存在则创建,如果输入了-net则运行其网络相关的东西,如果没有输入,则进行提权
Case3:使用shell打开会话,并且会话是通过winodows窗口进行传输,错误代码不等183则继续运行代码
在1000909E可以看到操作的注册表目录为
本文作者:意
本文为安全脉搏专栏作者发布,转载请注明:https://www.secpulse.com/archives/185589.html