이번에는 이전에 ptmalloc2의 실행 과정을 GDB를 통해 들여보았던 것을 바탕으로 하여, 동적으로 메모리를 관리함에 있어서 동적 메모리 할당의 구조적인 특징으로 인해 메모리 재사용시 예전에 저장된 값을 탈취하고 이용할 수 있게 해주는 UAF 취약점에 대해 이해해 보겠습니다. GDB를 통한 ptmalloc2 원리 분석 (malloc, free) 이전 글: 이번 시간에는, 이전에 다소 이론 및 구조적으로 살펴보았던 ptmalloc2를 GDB(GNU Debugge... blog.naver.com 이전 글에서는 짧게 언급했지만, 실제로 malloc() 등을 통해 runtime에서 같은 크기의 메모리를 할당한다고 할 때, ptmalloc2와 같은 동적 메모리 관리 알고리즘은 메모리 할당을 재빠르게 하기 위해 (multithreading 환경의 경우) 각자의 arena라는 독립 관리 단위에다가 해제된(free) 메모리 chunk를 보관합니다.
일반적으로 통계적인 방법이 포함된 많은 연구에...
#
Assembly
#
디버깅
#
리눅스
#
메모리
#
메모리관리
#
메모리누수
#
보안
#
분석
#
시스템보안
#
시큐어코딩
#
예제
#
취약점
#
포인터
#
동적관리
#
동적
#
구조체
#
C
#
Clang
#
C언어
#
dangling_pointer
#
dynamic
#
free
#
GDB
#
malloc
#
ptmalloc2
#
struture
#
UAF
#
Use_After_Free
#
함수포인터