壳的概念

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

查壳

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

去壳

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

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

加壳

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

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

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

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

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

壳 查壳 去壳 加壳的基本原理相关推荐

  1. 什么是加壳和脱壳技术?加壳和脱壳技术是什么意思?

    什么是加壳和脱壳技术?加壳和脱壳技术是什么意思? 加壳,是一种通过一系列数学运算,将可执行程序文件或动态链接库文件的编码进行改变(目前还有一些加壳软件可以压缩.加密驱动程序),以达到缩小文件体积或加密 ...

  2. 【Android 逆向】加壳技术简介 ( 动态加载 | 第一代加壳技术 - DEX 整体加固 | 第二代加壳技术 - 函数抽取 | 第三代加壳技术 - VMP / Dex2C | 动态库加壳技术 )

    文章目录 一.动态加载 二.第一代加壳技术 ( DEX 整体加固 ) 三.第二代加壳技术 ( 函数抽取 ) 四.第三代加壳技术 ( Java 函数 -> Native 函数 ) 五.so 动态库 ...

  3. linux srelf 加壳代码,浅谈被加壳ELF文件的DUMP修复

    前面的文章中,我已经介绍了如何调试被加壳的ELF,这里不在叙述,直接进入正题,以某加固为例,如何DUMP和修复被加壳的ELF,使其能调试加载 我们先来看看被加壳ELF的头和Program Header ...

  4. 加壳器第二部分,加壳器

    1加壳器代码概述 为了软件的方便使用,这里我采用了mfc框架进行编写,其大致过程如下: 1.将加壳程序读入内存(因为要增加区段用于存放壳代码,并加密代码段) 2.加载壳代码 3.对一系列参数进行初始化 ...

  5. 查壳、加壳、脱壳详细教程

    查壳教程 1.打开软件后我们点击右上角的三个点,会弹出一个选择文件的窗口,我们选择要查壳的文件,同样也可以直接把需要查壳的软件拖到PEID页面里 2.这里拖入一个程序后出现如下信息页面 这里我们看到B ...

  6. 病毒加壳技术与脱壳杀毒方法解析

    壳是什么?脱壳又是什么?这是很多经常感到迷惑和经常提出的问题,其实这个问题一点也不幼稚.当你想听说脱壳这个名词并试着去了解的时候,说明你已经在各个安全站点很有了一段日子了.下面,我们进入"壳 ...

  7. 黑客术语肉鸡、后门、弱口令、shell、webshell、注入、端口、免杀、加壳、漏洞等

    黑客术语 1.肉鸡: 所谓"肉鸡"是一种很形象的比喻,比喻那些可以随意被我们控制的电脑,对方可以是WINDOWS系统,也可以是UNIX/LINUX系统,可以是普通的个人电脑,也可以 ...

  8. 技术扫盲 软件加壳(转)

    首先我想大家应该先明白"壳"的概念.在自然界中,我想大家对壳这东西应该都不会陌生了,植物用它来保护种子,动物用它来保护身体等等.同样,在一些计算机软件里也有一段专门负责保护软件不被 ...

  9. 壳的相关知识与木马加壳改壳免杀及各类修改特征码免杀方法

    1.壳的分类:压缩壳和加密壳 2.壳的作用:保护和文件免杀 二.加壳免杀的几个弱点 1.不能躲过像瑞星这类具有内存查杀功能的杀毒软件. 2.一般不能躲过卡巴的查杀 因为卡巴采用了一种叫虚拟机技术.首先 ...

  10. APK加壳【1】初步方案实现详解

    来源与原理 本文是尝试对CSDN大牛 Jack_Jia 的博客 Android APK加壳技术方案[2] 进行实现的过程记录,该文介绍了一种对源程序APK加壳的思路并提供了对应的源码. 所谓加壳,就是 ...

最新文章

  1. pathview包绘制富集的kegg图
  2. iOS开发--面试总结(二)
  3. 以字符串数组为输入参数的存储过程
  4. c语言函数打印零星,C语言零星笔记--(const、typedef)
  5. oracle dbcontrol界面,oracle enterprise manager配置简介
  6. 全网最详细的Sentinel安装教程,没有之一!谁反对?(Linux+windows)
  7. CodeForces - 76E Points
  8. 文本分类问题不需要ResNet?小夕解析DPCNN设计原理(上)
  9. 使用ACME部署生成阿里云免费HTTPS证书
  10. ASP.NET操作Excel(终极方法NPOI)
  11. python分类与原理以及国内好的发展方向
  12. 凸函数与简森不等式(Jensen's inequality)
  13. python中os.path.basename的使用
  14. JS 中的call,apply,bind 和 caller, callee
  15. Gogs 查看 git 代码地址
  16. mysql 二次方函数_MySQL SQRT函数:求二次方根
  17. 数据挖掘项目——金融反欺诈
  18. 电脑热点的连接问题(基于现有IPhone12)
  19. 徒手撸一个记账本(附源码)
  20. 商业数据分析-战略分析读后感

热门文章

  1. 格式工厂找不到qlv文件无法添加qlv文件 怎么办 解决方法
  2. Chrome 浏览器书签功能很强大
  3. 天宝AMD 300U物理机安装黑群晖处理内存不足的问题
  4. Java为 pdf、word和excel添加水印
  5. HyperLynx仿真(一)LineSim简单介绍
  6. 企业如何借助制造业ERP系统,做好生产排产管理?
  7. 计算机应用格式工厂部分教案,格式工厂教学案.doc
  8. 新的开始,fighting
  9. 18W快充长续航 魅族魅蓝Note5金色版19日开售
  10. 华三华为交换机配置时间