设为首页
加入收藏
联系我们
电脑入门 | 操作系统 | 工具软件 | 病毒安全 | 平面设计 | 媒体动画 | 网页制作 | 网络编程 | 数 据 库 | 服 务 器 | 程序设计 
认证考试 | 网管大全 | 站长CLUB | 游戏娱乐 | 机械电子 | 学院热门 | 热门源码 | 软件新闻 | 驱动下载 
您当前的位置:藏经阁资源站 -> 病毒安全 -> 软件破解 -> 脱壳技术 -> 教程内容 退出登录 用户管理
栏目导航
热门教程
· 劲舞团8K舞步 1.7最新舞步 魔神舞步
· [组图] 上网助手反间谍专家火热试用
· [组图] Win2000/XP/2003:系统万能Ghost全攻略
· [组图] Photoshop超酷海报效果
· [图文] 一分钟攻破ADSL 盗遍宽带密码1
· [组图] MATLAB 概 论
· AutoCAD二次开发语言及工具介绍
· [组图] Photoshop合成图:蛋壳-女孩
· [图文] 《仙剑奇侠传4》绝密情报 首度曝光
· [组图] 初学java常用开发工具介绍
· [图文] 将数码照片做成自动放映的Flash
· [图文] [常用]免费短信收发工具串串烧
· [图文] 《上古卷轴4》杂志扫描图抢先看
· 超全!Windows快捷键大全
· Pro/E 功能
· [组图] 用Pro/E画减速机渐开线斜齿圆柱齿轮的一般方法
· [组图] FLASH:《大话李白》创作全过程
· [组图] 使用Visual LISP创建简单的LISP应用程序
· 2004年计算机等级考试二级C语言试题及答案
· [图文] 信不信由你 KMPlayer隐藏着“雷电”
相关教程
被加壳vb5/6程序的OEP定位经验
作者:佚名  来源:不详  发布时间:2005-5-31 14:36:29  发布人:admin

减小字体 增大字体

结合我了解的vb5/6可执行文件的结构,说说如何定位其OEP。

任何反编译过vb程序的人,总会见到其OEP是如下结构:
//******************** Program Entry Point ********
:00401060 68B4114000 push 004011B4
:00401065 E8F0FFFFFF Call

对于以地址004011B4开始的一段代码,在vb程序结构中将之称为ExeInitStructure,保存着程序运行初始化所必须的资料;而其也必定是以特征字符“VB5!”开始。所以对于被加壳的vb5/6程序,可以运行后用winhex搜索内存,查到“VB5!”地址,在此为004011B4,再搜索hex值“B4114000”,即搜索到地址00401061,将此地址-1就是OEP:00401060


此外,利用vb函数addressof我们可以作一些研究工作。
建立一个vb标准exe工程,去除form,加入一个.bas文件,于中写入
Attribute VB_Name = "Module1"
Private Sub Main()
Dim a As Long, c As Long
c = getaddress(a, AddressOf Main)
MsgBox ("Start address of Main() is " + Hex(a - 16))
End Sub

Public Function getaddress(a As Long, X As Long)
a = X + 16
End Function

编译后运行,可以显示sub Main()代码的起始地址。有兴趣的不妨研究研究,看看如何突破addressof的局限,或找到替代函数
[] [返回上一页] [打 印] [收 藏]
∷相关教程评论∷    (评论内容只代表网友观点,与本站立场无关!) [更多评论...]
 
Copyright © 2000-2006 18839.Com. All Rights Reserved .
EMAIL:webmaster@18839.com 联系QQ:63191918 苏ICP备05065193号 带宽支持:三九互联