免入土(二)windows编程基础
免杀从入门到入土(二)windows 基础编程
主要聚焦于对 PE 文件结构的学习、Windows 的基础编程方式以及如何修改 PE 文件的执行流程;
(对于一些文件结构的解析呢,这里不会写太多的内容,都是一些死东西,也有很多师傅做过非常细致的研究,文章中会摆一些我个人觉得写得比较好的一些师傅的链接,也是我学习的时候参考的链接)
为什么我不细致的写,主要也是因为我个人觉得自己可能学得不是那么到位,可能会误人子弟;
一、前言
本人前期是学二进制方向的,所有具有一定的汇编和堆栈基础,不是什么非常高深的堆栈理解,比较浅显,但是一定要会一点,这很重要(包括但不限于函数调用的时候参数的压栈方式等等);
本来免杀从入门到入土的第二篇是打算写工具生成的免杀码的,但是找来找去也没发现什么很新很新值得测试的工具,而且用工具生成的终究是用工具生成的,始终不是自己的。基于以上两个原因,我还是放弃了工具生成免杀码的方式,主要是局限性太大,没办法应对不同的情况;
因此,免杀从入门到入土(二)windows 基础编程,从免杀学习的角度来说,这是必不可少的基础;
二、PE 文件结构解析
2.1 PE 文件结构
https://blog.csdn.net/freeking101/article/details/102752048
上述链接其实对 PE 文件结构做了非常细致的解析,但是这篇博客呢,又更像一本字典或者参考书,全部记下来,不太可能,但是先总体阅读学习一边总是有好处的;
再完成对 PE 文件结构的学习之后呢,仅接着要做的就是对一个 PE 文件进行加节 section;
2.2 添加节 Section
https://blog.csdn.net/qq_21095573/article/details/107686357
添加节的这个操作在我看来其实并不复杂,主要的作用就是让我们进一步熟悉 windows 编程和 PE 文件头中的一些数据的含义以及它们之间的相互关系;
2.3 导入表
https://www.52pojie.cn/thread-1413220-1-1.html
2.4 导出表
https://www.52pojie.cn/thread-1412395-1-1.html