1.PEID载入

ASPack v2.12

2.载入OD,跟之前帖子的入口特征相同,都是一个pushad,但是请不要怀疑这是同一个壳,绝对不是,pushad下一行ESP定律下硬件断点,然后shift+F9运行一次

0057E001 >                pushad                            ; //程序入口点
0057E002 E8 call memcolla.0057E00A ; //ESP定律
0057E007 - E9 EB045D45 jmp 45B4E4F7
0057E00C push ebp
0057E00D C3 retn
0057E00E E8 call memcolla.0057E014
 

3.ESP落脚点,删除硬件断点继续F8,注意,普通的aspack壳在注释的地方会跳向OEP,但是这个没有

0057E3B0   /            jnz short memcolla.0057E3BA       ; //程序落脚点
0057E3B2 |B8 mov eax,0x1
0057E3B7 |C2 0C00 retn 0xC
0057E3BA \ push memcolla.
0057E3BF C3 retn ; //普通壳会在这里跳向OEP
0057E3C0 8B85 mov eax,dword ptr ss:[ebp+0x426]
0057E3C6 8D8D 3B040000 lea ecx,dword ptr ss:[ebp+0x43B]
 

4.步骤3的retn跳向的位置,到这里继续F8

    87C0            xchg eax,eax                      ; //跳转的位置
FC cld
80EC sub ah,0x0
83F1 xor ecx,0x0
nop
 

5.这是一个近call,F7跟进,然后继续F8就可以到达OEP了,需要注意的是中间有几个向上跳转,记得在下一行F4

0057D40D    E8      call memcolla.0057D424            ; //F7
0057D412 80CA or dl,0x0
0057D415 push eax
0057D416 9C pushfd
0057D417 pop eax
0057D418 F6C4 test ah,0x1
0057D41B - FE jnz short memcolla.0057D41B
 

6.找到关键跳,F8一下就可以到OEP了

0057D5A3                  popad
0057D5A4 BA F8085000 mov edx,memcolla.005008F8
0057D5A9 - FFE2 jmp edx ; //指向OEP的关键跳
0057D5AB add byte ptr ds:[eax],al
0057D5AD add byte ptr ds:[eax],al
 

7.来到OEP,可以脱壳了

005008F8                  push ebp                          ; //OEP
005008F9 8BEC mov ebp,esp
005008FB 83C4 F0 add esp,-0x10
005008FE push ebx
005008FF push esi
B8 mov eax,memcolla.
E8 665FF0FF call memcolla.
0050090A 8B1D mov ebx,dword ptr ds:[0x504108]
8B35 9C415000 mov esi,dword ptr ds:[0x50419C]

8.运行,查壳

运行OK,查壳:Borland Delphi 4.0

手脱ASPack v2.12变形壳2的更多相关文章

  1. 手脱ASPack v2.12

    1.PEID查壳提示为: ASPack 2.12 -> Alexey Solodovnikov 2.载入OD,程序入口点是一个pushad,在他的下一行就可以进行ESP定律,下硬件访问断点然后s ...

  2. 手脱Aspack变形壳1

    1.载入PEID Aspack v2.12 -> www.aspack.com 2.载入OD,不管是看查壳信息还是看入口特征都跟我上一次发的一个手脱Aspack v2.12的帖子相同http:/ ...

  3. 手脱ASPack

    ESP定律到达OEP,重新分析代码块 在菜单栏中找到OllyDump插件,该插件的窗口的弹了出来,有一些选项可供我们修改,我们可以对Base of Code进行修改,这里Base of Code = ...

  4. 手脱PEtite v2.1

    1.载入PEID PEtite v2.1 2.载入OD,先F8跟一下 0042C10F > B8 00C04200 mov eax,跑跑排行.0042C000 ; //程序入口点 0042C11 ...

  5. 手脱PECompact v2.xx

    个人认为这个壳对于新手有那么一点点难度,所以用单步和ESP都跑一下,我觉得单步是最最基础的,所以一定要掌握 一.单步 1.PEID查壳 PECompact v2.xx (16 ms) 2.载入OD,除 ...

  6. 手脱ACProtect V2.0(无Stolen Code)

    1.载入PEID ACProtect V2.0 -> risco 2.载入OD > 00A04000 push ACP_Feed.0040A000 ; //入口点 0B104000 pus ...

  7. 脱壳第一讲,手工脱壳ASPack2.12的壳.ESP定律

    脱壳第一讲,手工脱壳ASPack2.12的壳.ESP定律 一丶什么是ESP定律 首先我们要明白什么是壳.壳的作用就是加密PE的. 而ESP定律就是壳在加密之前,肯定会保存所有寄存器环境,而出来的时候, ...

  8. 【个人笔记】ximo早期发的脱壳教程——手脱UPX壳

    [个人笔记]ximo早期发的脱壳教程--手脱UPX壳   壳分为两种:压缩壳和加密壳,UPX是一种很简单的压缩壳.   手脱UPX壳: 工具:ExeinfoPE.OD 对象:rmvbfix 方法1:单 ...

  9. 简单脱壳教程笔记(2)---手脱UPX壳(1)

    本笔记是针对ximo早期发的脱壳基础视频教程,整理的笔记. ximo早期发的脱壳基础视频教程 下载地址如下: http://down.52pojie.cn/%E5%90%BE%E7%88%B1%E7% ...

随机推荐

  1. HTML5+Bootstrap 学习笔记 4

    HTML5 <map> <area> 标签 <map> 标签定义客户端的图像映射.图像映射是带有可点击区域的图像. <area> 标签定义图像映射内部的 ...

  2. Bean的装配

    1.可以从ApplicationContext上下文获取和bean工厂获取容器,bean工厂只建议在移动端应用使用. 2.如果使用的是applicationContext配置的是bean,如果作用域是 ...

  3. [leetcode-908-Smallest Range I]

    Given an array A of integers, for each integer A[i] we may choose any x with -K <= x <= K, and ...

  4. underscore.js源码解析(四)

    没看过前几篇的可以猛戳这里: underscore.js源码解析(一) underscore.js源码解析(二) underscore.js源码解析(三) underscore.js源码GitHub地 ...

  5. 四则运算3+psp0

    题目要求: 1.程序可以判断用户的输入答案是否正确,如果错误,给出正确答案,如果正确,给出提示. 2.程序可以处理四种运算的混合算式. 3.要求两人合作分析,合作编程,单独撰写博客. 团队成员:张绍佳 ...

  6. Hash开散列 拉链法

    #include<iostream> #include<cstdio> using namespace std; const int maxn=1000007; struct ...

  7. lintcode-420-报数

    420-报数 报数指的是,按照其中的整数的顺序进行报数,然后得到下一个数.如下所示: 1, 11, 21, 1211, 111221, ... 1 读作 "one 1" -> ...

  8. java使用匿名类直接new接口

    翻看Vector代码的时候,看到这么一段. /** * Returns an enumeration of the components of this vector. The * returned ...

  9. DNS缓存服务器的配置步骤

    yum安装bind 编辑主配置文件/etc/named.conf 修改全局配置文件段        listen-on  port 53 {172.16.19.45;}; //allow-query ...

  10. MySQL 事物机制

    前言:事物:一组原子性的SQL查询,或多个SQL语句组成了一个独立的单元.要么这一组SQL语句全部执行,要么全部不执行 (一)事物日志介绍:管理事物机制的日志 redo日志:记录SQL执行的语句,这些 ...