|
int win()
{ return system("cat /flag"); } |
플래그를 주는 win 함수가 있다.
|
if ( (unsigned int)__isoc99_scanf("%ld %ld %ld", &a, &b, &n) != 3 )
break; buf[n] = a + b; |
입력값 2개를 저장할 때 OOB write로 return address가 조작될 수 있다. buf 가 rbp-0x60 에 위치하므로 buf[13] 에 win 의 주소 0x400822를 쓰면 win 을 실행할 수 있다.

Last update: 10/22/2020
'Wargame > pwnable.xyz' 카테고리의 다른 글
| pwnable.xyz / note (0) | 2020.01.13 |
|---|---|
| pwnable.xyz / GrownUp (0) | 2020.01.13 |
| pwnable.xyz / misalignment (0) | 2020.01.13 |
| pwnable.xyz / sub (0) | 2020.01.13 |
| pwnable.xyz / Welcome (0) | 2020.01.13 |