Protostar Heap1
Wargame/Protostar2017. 12. 31. 23:23
먼저 문제 코드를 보면
구조체를 보면 priority와 name 이라는 변수들을 선언한다.
그리고 priority 에 1과 2라는 값을 넣어주고 포인터 변수인 name 을 이용하여 할당을 해준다.
그리고 strcpy로 name에 할당한 곳에 입력한 값을 복사한다.
11은 사이즈 1과 2는 priority 변수에 넣어준 값 1,2 그리고 그 옆에는 name으로 malloc한 주소다.
그리고 aaaa(0x41414141) bbbb(0x42424242) 는 내가 넣은 값이다. 그런데 보면 0x41414141(AAAA) 부분을 보면 overwrite 해서
0x0804b038 를 overwrite해서 다른 주소로 조작할 수 있을 것 같다. 나는 GOT overwrite를 할 것이다.
puts 함수의 got를 알아와서 그 인자로 winner 함수의 주소를 넣어서 공격할 생각이다.
puts_got 와 winner의 주소를 알아냈다.
성공!
'Wargame > Protostar' 카테고리의 다른 글
Protostar Heap3 (0) | 2018.01.02 |
---|---|
Protostar Heap2 (0) | 2018.01.01 |
Protostar Heap0 (0) | 2017.12.31 |
Protostar Stack7 (0) | 2017.04.06 |
Protostar Stack6 (0) | 2017.04.05 |