Jump to content
Nytro

Heap overflow exploit and understanding

Recommended Posts

Posted

Heap overflow exploit and understanding

Khalil Ezhani

Senator.of.Pirates @ gmail.com

http://www.facebook.com/SenatorofPirates

Not all buffers are allocated on the stack. Often an application doesn't know how big to make certain buffers until

it is running. The heap is used by applications to dynamically allocate buffers of varying sizes. These buffers are

susceptible to overflows if user-supplied data isn't checked, leading to a compromise through an attacker

overwriting other values on the heap.

Where the details of stack overflow exploitation rely on the specifics of hardware architecture, heap overflows are

reliant on the way certain operating systems and libraries manage heap memory. Here I restrict the discussion of

heap overflows to a specific environment: a Linux system running on an Intel x86 platform, using the default

GNU libc heap implementation (based on Doug Lea's dlmalloc). While this situation is specific, the techniques I

discuss apply to other systems, including Solaris and Windows.

Heap overflows can result in compromises of both sensitive data (overwriting filenames and other variables on

the heap) and logical program flow (through heap control structure and function pointer modification). I discuss

the threat of compromising logical program flow here, along with a conceptual explanation and diagrams.

Download:

http://www.exploit-db.com/download_pdf/18133

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...