[pwnable.xyz] strcat
Wargame/pwnable.xyz
Who needs a name extending service? That's probably vulnerable.AttachmentThe Bugmain()에서 format string bug가 연속으로 두 번 발생한다.Exploitmain()의 rsp에 rsp+0xf0의 값이 저장되어 있다. 첫 번째 FSB로 이 위치에 임의의 주소를 쓰고, 두 번째 FSB로 그 주소에 임의의 값을 쓸 수 있다.putchar()의 GOT를 win()의 주소로 덮어쓰면 플래그를 획득할 수 있다.desc의 중간에 null terminator가 삽입되지 않도록 name의 길이를 충분히 길게 설정해야 한다.from pwn import *r = remote("svc.pwnable.xyz", 30013)sla = r.sendline..