壳、加壳、脱壳

壳、加壳、脱壳壳、加壳、脱壳原理

壳、加壳、脱壳

什么是壳?

在计算机软件里有一些专门负责保护软件不被非法修改或反编译的程序。他们一般都是先于程序运行,拿到控制权,然后完成他们保护程序的任务。由于这段程序和自然界的壳在功能上很相似,我们就把这样的程序称为“壳”

加壳

全称应该是可执行程序资源压缩,是保护文件的常用手段

什么是加壳?是应用加固的一种手法对原始二进制原文进行加密/隐藏/混淆

加壳的好处:保护自己的核心代码算法,提高激活成功教程的难度缓解代码注入/动态调试/内存注入攻击

加壳的缺点:影响兼容性,影响程序运行效率

加壳其实就是利用特殊的算法,对EXE\DLL文件里的资源进行压缩,改变其原来的特征码,隐藏一些字符串等等,使一些资源编辑软件不能正常打开或者修改。加壳后的程序可以单独运行,解压过程完全隐蔽,都在内存中完成。

脱壳

表示通过反汇编将壳去掉的过程

脱壳三步法:

1)寻找原始OEP:确定原始程序代码到底在哪里,能找到原始程序的代码,说明壳代码执行完了

2)dump内存到文件:当我们找到原始OEP,并进行调试时,只要源代码被还原,我们就可以在这个地方进行dump内存,将内存中被替换的代码和数据抓取下来,保存成一个新文件,这样脱完壳我们就可以用静态分析工具分析程序了

3)修复文件:这一步主要就是修复IAT,对从内存中转储到本地的文件进行修复

今天的文章壳、加壳、脱壳分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/33654.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注