-
UID:17777
-
- 注册时间2007-05-02
- 最后登录2025-05-02
- 在线时间18634小时
-
- 发帖786294
- 搜Ta的帖子
- 精华0
- 飞翔币209891
- 威望215717
- 飞扬币2613068
- 信誉值8
-
访问TA的空间加好友用道具
- 发帖
- 786294
- 飞翔币
- 209891
- 威望
- 215717
- 飞扬币
- 2613068
- 信誉值
- 8
|
[font="]0x01[font="]基本信息[font="] 文件[font="]: C:Users15pb-win7Desktop 04.vir大小[font="]: 631810 bytes修改时间[font="]: 2017年[font="]9月[font="]29日[font="], 8:19:09[font="]MD5: 81FE61EC3C044AA4E583BA6FF1E600E8[font="]SHA1: D7C9D1E5A2FA2806A80F9EDBCDD089ED05D6B7D8[font="]CRC32: 2EBCCBF8 加壳情况:未加壳[font="] [font="]0x02[font="]简介这是一个针对用户浏览器、[font="]FTP软件,窃取系统及个人信息的木马。[font="] [font="]0x03[font="]被感染系统症状创建[font="]C:Users用户名[font="]AppDataRoaming5F1832文件夹,并将木马以不同名称[font="]2728C2.exe复制到其中,其中名称[font="]5F1832和名称[font="]2728C2为木马随机产生,接着修改木马的文件属性为隐藏。用户系统中浏览器、[font="]FTP等软件本地存储密码会被上传到指定服务器。木马尝试在注册表中添加启动项但是失败。[font="] [font="]0x04[font="]详细分析当木马运行后,会进行如下操作:[font="]1. [font="]检测操作系统是否运行在虚拟机(wmware[font="]等)中,系统进程列表中是否有安全工具[font="](windbg[font="]等)和杀毒软件,如果发现自动终止运行。[font="] [font="] [font="][font="]2. [font="]加载RC[font="]数据中的名为1000[font="]的资源到内存并其进行解密 [font="] [font="][font="]3. [font="]加载Icon[font="]资源类型下的所有资源到内存,并使用之前RC[font="]中名为1000[font="]的资源的数据对其进行解密 [font="] [font="] [font="]第一次解密 [font="]第二次解密 [font="]此时木马的主体已经暴露在外,将其[font="]dump出来,保存为可执行文件 [font="][font="]4. [font="]接着木马程序获取自身路径以挂起的方式创建对应的子进程,并获取对应的线程上下文[font="]CreateProcessW(0,[font="]自身路径,0,0,0,4,0,0,buf1([font="]大小0x44), buf2([font="]大小0x10));[font="] [font="][font="]5. [font="]将子进程的[font="]主模块数据卸载 [font="][font="]6. [font="]创建一个内存段对象,将当前进程和子进程的指定位置指定大小的内存与之“绑定”[font="](1)首先创建一个内存段对象 [font="][font="](2)两次调用下面的函数,将当前进程内存地址为[font="]0x16E000和子进程内存地址为[font="]0x400000,大小同为[font="]0xA2000(也就是释放的恶意[font="]PE的[font="]IMAGESIZE)的内存空间同时和上面创建的[font="]SectionHandle“绑定”到一起。 [font="]此时在当前进程中修改[font="]0x16E000后的内容就会间接的修改了子进程[font="]0x400000后的内容。[font="] [font="]7. [font="]将之前解密出来的恶意主体在当前进程中PE[font="]展开(实现PE[font="]文件加载到内存) [font="]此时当前进程和子进程的内容应该都如图所示 [font="][font="]8. [font="]接着主进程恢复子进程的主线程,并结束自身进程 [font="] [font="][font="]9. [font="]接下来就是分析之前dump[font="]出来的主体untitle1.exe[font="]了,下面是基本文件信息,.x[font="]段很可疑 [font="]程序使用[font="]hash值获取函数地址 [font="]字符串都是局部变量字符数组,隐蔽性很强 [font="][font="]10. [font="]获取"SOFTWAREMicrosoftCryptography"[font="]下的"MachineGuid"[font="]项的键值"f9117a5d-b155-4a3e-b6c9-5ae181247d3b",[font="]加密之后,[font="]得到"5ED09A55F1832728C292E32429D73569",[font="]最后截取前0xc[font="]个字节,[font="]返回"5ED09A55F1832728C292E324"[font="],如果获取键值失败则采用结合一个固定值产生字符串。以本机为例,之后创建互斥体和之后生成的文件夹名和文件名都和"5ED09A55F1832728C292E324"[font="]有关[font="]11. [font="]防止自身多启动 [font="][font="]12. [font="]尝试窃取几乎所有的浏览器、FTP[font="]客户端中等软件保存的用户帐号:[font="] 下面是执行窃取操作的循环 [font="]这里简单分析下第一个函数调用:火狐密码的窃取[font="](1)首先[font="],由注册表获取到路径[font="]0012FB78 00271CB8 UNICODE "SOFTWAREMozillaMozilla Firefox53.0 (x86 zh-CN)"(2) 获取关键文件夹并用于初始化[font="] [font="] [font="][font="](3)初始化之后就是读取[font="] [font="]的这三个文件获取密码 [font="]然后就关闭[font="] [font="]10. [font="]接着获取当前用户是否具有管理员权限,当前虚拟机未打开管理员权限[font="]网络文献:[font="]以上Delphi[font="]检测用户是否具有administrator[font="]权限(OpenThreadToken[font="],OpenProcessToken[font="],GetTokenInformation[font="],AllocateAndInitializeSid[font="]和EqualSid[font="])[font="]http://www.cnblogs.com/findumars/p/5281970.html 11. [font="]将以上所有收集到的信息发送至指定服务器其中[font="].x段存储着服务器地址[font="]xor 0xFF后的值,每次均从中获取对应的网址 [font="]获取服务器地址 [font="]发送数据 [font="][font="]12.[font="]接着就是移动文件到指定文件夹(并在这个过程中改文件名),并设置文件属性 [font="] [font="][font="]13. [font="]之后就是循环上传 [font="][font="]14. [font="]执行流程图 [font="][font="]15.木马的缺陷:未能正确添加启动项这其间获取服务器地址使用一个奇怪的函数[font="],函数内部首先使用[font="]RSA相关的函数解密一块内存空间[font="],然后又将释放的恶意[font="]PE的[font="].x段与[font="]0xFF异或[font="],之后将[font="]xor的结果覆盖到之前解密的部分[font="],而这之间没有任何对解密部分的使用[font="],也就是说白解密了[font="].一开始以为是混淆[font="],直到又看到一个函数[font="]SHRegSetPath,一开始看到就觉得应该是设置启动项[font="],函数第一个参数是主键[font="]HKEY_LOCAL_MACHINE,但是第二个参数竟然是服务器地址[font="],结果就是这个木马不能正确添加到启动项那么[font="],为什么呢[font="]?往[font="]SHRegSetPath上面看看[font="],会发现刚刚说的那个那函数[font="],跟进去会发现它还是首先解密一块空间[font="], [font="]解密后就是[font="]SOFTWAREMicrosoftWindowsCurrentVersionRun,这正是[font="]SubKey应该的字符串[font="],但是之后被服务器地址无情的覆盖了[font="],所以最后就悲剧了[font="].这里猜测可能是作者是想改将服务器地址改为自己的[font="](跟到过解密后的字符串[font="],除了这个注册表的都是网址[font="]),他可能是在原来的[font="]RSA解密函数内部改的[font="](你会发现有很多[font="]nop),在其中使用汇编将自己添加的[font="].x段异或[font="]0xFF覆盖到返回地址[font="],但是他没有注意到添加启动项也使用了这个函数也用于解密[font="]"SOFTWAREMicrosoftWindowsCurrentVersionRun"字符串[font="]. 整个木马详细的分析过程在附件中[font="](真心详细[font="]),欢迎下载链接:http://pan.baidu.com/s/1qYbpdZu 密码:mqiw 解压密码:111
|