我在这上找到了一篇关于多态病毒的文章,它在运行时对自己进行加密和解密。这篇文章说,唯一未加密的部分是破解病毒下一部分的存根。它如何运行加密后解密的代码?病毒不是用解释语言写成的。
发布于 2016-04-11 23:31:06
我自己还没有开发出多态病毒,但是加密任何可执行文件(ELF、PE或其他文件)的部分的想法对我来说并不是不可想象的。
只要有非加密的代码来启动进程(描述中的存根),它就应该能工作。请记住(虽然不是加密的,而是压缩的),Linux内核确实压缩了大部分映像,并使用类似的机制在引导期间解压缩映像。
只要初始存根构成CPU理解的普通可执行指令,代码就可以始终跟踪内存地址、指令指针(EIP)。
所有的代码都需要确保在EIP到达要执行的指令的地址之前,对这些地址的内容(指令)进行解密。类似地,代码逻辑必须确保不取消指向加密内存范围的任何地址(除非目的是解密它)。
这说得通吗?
https://security.stackexchange.com/questions/120185
复制相似问题