幾個防護機制 stack canary 在stack frame生成時多儲存一個value並push到stack上,這邊叫它canary。在ret前取出canary,比較call function前後的canary有沒有一樣。 一樣 -> 正常執行 不一樣 -> 呼叫 _stack_check_fail(),程式會直接結束 bypass : 想辦法leak出canary的值 在塞東西的時候填好canary的值 NX 可寫的地方不可執行,可執行的地方不可寫 這會讓stack不可執行,所以在stack寫shell code並跳過去執行在NX的保護下是行不通的
1/15/2023前言 這篇筆記主要是記錄一些Linux Commend,防止自己忘記,如果內容有誤還請聯絡我(dc:Terry1234#5457),會再修正。由於大部分Linux指令跟macOS指令用法差不多,所以macOS的用戶應該能參考大部分的內容 更新日誌 2020/8/20 完成初版 2020/10/5 由於想把這篇筆記變成伺服器網管社課的教材,新增了連線相關的指令 2022/9/30 terminal用了一段時間了,新增了一些在這段時間內常用到的指令
11/24/2022利用__libc_csu_init把暫存器的值填好,由於__libc_csu_init是對libc函數進行初始化操作的,而大部分的程式都會用到libc,所以這個函數基本上都會存在 原理 從<+90>到結尾,我們可以利用stack buffer overflow控制rbx,rbp,r12,r13,r14,r15的值 從<+64>到<+70>,可以控制rdx,rsi,edi的值。此外,如果能合理控制r15和rbx,就可以呼叫我們想要呼叫的函數
9/8/2022在SITCON 2021聽到了這個議程 https://hackmd.io/@SITCON/rJ7PzsC-K/edit 但前半部分還在聽別的議程所以沒聽到,覺得這部分很有趣,所以去讀了一些文章,讀完後做個整理。 Reference https://www.fuzzysecurity.com/tutorials/rfid/4.html 內容 悠遊卡把大量的資訊(UID、餘額等)直接存在卡內 悠遊卡是Mifare1 Card
8/24/2022or
By clicking below, you agree to our terms of service.
New to HackMD? Sign up