逆向——壳应用

逆向——壳应用



前言

本次实验的主要要求是在理解PE文件以及壳的工作原理基础上,对目的PE文件进行处理,增加节,并写入符合加密壳功能的代码,修改PE文件入口地址、修改节属性,达到加密壳的功能。

本次实验用到的工具有OllyDBG、PEditor、WinHex等。


提示:以下是本篇文章正文内容,下面案例可供参考

一、壳的执行流程

壳是在可执行程序的外面进行了一次包裹,从而让壳对可执行文件进行保护(这里说的壳指的是压缩壳或加密壳,不包含虚拟指令壳)。壳通常会在可执行文件执行之前先进行执行,从而更好地获得控制权。加密壳会在进行一系列的初始化工作之后(可能包括解压缩、解密等,加密壳通常也有压缩功能)也把控制权交还给可执行程序,但是在可执行程序执行的过程中,外壳仍然会对可执行程序进行各种各样的“干涉”,从而达到更好的保护作用。
在这里插入图片描述
从上图中可以看出,在加壳后的可执行程序中多了一个.Pack 节(该名字任意,甚至可以为空),该节中存放的是壳的代码或相关的加壳后的数据,当然壳相关的代码或数据可能会放在多个节中,而不是一个节中。由于壳要首先取得控制权,因此程序的入口地址会指向壳的添加的节区(当然不是绝对的,也可能入口不变,而是修改入口处的代码),当壳的代码执行完成后,再跳回到原来的入口点进行执行。

二、模拟壳的工作

初始PE文件的 RVA 与 FOA 相同,使得模拟的时候可以省去各种地址转换的问题。本节的模拟工作将会在该文件上进行模拟。以下分析、处理基于EnPE.exe文件。

2.1、 对原始可执行文件RawPE.exe的代码节进行加密,得到EnPE.exe(已完成);

密码算法:异或;

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值