|
知识路径: > 恶意代码防范技术原理 > 恶意代码概述 > 恶意代码生存技术 > 恶意代码生存技术 >
|
相关知识点:13个
|
|
|
|
恶意代码每感染一个客体对象时都会利用模糊变换技术使潜入宿主程序的代码不尽相同。尽管是同一种恶意代码,但仍会具有多个不同样本,几乎不存在稳定的代码,只采用基于特征的检测工具一般无法有效识别它们。随着这类恶意代码的增多,不但使病毒检测和防御软件的编写难度加大,还会使反病毒软件的误报率增加。
|
|
|
|
. 指令替换技术。模糊变换引擎(Mutation Engine)对恶意代码的二进制代码进行反汇编,解码并计算指令长度,再对其同义变换。例如,指令XOR REG,REG被变换为SUB REG,REG;寄存器REG1和寄存器REG2互换;JMP指令和CALL指令变换等。Regswap就使用了寄存器互换这一变形技术。
|
|
|
. 指令压缩技术。经恶意代码反汇编后的全部指令由模糊变换器检测,对可压缩的指令同义压缩。压缩技术要想使病毒体代码的长度发生改变,必须对病毒体内的跳转指令重定位。例如指令MOV REG,12345678/PUSH REG变换为指令PUSH 12345678等。
|
|
|
. 指令扩展技术。扩展技术是对汇编指令进行同义扩展,所有经过压缩技术变换的指令都能够使用扩展技术来进行逆变换。扩展技术远比压缩技术的可变换空间大,指令甚至能够进行几十或上百种的扩展变换。扩展技术也需要对恶意代码的长度进行改变,进行恶意代码中跳转指令的重定位。
|
|
|
. 伪指令技术。伪指令技术主要是将无效指令插入恶意代码程序体,例如空指令。
|
|
|
. 重编译技术。使用重编译技术的恶意代码中携带恶意代码的源码,要在自带编译器或者操作系统提供编译器的基础上进行重新编译,这种技术不仅实现了变形的目的,而且为跨平台的恶意代码的出现提供了条件。这表现在UNIX/Linux操作系统,系统默认配置有标准C的编译器。宏病毒和脚本恶意代码是典型的采用这类技术变形的恶意代码。Tequtla是第一例在全球范围传播和破坏的变形病毒,从其出现到研发出可以有效检测该病毒的软件,一共花费了研究人员9个月的时间。
|
|
|