A小小鸟 发表于 2019-10-23 18:46:22

关于pe学习

听了小甲鱼的pe课程,我知道一些pe的基本构造,和基本概念了,但是如果要深入的学习pe,不知道如何学习了,网上有本经典的书籍《Windows pe权威指南》,但是没想到是win32汇编的代码,我想问求教一下哦
win32汇编,真的是必须要学习的吗?只有学习win32汇编,才能深入的研究pe吗??求指教哦

人造人 发表于 2019-10-23 18:46:23

A小小鸟 发表于 2019-10-24 11:02
哇,姐姐,你说要花费几十年的时间,有点吓着我了,我不知道pe学习居然要那么久啊,我其实想知道win32 ...

win32汇编语言只做了解就可以了
重要的不是win32汇编语言,重要的是32位汇编语言(只要你想往深了学,你迟早会遇到linux,在linux下就不叫win32汇编语言了吧,win指的是windows吧),32位汇编语言必不可少,只有一个C语言是不够的,你还需要汇编语言和C++

pe结构仅仅只是一个文件的存储格式
如果你只是想了解pe结构,那么是很快的,几天就够了,就那么几个字段,弄懂它们之间的关系,几天时间足够了
如果你想了解pe结构内部的每个细节,每个字段的用途以及如何使用,那么就需要几年到几十年的时间

具体要多久,取决于你想学多深
^_^

jackz007 发表于 2019-10-23 19:55:40

      理论上讲,一般情况下,凡是能用汇编语言描述的语句都可以直接转换成 C 语言的语句,所以,深入研究 PE,Win32 汇编语言应该不是必须要掌握的知识。

人造人 发表于 2019-10-23 22:18:27

win32汇编语言建议还是了解一下

pe结构我认为以任务驱动的方式学最好
例如,我给你一个任务,把exe文件中的代码段dump出来
下一个,在数据段添加一个数据,然后修改代码段来访问这个数据,添加什么样的数据以及如何访问由你决定,例如在数据段添加一个字符串,然后修改代码段用MessageBox显示这个字符串
下一个,有两个exe文件,要求把文件1的代码复制到文件2,并且从文件1的代码执行,执行完成后再跳回文件2的代码(对,有点像加壳)

像上面这样,以任务驱动的方式学习pe结构
如果你完成了上面这3个任务,那么我认为你对pe结构就很了解了
ps:上面那3个任务是根据你的问题提出来的,我没有完成过这3个任务
^_^

话已至此,如果你完成了上面的那3个任务,并且还愿意继续,那么请听题
现在有一个hello world的.obj文件,要求你写程序把这个.obj文件转换(链接)成exe文件并且这个exe文件可以正常运行

好了,不继续了(如果你想继续当然还有)
上面这3个任务(如果你认为是4个的话,那就是4个)估计得花费你几十年的时间
任务是一个比一个难,先从最简单的开始吧
^_^

人造人 发表于 2019-10-23 22:37:35

我大概估算了一下,前3个任务用不着几十年时间,如果加上第4个,那么几十年时间妥妥的(第4个需要学的东西太多)
前3个大概也就10年以下吧

A小小鸟 发表于 2019-10-24 11:02:31

本帖最后由 A小小鸟 于 2019-10-24 11:03 编辑

人造人 发表于 2019-10-23 22:18
win32汇编语言建议还是了解一下

pe结构我认为以任务驱动的方式学最好


哇,姐姐,你说要花费几十年的时间,有点吓着我了,我不知道pe学习居然要那么久啊,我其实想知道win32汇编对于pe学习是不是必须的,还是C语言可以代替{:10_266:}

人造人 发表于 2019-10-24 12:35:46

A小小鸟 发表于 2019-10-24 11:02
哇,姐姐,你说要花费几十年的时间,有点吓着我了,我不知道pe学习居然要那么久啊,我其实想知道win32 ...

win32汇编对于pe学习是不是必须的

这个问题取决于你想把pe学多深,简单了解是绝对不需要汇编语言的,如果往深了学那就一定需要

python万 发表于 2019-10-24 15:21:17

{:10_250:}

A小小鸟 发表于 2019-10-24 18:46:16

人造人 发表于 2019-10-24 12:35
这个问题取决于你想把pe学多深,简单了解是绝对不需要汇编语言的,如果往深了学那就一定需要

谢谢姐姐了{:10_281:}

人造人 发表于 2019-10-24 22:17:24

A小小鸟 发表于 2019-10-24 18:46
谢谢姐姐了

^_^
页: [1]
查看完整版本: 关于pe学习