Studying Security

[Heap Exploit] Heap Spray 본문

개념 정리/Heap

[Heap Exploit] Heap Spray

J4guar 2022. 5. 1. 00:08
728x90
반응형

Heap Spray란?

Heap 영역을 확장하면서 해당 영역을 특정 값[주소 값 or NOP or NOP+Shellcode 등]으로 가득 채우는 기술

Exploit의 성공 가능성을 높이기 위해 많은 Heap 공간을 요청

 

Heap Spray로 대부분의 아키텍처와 운영체제에서 heap이 할당되는 시작 위치의 예측이 가능합니다.

대략적으로 동일한 위치에 Spray된 Heap이 존재하며 Heap을 연속으로 할당한 경우 대부분 순차적으로 할당됩니다.

 

Heap영역의 값을 읽어 해당 주소로 이동하는 함수 포인터를 덮어쓸 수 있는 취약성이 있을 경우에 사용될 수 있다.

Heap영역의 주소를 함수 포인터로 사용하여 실행 흐름을 제어할 수 있습니다.

 

단. Heap spray 사용시 무작정 큰 사이즈의 요청을 통해 heap영역을 확장하지 않습니다.

  • malloc은 할당할 Heap의 크기가 0x20000(128 * 1024) 이상일 경우 Heap 영역을 확장하지 않고 mmap을 사용하여 새로 할당 된 메모리 영역에 데이터를 저장합니다.

Reference

 

11.Heap Spray - TechNote - Lazenca.0x0

“html” 매크로 렌더링 오류 Notify your Confluence administrator that "Bob Swift Atlassian Apps - HTML" requires a valid license. Reason: VERSION_MISMATCH Excuse the ads! We need some help to keep our site up. “html” 매크로 렌더링 오

www.lazenca.net

 

반응형

'개념 정리 > Heap' 카테고리의 다른 글

[Heap Exploit] Unsorted bin attack  (0) 2022.05.02
[Heap Exploit] Heap Feng Shui  (0) 2022.05.01
[Heap Exploit] Double Free Bug(DFB)  (0) 2022.04.22
[glibc] malloc 정리4 - tcache  (0) 2022.04.21
[Heap Exploit] Use-After-Free(UAF)  (0) 2022.04.21
Comments