이번엔 FTZ level10 문제를 풀어보자.
로그인을 하고, 파일 목록을 확인하고, 힌트를 확인한다.
힌트는 아래와 같다.
공유 메모리에 관한 문제이다.
공유 메모리에 대해 간단히 설명하면,
위 그림처럼, 여러 프로세스에서 동시에 접근 할 수 있는 메모리이다.
힌트에 나와있는 key_t 값은 공유 메모리를 식별 할 수 있는 값이라고 생각하면 된다.
공유 메모리의 위치로 생각하면 편하다.
level10의 공유 메모리에 접근하려면 key_t 7530 위치에 접근하면 된다.
일단 공유메모리와 관련된 ipcs 명령어를 사용해본다.
공유 메모리 세그멘트를 보면 key 값이 0x00001d6a 라고 되어있다.
0x00001d6a(16) = 7530(10) 이다. 힌트의 값과 똑같다.
그럼 이제 이 위치에 접근하는 코드를 짜서 실행시키면 된다.
소스코드는 아래와 같다.
컴파일 후 실행해 보겠다.
멍멍이와 구타의 대화를 도청해 level11의 패스워드를 알아냈다!
level11 암호 : what!@#$?
'[Pwnable] 해커스쿨 FTZ' 카테고리의 다른 글
[해커스쿨 FTZ] level12 (0) | 2020.03.12 |
---|---|
[해커스쿨 FTZ] Level11 (0) | 2020.03.12 |
[해커스쿨 FTZ] Level9 (0) | 2020.03.03 |
[해커스쿨 FTZ] Level8 (0) | 2020.03.02 |
[해커스쿨 FTZ] Level7 (0) | 2020.03.02 |