Fork me on GitHub

二进制安全的一些基础知识

今天并没有刷题,看到ctf-wiki高级ROP,发现ret2_dl_runtime_resolve,涉及到PLT&GOT 表以及延迟绑定机制,还是把基础打好。
今天笔记不多,主要是理解。推荐一下看的资料
PLT&GOT 表以及延迟绑定机制
ELF 文件结构解析
ELF文件结构解析的工具
我感觉栈溢出,还是手画堆栈图理解漏洞最深刻,以后调试的时候还是尽量把堆栈图先画出来,在debug。
栈迁移原理
刷这老哥写的文章
pwn学习资料汇总
总结一下ELF要记的,其他ELF用到在去查ELF 文件结构解析这篇文章:

.text 该节保存了程序代码
.bss 该节主要保存未初始化的全局变量和局部静态变量 //栈溢出往往覆盖这里
.data 保存了初始化的全局变量
.rodata 段存放的是只读数据,一般是程序里的只读变量(如const修饰的变量)和字符串常量
.plt 包含了动态链接器调用从共享库导入的函数必需的相关的代码
.got.plt 保存了全局的偏移表等表,got表位于该节

linux下readelf -S test查看:
Alt text
windows下那个工具显示的
Alt text

长亭科技的pwn入门
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text
数组常用
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text
ebp也叫栈帧指针
Alt text
Alt text
Alt text
Alt text
ELF文件格式
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text
堆溢出
Alt text
Alt text
Alt text
Alt text
Alt text
Alt text


明天调一下got,plt延迟绑定机制,学一下劫持got表

posted @ 2020-04-13 17:36  Afant1  阅读(1018)  评论(0编辑  收藏  举报