从0手工构造64位PE并手工进行加壳
原文中文,约12200字,阅读约需30分钟。
📝
内容提要
本文介绍如何手工构造64位PE文件并手工加壳,加深对PE文件的理解,为深入研究Windows安全打基础。提供构造好的PE文件的github链接,参考资料包括《逆向工程核心原理》、https://bbs.kanxue.com/thread-226033.htm、https://learn.microsoft.com/zh-cn/windows/win32/debug/pe-format。
🎯
关键要点
-
本文介绍如何手工构造64位PE文件并手工加壳,旨在加深对PE文件的理解。
-
使用的工具为010Editor,操作系统为Windows10 20H2 19045。
-
PE文件格式是可移植性可执行文件,主要用于Windows操作系统的可执行文件、目标文件和动态链接库。
-
PE文件的主要结构包括DosHeader、NtHeader、SectionHeaders等。
-
手工构造的PE文件包含两个Section:.text和.rdata,分别用于存放可执行代码和导入表。
-
通过手工构造的PE文件可以调用MessageBoxA函数弹框并使用ExitProcess函数退出进程。
-
手工加壳的过程是添加一个新区段并将PE文件的OEP改为新区段,以实现解密和跳转。
-
构造的PE文件已上传至GitHub,供需要的用户下载。
-
PE文件格式是学习Windows安全技术的基础,涉及Shellcode、免杀、脱壳等多个方面。
-
参考资料包括《逆向工程核心原理》和相关网站链接。
🏷️