病毒别名:
处理时间:
威胁级别:★★
中文名称:波尔扎诺
病毒类型:Win32病毒
影响系统:Win9x/WinMe/WinNT/Win2000/WinXP/Win2003
病毒行为:
编写工具:
传染条件:
发作条件:
系统修改:
1.
设置文件%SystemDrive%NTLDR的属性为归档
如果该文件中存在一个长度为5个字节的串3B,46,58,74,07
也就是下面的代码:
cmp eax, [esi+58h]
jz label (注:label表示一标号)
则用3B,46,58,EB,07这5个字节来替换之
也就是下面的代码:
cmp eax, [esi+58h]
jmp label (注:label表示一标号)
2.
设置文件%System%
toskrnl.exe为归档
如果该文件中存在一个长度为9个字节的串8A,C3,5F,5E,5B,5D,C2,28,00
也就是下面的代码:
mov al, bl
pop edi
pop esi
pop ebx
pop ebp
retn 28h
则用B0,01,5F,5E,5B,5D,C2,20,00这9个字节来替换之
也就是下面的代码:
mov al, 1
pop edi
pop esi
pop ebx
pop ebp
retn 28h
3.
在\%SystemRoot%Cookies目录下查找文件pgoat80.EXE,如果找到就删除
4.
创建一个感染线程
5.
判断从C到Z驱动器的类型,如果驱动器可用并且不是移动磁盘和光驱则遍历该驱动器,查找符合感染条件的PE格式的
EXE文件和rcs文件.感染的时候,该病毒是将宿主程序的最后一个节扩大1000H个字节,并将病毒体写入到这块扩展的空间内
修改宿主程序的入口地址为最后一个节末尾的下一个字节,也就是从病毒体的第一条指令开始执行
下面是病毒体开始执行处的部分代码:
.reloc:0040B200 push offset loc_401000
.reloc:0040B205 pusha
.reloc:0040B206 call sub_40B7E5 ---------->病毒重定位
.reloc:0040B20B mov eax, [esp+24h]
.reloc:0040B20F cmp eax, 80000000h
.reloc:0040B214 ja short loc_40B224
.reloc:0040B216 xchg eax, ecx
.reloc:0040B217 xchg eax, ecx
.reloc:0040B218 mov esi, 7AAh
.reloc:0040B21D mov edi, 77F00000h
.reloc:0040B222 jmp short loc_40B22E
发作现象:
1.
该病毒在内存中搜索某个API函数地址的时候,如果搜索不到它会弹出一个消息框并结束运行
该消息框的标题是:"SOPHOS PE GOAT",内容是:"Sophos PE Goat - Size 32768",请见附图Win32.Bolzano.jpg
2.
文件尺寸无缘无故的变大了
特别说明:
1.
当出现17点中的第1种现象的时候,该病毒并没有启动感染线程
2.
该病毒的感染条件比较苛刻,运行多次都没有得到感染样本
感染条件有:
必须是PE格式的EXE文件或RSC文件
用文件的时间作为参数进行某种运算,运算结果必须与某个值相等
文件的尺寸不能小于16384字节
文件DOS块跟PE文件头的距离不大于300h
3.
该病毒是采用递归的方式查找可感染文件的,为了不引起死循环,该病毒不遍历当前目录