脱壳2 (15PB pack)

脱壳回顾

1. 脱壳需要哪三步?

 ① 找原始OEP
 ② dump内存
 ③ 修复文件

2. 找OEP有哪些技巧?

 ① 特征定位
 ② 单步跟踪
 ③ ESP定律

3.脱壳­upx、aSpack、nSpack

 ① 找OEP ESP定律

4.脱壳­ FSG 2.0

 ① 找oep 单步跟踪 跳转到OEP代码: JMP DWORD PTR DS:[EBX+0xC]
 ② dump内存
 ③ 修复IAT FSG 2.0对内存中的IAT 进行了一些空隙填充,需要将其改为0

脱壳2 (15PB pack)

首先单步跟踪下,发现IAT被加密了,所以这是一个IAT加密壳

1.用PEID查看程序信息

  如图可知这是VC6编译的,那入口点特征应该有sub esp,0x58,还有第一个API调用应该是GetVersion


2.找到入口点OEP

  可以在GetVersion这个API上下断点,然后找到调用他的用户模块代码。也可以直接单步找到OEP,因为代码并不复杂,我选择直接单步。
  F8走不了几步,就能找到一个jmp,这就是跳转到OEP的代码


  

3.获取写入IAT和得到IAT的地址

  找到入口点后,可以观察到第一个call 是FF15,FF15或者FF25的call调用,一般都是IAT调用。
  所以在第一个call 右键 选择数据窗口跟随,在内存窗口中下一个IAT的硬件写入断点




  重新运行,按F9跑起来,第一次断下后,需要再按一次F9运行,随后点击15PB的壳窗口,就会进入加密代码块。上一行就是IAT写入的地方



  单步跟踪几分钟,就能找到写入IAT上面第9行,xor eax, 0x15151515 这一行就是加密IAT地址的地方。

  Ctrl+F2 重新调试,手动找到IAT加密后直接把加密的地方干掉,填充成IAT函数地址



  F9运行,运行到OEP后就可以看到内存窗口全是API的地址了,说明IAT加密就被干掉了。



  在OEP处dump内存,dump的时候取消重建导入表



  打开impREC(小黄鸭)选取加壳进程后,修改OEP为9486后,点击自动查找IAT。 只会Size 一栏的数值只有270,需要把这个值扩大一点,我就扩大为1000



  最后点击获取输入表,删除无效函数,然后转储到之前dump的文件。

大功告成!15PB pack 壳的链接

链接:https://pan.baidu.com/s/15-H5iZoshAohQ7-C-T6Y6Q
提取码:mgt6

脱壳2 (15PB pack)相关推荐

  1. 脱壳 !EP(EXE PACK)1.2

    0x1 查壳 将程序拖入!Exeinfo PE显示如下. 程序拖入OD 看到第一行有pushad指令,利用ESP定律,执行一步F8.ESP定律是典型的堆栈平衡,因为只要保存了所有寄存器的值都是要开始解 ...

  2. EXE Pack ——脱壳

    0x00 查看程序信息: 程序运行状态: 0X01调试器调试 一路F7,可以来到壳程序解密数据的代码,通过反汇编窗口可以实时的跟踪被修改的数据情况: 之后F7 进行单步调试,可以看到很多API函数的调 ...

  3. et199PHP,[原创]ET199带狗脱壳过程

    2015-7-6 11:34 molebox解包应该完整了,我根据其他能运行的程序解包的,可能还是在于脱壳过程,我q:1930988 错误日志中应该是访问系统dll Direct3D: Version ...

  4. 最新UPX3.91-支持win64/PE-加/脱壳

    前言 在CTF比赛中遇到加了UPX的x64程序,由于OD和IDA都不能动态调试,可以通过x64dbg进行手工脱壳,本文重点介绍UPX.通过http://upx.sourceforge.net/#dow ...

  5. 加脱壳、加解密、破解辅助及其源码

    PE辅助工具 程序名称 作者 说明 PETool v0.45 beta MackT PE文件信息查看编辑工具,VC源码. PE Labs 1.0 Latigo PE文件信息查看工具,Win32ASM源 ...

  6. 《加密与解密》ASProtect 2.1x SKE 脱壳过程中遇到的问题与解决方法及脱壳小结

    在学习<加密与解密>脱壳部分时,做了一次关于ASProtect的脱壳实验,但按照书上的步骤会报保护错误(Protect error).为了明白原因,我 继续往下深入.除了分析结果,以下还记 ...

  7. 手脱PE Pack v1.0

    1.PEID查壳 PE Pack v1.0 2.载入OD,一上来就这架势,先F8走着 00403235 > /74 00 je short Pepack_1.00403237 ; //入口点 0 ...

  8. 什么是壳 - 脱壳篇01

    什么是壳 - 脱壳篇01 让编程改变世界 Change the world by program 壳 在自然界中,植物用壳来保护种子,动物用壳来保护身体,我们人类没有壳,但我们有衣服,房子也起到了壳的 ...

  9. 风格化手绘纹理包 CGTrader – Stylized Mix Vol. 41 – Hand Painted Texture Pack

    风格化手绘纹理包 CGTrader – Stylized Mix Vol. 41 – Hand Painted Texture Pack CGTrader–风格化混合第41卷–手绘纹理包 大小解压后: ...

最新文章

  1. 11-flutter事件监听
  2. MySQL Concurrency Problems
  3. CSDN如何居中对齐
  4. 100个高低压配电知识!网络弱电必备知识~
  5. html剧场座位设计图,如何设计剧院座位,21个细部案例
  6. 一个服务器端和多个客户端消息互发_python:OSError: [WinError 10022] 提供了一个无效的参数...
  7. CYYMysql 源码解读 4
  8. AI 改写《权力的游戏》结局,和编剧比谁更烂?
  9. C语言删除字符数组中指定的字符(C笔记)
  10. 使用tcpdump抓Android网络包
  11. 2022年全国大学生电子设计竞赛—TI杯模拟电子系统设计专题邀请赛X题
  12. greenplum如何删除segment节点
  13. Markdown 中的flow语法 flowchart.js 的基础教程
  14. Pygame 简单打字游戏
  15. 一步一步构建手机WebApp开发——页面布局篇
  16. navicat怎么备份数据和同步两个数据库
  17. oppo怎么打开科学计算机,OPPOr11的计算器怎么打开
  18. 年度总结 | 积跬步以至千里,2023一起筑梦新征程
  19. 【LeetCode 5-中等】最长回文子串(高清截图)
  20. 阿里云服务器环境配置

热门文章

  1. 深入计算机组成原理(十五)浮点数和定点数(上):怎么用有限的bit标识尽可能多的信息?
  2. Python Pandas 做数据分析之玩转 Excel 报表分析
  3. html框架页面不允许滚动条,关于html:使用iframe时如何摆脱双滚动条?
  4. 计算机方面QQ群介绍
  5. 软件测试(开发)工程师的核心竞争力是什么?
  6. 什么是前端的核心竞争力
  7. 痴人、信徒、先驱:Hinton、LeCun、Bengio 口述神经网络简史
  8. 常见密码泄露场景,防止密码攻破方法及几种加密算法
  9. Https请求报错:unable to find valid certification path to requested target
  10. vue里input根据value改变背景色