CTF/CTF_Configuration

main_arena offset 구하기

JUNFUTURE 2022. 2. 9. 23:49

main_arena는 heap영역에서 해제된 청크가 Unsorted bin에 처음 등록될때 FD와 BK가 가리키고 있는 영역이다.

Use After Free와 같은 취약점을 이용해서 일부러 해제시킨 청크를 그대로 다시 할당하면 FD와 BK가 적힌채로 돌아오는데, 이때 FD와 BK가 main_arena+xx 위치를 가리키고있다. 이때 main_arena의 offset을 이용해 libc_base 주소를 구할 수 있다. 그럼 main_arena의 offset을 편하게 구해주는 도구를 알아보자.

 

설치

git clone https://github.com/bash-c/main_arena_offset

사용법

#main_arena 폴더 들어간 후
./main_arena [libc 파일경로]
./main_arena ../../CTF/20220209/uaf/libc6_2.27-3ubuntu1.4_amd64.so