This commit is contained in:
2025-03-16 05:52:09 +08:00
parent 41d4a30610
commit be5045fde1
28 changed files with 738 additions and 76 deletions

30
upload.py Executable file
View File

@@ -0,0 +1,30 @@
#!/usr/bin/env -S python3
from pwn import *
from struct import pack
from tqdm import tqdm
if len(sys.argv) < 2:
print("no args for serial device")
exit()
while True:
kernel = open("kernel8.img", "rb").read()
r = serialtube(sys.argv[1], convert_newlines=False)
# send size
sz = len(kernel)
print("size:", sz)
r.send(pack("<I", sz))
print(r.recvuntil(b"$").decode())
# send kernel
splitsize = 1000
for i in tqdm(range(len(kernel) // splitsize), unit="KB"):
r.send(kernel[i * splitsize : (i + 1) * splitsize])
r.send(kernel[len(kernel) // splitsize * splitsize:])
r.interactive()
r.send(b"reboot\n")
sleep(1)