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

壳的概念

是指在一个程序的外面再包裹上另外一段代码,保护里面的代码不被非法修改或反编译的程序。壳最本质的功能就是实现加载器,它们一般都是先于程序运行,拿到控制权,然后完成它们保护软件的任务。
壳绝对不能改变原来代码的执行流程。

查壳

侦测壳和软件所用编写语言的软件。
脱壳之前要查看它的软件类型,侦测壳的软件,fileinfoexe简称fi.exe。
侦测壳和软件所用编写语言的软件language.exe

去壳

当知道文件的加密方式,就可以使用不同的工具、不同的方法进行去壳。
下面是常会碰到的加壳方式及简单的去壳措施
去壳的基本原则是单步跟踪,只能往前,不能往后。
去壳的一般流程是︰查壳->寻找 OEP->Dump->修复。

找OEP(入口点) 一般思路如下: 先看壳是加密壳还是压缩壳,压缩壳相对来说容易些,一般是没有异常,找到对应的popad后就能到入口,跳到入口的方式一般为。我们知道文件被一些压缩加壳软件加密,下一步我们就要分析加密软件的名称、版本。因为不同软件甚至不同版本加的壳,脱壳处理的方法都不相同。

加壳

加壳的全称:可执行程序资源压缩,压缩后的程序可以直接运行。

加壳的另一种常用的方式是在二进制的程序中植入一段代码,在运行的时候优先取得程序的控制权,之后再把控制权交还给原始代码。这样做的目的是隐藏程序真正的OEP(入口点,防止被破解,查壳就是为了找它)。大多数病毒就是基于此原理。加壳可以绕过一些杀毒软件的扫描。

加壳工具通常分为:压缩壳加密壳两类。

压缩壳特点是减小软件体积大小,加密保护不是重点。

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

你可能感兴趣的:(网络安全,网络安全)