Search
Kernel Exploit用テンプレート
Last updated
Nov 18, 2022
Edit Source
# 説明
pwnのKernel Exploit時に使うテンプレート
# 実装
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
| from ptrlib import *
import time
import base64
import os
def run(cmd):
sock.sendlineafter("$ ", cmd)
sock.recvline()
with open("./root/exploit", "rb") as f:
payload = bytes2str(base64.b64encode(f.read()))
#sock = Socket("HOST", PORT) # remote
sock = Process("./run.sh")
run('cd /tmp')
logger.info("Uploading...")
for i in range(0, len(payload), 512):
print(f"Uploading... {i:x} / {len(payload):x}")
run('echo "{}" >> b64exp'.format(payload[i:i+512]))
run('base64 -d b64exp > exploit')
run('rm b64exp')
run('chmod +x exploit')
sock.interactive()
|