有VM又有IAT表的加密保护是很好.
不过值得注意的是VM的保护上体现在语句的变形,和在虚拟机中执行.可是我们有没有想过最终结果还是要返回原程序的.
我知道作者的想法,是希望双壳保护.UPX+有VM保护的壳是可以,但是UPX是压缩壳,带VM的是保护壳.如果像我上面所说的,VM保护过程和IAT加密过程,最终返回在虚拟机中运行的结果给UPX,那会怎么样的.
结果应该很明确,就是保护壳做了无用功.我们可以直接的截获UPX的信息来脱壳.当然这对于防止TX.TP.SX确实有好处,因为TX是对其他程序的虚拟内存中的关键字进行分析的,当然还有我们需要修改的内存地址或是位点吧,有VM的话非法的速度会慢一点.如果内存的位点不被发现的话就会长期有效.