Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Heap spray란 Heap 영역을 확장하면서 해당 영역에 특정 값으로 가득 채우는 기술입니다.
    • Heap spray는spray를 이용해 Exploit의 성공 가능성을 높이기 위해 많은 양의 Heap 공간을 요청합니다.
    • Heap spray에 의해 Heap 영역에 저장되는 특정 값의 형태는 다음과 같습니다.주소 영역에 주소 값 또는 NOP 또는 NOP + Shellcode으로 채워지는 것이 일반적입니다.
  • Heap spray로 인해 대부분의 아키텍처와 운영 체제에서 대규모 Heap이 할당되는 시작 위치의 예측 가능합니다.
    • 즉, Heap spray가 실행될 때마다 대략적으로 동일한 위치에 Spray된 Heap이 있음을 의미합니다.
    • Heap을 연속으로 할당할 경우 대부분 순차적으로 할당됩니다.
  • Heap spary는 spray는 응용 프로그램에서 Heap 영역의 값을 읽어 해당 주소도 이동하는 함수 포인터를 덮어쓸 수 있는 취약성이 있을 경우에 사용될 수 있습니다.
    • Heap spary된 Heap 영역의 주소를 함수 포인터로 사용하여 실행 흐름을 제어할 수 있습니다.
    • 이외에도 상황에 따라 다양하게 사용될 수 있습니다.

...