首页
社区
课程
招聘
[原创]飞鸽子分析报告
发表于: 2012-5-23 22:48 20468

[原创]飞鸽子分析报告

2012-5-23 22:48
20468

【第三次修改】以前的版本写的很挫,无颜见江东父老。这是我重新分析的报告,行为分析+代码分析+手杀,手杀部分在附件中。纯粹练手,不足的地方,请大家拍砖

一、        基本信息
  报告名称:PutHupigon.exe
  作者:hostzhen
  报告更新日期:2012-11-4                                            
  样本发现日期:                                            
  样本类型:木马
  样本文件大小/被感染文件变化长度:   
  样本文件MD5 校验值:592F49A7419E3B8153D8E5FD7F5EED9B                             
  样本文件SHA1 校验值:26A2AA3D694E39683C67CA15D754287BD90CA9C4                           
  壳信息:UPX
  可能受到威胁的系统:这是一个后门木马,提供远程控制服务                                
  相关漏洞:                                                   
  已知检测名称:                                            

二、        初步分析
加了壳,初步估计是UPX

三、        行为分析
开启Filemon.exe、Regmon.exe、procexp.exe等工具,然后运行PutHupigon.exe,监控它的行为。
主要释放了3个文件:领取黄砖&黄转化肥.exe、vx_server_setup.exe、弯刀反鲨-2009.exe。
图1:Filemon.exe

图2:Filemon.exe

图3:Regmon.exe

四、        代码分析
4.1、        PutHupigon.exe
样本文件MD5 校验值:592F49A7419E3B8153D8E5FD7F5EED9B
样本文件SHA1 校验值:26A2AA3D694E39683C67CA15D754287BD90CA9C4
壳信息:UPX
先手动脱壳/自动脱壳,打开IDA/OD代码分析
               
                写文件:
                UPX0:00403481                 push    0FFFFh
UPX0:00403486                 mov     ecx, dword_4056E4
UPX0:0040348C                 mov     dl, 1
UPX0:0040348E                 mov     eax, off_4027B0
UPX0:00403493                 call    sub_402B60
UPX0:00403498                 mov     dword_4056EC, eax
UPX0:0040349D                 xor     eax, eax
UPX0:0040349F                 push    ebp
UPX0:004034A0                 push    offset loc_4034E3
UPX0:004034A5                 push    dword ptr fs:[eax]
UPX0:004034A8                 mov     fs:[eax], esp
UPX0:004034AB                 mov     edx, dword_4056F0 ; 写入的内容
UPX0:004034B1                 mov     ecx, dword_4056F4 ; 写入的handle
UPX0:004034B7                 mov     eax, dword_4056EC ; nNumberOfBytesToWrite
UPX0:004034BC                 call    sub_40295C      ; 写文件

移动文件:eg. 领取黄砖&黄转化肥.jpg                领取黄砖&黄转化肥.exe
UPX0:004034EA ; ---------------------------------------------------------------------------
UPX0:004034EA
UPX0:004034EA loc_4034EA:                             ; CODE XREF: start+2CA j
UPX0:004034EA                                         ; DATA XREF: start+2BB o
UPX0:004034EA                 mov     edx, dword_4056E8
UPX0:004034F0                 mov     eax, dword_4056E4
UPX0:004034F5                 call    sub_402320      ; movefile  移动文件

启动程序:
loc_40351E:             ; nShowCmd
push    1
push    0               ; lpDirectory
push    0               ; lpParameters
mov     eax, dword_4056E8
call    sub_401D08
push    eax             ; lpFile
push    offset Operation ; "open"
call    j_GetDesktopWindow
push    eax             ; hwnd
call    j_ShellExecuteA ; 启动lpFile

通过循环以上写文件、复制文件、启动该文件3个步骤,领取黄砖&黄转化肥.exe、vx_server_setup.exe两个程序启动了。

4.2、        vx_server_setup.exe
样本文件MD5 校验值:B8BE469E42B904D79ACF413711B17123
样本文件SHA1 校验值:0DCCE4729AF917DE573CC6BB2FE8824A5BFFA4C6
壳信息:UPX
先手动脱壳/自动脱壳,打开IDA/OD代码分析
产生自身文件弯刀反鲨-2009.exe

4.3、        弯刀反鲨-2009.exe
样本文件MD5 校验值:B8BE469E42B904D79ACF413711B17123
样本文件SHA1 校验值:0DCCE4729AF917DE573CC6BB2FE8824A5BFFA4C6
壳信息:UPX

注册服务、设置服务状态、创建线程:
UPX0:004A1934 ; 当前函数是服务入口点函数,执行服务初始化任务
UPX0:004A1934 ; Attributes: bp-based frame
UPX0:004A1934
UPX0:004A1934 ServiceMain     proc near               ; DATA XREF: UPX0:004A211C o
UPX0:004A1934
UPX0:004A1934 Parameter       = byte ptr -4
UPX0:004A1934
UPX0:004A1934                 push    ebp
UPX0:004A1935                 mov     ebp, esp
UPX0:004A1937                 push    ecx
UPX0:004A1938                 push    ebx
UPX0:004A1939                 mov     ebx, lpServiceStatus ; 当前函数是服务入口点函数
UPX0:004A193F                 mov     dword ptr [ebx], 30h
UPX0:004A1945                 mov     dword ptr [ebx+4], 2
UPX0:004A194C                 mov     dword ptr [ebx+8], 3
UPX0:004A1953                 xor     eax, eax
UPX0:004A1955                 mov     [ebx+0Ch], eax
UPX0:004A1958                 xor     eax, eax
UPX0:004A195A                 mov     [ebx+10h], eax
UPX0:004A195D                 xor     eax, eax
UPX0:004A195F                 mov     [ebx+14h], eax
UPX0:004A1962                 xor     eax, eax
UPX0:004A1964                 mov     [ebx+18h], eax
UPX0:004A1967                 push    offset HandlerProc ; lpHandlerProc
UPX0:004A196C                 mov     eax, off_4A5B78
UPX0:004A1971                 mov     eax, [eax]
UPX0:004A1973                 call    @System@@LStrToPChar$qqrx17System@AnsiString ; System::__linkproc__ LStrToPChar(System::AnsiString)
UPX0:004A1978                 push    eax             ; lpServiceName
UPX0:004A1979                 call    j_RegisterServiceCtrlHandlerA ; 注册HandlerProc来处理各种服务的回调函数
UPX0:004A197E                 mov     edx, off_4A5B00
UPX0:004A1984                 mov     [edx], eax
UPX0:004A1986                 mov     eax, off_4A5B00
UPX0:004A198B                 cmp     dword ptr [eax], 0
UPX0:004A198E                 jz      short loc_4A19DF
UPX0:004A1990                 mov     dword ptr [ebx+4], 4
UPX0:004A1997                 xor     eax, eax
UPX0:004A1999                 mov     [ebx+14h], eax
UPX0:004A199C                 xor     eax, eax
UPX0:004A199E                 mov     [ebx+18h], eax
UPX0:004A19A1                 push    ebx             ; lpServiceStatus
UPX0:004A19A2                 mov     eax, off_4A5B00
UPX0:004A19A7                 mov     eax, [eax]
UPX0:004A19A9                 push    eax             ; hServiceStatus
UPX0:004A19AA                 call    j_SetServiceStatus ; send status information to the service control manager
UPX0:004A19AA                                         ; 设置服务的状态
UPX0:004A19AF                 cmp     eax, 1
UPX0:004A19B2                 sbb     eax, eax
UPX0:004A19B4                 inc     eax
UPX0:004A19B5                 test    al, al
UPX0:004A19B7                 jz      short loc_4A19E0
UPX0:004A19B9                 lea     eax, [ebp+Parameter]
UPX0:004A19BC                 push    0               ; lpThreadId
UPX0:004A19BE                 push    0               ; dwCreationFlags
UPX0:004A19C0                 push    eax             ; lpParameter
UPX0:004A19C1                 push    offset sub_4A185C ; lpStartAddress
UPX0:004A19C6                 push    0               ; dwStackSize
UPX0:004A19C8                 push    0               ; lpThreadAttributes
UPX0:004A19CA                 call    j_CreateThread_0 ; 创建线程,关联的函数sub_4A185C
UPX0:004A19CF                 mov     ebx, eax
UPX0:004A19D1                 push    0FFFFFFFEh      ; dwMilliseconds
UPX0:004A19D3                 push    ebx             ; hHandle
UPX0:004A19D4                 call    j_WaitForSingleObject ; 等待响应
UPX0:004A19D9                 push    ebx             ; hObject
UPX0:004A19DA                 call    j_CloseHandle_0
UPX0:004A19DF
UPX0:004A19DF loc_4A19DF:                             ; CODE XREF: ServiceMain+5A j
UPX0:004A19DF                 pop     ebx
UPX0:004A19E0
UPX0:004A19E0 loc_4A19E0:                             ; CODE XREF: ServiceMain+83 j
UPX0:004A19E0                 pop     ecx
UPX0:004A19E1                 pop     ebp
UPX0:004A19E2                 retn    0Ch

线程关联的函数:
UPX0:004A185C ; DWORD __stdcall sub_4A185C(LPVOID)
UPX0:004A185C sub_4A185C      proc near               ; CODE XREF: UPX0:004A1EB0 p
UPX0:004A185C                                         ; UPX0:loc_4A2130 p ...
UPX0:004A185C                 cmp     byte_4A7F64, 0
UPX0:004A1863                 jz      short loc_4A186A
UPX0:004A1865                 call    sub_49C348
UPX0:004A186A
UPX0:004A186A loc_4A186A:                             ; CODE XREF: sub_4A185C+7 j
UPX0:004A186A                 mov     eax, off_4A5978
UPX0:004A186F                 mov     eax, [eax]
UPX0:004A1871                 call    sub_457228      ; 初始化
UPX0:004A1876                 mov     eax, off_4A5978
UPX0:004A187B                 mov     eax, [eax]
UPX0:004A187D                 mov     byte ptr [eax+5Bh], 0
UPX0:004A1881                 mov     ecx, off_4A5690
UPX0:004A1887                 mov     eax, off_4A5978
UPX0:004A188C                 mov     eax, [eax]
UPX0:004A188E                 mov     edx, off_497180
UPX0:004A1894                 call    @Forms@TApplication@CreateForm$qqrp17System@TMetaClasspv ; Forms::TApplication::CreateForm(System::TMetaClass *,void *)
UPX0:004A1899                 mov     eax, off_4A5978
UPX0:004A189E                 mov     eax, [eax]
UPX0:004A18A0                 call    @Forms@TApplication@Run$qqrv ; 等待处理消息
UPX0:004A18A5                 retn
UPX0:004A18A5 sub_4A185C      endp

五、        手杀


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

上传的附件:
收藏
免费 6
支持
分享
最新回复 (17)
雪    币: 793
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
支持原创
2012-5-24 09:24
0
雪    币: 292
活跃值: (153)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
3
看了一下 分析的很全面
2012-5-24 10:41
0
雪    币: 220
活跃值: (726)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
这分析完全就是HIPS的日志啊
2012-5-24 11:09
0
雪    币: 534
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
我不晓得这有什么用?
2012-5-24 13:22
0
雪    币: 1643
活跃值: (101)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
这不是一本书上的教学病毒样本么?书籍给出了分析结果了
2012-5-24 14:07
0
雪    币: 279
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
什么书哦
2012-5-24 22:23
0
雪    币: 149
活跃值: (150)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
8
多谢willj我已经重新分析,不足之处,请拍砖
2012-5-25 22:30
0
雪    币: 8
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
没看到样本呀,求样本
2012-7-3 10:27
0
雪    币: 149
活跃值: (150)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
10
以前的版本写的很挫,无颜见江东父老。这是我重新分析的报告,样本也已上传!
2012-11-5 00:50
0
雪    币: 164
活跃值: (39)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
11
楼主是有很么分析的呢?
2012-11-28 08:15
0
雪    币: 7
活跃值: (50)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
不错,蛮详细的
2012-11-28 11:19
0
雪    币: 11120
活跃值: (17643)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
灰鸽子病毒在以前是很厉害的,现在不行了
2012-12-22 08:51
0
雪    币: 134
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
《跟走进计算机病毒》里分析的差不多
2013-3-25 10:42
0
雪    币: 109
活跃值: (498)
能力值: ( LV12,RANK:220 )
在线值:
发帖
回帖
粉丝
15
兄弟,你是福建人吧,飞鸽字,灰鸽子。
2013-3-25 12:53
0
雪    币: 148
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
看了一下 分析的确实很全面 学习下
2013-4-3 00:23
0
雪    币: 1216
活跃值: (240)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
非常感谢,写得很详细
2014-5-8 20:29
0
雪    币: 2375
活跃值: (433)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
现在这个木马太老了吧,还有用么:(
2014-6-10 11:40
0
游客
登录 | 注册 方可回帖
返回
//