个人认为这个壳对于新手有那么一点点难度,所以用单步和ESP都跑一下,我觉得单步是最最基础的,所以一定要掌握

一、单步
1.PEID查壳

PECompact v2.xx (16 ms)

2.载入OD,除了以下标注的几个位置外,其他的都使用F8

0040A86D >  B8 74DE4500     mov eax,qqspirit.0045DE74         ; //入口点
0040A872 push eax
0040A873 :FF35 >push dword ptr fs:[]
0040A87A : >mov dword ptr fs:[],esp
0040A881 33C0 xor eax,eax
0040A883 mov dword ptr ds:[eax],ecx
0040A885 push eax

位置1:

778D711D    6A            push 0x0
778D711F push ecx
778D7120 E8 2BE5FFFF call ntdll.ZwContinue ; //程序会跑飞F7跟进
778D7125 EB 0B jmp short ntdll.778D7132
778D7127 5B pop ebx
778D7128 pop ecx
778D7129 6A push 0x0
 

位置2:

778D5650 >  B8 3C000000     mov eax,0x3C                      ; //F7落脚点
778D5655 BA 0003FE7F mov edx,0x7FFE0300
778D565A FF12 call dword ptr ds:[edx] ; //程序会跑飞F7跟进
778D565C C2 retn 0x8
778D565F nop
778D5660 > B8 3D000000 mov eax,0x3D 778D71B0 > 8BD4 mov edx,esp ; //第二个F7落脚点
778D71B2 0F34 sysenter
778D71B4 > C3 retn
778D71B5 8DA424 lea esp,dword ptr ss:[esp]
778D71BC 8D6424 lea esp,dword ptr ss:[esp]
778D71C0 > 8D5424 lea edx,dword ptr ss:[esp+0x8]

3.找到了指向OEP的跳转

0045DF34    5B              pop ebx
0045DF35 5D pop ebp
0045DF36 - FFE0 jmp eax ; //指向OEP的跳转
0045DF38 6D ins dword ptr es:[edi],dx
0045DF39 A8 test al,0x40
0045DF3B add byte ptr ds:[eax],al
 

4.来到OEP,脱壳吧

0040A86D >                push ebp                          ; //来到OEP
0040A86E 8BEC mov ebp,esp
0040A870 6A FF push -0x1
0040A872 push qqspirit.
0040A877 F4E14000 push qqspirit.0040E1F4
0040A87C :A1 mov eax,dword ptr fs:[]
0040A882 push eax
0040A883 : >mov dword ptr fs:[],esp
 

5.运行查壳

运行OK,查壳:Microsoft Visual C++ v6.0

二、ESP定律

1.载入OD,看到两个push入栈,下一行ESP定律下硬件访问断点然后shift+F9运行一次

0040A86D >  B8 74DE4500     mov eax,qqspirit.0045DE74         ; //入口点
0040A872 push eax
0040A873 :FF35 >push dword ptr fs:[]
0040A87A : >mov dword ptr fs:[],esp ; //ESP定律一次
0040A881 33C0 xor eax,eax
0040A883 mov dword ptr ds:[eax],ecx
 

2.来到ESP的落脚点,单步F8跟下去就能到OEP了

0045DEA3    83C4          add esp,0x4                       ; //ESP落脚点
0045DEA6 push ebp
0045DEA7 push ebx
0045DEA8 push ecx
0045DEA9 push edi
 

3.来到关键跳,这就是指向OEP的跳转

0045DF34    5B              pop ebx
0045DF35 5D pop ebp
0045DF36 - FFE0 jmp eax ; //指向OEP的跳转
0045DF38 6D ins dword ptr es:[edi],dx
0045DF39 A8 test al,0x40
 

4.来到OEP,脱壳、运行、查壳

0040A86D >                push ebp                          ; //OEP
0040A86E 8BEC mov ebp,esp
0040A870 6A FF push -0x1
0040A872 push qqspirit.
0040A877 F4E14000 push qqspirit.0040E1F4
0040A87C :A1 mov eax,dword ptr fs:[]
0040A882 push eax
0040A883 : >mov dword ptr fs:[],esp
0040A88A 83EC sub esp,0x58
 

手脱PECompact v2.xx的更多相关文章

  1. 手脱ASPack v2.12变形壳2

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

  2. 手脱PEtite v2.1

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

  3. 手脱ASPack v2.12

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

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

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

  5. 手脱Aspack变形壳1

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

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

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

  7. 简单脱壳教程笔记(7)---手脱PECompact2.X壳

    本笔记是针对ximo早期发的脱壳基础视频教程.整理的笔记.本笔记用到的工具下载地址: http://download.csdn.net/detail/obuyiseng/9466056 简单介绍: F ...

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

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

  9. 手动脱PeCompact 2.20壳实战

    作者:Fly2015 PeCompact壳又是一个没有听说过的壳,需要脱壳的程序是吾爱破解培训的第一课的选修作业四.最近对脱壳有点上瘾了,当然也遭受了脱壳受挫的无奈,但是比较幸运还是把这个壳给搞了. ...

随机推荐

  1. 使用qemu启动dd制作的img镜像

    1. 准备工作 应用场景 在需要单机取证时,需要在不影响对象业务的情况下进行取证或分析,可以使用dd 对目标服务器进行镜像,生成img文件,镜像可以通过winhex进行静态分析.但是想要动态分析服务器 ...

  2. linux下搭建python机器学习环境

    前言 在 linux 下搭建 python 机器学习环境还是比较容易的,考虑到包依赖的问题,最好建立一个虚拟环境作为机器学习工作环境,在建立的虚拟环境中,再安装各种需要的包,主要有以下6个(这是看这个 ...

  3. Amazon Headlines Update on Activity in US West Coast Ports

    According to news reports, freighter cargo may not be offloaded at U.S. West Coast ports from Februa ...

  4. LeetCode 289. Game of Life (C++)

    题目: According to the Wikipedia's article: "The Game of Life, also known simply as Life, is a ce ...

  5. Scrum立会报告+燃尽图(十月十四日总第五次):前期宣传工作进行中

    此作业要求参见:https://edu.cnblogs.com/campus/nenu/2018fall/homework/2195 Scrum立会master:段晓睿 一.小组介绍 组长:付佳 组员 ...

  6. scrum立会报告+燃尽图(第二周第三次)

    此作业要求参考: https://edu.cnblogs.com/campus/nenu/2018fall/homework/2248 一.小组介绍 组名:杨老师粉丝群 组长:乔静玉 组员:吴奕瑶.公 ...

  7. Thunder--Beta发布--美工+文案

    作业:https://edu.cnblogs.com/campus/nenu/SWE2017FALL/homework/1366 内容: 美工:原有功能展示.新增功能展示 程序图标 欢迎页面 我的书架 ...

  8. Scrum 项目准备4.0

    4.0----------------------------------------------- 1.准备看板. 形式参考图4. 2.任务认领,并把认领人标注在看板上的任务标签上. 先由个人主动领 ...

  9. 【第九周】psp

        代码累计 300+575+475+353+620=2223 随笔字数 1700+3000+3785+4210+4333=17695 知识点 java反射机制 数据库技术 动态规划算法 pyth ...

  10. HDU 2154 跳舞毯

    http://acm.hdu.edu.cn/showproblem.php?pid=2154 Problem Description 由于长期缺乏运动,小黑发现自己的身材臃肿了许多,于是他想健身,更准 ...