反病毒引擎设计
日期:2008年5月11日 作者:清风网络学院 查看:[大字体 中字体 小字体]-
{
if (c<=0x57)
{if (StackP<0) //入栈前检查堆栈缓冲指针的合法性
return(0);
}
else
if (StackP>=0x40) //出栈前检查堆栈缓冲指针的合法性
return(0);
if (c<=0x57) {
StackP--;
ENESP-=4; //如果是入栈指令则在入栈前减少堆栈指针
}
switch (c)
{case 0x50:STACK[StackP]=ENEAX; //模拟push eax
break;
......
case 0x5f:ENEDI=STACK[StackP]; //模拟push edi
break;
}
if (c>=0x58) {
StackP++;
ENESP+=4; //如果是出栈指令则在出栈后增加堆栈指针
}
return(1);
}
2.4.2依赖标志寄存器指令模拟函数的分析
CW32Asm类中cmp指令的模拟:
void CW32Asm:: cmpw(int c1,int c2)
{
char FlgReg;
__asm {
mov eax,c1 //取得第一个操作数
mov ecx,c2 //取得第二个操作数
cmp eax,ecx //比较
lahf //将比较后的标志结果装入ah
mov FlgReg,ah //保存结果在局部变量FlgReg中
}
FlagReg=FlgReg; //保存结果在全局变量FlagReg中
}
CW32Asm类中jnz指令的模拟:
int CW32Asm::JNE()
{int i;
char FlgReg=FlagReg; //用保存的FlagReg初始化局部变量FlgReg
__asm
{
mov ah,FlgReg //设置ah为保存的模拟标志寄存器值
pushf //保存虚拟机自身当前标志寄存器
sahf //将模拟标志寄存器值装入真实标志寄存器中
mov eax,1
jne l //执行jnz
popf //恢复虚拟机自身标志寄存器
xor eax,eax
l:
popf //恢复虚拟机自身标志寄存器
mov i,eax
}
return(i); //返回值为1代表需要跳转
}
2.5反虚拟机技术
任何一个事物都不是尽善尽美,无懈可击的,虚拟机也不例外。由于反虚拟执行技术的出现,使得虚拟机查毒受到了一定的挑战。这里介绍几个比较典型的反虚拟执行技术:
首先是插入特殊指令技术,即在病毒的解密代码部分人为插入诸如浮点,3DNOW,MMX等特殊指令以达到反虚拟执行的目的。尽管虚拟机使用软件技术模拟真正CPU的工作过程,它毕竟不是真正的CPU,由于精力有限,虚拟机的编码者可能实现对整个Intel指令集的支持,因而当虚拟机遇到其不认识的指令时将会立刻停止工作。但通过对这类病毒代码的分析和统计,我们发现通常这些特殊指令对于病毒的解密本身没有发生任何影响,它们的插入仅仅是为了干扰虚拟机的工作,换句话说就是病毒根本不会利用这条随机的垃圾指令的运算结果。这样一来,我们可以仅构造一张所有特殊指令对应于不同寻址方式的指令长度表,而不必为每个特殊指令编写一个专用的模拟函数。有了这张表后,当虚拟机遇到不认识的指令时可以用指令的操作码索引表格以求得指令的长度,然后将当前模拟的指令指针(EIP)加上指令长度来跳过这条垃圾指令。当然,还有一个更为保险的办法那就是:得到指令长度后,可以将这条我们不认识的指令放到一个充满空操作指令(NOP)的缓冲区中,接着我们将跳到缓冲区中去执行,这等于让真正的CPU帮我们来执行这条指令,最后一步当然是将执行后真实寄存器中的结果放回我们的模拟寄存器中。这虚拟执行和真实执行参半方法的好处在于:即便在特殊指令对于病毒是有意义的,即病毒依赖其返回结果的情况下,虚拟机仍可保证虚拟执行结果的正确。 - 上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] 下一页
-
- 反病毒引擎设计 相关文章:
- ·卡巴斯基防火墙“反黑客”的设置技巧
- ·谷歌清除恶意链接 黑客反击破坏排名系统
- ·认识反网络钓鱼欺骗新技术
- ·微软Win Vista SP1加强反盗版
- ·企业选择反间谍软件程序10个要点
- ·增加Distinct后查询效率反而提高
- ·文件遭破坏致Win XP系统反复重启
- ·互联网基础建设影响博客 反对封杀P2P
- ·Xml 串行话对象与反串行实例
- ·Photoshop模拟太阳镜上的反光图像
- 反病毒引擎设计 相关软件
- ·《反恐精英》uyr精彩主视角录像
- ·《反恐精英》JAEGARN精彩主视角录像
- ·《反恐精英》录像:aTTaX vs GoodGame
- ·《反恐精英》NoA.ave精彩主视角录像
- ·《反恐精英》录像:MYM vs Logitech.fi
- ·《反恐精英》录像:俄罗斯 vs 法国
- ·《反恐精英》stone精彩主视角录像
- ·《反恐精英》fnatic.f0rest精彩主视角录像
- ·《反恐精英》saken精彩主视角录像
- ·《反恐精英》SK训练地图:glock 下载
- 特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作
- 者.文章版权归文章原始作者所有.对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转
- 载的文章有版权问题请联系编辑人员,我们尽快予以更正. 转载请注明来源:http://www.hackhome.com
上一篇:如何利用ASP把图片上传到数据库
下一篇:反病毒引擎设计
精品推荐
热点TOP10
- ·不再怕电脑病毒 电脑中毒后的6招处理方法
- ·反病毒引擎设计
- ·104种木马的清除方法
- ·免费杀毒软件也是正版,不愁号被封
- ·安全卫士木马播报:警惕网上被“钓鱼”
- ·新挂马方式开始流行 ARP挂马称雄局域网
- ·驱逐令人抓狂的“蓝屏使者”
- ·如何让你的U盘做到100%预防电脑病毒
- ·诺顿杀毒软件正式版用户找回密码的方法
- ·和病毒再见 六款免费杀毒软件对比测试
- ·基础知识讲解 病毒的IFEO映像劫持技术
- ·上网不再怕中毒 教你一招克死所有病毒
- ·总结经典:木马十大藏身地点大搜查
- ·超级详细了解操作系统进程和病毒知识
- ·三招两式抵制IE浏览器顽固病毒
- ·AUTO病毒可致杀软失效系统瘫痪
- ·清除木马Dropper.Win32病毒的方法
- ·魔兽世界新式盗号木马攻破密保卡
- ·掌握系统常用进程 找出病毒不再困难
- ·用木马取得远程电脑上QQ聊天纪录
特别推荐
- ·不再怕电脑病毒 电脑中毒后的6招处理方法
- ·如何让你的U盘做到100%预防电脑病毒
- ·感染虫下载器感染exe文件下载病毒
- ·用木马取得远程电脑上QQ聊天纪录
- ·卡巴内存驻留型病毒检测方法
- ·三招两式抵制IE浏览器顽固病毒
- ·新挂马方式开始流行 ARP挂马称雄局域网
- ·和病毒再见 六款免费杀毒软件对比测试
- ·迅雷把好关 通过下载传播病毒难上加难
- ·清除木马Dropper.Win32病毒的方法
- ·上网不再怕中毒 教你一招克死所有病毒
- ·检测硬盘与内存中病毒痕迹的四种绝招
- ·经验心得:五招提速杀毒软件
- ·ARP网络攻击解决方案:如何查找攻击者
- ·木马病毒绕过主动防御直接刺穿卡巴斯基
- ·狠招 全面禁止瑞星2008随机启动
- ·教你五大妙招 再次提速杀毒软件的效率
- ·灭毒有招 如何全面清除计算机病毒
- ·104种木马的清除方法
- ·多种杀毒软件 操作系统百毒不侵
