Road1
pwn
什么是pwn?
黑客俗语:攻击成功,破解成功,致力于二进制漏洞利用与挖掘,也就是已经编译成机器码的二进制程序。
ELF 文件结构
elf文件,可以由以下部分组成:
- 头:elf文件头(必须在文件头部),程序头/段表
- 节:代码(可执行的机器码),数据(执行机器码可能使用到数据),其他节
- 头:节头表
ELF文件头表
记录ELF文件的组织结构
程序头表/段表
告诉系统如何创建进程,生成进程的可执行程序必须有这个结构,重定位文件不一定需要
节头表
记录elf文件的节区信息,用于链接的目标必须拥有此结构,其他类型文件不一定需要
磁盘中的ELF与内存中的ELF
当运行磁盘中的elf文件,将磁盘中的elf文件加载到内存映像中。在磁盘中都是节,只有被加载到内存中才自成段。
虚拟内存
- 用户空间:每个进程一份虚拟内存
- 内核空间:所有进程共享一份虚拟内存
- mmap段中的动态链接库仅在物理内存中装载一份
Windows编程中,给用户2g的内存空间。用户空间(用户所写的代码和数据,控制用户程序所执行的相关控制结构:eg:栈),2g的内核内存空间(内核操作系统代码,因为在保护模式下,操作系统要…)
从 Hello,world 到 Hello,Root — 这是我们的征途
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Acker!