【中华硕博网-全球500所高校指定报名中心】
【在职研究生】 【在职博士】 【MBA/EMBA】
  您现在的位置: 中华硕博网 > IT培训 > 安全 > 病毒专区 > 文章正文
站内搜索:

Win9x/Winnt/Win2k/Winxp病毒技术探讨(1)

作者:硕博网    文章来源:中华硕博网    点击数:    更新时间:2008-5-3
中华硕博网(http://www.china-b.com)全球500所高校指定报名中心--Win9x/Winnt/Win2k/Winxp病毒技术探讨(1)
Win9x/Winnt/Win2k/Winxp病毒技术探讨
    Win32.PurpleMood.6736技术文档 

************************************************* 
病毒名称 :PurpleMood (紫色心情) 
适用环境: Win9x/Winnt/Win2k/Winxp 
编写环境: Win2k,Masm32v6 
简 介:1. 感染本地硬盘和网络上所有exe(GUI)文件 
2. 搜索本地所有邮件地址,将病毒作为附件发送出去 
3. 在Explorer进程中注入线程监控程序的运行。 
4. 每月15日,发作。删除硬盘所有文件。 

完成日期: 2002/6/20 
版  本: v1.0 
大  小: 6736(byte) 
联系地址: XPurpleMood@163.com 
警 告 : 以下程序(方法)可能带有攻击性,仅供技术交流。使用者风险自负!若有其他用途,概与本人无关。万一有转贴,请保持完整性,多谢! 
************************************************* 
工作流程: 
1.首先得到重定位信息,保存在ebx中. 
2.调用GetKBase ,得到Kernel32.dll的基地址。 
3.调用GetAPIz,得到程序将使用的Kernel32中所有API. 
4. 调用PayLoad判断是否满足发作条件,是则删除所有文件。否则继续。 
5.判断是被感染文件还是自身(病毒在系统目录创建PurpleMood.scr). 
6. 是染毒文件,则调用CreatePE来创建PurpleMood.scr,初始化(rtInit)写注册表项所需函数地址。调用MakeSCRAlive使PurpleMood.scr保持活动。 
7. 如果是PurpleMood.scr,则CreateMutex设置标志,然后启动监控线程,感染PE线程,在主线程中发送邮件。 

说明: 
将程序中test@pact518.hit.edu.cn替换为自己的邮件 
pact518.hit.edu.cn替换为自己的smtp服务器。 
在d:建立test目录,里面放几个exe.实验用。 

技巧与难点分析 
1.重定位信息的确定 
VStart: ;virus starts here :) 
call start 
start: 
pop ebx 
sub ebx , offset start 
A dd 0 
这段代码在哪里执行都一样!现在得到的ebx就是重定位信息。 
变量A的偏移就是ebx + offset A.因为offset A是程序的第一条指令放到内存地址0时的偏移,但实际上放到了ebx. 
也可以这么理解: 
执行call start时(相当于push eip+jmp start),eip指向pop ebx,因为eip总是下一条指令的地址。pop ebx就把栈顶的eip存贮到ebx中。start在内存中(虚拟内存)的线形地址就放到ebx中了。那么A的地址显然就是(offset A - offset start)+ebx ,我们先 sub ebx , offset start,

[1] [2] [3] [4] 下一页

 相关热词搜索
>>更多
  • 此栏目下没有文章