Description

  • Double free bug는 free()를 두번 호출하여 예기치 않은 메모리 위치가 수정될 수있습니다.
  • 애플리케이션이 같은 인수로 free()를 두번 호출하면 할당자가 관리하는 메모리 관리 데이터 구조가 손상됩니다.
    • 이 손상으로 인해 프로그램이 중단 될 수있습니다.
  • 그리고 같은 인수로 malloc()를 두번 호출하면 동일한 포인터가 리턴될 수 있습니다.
    • 이로 인해 공격자는 이중 할당된 메모리에 기록된 데이터를 제어할 수 있게 됩니다.
    • 즉, 버퍼 오버플로 공격이 가능해집니다.

list