반응형
 포스팅 썸네일 이미지

Pwnable/포너블 정리

Unsafe Unlink 정리

Unsafe Unlink 쓸 수 있는 상황 1. malloc으로 할당 받은 힙의 주소를 전역 변수에서 관리해야 함. 2. 힙 최소 2개이상에 두 번째 힙의 헤더를 조작할 수 있어야 한다. Unlink의 역할 Unlink는 freelist에 있는 힙 청크 중에 중간에 끼어 있는 청크에 메모리가 할당될 때 힙 청크 리스트 노드들 간의 연결관계를 정리해주는 역할을 함. 아래 그림은 P의 위치에 malloc, calloc으로 메모리가 할당될 때 Unlink가 수행하는 동작이다. UnLink 발생 조건 Unlink과정에서 발생하는 취약점을 알기 위해서 소스코드를 분석해보겠다. #define unlink(AV, P, BK, FD) { \ FD = P->fd; \ BK = P->bk; \ if (__builtin_e..

2021.04.07 게시됨

반응형