Virus 版 (精华区)
作 家: yanyan (岩岩) on board 'virus'
题 目: 启发扫描很好对付 (转载)
来 源: 哈尔滨紫丁香站
日 期: Fri Aug 8 10:51:56 1997
出 处: bbs@bbs.orange.sjtu.edu.cn
发信人: si (不动的大动), 信区: virus
标 题: 启发扫描很好对付 (转载)
发信站: 饮水思源站 (Tue Jul 29 16:28:59 1997) , 转信
【 以下文字转载自 DOS 讨论区 】
【 原文由 si 所发表 】
========== 本文仅仅是从反面对启发扫描技术进行探讨 =========
启发扫描的确很有好处,但是这是针对毫无防范的病毒而言,
就象以前的DOS, 对病毒毫无防范,编写病毒极为容易。
但是如果在编写系统软件之前就仔细考虑病毒问题,那么病毒的入侵
就难多了,比如说,你安装了一个FTP软件,系统提示你该程序正在
修改引导文件,修改wsock32.dll(这是Windows 下的Internet模块)
这很容易引起你的警觉。
Unix的hacker也是这样,以前Unix刚出来时,很少遭到攻击,
但是现在,都对安全性有了重要认识。只要操作系统作一分变化,
hacker们就要费十分的力气去破解它。把口令隐藏在shadow文件里
就是一个好的例子。
同样,只要病毒作者做一点点手脚,就要求启发扫描有很多智慧。
这种分析程序实际上是和Sourcer反汇编分析是很类似的。
病毒办法多的很:
最简单的是: 把调用中断写成子程序。
比如说:
start:
经过一大堆运算求出ax,bx,cx,dx...
int 13
再设想这种病毒:
破坏系统的代码是动态生成的。
不定期感染系统,仅做一两次病毒试验不能激活它,人们对刚到手的
东东总是小心的,但过了几天就胆大起来了。于是,开始生成感染系统的代码。
哼哼,结果系统死的一塌糊涂。恢复备份,似乎正常,过了几天又到处都是病毒。
比如说,一个病毒开始活动的条件是
1. 系统安装了Office95 or above,
2. 今天是13号,
3. 内存是32MB
先计算key, key = day * memory_size + (office_version>95),
只有正确的key才能计算出正确的破坏代码及代码校验和,如果校验和正确,
则执行计算出来的代码。为了掩人耳目,有一部分正常代码也是动态生成的,也用到
上面的类似公式,美名其曰“为了保护软件商利益,含有反跟踪代码”.
只要病毒编写者考虑到启发扫描的问题,编写上面代码并不复杂。
如果把未知程序的一切变化都试一遍,这很容易变成组合爆炸问题。
可能需要作一台“深绿”来求解。
所以,我觉得用启发扫描方法防病毒在目前有很大困难,目前的人工智能
模仿人脑处理一些死的模糊问题都很吃力,何况还有故意设置的障碍。
启发扫描很容易防范,除非人工智能在设计人脑思维方面有大的突破。
不过到了计算机可以代替人来分析程序的时候,算注册码就很方便了。:-)
解密也可以机械化大生产。
--
Si
踢踢腿,伸伸腰,早晨锻炼身体好。
※ 修改:·si 於 Jul 26 18:31:32 修改本文·[FROM: 202.120.160.28]
※ 来源:·饮水思源站 bbs.sjtu.edu.cn·[FROM: 202.120.160.28]
--
※ 来源:·哈尔滨紫丁香站 bbs1.hit.edu.cn·[FROM: bbs@bbs.orange.sjtu.]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.180毫秒