第一个程序

OEP为46B6F9

PE头位置为46B000到46D000区间,have a nice day! 就是壳

一定要点上箭头指向处,dump改名

清除区段 ,删除壳,保存

第二个程序(市面上60%-80%)根据堆栈平衡原理寻找OEP

F8后到下图位置,但并不是OEP

因为地址与PE差别大,壳伪造了我们的text,rdata,data

开始寻找OEP

观察ESP值是否变化,如果发现变化我们就开始行动

第一次变化

右键

F9,停靠在硬件断点处,大部分jmp eax就是OEP,但是强壳不是

回到了程序的代码段

F8进入OEP

右键

删除壳

LordPE编辑,修改代码基址,数据基址保存

RebuildPE

第三个程序

应用堆栈平衡法找到OEP,这里的代码段、数据段、输入表和壳在同一个区间

所以必须要重建输入表

因为重建了输入表,所以Sections会多一行,就是重建输入表

删除ex_cod,这里的代码段、数据段、输入表和壳在同一个区间,在保存前最好有一个备份,删错了可以重新来过

RebuildPE,OK

第四个程序

MEW,免费的壳,压缩壳

一步到位

F8

第五个程序(代码段上断点法)

NoNamePacker壳

F9运行,此程序带有反调试系统

F8单步运行

或者查找IsDebuggerPresent,Alt+F9

je -> jmp

代码段设置断点

断点停下来了,注释也看到了401000的地址

但是这不是我们要的位置,所以我们返回M界面,继续代码段下断点F2,跳转后还不是就再继续下断点等待循环匹配成功

也可以选择”设置内存访问断点“,这样可以按F9循环,不用再打断点

ctrl+F8快速自动循环,查看循环再搞什么,F12暂停

循环后下断点,F9跳出循环,再在代码段下断点,F9,大量经验告诉我就样是最快的方法

Prt可以删除,注意要保留备份,要不然失败会很麻烦

32. 脱壳篇-简单带壳的程序、反调试带壳的程序(堆栈平衡原理找OEP、代码段设置断点)相关推荐

  1. php反调试,简单对抗某个驱动的反调试

    标 题: [原创]简单对抗某个驱动的反调试 作 者: ReturnsMe 时 间: 2010-04-18,20:02:11 链 接: http://bbs.pediy.com/showthread.p ...

  2. 使用GDB调试产生多进程的程序

    如果一个进程fork了多个进程,这时使用GBD工具对程序进行调试会如何呢? 实际上,GDB 没有对多进程程序调试提供直接支持.例如,使用GDB调试某个进程,如果该进程fork了子进程,GDB会继续调试 ...

  3. 史上最全最完整,最详细,软件保护技术-程序脱壳篇-逆向工程学习记录

    title: 程序脱壳篇 date: {{ date }} tags: ['程序壳','程序脱壳篇'] categories: ['程序壳','程序脱壳篇'] excerpt: 壳是最早出现的专用加密 ...

  4. 程序员修炼之路(十)程序员必读经典书籍和成长路线

    本篇文章是程序员修炼之路的第十篇. 原文地址:http://book.douban.com/doulist/1259081/?start=25&filter= 这篇文章主要是关于程序员学习路线 ...

  5. 某地理位置模拟APP从壳流程分析到破解(劫持so过反调试)

    转自:http://bbs.pediy.com/thread-217059.htm 工具与环境 Xposed IDA 6.8 JEB 2.2.5 Fiddler2 010Editor NEXUS 5 ...

  6. vs2015 linux jni,使用Visual C++ 跨平台移动技术调试JNI Android 应用程序

    使用Visual C++ 跨平台移动技术调试JNI Android 应用程序 02/05/2015 6 分钟可看完 本文内容 [原文发表时间] 2014/12/12  4:22PM 之前我们已经介绍了 ...

  7. Delphi应用程序的调试(二)使用断点

    Delphi应用程序的调试(二)使用断点 使用断点(Using Breakpoints) 当用户从Delphi IDE 运行程序时,程序全速运行,只会在设置了断点的地方停住. New Term 断点( ...

  8. 无源码情况下动态调试混淆的java程序

    逆向工程JAVA通常是非常简单的,因为优秀的JAVA二进制反编译器已经存在多年.类似于jd-gui工具和恢复java二进制文件源代码功能也做的非常出色的.在这种情况下我们需要动态调试java反编译ja ...

  9. vue.js反编译_基于electron-vue开发的微信小程序反编译客户端

    开源一个小程序反编译客户端 咨询小程序反编译的同学比较多,虽然有开源库但是还是有同学不清楚如何去操作,所以索性做了一个客户端方便进行小程序的反编译 # 技术选型 网上已经有大佬实现了C#版的反编译工具 ...

最新文章

  1. PyTorch | (1)初识PyTorch
  2. python 类-Python 类class定义 方法与属性教程
  3. python生成多级文件夹_Python zipfile压缩文件和文件夹(支持多级目录)
  4. UESTC 趣味赛命题报告E
  5. 清华大学《操作系统》(十二):临界区与锁
  6. 3-2:常见任务和主要工具之存储介质
  7. 后台启动_Linux系统后台运行应用三板斧
  8. 散户“大溃败”?GME连续5日暴跌80% 白银价格急转直下
  9. java面试 上传文件_字节跳动面试官,我也实现了大文件上传和断点续传
  10. android Tabhost 组件
  11. 【Java从0到架构师】SpringMVC - RESTful
  12. C++ 对象创建方式
  13. GIS开发实习地图符号图式制作
  14. 91卫图助手免费获取高清影像
  15. 基于JavaScript+css写一个简单的h5动态下雨效果
  16. ISO14443 Type A类型卡的防碰撞过程以及命令解析
  17. Nature综述:大脑中的音乐
  18. [C语言]printf函数和scanf函数的返回值
  19. PG数据库源码-SysCache部分匹配机制
  20. 2019ICPC南昌网络赛总结

热门文章

  1. 达摩院python教程视频_Python400集大型视频,无偿分享,从正确方向学习python,全套python入门完整视频...
  2. NOI数学之提高级:欧拉定理和欧拉函数
  3. 锦标赛排序、洪水填充算法、平衡规划
  4. 【chorme插件开发】第一节:chrome内核浏览器插件开发的说明
  5. BootStrap笔记-badge的使用
  6. Maven工作笔记-jar包打入本地仓库并打包
  7. Java笔记-重写JsonSerializer中serialize方法使Json中时间戳/1000
  8. Qt文档阅读笔记-QGraphicsEffect::draw(QPainter *painter)官方解析与实例
  9. hbase linux 命令,在linux下操作hbase
  10. linux打开文件int open,Linux下C语言open函数打开或创建文件与read,write函数详细讲解...