VMProtect修复导入表的插件
壳版本:VMProtect.Ultimate.2.12.3
样本:TKLobby.exe
目的:IAT修复
作者:MrWrong
标题:VMProtect修复导入表的插件
只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!
严谨地说,本文所作的工作仅仅是在跑到VMP所保护的exe的OEP后,修复系统中LONG CALL 和 LONG JMP,还有一些MOV reg, [iat_addr]。插件实现根据原来发的一篇帖子:《探讨VMP 2.12.3 导入表修复》
链接:http://www.cnblogs.com/MrWrong/p/3640369.html
原来的帖子上在修复的细节上还有一点错误。
插件不太好用,所以搞了个exe程序作为例子,截几个关键的图。
用的exe是JJ比赛大厅:http://www.jj.cn
下了一个当前最新的版本JJmatch-ID4501562-ChildID-.exe
大厅程序名TKLobby.exe
先跑OEP。OEP为0043F3AA。
然后在代码窗口 右键->VMPIatRepair->修复IAT
点击后弹出一个叫作Dialog的窗口。对,窗口名居然就叫Dialog,还是个模态对话框。(太懒了,难搞)
在窗口里把数据填好。注意,是16进制的RVA,看图。

然后点确定,就完成了修复。
修复完,打开LOG窗口,发现里面有每个修复的call和jmp的地址信息(将原来的LONG JMP和LONG CALL 修复成了SHORT JMP和SHORT CALL)。
如图

接下来怎么办?看我的《探讨VMP 2.12.3 导入表修复》里说的来搞,不重复讲了。
其他版本的VMP你也可以试着用插件搞一下,搞不搞得定就全看你的脸了(其实我也不知道这个样本是哪个版本的VMP,全是因为脸好)。还有,目前不支持DLL的修复。
文件下载地址 http://files.cnblogs.com/files/MrWrong/VMProtect%E4%BF%AE%E5%A4%8D%E5%AF%BC%E5%85%A5%E8%A1%A8%E7%9A%84%E6%8F%92%E4%BB%B6.zip
百度云下载地址:链接:http://pan.baidu.com/s/1qWkNTt6 密码:iwk6 (百度云下载地址内有JJ比赛的安装程序)
最后特别感谢好友KeyKernel的帮助。独学而无友,则孤陋而寡闻。
VMProtect修复导入表的插件的更多相关文章
- 探讨VMP 2.12.3 导入表修复
壳版本:VMProtect.Ultimate.2.12.3 样本:notepad.exe 目的:IAT修复 作者:MrWrong 标题:探讨VMP 2.12.3 导入表修复 只是感兴趣,没有其他目的. ...
- IDA分析脱壳后丢失导入表的PE
1. 问题 一些程序经过脱壳后(如用OD的dump插件),一些导入表信息丢失了,导致拖入IDA后看不到API的信息(如右图所示,第一个红圈处实际是GetCurrentProcessId),给分析造成极 ...
- C/C++ 手工实现IAT导入表注入劫持
DLL注入有多种方式,今天介绍的这一种注入方式是通过修改导入表,增加一项导入DLL以及导入函数,我们知道当程序在被运行起来之前,其导入表中的导入DLL与导入函数会被递归读取加载到目标空间中,我们向导入 ...
- C/C++ 导入表与IAT内存修正
本章教程中,使用的工具是上次制作的PE结构解析器,如果还不会使用请先看前一篇文章中对该工具的介绍,本章节内容主要复习导入表结构的基础知识点,并通过前面编写的一些小案例,实现对内存的转储与导入表的脱壳修 ...
- EXP/IMP迁移案例,IMP遭遇导入表的表空间归属问题
生产环境: 源数据库:Windows Server + Oracle 11.2.0.1 目标数据库:SunOS + Oracle 11.2.0.3 1.确认迁移需求:源数据库cssf 用户所有表和数据 ...
- (转)jQuery插件 -- Form表单插件jquery.form.js
beforeSubmit: validate function validate(formData, jqForm, options) { //在这里对表单进行验证,如果不符合规则,将返回false来 ...
- oracle exp imp 导入 正在跳过表 plsql 导入表 成功终止 数据 被导入
http://blog.csdn.net/agileclipse/article/details/12968011 .导入过程中,所有表导入都出现提示, 正在跳过表...某某表名 最后提示成功终止导入 ...
- jquery.form.js表单插件的使用
jquery.form.js官网:http://malsup.com/jquery/form API文档:http://malsup.com/jquery/form/#api 下载地址:http:// ...
- 小甲鱼PE详解之输入表(导入表)详解(PE详解07)
捷径并不是把弯路改直了,而是帮你把岔道堵上! 走得弯路跟成长的速度是成正比的!不要害怕走上弯路,弯路会让你懂得更多,最终还是会在终点交汇! 岔路会将你引入万劫不复的深渊,并越走越深…… 在开始讲解输入 ...
随机推荐
- bzoj3890 [Usaco2015 Jan]Meeting Time
Description Bessie and her sister Elsie want to travel from the barn to their favorite field, such t ...
- 「Githug」Git 游戏通关流程
Githug 他喵的这是个啥!?难道不是 GitHub 拼错了么,和 Git 什么关系? 和游戏又有什么关系? 其实,他的元身在这里:https://github.com/Gazler/githug ...
- js跨域问题新方案
只要创建一个空图片. js代码: var data = "http://localhost:8080/test?id="+id+"&content="+ ...
- android Bluetooth(官方翻译)
Bluetooth Using the Bluetooth APIs, an Android application can perform the following: 使用蓝牙APIs,一个And ...
- [转] 在 Linux 中怎样使用cp命令合并目录树
PS:通过cp -r --link a/* b/* merged 硬链接不需要复制 怎样将两个布局相似的目录树合并成一个新的目录树?为理解该问题让我们思考下面的例子. 假设 dir1 和 dir2 目 ...
- Unix系统解压tar包时出现@LongLink错误
Unix系统上使用tar命令解压tar包后,多了一个@LongLink的文件,并且原来的tar包解压后不完整.网上查了下,原因是AIX系统上tar命令自身的一个缺陷.解决办法:把该tar包上传到lin ...
- C:应用于字符串处理函数
出于对C的不够熟悉,在读代码的过程中,平凡出现的字符串处理函数,成为了一个理解代码的大问题. 为了更方便的读取和理解代码,特意将接触到的字符串处理函数列出,方便查询: 1.strstr(str1,st ...
- 2015 UESTC Winter Training #4【Regionals 2008 :: Asia - Tehran】
2015 UESTC Winter Training #4 Regionals 2008 :: Asia - Tehran 比赛开始时电脑死活也连不上WIFI,导致花了近1个小时才解决_(:зゝ∠)_ ...
- printf用法之打印2进制,八进制,十进制,十六进制
printf是格式化输出函数,它可以直接打印十进制,八进制,十六进制,输出控制符分别为%d, %o, %x, 但是它不存在二进制,如果输出二进制,可以手写,但是也可以调用stdlib.h里面的itoa ...
- Java多线程——ThreadLocal类
一.概述 ThreadLocal是什么呢?其实ThreadLocal并非是一个线程的本地实现版本,它并不是一个Thread,而是threadlocalvariable(线程局部变量).也许把它命名 ...