首页
产品介绍 常见问题 合作洽谈 论 坛 关于我们  
Win32.Parite.a某PE感染型病毒清除修复
文章来源:Terminator Lab   文章类型:本站原创    加入时间:2006-7-17

 

现象:

在一些进程如 Explorer.exe 、 conime.exe 进程中总含有一个类似D:\Documents and Settings\IceFire\Local Settings\Temp\sqeB.tmp 的随机生成的文件。“去之不尽,去之又来”。。。 烦烦烦。。。

反复检查终得结果:  

  原来系统中的大部分 PE 文件都已经感染了病毒名称为“ Win32.Parite.a ”的 PE 感染型病毒,以为是哪种厉害的后门程序。

>> 分析

从 PEiD 中探测可知:如图所示 EP Section : .spm- (这是一个随机值,每次感染都不相同);

Entry Point : 0004C 000

 

省略了一些啰嗦的过程,直接进入主题,跟踪该区段的代码,反汇编代码如下

0044C 000 > BB 9F 5E1600 MOV EBX,165E 9F

0044C 005 68 1CC04400 PUSH Dbgview .0044C 01C

0044C 00A 5A POP EDX

0044C 00B 68 C 4060000 PUSH 6C 4

0044C 010 5F POP EDI

0044C 011 FF 343A PUSH DWORD PTR DS:[EDX+EDI]

0044C 014 311C 24 XOR DWORD PTR SS:[ESP],EBX

0044C 017 8F 043A POP DWORD PTR DS:[EDX+EDI]

0044C 01A 83EF 03 SUB EDI,3

0044C 01D 4F DEC EDI

0044C 01E ^ 75 F 1 JNZ SHORT Dbgview .0044C 011

0044C 020 77 23 JA SHORT Dbgview .0044C 045

// 用 F4 使其跑到这里。。。

 

// 自解压后会还原出子模块, F7 跟进去。。。

0044C 020 E8 7D010000 CALL Dbgview .0044C 1A 2

0044C 025 0000 ADD BYTE PTR DS:[EAX],AL

0044C 027 0000 ADD BYTE PTR DS:[EAX],AL

0044C 029 0040 00 ADD BYTE PTR DS:[EAX], AL

 

0044C 1A 2 55 PUSH EBP

0044C 1A 3 8BEC MOV EBP,ESP

0044C 1A 5 81C 4 B4FEFFFF ADD ESP, -14C

0044C 1AB C 645 F 7 00 MOV BYTE PTR SS:[EBP-9],0

0044C 1AF 8BC5 MOV EAX,EBP

0044C 1B1 83C 0 04 ADD EAX,4

0044C 1B4 8B10 MOV EDX,DWORD PTR DS:[EAX]

0044C 1B6 83EA 05 SUB EDX,5

0044C 1B9 8955 FC MOV DWORD PTR SS:[EBP-4],EDX

0044C 1BC 8B4D FC MOV ECX,DWORD PTR SS:[EBP-4]

0044C 1BF 81C 1 84000000 ADD ECX,84

0044C 1C 5 894D F8 MOV DWORD PTR SS:[EBP-8],ECX

0044C 1C 8 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]

0044C 1CB 8B50 0C MOV EDX,DWORD PTR DS:[EAX+C]

0044C 1CE 8B4D FC MOV ECX,DWORD PTR SS:[EBP-4]

0044C 1D1 0351 08 ADD EDX,DWORD PTR DS:[ECX+8]

0044C 1D4 8BC5 MOV EAX,EBP

0044C 1D6 83C 0 04 ADD EAX,4

0044C 1D9 8910 MOV DWORD PTR DS:[EAX],EDX

0044C 1DB FF 75 F 8 PUSH DWORD PTR SS:[EBP-8]

0044C 1DE FF75 FC PUSH DWORD PTR SS:[EBP-4]

0044C 1E1 8D55 BC LEA EDX,DWORD PTR SS:[EBP-44]

//

// ; 存放着原程序的入口值: 0041161C

//

0044C 1E4 52 PUSH EDX

0044C 1E5 E8 78000000 CALL Dbgview .0044C 262

0044C 1EA 84C 0 TEST AL , AL

0044C 1EC 74 6D JE SHORT Dbgview .0044C 25B

0044C 1EE FF 75 F 8 PUSH DWORD PTR SS:[EBP-8]

0044C 1F 1 8D4D BC LEA ECX,DWORD PTR SS:[EBP-44]

0044C 1F 4 51 PUSH ECX

0044C 1F 5 8D85 B4FEFFFF LEA EAX,DWORD PTR SS:[EBP -14C ]

0044C 1FB 50 PUSH EAX

0044C 1FC E8 05020000 CALL Dbgview .0044C 406

0044C 201 84C 0 TEST AL , AL

0044C 203 74 23 JE SHORT Dbgview .0044C 228

0044C 205 66:83BD B4FEFFFF>CMP WORD PTR SS:[EBP -14C ],6

0044C 20D 72 19 JB SHORT Dbgview .0044C 228

0044C 20F FF 75 F 8 PUSH DWORD PTR SS:[EBP-8]

0044C 212 FF75 FC PUSH DWORD PTR SS:[EBP-4]

0044C 215 8D55 BC LEA EDX,DWORD PTR SS:[EBP-44]

0044C 218 52 PUSH EDX

0044C 219 8D8D B6FEFFFF LEA ECX,DWORD PTR SS:[EBP -14A ]

 

//

// Stack address=0012FE72, (ASCII "D:\DOCUME~1\IceFire\LOCALS~1\Temp\sqeB.tmp")

// ECX=0012FE 2C

//

 

0044C 21F 51 PUSH ECX

0044C 220 E8 51020000 CALL Dbgview .0044C 476

//

// 将 TEMP 下生成的文件注入到一些进程中。。。

//

0044C 225 8845 F 7 MOV BYTE PTR SS:[EBP-9], AL

0044C 228 807D F7 00 CMP BYTE PTR SS:[EBP-9],0

0044C 22C 75 2D JNZ SHORT Dbgview .0044C 25B

0044C 22E FF75 FC PUSH DWORD PTR SS:[EBP-4]

0044C 231 8D45 BC LEA EAX,DWORD PTR SS:[EBP-44]

0044C 234 50 PUSH EAX

0044C 235 8D95 B6FEFFFF LEA EDX,DWORD PTR SS:[EBP -14A ]

0044C 23B 52 PUSH EDX

0044C 23C E8 81020000 CALL Dbgview .0044C 4C 2

0044C 241 84C 0 TEST AL , AL

0044C 243 74 16 JE SHORT Dbgview .0044C 25B

0044C 245 FF 75 F 8 PUSH DWORD PTR SS:[EBP-8]

0044C 248 FF75 FC PUSH DWORD PTR SS:[EBP-4]

0044C 24B 8D4D BC LEA ECX,DWORD PTR SS:[EBP-44]

0044C 24E 51 PUSH ECX

0044C 24F 8D85 B6FEFFFF LEA EAX,DWORD PTR SS:[EBP -14A ]

0044C 255 50 PUSH EAX

0044C 256 E8 1B020000 CALL Dbgview .0044C 476

0044C 25B 8BE5 MOV ESP,EBP

0044C 25D 5D POP EBP

0044C 25E C3 RETN

// 让他跑完这段。。。 返回 0041161C

// Return to 0041161C (Dbgview .0041161C )

 

//

// 比较熟悉的 VC++ 初始化代码。。。

//

0041161C /. 55 PUSH EBP

0041161D |. 8BEC MOV EBP,ESP

0041161F |. 6A FF PUSH -1

00411621 |. 68 78A 54100 PUSH Dbgview .0041A 578

00411626 |. 68 D0034100 PUSH Dbgview.004103D0 ; SE handler installation

0041162B |. 64:A1 00000000 MOV EAX,DWORD PTR FS:[0]

00411631 |. 50 PUSH EAX

00411632 |. 64:8925 000000>MOV DWORD PTR FS:[0],ESP

00411639 |. 83EC 58 SUB ESP,58

0041163C |. 53 PUSH EBX

0041163D |. 56 PUSH ESI

0041163E |. 57 PUSH EDI

0041163F |. 8965 E8 MOV DWORD PTR SS:[EBP-18],ESP

00411642 |. FF15 E 4A 14100 CALL DWORD PTR DS:[<&KERNEL32.GetVersion>

 

>> 清除 & 修复

•  删除病毒的区段: .spm- ;

 

 

•  用 LordPE 修改 PE 头,使其恢复正常的属性。

 

 

EntryPoint : 0004C 000 => 0001161C

SizeOfImage: 0004D000 => 0004C 000

NumberOfSections: 0005 => 0004

 

最后点击“ Save “ => “ OK ”保存修改即可。

 

安全专家提醒您:
  不管是普通文件型病毒还是PE感染型病毒,它感染初期,都会是单独文件的形式存在,它都需要激活并在内存中运行
才能完成感染过程。 因此,安装《终截者入侵阻止》,开启“安全预警”(默认状态下已经开启),可以很好的预警已知
与未知的病毒与木马,达到较好的事前预防效果! 并可结合“安全回归”功能,在系统重启过程中,瞬间还你一个无毒、
无干扰、无病毒木马加载的安全环境!
 
Win32.Parite.a专杀工具  点击下载
 
CopyRight @2005-2006 Terminator Lab