[pwnable.xyz] xor
Wargame/pwnable.xyz
What can you access and what are you going to write?AttachmentBugv6에 음수가 들어갈 수 있어서 result보다 낮은 임의의 주소에 임의의 8바이트 값을 쓸 수 있다.Exploit메모리 맵을 보면 코드 영역에 w 권한이 있는 것을 확인할 수 있다. 즉, runtime에 임의의 코드를 수정할 수 있다. main()에서 exit()을 호출하는 부분의 코드를 수정해서 win()이 대신 호출되도록 하고, scanf()에 문자를 입력해서 반복문을 빠져나오면 플래그를 획득할 수 있다.main+148부터 5바이트가 exit()을 호출하는 코드에 해당한다.기계어로는 e8 63 fd ff ff이다. e8은 call에 해당하고, 뒤의 4바이트는 호출할 함수의 주소를 나타..