今天並沒有刷題,看到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
查看:
windows下那個工具顯示的
長亭科技的pwn入門
數組常用
ebp也叫棧幀指針
ELF文件格式
堆溢出
明天調一下got,plt延遲綁定機制,學一下劫持got表