查壳去壳和加壳的基本原理

本文介绍了软件加壳和脱壳的概念。加壳是一种通过压缩或加密技术来保护程序不被反编译的方法,而脱壳则是逆向工程中用于揭示原始程序的过程。PEID工具被用于查壳和脱壳,包括查找程序的OEP并进行Dump与修复。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.1  壳的分类

1. 通常分为压缩壳和加密壳两类。

2. 压缩壳的特点是减小软件体积大小,

3. 加密壳种类比较多,不同的壳侧重点不同,一些壳单纯保护程序,另一些壳提供额外的功能,如提供注册机制、使用次数、时间限制等。

1.2 查壳

        可以利用PEID软件进行查壳,用PEID打开要查的软件,以扫雷为例,可以看到扫雷是用C++编写的程序,证明这个软件没有壳,如图1。若有壳,此处将会显示是用哪种方法加的壳。

 

图1

1.3 加壳

1. 什么是加壳?

        利用特殊的算法,为了保护软件不被反编译,对可执行文件里的资源进行压缩或加密。

2. 加壳的原理

        源程序的代码段通过壳程序进行加密,生成了加密后的代码段,加密后的代码跟源程序的头放在一起,得到的加壳后的程序。

1.4 去壳(脱壳)

1. 常用的脱壳工具:PEID

2. 脱壳的原理

        脱壳的基本原则就是单步跟踪,只能往前,不能往后。脱壳的一般流程是:查壳->寻找OEP->Dump->修复。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

哪个小李

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值