이번에는 이전에 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
#함수포인터
원문링크 : 디버거를 통한 UAF(Use After Free) 취약점 이해