研究出这个方法有好久了,平时不怎么搞手工免杀,我也不用,就发出来吧
进程的本质的线程,那么来个线程就好了,但是NOD32不是纯粹的高启发,还有传统查杀,异或加密一下代码段就可以了
方法是以前的,不知道现在还行不行,先说了再说,嘿嘿
1.异或加密代码段
2.写入以下几句作为入口点
push eax
push eax
push eax
push XXXXXXXX
push eax
push eax
CALL CreateThread
retn
XXXXXXXX地址是干什么的呢?就是解密+跳转到原入口点的指令了。。。。。。。。。。。。。。。。。。。
相关知识:
PE文件在刚载入的时候,默认EAX=0,ESP栈顶指向的地址是ExitThread函数,貌似这个函数会等待所有线程退出后才会返回
所以我们自己构造代码,把原入口点作为一个线程去运行,这样线程套着线程,高启发就困难了
如果这个方法失效了呢?嘿嘿,继续线程+线程+线程……+异或代码+异常……
特征免杀我都懒得做了,麻烦的要死
不过我还是喜欢特征免杀,能够学到很多东西……
最后附上CreateThread函数在SDK中的声明
HANDLE CreateThread(
LPSECURITY_ATTRIBUTES lpThreadAttributes,
DWORD dwStackSize,
LPTHREAD_START_ROUTINE lpStartAddress,
LPVOID lpParameter,
DWORD dwCreationFlags,
LPDWORD lpThreadId);