查壳去壳和加壳的基本原理
1.什么是壳
- 介绍下加壳、脱壳以及如何病毒免杀技术与原理 在自然界中,我想大家对壳这东西应该都不会陌生了,由上述故事,我们也可见一斑。自然界中植物用它来保护种子,动物用它来保护身体等等。同样,在一些计算机软件里也有一段专门负责保护软件不被非法修改或反编译的程序。它们一般都是先于程序运行,拿到控制权,然后完成它们保护软件的任务。就像动植物的壳一般都是在身体外面一样理所当然(但后来也出现了所谓的“壳中带籽”的壳)。由于这段程序和自然界的壳在功能上有很多相同的地方,基于命名的规则,大家就把这样的程序称为“壳”了。就像计算机病毒和自然界的病毒一样,其实都是命名上的方法罢了。 从功能上抽象,软件的壳和自然界中的壳相差无几。无非是保护、隐蔽壳内的东西。而从技术的角度出发,壳是一段执行于原始程序前的代码。原始程序的代码在加壳的过程中可能被压缩、加密……。当加壳后的文件执行时,壳-这段代码先于原始程序运行,他把压缩、加密后的代码还原成原始程序代码,然后再把执行权交还给原始代码。 软件的壳分为加密壳、压缩壳、伪装壳、多层壳等类,目的都是为了隐藏程序真正的OEP(入口点,防止被破解)。
2.壳的概念
- 作者编好软件后,编译成exe文件
- 有一些版权信息需要保护起来,不想让别人改动,为了保护软件不被破解,通常都是采用加壳方式来进行保护
- 需要把程序搞得小店,加壳可以将exe文件压缩
- 黑客届给木马等软件加壳脱壳以躲避杀毒软件。
加壳
1. 加壳常用软件
- (1)Aspack,upx,PEcompact.
- (2)不常用的加壳软件WWPACK32;PE-PACK ;PETITE NEOLITE
查壳
1.侦测壳和软件所用编写语言的软件
- 脱壳之前要查看他的软件类型,侦测壳的软件,fileinfoexe简称fi.exe
- 侦测可和软件所用编写语言的软件language.exe(两个功能合二为一)
- 软件常用编写语言Delphi,VisualBasic(VB)–最难破,VisualC(VC)
脱壳
1.脱壳软件
(1)软件加壳是作者写完软件后,为了保护自己的代码或维护软件产权等利益所常用到的手段。目前有很多加壳工具,当然有盾,自然就有矛,只要我们收集全常用脱壳工具,那就不怕他加壳了。软件脱壳有手动脱和自动脱壳之分
(2)手动就是用 TRW2000 、 TR 、 SOFTICE 等调试工具对付,对脱壳者有一定水平要求,涉及到很多汇编语言和软件调试方面的知识。而自动就是用专门的脱壳工具来脱,最常用某种压缩软件都有他人写的反压缩工具对应,有些压缩工具自身能解压,如 UPX ;有些不提供这功能,如: ASPACK ,就需要 UNASPACK 对付,好处是简单,缺点是版本更新了就没用了。
(3) 脱壳的基本原则就是单步跟踪,只能往前,不能往后。脱壳的一般流程是:查壳 -> 寻找 OEP->Dump-> 修复
2.常用脱壳软件
(1)文件分析工具(侦测壳的类型):Fi,GetTyp,peid,pe-scan
(2)OEP入口查找工具:SoftICE,TRW,ollydbg,loader,peid
(3)dump工具:IceDump,TRW,PEditor,ProcDump32,LordPE
(4)PE文件编辑工具PEditor,ProcDump32,LordPE
(5)重建Import Table工具:ImportREC,ReVirgin
(6)ASProtect脱壳专用工具:Caspr(ASPr V1.1-V1.2有效),Rad(只对ASPr V1.1有效),loader,peid
PEid工具的具体使用方法
1.什么是PE文件
(1)PE是Windows下的可执行文件的格式。这是微软基于UNIX平台的COFF(Common Object File Format,通用文件格式)制成的。微软原本的意思是提高程序的移植型。但是想法是好的,但是实际上只用于Windows系列的操作系统下。
(2)PE文件是指32位的可执行文件,也称PE32。注意:64位的可执行文件称为PE+或PE32+,是PE32的一种扩展,不叫PE64。
2.什么时候需要用到PEid
(1)当你需要快速了解目标程序
(2)快速鉴定一个程序是否正常
(3)它的入口点是什么?
(4) 用什么工具开发的
(5)是否被加了已知壳?
(6)查看它的反汇编代码
(7)PE头结构
(8)脱简易的壳文章来源:https://www.toymoban.com/news/detail-755257.html
3.操作实例
(1)拖入一个exe程序。我这里拖入ollydgb.exe
(2)可以看出是用c++编写
(3)再试试之前的crack me里的Brad Soblesky.exe
(4)Not a valid PE file.不是有效的pe文件
(5)再试试acid burn
(6)好像也没有壳
(7)再试试一个crackme05-ajj.2
(8)看到是upx壳文章来源地址https://www.toymoban.com/news/detail-755257.html
到了这里,关于查壳去壳和加壳的使用指南的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!