羽夏壳世界——序

写在前面

  此系列是本人一个字一个字码出来的,包括代码实现和效果截图。 如有好的建议,欢迎反馈。码字不易,如果本篇文章有帮助你的,如有闲钱,可以打赏支持我的创作。如想转载,请把我的转载信息附在文章后面,并声明我的个人信息和本人博客地址即可,但必须事先通知我

前言

  在学逆向分析的时候,你常常会听到或者遇到被称之为给程序加壳这个东西。那么壳是什么?它的实现原理是啥?加壳的目的是什么?
  在Win系统上,PE结构是逆向的基础,也是实现加壳的理论基础,那么PE结构是啥?它和逆向相关的细节有啥?它们又有啥联系?
  对于以上疑问,本系列教程将会逐个解答。

知识储备

  学习本教程需要一些的基础储备和热情毅力,毕竟这个是自学,没有人来监督你。需要的基础和能力要求如下:

  • 一门编程语言(由于实现会使用PE结构体,这些在C/C++头文件之中,并且有大量的指针内存操作,故会在实现篇用C++
  • Intel 汇编基础
  • 具有看汇编C语言,看C语言汇编的能力
  • 对于位(bit)具有明确的认识
  • 一定的毅力和时间
  • Intel 硬编码的基础(最好会,否则在某些篇章理解可能稍微有点困难)

  如果想具有看汇编C语言,看C语言汇编的能力,可以参考我的 羽夏看C语言系列教程 ,也可以看别的教程,否则后面的学习可能十分痛苦。因为在实现篇里面用到了大量汇编的知识。

付费部分

  本教程含有付费内容,只要打赏 15 元即可解锁所有,当然如果你有钻研的精神的话,也可不用付费自行研究。该付费一是对分析代码比较困难的同志提供的参考,二是让某些网站不能够随意转载我的完整教程内容。按照我的老风格,我只对比较难的部分实现进行设置为付费,基础部分仍是免费的,与本教程配套的代码也是免费的。

目录

从入门到入土

  • 羽夏壳世界——序(本篇将会介绍)

基础篇

实现篇

完结撒花

可参考资料

有关该项目源码

  本教程相关项目使用AGPL-3.0协议将代码开源在GitHubGitee上。也就是说,任何人不得使用里面的任何代码进行商用。如果有人在我的代码基础上继续实现一些功能,也必须使用该协议开源。该代码有近2500行,代码注释占了一小部分,主要是汇编生成的逻辑占了一大部分,其次是PE文件的解析,学习的时候请耐心阅读,最好重写一份该项目,夯实自己的学习成果。本项目花了本人相当的精力,如果有闲钱的话,欢迎支持。
  如下是开源项目地址:

托管平台 链接
https://gitee.com/wingsummer/WingProtect
https://github.com/Wing-summer/WingProtecter

下一篇

  羽夏壳世界——基础篇

posted @ 2022-04-06 23:00  寂静的羽夏  阅读(484)  评论(0编辑  收藏  举报