HackTheBox-Challenges Space pirate: Retribution Writeup
Exploitation
直接來看這題的主邏輯和保護機制:
PIE 有開,有 canary,所以要 leak stack variable 然後 ret2libc
1 | └─$ checksec ./sp_retribution |
1 | int missile_launcher() |
可以看到有兩個明顯的漏洞。
首先是 buf 沒有被初始化,然後又被印出來,所以我們可以嘗試透過覆蓋不同長度的 offset 來找到可以用的 stack address 甚至是 libc address,這部分很多網路上的 writeup 都講錯,漏洞主因是沒有初始化才對。
然後第二個 read 是 bof 應該沒什麼問題,所以我們的目標就是 leak stack address,然後算出 pie base,接著利用 pie base call puts leak got 找 libc base,最後 bof system(‘/bin/sh’)。
Exploit
1 | import warnings |
執行結果:
1 | └─$ python exploit.py |
Pwned
- Title: HackTheBox-Challenges Space pirate: Retribution Writeup
- Author: kazma
- Created at : 2024-11-06 14:04:48
- Updated at : 2024-11-06 15:11:15
- Link: https://kazma.tw/2024/11/06/HackTheBox-Challenges-Space-pirate-Retribution-Writeup/
- License: This work is licensed under CC BY-NC-SA 4.0.
Comments