-
-
[旧帖]
[菜鸟要转正]:基本的PE感染
0.00雪花
-
发表于:
2011-2-13 15:33
1759
-
[旧帖] [菜鸟要转正]:基本的PE感染
0.00雪花
还是去年写的,为了能够早日转正特与大家分享,水平有限,望大家能够谅解。
程序基本介绍:
运行时会获取当前目录,然后和递归搜索当前目录下的EXE文件。每搜索到一个文件进行如下处理:
1、先检查MZ、PE00、Subsystem(为了防止修改ntoskrnl.exe这样的东东)等标志。还要检查是否有IMAGE_SECTION_HEADER空间
2、添加IMAGE_SECTION_HEADER结构:
PointerToRawData = 上一个结构的PointerToRawData + SizeOfRawData;
VirtualAddress = (上一个结构的VirtualAddress + VirtualSize)按照SectionAlignment对齐;
其它字段都比较好搞。对了,节区名称的前四个自己我是随机生成的,后四个字节我用来保存OEP了。
3、注入代码:
在将代码写入目标EXE文件前,先对这代码进行简单的XOR,然后再写入。
4、修正文件头,比如节区数目啊,入口点啊等等。
运行被感染的文件时:
1、XOR还原代码
2、执行简单的代码后,从最后一个节区的NAME中得到OEP然后JMP
其它:必须使用自定位;还要搜索到kernel32.dll的内存基址,进一步获取loadlibrary、GetProcAddress等函数地址。
结束语:
测试时,感染我以前写的一些程序都很正常,但是系统目录下的好多EXE貌似感染后就不行了,可能还有很多BUG。代码中也有注释,希望能够对你有所帮助,共同进步。
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课