社区
汇编语言
帖子详情
请教pe文件的问题
wwwxxb40000
2009-02-12 01:47:34
1 做PE装载器的时候,要实现重定位,请教一下,重定位是不是修改PE内函数的地址呀?修改的是RVR吗?
2 PE文件里,输入表是干什么用的?里面存储了哪些数据呀?
...全文
245
6
打赏
收藏
请教pe文件的问题
1 做PE装载器的时候,要实现重定位,请教一下,重定位是不是修改PE内函数的地址呀?修改的是RVR吗? 2 PE文件里,输入表是干什么用的?里面存储了哪些数据呀?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
shineboy1034
2009-02-13
打赏
举报
回复
学习
xiaopoy
2009-02-13
打赏
举报
回复
推荐matt专栏的文章。
chimney88
2009-02-12
打赏
举报
回复
去看雪论坛转转,你会学到不少的!bbs.pediy.com
killbug2004
2009-02-12
打赏
举报
回复
不小心回车了。。。。。。
1 做PE装载器的时候,要实现重定位,请教一下,重定位是不是修改PE内函数的地址呀?修改的是RVR吗?
重定位表对dll很重要,因为dll装载到内存中不能保证装载默认的基址,可能别的模块已占用,而程序中的数据等的引用是使用
[默认基址+RVA]的方法,实际装载基址和默认基址不同时,就要修正这个访问地址[默认基址+RVA+(实际基址-默认基址)],重
定位表就记录哪些地方需要修正,装载器来作这个事情,而exe一般都可以装载到默认的基址,很多优化工具将exe的重定位表擦
除掉
2 PE文件里,输入表是干什么用的?里面存储了哪些数据呀?
比如你调用MessageBox这个函数,它在user32.dll中,那么输入表就记录动态链接库的名字user32.dll函数MessageBoxA
(ASICC版的)还有其他信息,方便装载器找到dll获取导入函数的地址,这样程序才能调用
具体各个表的结构要了解PE文件的信息,给个链接吧
PE结构图
http://www.pediy.com/document/PE.rar
输入表
http://www.win32asm.com.cn/view.asp?file=117
网上有很多,自己google下
killbug2004
2009-02-12
打赏
举报
回复
1 做PE装载器的时候,要实现重定位,请教一下,重定位是不是修改PE内函数的地址呀?修改的是RVR吗?
2 PE文件里,输入表是干什么用的?里面存储了哪些数据呀?
cnzdgs
2009-02-12
打赏
举报
回复
重定位是修改程序中所使用的地址。
输入表储存的是程序导入外部库的信息(例如DLL的导出函数)。
PE
文件
结构详解以及内存粒度对齐
问题
PE
文件
结构详解
解密
PE
文件
中的Unicode编码
问题
摘要:本文探讨了解析
PE
文件
时遇到的Unicode编码
问题
及其解决方案。当使用Python的
pe
file库读取
PE
文件
节名称时,可能会因Unicode解码错误导致程序中断。文章通过引入嵌套的try-except块,提供了两种错误处理方式:对解码失败的节名赋予默认值"Undecodable",以及对无效
PE
文件
输出错误提示而不中断程序。这种方法增强了代码的健壮性,确保在遇到编码或格式错误时仍能继续执行。实例代码展示了如何安全地获取
PE
文件
各节的名称和虚拟地址,为处理类似二进制
文件
解析
问题
提
使用
PE
信息查看工具和Beyond Compare
文件
比较工具排查dll
文件
版本不对的
问题
详细讲述如何使用
PE
信息查看工具和Beyond Compare
文件
比较工具排查dll
文件
版本不对的
问题
。
使用
PE
信息查看工具和Beyond Compare
文件
比较工具排查dll库
文件
版本不对的
问题
本文详细讲述如何使用
PE
信息查看工具和Beyond Compare
文件
比较工具排查dll库
文件
版本不对的
问题
。
汇编语言
21,500
社区成员
41,617
社区内容
发帖
与我相关
我的任务
汇编语言
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
复制链接
扫一扫
分享
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章