| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2885 人关注过本帖
标题:PE解析之一、判断一个文件是否为PE文件(已经更新到PE解析之二)
只看楼主 加入收藏
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
以下是引用zhu224039在2012-11-29 14:01:14的发言:

搬砖,不是好习惯。读文件就好了       起先开始两个字节不是 mz 就一定不是pe 文件   将文件指针往后挪动多少个字节忘掉   dos头尾巴最后4个字节 放的偏移   用这个地址去找pe头的地址判断  是否为pe
讲述完毕   编程照着上面的一翻译就完了,不费多大的事

有些人会把mz去掉,然后用某种方式补上去启动它,你说的那种方法是不可靠的。

授人以渔,不授人以鱼。
2012-11-29 14:04
zhu224039
Rank: 8Rank: 8
等 级:贵宾
威 望:17
帖 子:862
专家分:792
注 册:2012-7-29
收藏
得分:0 
我现在迷茫在对齐的问题上了,原先我还以为文件偏移就等于内存偏移呢,这个dos下管用。

迷糊的一踏糊涂。这个映射关系还真的很复杂呢,我是看会保护模式瞄下PE头疼的很,今天实在是受不了了编了个程序把二进制文件,用16进制打印出来,一看一个程序占的扇区数还真不少。填充的0也不少

我要成为嘿嘿的黑客,替天行道
2012-11-29 14:09
bccnyouke
Rank: 2
等 级:论坛游民
帖 子:26
专家分:49
注 册:2012-11-23
收藏
得分:0 
以下是引用TonyDeng在2012-11-29 14:04:14的发言:


有些人会把mz去掉,然后用某种方式补上去启动它,你说的那种方法是不可靠的。
又不是写病毒,去改他干吗?
2012-11-29 14:10
zhu224039
Rank: 8Rank: 8
等 级:贵宾
威 望:17
帖 子:862
专家分:792
注 册:2012-7-29
收藏
得分:0 
理解了,老大

我要成为嘿嘿的黑客,替天行道
2012-11-29 14:10
zhu224039
Rank: 8Rank: 8
等 级:贵宾
威 望:17
帖 子:862
专家分:792
注 册:2012-7-29
收藏
得分:0 
不写病毒关心它做什么

我要成为嘿嘿的黑客,替天行道
2012-11-29 14:11
bccnyouke
Rank: 2
等 级:论坛游民
帖 子:26
专家分:49
注 册:2012-11-23
收藏
得分:0 
回复 15楼 zhu224039
希望你能成功,呵呵
2012-11-29 14:14
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
Windows下的PE是按照虚拟内存定位的,可执行代码在进程被系统装入的内存开始偏移固定的字节(这个偏移量一般是固定的,但实际上可以被编译参数修改,多数人不改而已,不过也不能排除有人会刻意改动),这样,在PE静态文件中它是从零开始的固定位置,装到内存中是相对与进程起始点的偏移位置,物理内存地址是会被操作系统随时调整的。其实,这部分内容在《Windows核心编程》中就有讲,你该看那本书,不过,如果你面向的并非仅仅是Windows,那么就要对各种实际的操作系统都要熟悉了,别的不知道。

授人以渔,不授人以鱼。
2012-11-29 14:15
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
以下是引用bccnyouke在2012-11-29 14:10:28的发言:

又不是写病毒,去改他干吗?

楼主的目标就是写病毒、木马那样的东西呀,他的发展路向是黑客。有人改掉mz的原因,是因为保密,不让用户知道哪些文件其实是可执行的,这跟把数据库的结构改掉保密是一样的道理。

[ 本帖最后由 TonyDeng 于 2012-11-29 14:17 编辑 ]

授人以渔,不授人以鱼。
2012-11-29 14:16
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
你们弄错了  我才是楼主
我的目标就是解析pe 而不是写病毒 木马 更不去做黑客

DO IT YOURSELF !
2012-11-29 14:24
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
还有些人把整个头都砍掉,放到别的文件中,临时再拼凑恢复运行。至于像.NET那样的,现在可以程序中临时生成PE文件直接运行,都不用放在磁盘文件上。

授人以渔,不授人以鱼。
2012-11-29 14:24
快速回复:PE解析之一、判断一个文件是否为PE文件(已经更新到PE解析之二)
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.036479 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved