Import REConstructor可以从杂乱的IAT中重建一个新的Import表(例如加壳软件等),它可以重建Import表的描述符、IAT和所有的ASCII函数名。用它配合手动脱壳,可以脱UPX、CDilla1、PECompact、PKLite32、Shrinker、ASPack, ASProtect等壳。
在运行Import REConstructor之前,必须满足如下条件:

  1. 目标文件己完全被Dump到另一文件;
  2. 目标文件必须正在运行中;
  3. 事先要找到真正的入口点(OEP);
  4. 最好加载IceDump,这样建立的输入表较少存在跨平台的问题。

输入表重建步骤

  • 找被脱壳的入口点(OEP);
  • 完全Dump目标文件;
  • 运行Import REConstructor和需要脱壳的应用程序;
  • 在Import REConstructor下拉列表框中选择应用程序进程;
  • 在左下角填上应用程序的真正入口点偏移(OEP);
  • 按”IAT AutoSearch”按钮,让其自动检测IAT位置, 出现”Found address which may be in the Original IAT.Try ‘Get Import’”对话框,这表示输入的OEP发挥作用了。
  • 按”Get Import”按钮,让其分析IAT结构得到基本信息;
  • 如发现某个DLL显示”valid :NO” ,按”Show Invalids”按钮将分析所有的无效信息,在Imported Function Found栏中点击鼠标右键,选择”Trace Level1 (Disasm)”,再按”Show Invalids”按钮。如果成功,可以看到所有的DLL都为”valid:YES”字样;
  • 再次刷新”Show Invalids”按钮查看结果,如仍有无效的地址,继续手动用右键的Level 2或3修复;
  • 如还是出错,可以利用”Invalidate function(s)”、”Delete thunk(s)”、编辑Import表(双击函数)等功能手动修复。
  • 开始修复已脱壳的程序。选择Add new section (缺省是选上的) 来为Dump出来的文件加一个Section(虽然文件比较大,但避免了许多不必要的麻烦) 。
  • 按”Fix Dump”按钮,并选择刚在(2)步Dump出来的文件,在此不必要备份。如修复的文件名是”Dump.exe”,它将创建一个”Dump_.exe”,此外OEP也被修正。
  • 生成的文件可以跨平台运行。

Reference
1. 输入表重建工具ImportREC

ImportREC输入表重建工具相关推荐

  1. 写一个PE的壳_Part 2:ASLR+修复输入表(IAT)+重定位表支持(.reloc)

    系列汇总 写一个PE的壳_Part 1:加载PE文件到内存 写一个PE的壳_Part 2:ASLR+修复输入表(IAT)+重定位表支持(.reloc) 写一个PE的壳_Part 3:Section里实 ...

  2. 手动脱壳—dump与重建输入表(转)

    文章中用到的demo下载地址: http://download.csdn.net/detail/ccnyou/4540254 附件中包含demo以及文章word原稿 用到工具: Ollydbg Lor ...

  3. 重建输入表 - 脱壳篇04

    重建输入表 - 脱壳篇04 让编程改变世界 Change the world by program 重建输入表 [caption id="attachment_2648" alig ...

  4. 33. 脱壳篇-重建输入表

    OD自动分析MessageBox,call 004011EA,他是怎么分析知道函数MessageBox 打开PE头文件,INT 我们要重点关注的字段一个是ImageBase基址,一个是Import T ...

  5. 22. PE结构-PE详解之输入表(导入表)、屠龙刀W32Dasm(静态)、LordPE(动态)工具入门(查找dll、调用函数)

    我们知道PE 文件中的数据被载入内存后根据不同页面属性被划分成很多区块(节),并有区块表(节表)的数据来描述这些区块.这里我们需要注意的问题是:一个区块中的数据仅仅只是由于属性相同而放在一起,并不一定 ...

  6. 脱壳实践之手动构造输入表

    0x00 前言 对于脱壳后的程序往往不能直接运行,这是因为它们很多都没有重建输入表.当然用的od脱壳可能可以.重建输入表一般都是用专业软件比如ImportREC.但是对于逆向研究者来说会自己重讲输入表 ...

  7. 使用组策略禁用注册表编辑工具

    禁用注册表编辑工具 注册表中HKEY_CURRENT_USER包含当前登录用户的配置信息的根目录.用户文件夹.屏幕颜色和"控制面板"设置存储在此处.该信息被称为用户配置文件. 用户 ...

  8. ABAP--如何建立通过sap表维护工具来维护自定义表TCODE

    在sap开发的过程中,经常需要自定义数据表,对于简单的数据表,我们可以通过sap的表维护工具生成维护代码,并建立自定义的TCODE来维护其数据.具体步骤如下: 一.建立自定义表(TCODE :SE11 ...

  9. java 多表格处理工具,表单工具十一大标准

    现在市场上的表单工具百家争鸣,鱼目混杂.到底什么时候能解决客户问题表单,今天我们主要从客户角度来真正表单工具的十大标准: 1) 零编码制作表单 业务人员通过高效灵活的设计器,可以自由定制符合自己业务逻 ...

  10. hive血缘关系之输入表与目标表的解析

    接了一个新需求:需要做数据仓库的血缘关系.正所谓兵来将挡水来土掩,那咱就动手吧. 血缘关系是数据治理的一块,其实有专门的第三方数据治理框架,但考虑到目前的线上环境已经趋于稳定,引入新的框架无疑是劳民伤 ...

最新文章

  1. 聊聊flink JobManager的heap大小设置
  2. Springboot 解决跨域的四种姿势
  3. ftp服务器 无线路由器,用无线路由器构建FTP服务器 快乐大家分享
  4. matlab和python中的svd分解的区别
  5. 在Linux中制作实用程序(MakeFile)
  6. sklearn随机森林展示各个特征权重
  7. Java秒杀系统实战系列~分布式唯一ID生成订单编号
  8. iOS UITextField设置起始字符开始位置
  9. 19道小米网络运维工程师笔试真题,你能通关吗?
  10. 回文数 LeetCode
  11. mysql8.0默认端口_mysql 8.0.19 安装 及 端口修改
  12. 【男人必看十大经典】[经典合集][DVD-Rmvb/7.70GB] 【原音中文字幕】已测
  13. MacOS删除开机启动项
  14. 数据库 insert 数据的几种方式
  15. 远程办公和分布式协作
  16. python代码 练习3:空气质量查询工具
  17. h5 数字变化_那些H5用到的技术(6)——数字滚动特效
  18. MySQL 8.0.16 告别mysql_upgrade升级方式
  19. 英语语言学u c,英语语言学资料(一)
  20. Sophos XG Firewall:如何使用Windows Server 2012为企业无线身份验证配置RADIUS

热门文章

  1. 程序员的自我修养之数学基础10:超定方程的求解
  2. 提高效率的十款Blender快捷键,更多快捷键等着你去探索
  3. 红外光电开关的原理与实验
  4. 计算机无法启动无法修复工具栏,excel打不开怎么办?使用excel修复工具教程
  5. 高一计算机算法教案,高中信息技术 算法及其实现 教案
  6. 企业入职测试题目及答案_[企业入职性格测试题以与答案信息]新员工入职性格测试题...
  7. 单片机c语言实验报告心得,关于单片机实训心得体会
  8. 【STM32F429】第5章 RTX5操作系统移植(MDK AC6)
  9. 【网络协议】IPV4协议介绍
  10. 九种流行木马的发现和清除