很多病毒作者通过给病毒“穿马甲”、甚至穿多个“马甲”的方式,躲避杀毒软件的查杀,这种技术就是“加壳”。 病毒作者可以通过给老病毒加壳,大批量制造出杀毒软件无法识别的新病毒。在好莱坞间谍电影里,那些特工们往往以神奇莫测的化妆来欺骗别人,甚至变换成另一个身份,国内对于这种伪装行为有个通俗的说法——“穿马甲”。而这种正与邪的争斗已经延伸到了病毒领域,所谓加壳,是一种通过一系列数学运算,将可执行程序文件或动态链接库文件的编码进行改变(还有一些加壳软件可以压缩、加密驱动程序),以达到缩小文件体积或加密程序编码的目的。当被加壳的程序运行时,外壳程序先被执行,然后由这个外壳程序负责将用户原有的程序在内存中解压缩,并把控制权交还给脱壳后的真正程序。一切操作自动完成,用户不知道也无需知道壳程序是如何运行的。一般情况下,加壳程序和未加壳程序的运行结果是一样的。