[pwnable.xyz] Game
Wargame/pwnable.xyz
Tired of math already? Try getting the highest score possible.AttachmentBug정답을 맞추지 못하면 cur->score가 1 감소한다.만약 cur->score가 0이었다면 메모리 상에서 0xffff가 된다.save_game()에서 score를 저장할 때 unsigned short인 cur->score를 8바이트로 캐스팅하는데,이때 signed extension이 진행되어,메모리 상에 0xffffffffffffffff로 저장된다.edit_name()에서 strlen(cur)만큼 read()로 입력을 받는데, score 필드에 null byte가 없기 때문에 play 함수 포인터를 임의의 3바이트 값으로 덮어쓸 수 있다.Exploitfrom pwn im..