Use After Free 편집하기
IT위키
편집을 취소할 수 있습니다. 이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 게시해주세요.
최신판 | 당신의 편집 | ||
1번째 줄: | 1번째 줄: | ||
;Use After Free | ;Use After Free | ||
특정 함수가 | 특정 함수가 메모리에서 해제된 뒤 다시 호출되는 버그가 있을 때 발생하는 취약점 | ||
* 프로그램 구조상의 에러로 해제된 메모리를 참조하려고 하면 오류가 발생한다. 일반적으론 크래쉬와 함께 종료되어버리지만 이 종료되는 순간에 악성코드(셸코드)를 할당하여 Exploit을 만들 수 있다. | * 프로그램 구조상의 에러로 해제된 메모리를 참조하려고 하면 오류가 발생한다. 일반적으론 크래쉬와 함께 종료되어버리지만 이 종료되는 순간에 악성코드(셸코드)를 할당하여 Exploit을 만들 수 있다. | ||
* 메모리가 해제된 순간에 그 빈 메모리 공간에 | * 메모리가 해제된 순간에 그 빈 메모리 공간에 셸코드를 할당한다. | ||
** LFH(Low Flagmentation Heap) 속성을 이용하여 빈 공간과 정확히 일치하는 셸코드를 할당시킨다. | ** LFH(Low Flagmentation Heap) 속성을 이용하여 빈 공간과 정확히 일치하는 셸코드를 할당시킨다. | ||
** | ** Heap Spray를 이용한다. | ||
* 실제 마이크로소프트 익스플로러에서 발생한 유명 사례 | * 실제 마이크로소프트 익스플로러에서 발생한 유명 사례 | ||
** [https://www.rapid7.com/db/modules/exploit/windows/browser/ms11_081_option MS11-081 Microsoft Internet Explorer Option Element Use-After-Free] | ** [https://www.rapid7.com/db/modules/exploit/windows/browser/ms11_081_option MS11-081 Microsoft Internet Explorer Option Element Use-After-Free] |