728x90
1. 문제
1) mitigation 확인
카나리와 NX비트, 그리고 Partial RELRO가 걸려있다
2) 문제 확인
바이너리를 실행시키면 Give me magic 이라는 문자열과 함께 입력을 받는다. 입력을 하면 바로 종료가 된다
3) 코드흐름 파악
- main문에는 별게 없고 get_flag함수가 중요하다. 해당 함수를 살펴보면 /dev/urandom 을 열고 4바이트 만큼 buf에 저장한다. 그다음 입력을 v2에 받고, buf와 v2를 비교하여 두 값이 일치하면 for문으로 뭐를 출력해준다. 아마도 flag 인것 같다
2. 접근방법
- buf 주소 = ebp-0x80
- v2 주소 = ebp-0x7c
v2와 buf의 값을 일치시키는게 이 문제의 포인트다. 근데 어케하지..? 그냥 set 으로 레지스터 값을 강제로 변경시키면 되긴 하는데 그렇게 푸는게 맞나..?
다른 방법있나 찾아봤지만 딱히 없어서 그냥 set으로 조지고 롸업보니 맞는듯..ㅋ 허무
3. 풀이
scanf로 2를 입력함. 현재 edx들어있는 값을 0x2로 변경할꺼임
변경 완료.
4. 몰랐던 개념
- none
728x90
'워게임 > Hitcon training' 카테고리의 다른 글
[Hicon training] LAB 6 (0) | 2020.04.14 |
---|---|
[Hicon training] LAB 5 (0) | 2020.04.14 |
[Hicon training] LAB 4 (0) | 2020.04.13 |
[Hicon training] LAB 3 (0) | 2020.04.13 |
[Hicon training] LAB 2 (0) | 2020.04.13 |