1.做标记和记录信息的区别
做标记:它是为了其它病毒识别自己,而在固定或符合一定规则的位置上记录的符 信息。
记录信息:它是为了病毒本身正确运行,而存储的某些信息,甚至是部分代码,比如解密程序的随机密匙、所感染宿主文件的某些信息
2.那些地方可以做标记和记录信息
(1)可标记的位置
1/程序的入口区域和尾部区域;并非一定是开头和结尾,比如
VirusStart:
…
jmp $+3 ;这里是示例代码,实际编写时,有时不可以用$+xx的方法,需要重定位的方法
WORD VirusSymbol ‘VS’ ;用WinHex查出这里的位置,以后这个位置做检查就可以了
…
2/覆盖或改写PE结构上不使用或很少使用的位置:
这类方法很多,例如:(1)DOS stub的”This program must run in win32“字符串
(2)PE结构上某些保留位置
(3)PE结构上某些可以修改但不影响程序运行的值,比如代码节默认为.text或.code,但也可以改为.Virus
3/针对编译器的固定习惯:比如,同一版本的编译器生成文件都有一样的启动代码,可以进行等价替换为其它代码,
或缩减代码留出位置做标记
(2)可记录信息的位置
1/凡是上述可以做标记的位置都可以记录信息,如果空间足够
2/注册表
3/约定的位置文件创建文件用于记录信息
4/偷偷混进常用软件的文档里,比如说明文件,帮助文件它们都很少被使用
3. 做标记和记录信息的方法
(1)做标记:
1/ 固定标记:很多病毒病毒都直接留下有趣的标记
2/ 规则标记: 标记并不一定是固定值,可以是校验和、规则数列…
3/ 赌博:采用一些不确定行的方法,从宿主程序抽取某些数据或代码,然后备份到某处,
病毒识别时只要比较这两处就可以了,而正常程序也可能有重复的可能,杀毒软件
一定不敢和你赌。
(2)记录信息:
1/ 直接记录: 这样做也没什么大不了的,很多信息并不是病毒特有的
2/ 加密:
很少有资料直接谈这个问题,我收集的这些恐怕远远不够,如您有好的想法,希望不吝赐教
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!