[pwnable.xyz] UAF
Wargame/pwnable.xyz
Is it time for a UAF challenge yet?AttachmentBugstrchrnul()은 문자열에 찾으려는 문자가 없으면 문자열의 끝 주소를 반환한다. 따라서 cur->name에 old_char가 포함되어 있지 않으면 cur->name의 끝에 new_char를 이어붙일 수 있다.ExploitationOff-by-one을 이용하여 name을 play_game 포인터까지 연장할 수 있다.이후에 play_game에 저장된 calc()의 주소를 win()의 주소로 덮어쓰면 플래그를 획득할 수 있다.ex.py