Ethical Hacking Learn to find vulnerabilities before the bad guys do! Gain real world hands on hacking experience in our state of the art hacking lab. Course designed and taught by expert instructors with years of penetration testing experience. 12 student maximum in every class. Certification attempt included in every package. | Computer Forensics Training at InfoSec Institute Gain the in-demand skills of a certified computer examiner, learn to recover trace data left behind by fraud, theft, and cybercrime perpetrators. Discover the source of computer crime and abuse at your organization so that it never happens again. All of our class sizes are guaranteed to be 12 students or less to facilitate one-on-one interaction with one of our expert instructors. |

| Subject: | [Full-disclosure] Exploiting heap overflows in W2K |
|---|---|
| Date: | Tue, 1 Aug 2006 07:46:23 +1200 (NZST) |
Hi list,
I am trying to exploit a Heap buffer overflow vulnerability and facing some
problems, hope you could help.
I run the vulnerable program in a VMWare, attached with Olly.
These are my problems:
1. I control both EAX and ESI, when the program goes to
mov [esi], eax
mov [eax + 4], esi
First of all, I tried gainig control of execution through PEB but,
according to Halvar's presentation, there are some restrictions to what you can
write in the header of the overflowed buffer.
Quoting:
" Properties our block must have:
Bit 0 of Flags must be set
Bit 3 of Flags must be set
Field_4 must be smaller than 0x40
The first field (own size) must be larger than 0x80
The block ?XXXX99XX? meets all requirements"
So, supposing PEB pointer to overwrite is 0x7FFDF020 I would need to
specify for example: XXXX20f0fd7f, but this is not matching required properties
and so RtlFreeHeap exits.
I am sure I must be missing something here, but can't find it.
2. An aditional problem I am facing, due to the fact that this is my first
heap overflowing session, is that when I trigger the vulnerability as soon as
the programs comes back from "revert snapshot" then I get to rtlHeapFree ok,
but if some other request are performed to the program before, then I cannot
reproduce that behaviour again and different behaviours and situation arise.
It is obvious that my exploit won't be the first request the program
receives so, how can I manage this?
Hope you could help!
Regards
IvaN!
Send instant messages to your online friends http://au.messenger.yahoo.com _______________________________________________ Full-Disclosure - We believe in it. Charter: http://lists.grok.org.uk/full-disclosure-charter.html Hosted and sponsored by Secunia - http://secunia.com/
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | [Full-disclosure] Re: Do world's famous companies take care of their security?, Steven M. Christey |
|---|---|
| Next by Date: | Re: [Full-disclosure] Re: Do world's famous companies take care of their security?, Valery Marchuk |
| Previous by Thread: | [Full-disclosure] Re: Do world's famous companies take care of their security?, Steven M. Christey |
| Next by Thread: | [Full-disclosure] [ MDKSA-2006:135 ] - Updated freeciv packages fix DoS vulnerabilities, security |
| Indexes: | [Date] [Thread] [Top] [All Lists] |