Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Internet Explorer The Internet Bug

HTML Rendering Crashes IE 1000

SlimySlimy writes "According to this article on Secunia, a new IE exploit was found that crashes almost any version of Internet Explorer past 4.0 with just 5 lines of plain HTML code (no JavaScript, ActiveX, etc.). If you're very brave, you can test/crash your IE by going here." There's also a note on SecurityFocus.
This discussion has been archived. No new comments can be posted.

HTML Rendering Crashes IE

Comments Filter:
  • by A nonymous Coward ( 7548 ) * on Saturday May 03, 2003 @03:46AM (#5867850)
    Here is their story [theinquirer.net]
  • mozilla crashes too (Score:5, Informative)

    by Anonymous Coward on Saturday May 03, 2003 @03:47AM (#5867858)
    I use galeon most of the time and it crashes often too... Just put this in a document

    <body onblur="javascript:self.focus()">

    browse it, and galeon will crash (as of 1.3.3.20030419). Do the same in mozilla, close the browser window, and it will segfault (version 1.3).
  • Comment removed (Score:3, Informative)

    by account_deleted ( 4530225 ) * on Saturday May 03, 2003 @03:55AM (#5867896)
    Comment removed based on user account deletion
  • why it crashes (Score:5, Informative)

    by mejh ( 564536 ) on Saturday May 03, 2003 @03:57AM (#5867902)
    Just one line is really required:

    According to a post on bugtraq:
    IE tries to compare the type of the input field to "HIDDEN", to see if it
    should be rendered. When there is no type string, a null-pointer is used.
    mshtml.dll calls shlwapi.dll#158 @ 0x636f0037 with a pointer to a static
    unicode string "HIDDEN" and a null-pointer.
    shlwapi.dll#158 does a case-insensitive comparison of two unicode strings:
    it reads from address 0x0 because of the null-pointer and thus causes an
    exception.
    This is not exploitable, other then a DoS because there is no memory mapped
    @ 0x0 and even if you could load something there, you could only compare it
    to "HIDDEN" which gets you nowhere.
  • Not bizarre at all (Score:1, Informative)

    by Anonymous Coward on Saturday May 03, 2003 @03:58AM (#5867908)
    It doesn't affect Internet Explorer 5.1 for Mac OS X, and it is the latest version.
    That's not bizarre. Internet Explorer for Mac is built from an entirely different codebase than its IE counterpart, which means it lacks this bug (and likely others). They literally wrote IE for Mac from the ground up, they have(had?) an entire team devoted to the project. In some regards, IE 5.1 for Mac is better than IE 6.0 for Windows.
  • by arunkv ( 116142 ) <slashdot.element77@com> on Saturday May 03, 2003 @03:58AM (#5867910) Homepage
    Actually only one line of HTML is required:
    <input type>
    As someone on BugTraq already figured out 10 days ago, it's caused due to a null value for the type attribute [securityfocus.com].
  • Comment removed (Score:3, Informative)

    by account_deleted ( 4530225 ) * on Saturday May 03, 2003 @04:00AM (#5867919)
    Comment removed based on user account deletion
  • by zook ( 34771 ) on Saturday May 03, 2003 @04:00AM (#5867921)
    I doubt it. From my quick toying around, it seems that if the offending <input> tag appears inside of a <body> tag there's no such effect.

    It's hard to divine the exact fatal combination, of course. :)
  • No (Score:3, Informative)

    by Zo0ok ( 209803 ) on Saturday May 03, 2003 @04:02AM (#5867927) Homepage
    According to TheInquirer [theinquirer.net] the answer is no.

    I cannot confirm my self... now Windows machines here...

  • Re:IE on OS X ok (Score:3, Informative)

    by Tokerat ( 150341 ) on Saturday May 03, 2003 @04:09AM (#5867952) Journal

    Yes, I'd even go as far as to say they re-wrote the rendering engine from the ground up. PS MacOS 9 is safe too.
  • by Chroneos ( 545099 ) on Saturday May 03, 2003 @04:13AM (#5867968) Homepage
    Do you ever notice that when Microsoft makes a Mac version of a piss-poor Windows product that it tends to not suck [as much]?

    Of course I'm not saying that I use Mac IE, but if it came down to using IE and gnawing my own leg off, I'd still have two legs at a Mac. ;-)
  • Very big deal (Score:5, Informative)

    by fm6 ( 162816 ) on Saturday May 03, 2003 @04:17AM (#5867982) Homepage Journal
    The IE HTML renderer is actually in a DLL that's shared by several application. And yes, they crash too. It's sort of interesting that that this DLL has no MacOS equivalent. Or perhaps there is an MacOS equivalent, but the usual low-level kludges are different on Mac and Windows.

    Why is this a big deal? Because the largest software company on the planet has no better development practices and safeguards than some half-literate garage hacker.

  • by magnum3065 ( 410727 ) on Saturday May 03, 2003 @04:20AM (#5867986)
    The word crash isn't important it can be anything, so this really is just crappy parsing, not a left-behind testing function like the "CrashOnCtrlScroll" [winguides.com] registry setting.
  • Re:Microsoft...bleh. (Score:2, Informative)

    by inaeldi ( 623679 ) on Saturday May 03, 2003 @04:22AM (#5867991)
    The "crash" part is just for looks. It would still crash with <input type cheese>
  • Re:Phoenix (Score:5, Informative)

    by bockman ( 104837 ) on Saturday May 03, 2003 @04:25AM (#5867995)
    Well, phoenix (0.5) crashes on my machine (Debian) in many ways, often downloading stuff. A couple of times, in not yet determined situations, it started to eat all memory, making the kernel to swap furiously until I killed phoenix threads.

    Nothing wrong with that, Phoenix being still an alpha product. But please do not compare it with mature products, even if they are from Microsoft.

    Also I don't understand why there are so many threads when nothing is going on (no download in progress and a single page shown).

  • by Taco Cowboy ( 5327 ) on Saturday May 03, 2003 @04:44AM (#5868030) Journal


    Tested with the Opera and Mozilla browsers, both on Windoze and Linux platforms, the exploit [vibrantlogic.com] doesn't affect any of them.


    IE on the other hand, crashed.


    By the way, here is the entire "exploit code":


    <html>
    <form>
    <input type crash>
    </form>
    </html>







  • MSFT Mac Apps (Score:3, Informative)

    by green pizza ( 159161 ) on Saturday May 03, 2003 @05:10AM (#5868076) Homepage
    Do you ever notice that when Microsoft makes a Mac version of a piss-poor Windows product that it tends to not suck [as much]?

    Somewhat. When it comes to Office, I prefer the Mac versions to those for Windows. Perhaps it's because MS had some extra time in bringing the Mac versions to market. (MS Mac Office 98 / MS Windows Office 97.... MS Mac Office 2001 / MS Windows Office 2000.... Office v.X for OS X doesn't really count as it's a hybrid of Office 2001 and Office XP). The look and feel seems easier to live with and the Entrouage email/calendar/pim app is a lot more sane than Outlook (though is lacking full Excange integration).

    MSN Messenger for the Mac is a pretty smooth little app... single file to deal with and none of the virus-like atributes of the Windows version.

    MS IE for Mac was pretty good back in the days of Netscape 4. But these days there are MUCH better choices for Mac users.

    Windows Media Player for the Mac (they need a better name for that app) works, but feels like quick and dirty port... I wouldn't be surprised if it wasn't done by the MS MBU (Macintosh Business Unit -- MS's Mac software team located in the Silicon Valley).
  • by jbn-o ( 555068 ) <mail@digitalcitizen.info> on Saturday May 03, 2003 @05:27AM (#5868118) Homepage
    I fail to see the significance.

    I see the significance in two ways right now:

    1. No matter what the input stream, the application should not respond by crashing.
    2. If the entire application crashes and the user had something valuable in another window, that data loss could be a big deal. As we become more dependant on web browsing ordinary users type more valuable data into browsers, often without thinking about the need for making backups by entering data in some other place and copying it into the browser.
  • Not THAT serious... (Score:5, Informative)

    by KAMiKAZOW ( 455500 ) <kamikazow@hotmail.com> on Saturday May 03, 2003 @05:54AM (#5868163)
    I made some experiments and this bug is not that serious, if you use IE correctly.
    IE has a feature, Mozilla/Firebird and Opera sadly don't have: IE can run in multiple processes.
    If you open a new window by clicking IExplore.exe instead of pressing Ctrl-N, the new window runs in a seperate process. If you visit that crash page, only the one IE process crashes while the other processes stay unaffected (at least on NT based systems).

    OTOH if a page makes Mozilla crash, the whole app suite goes down. The process seperation with Firebird and Thunderbird is a step into the right direction, but different Firebird windows do still run in a single thread.
    I hope those kind of crashes send a message to all app developers (*cough*OpenOffice.org*cough*), to use multiple processes if possible (at least optional, because that would use more RAM).
  • Re:bah (Score:4, Informative)

    by nordicfrost ( 118437 ) * on Saturday May 03, 2003 @06:07AM (#5868178)
    The fact remains though that this crash isn't really that big of a deal. Sure it crashes IE, but it's not like most content webpages want their reader's browsers crashing when they reach the page.
    I (have to (it's a app made for the MS version of java)) use IE for inputting data to the web publishing system at work. I also like to have more than one window open and surf around while researching stories. I have encountered lots and lots of annoying IE errors that either crashes the app or renderes it unsuable. When that happens, I risk losing my work unless I save it whenever I do anything else with the browser. That is really annoying, that is why I don't like IE.
  • Wait a minute. (Score:5, Informative)

    by blanks ( 108019 ) on Saturday May 03, 2003 @06:28AM (#5868209) Homepage Journal
    This makes it on to slashdot, but bugs like this Netscape exploit [sina.com] didn't?
  • Re:Phoenix (Score:2, Informative)

    by snilloc ( 470200 ) <jlcollins AT hotmail DOT com> on Saturday May 03, 2003 @06:33AM (#5868214) Homepage
    My experience with the Windows builds is that April 1 barfs a lot less than 0.5

    It still barfs, and it barfs in a slightly different color, but less often. Experiment with nightlies. When you find one that doesn't barf too often, go with it.

  • by Isofarro ( 193427 ) on Saturday May 03, 2003 @07:06AM (#5868264) Homepage
    This is a *SPLENDID* way to keep internet exploder (l)users away from webpages.


    Careful - we shouldn't stoop to invalid and non-standard HTML as a means of highlighting abusive and non-standards compliant browsers. So before implementing this, think about validity.

    Obviously, if we wrap this syntax up in a comment, it will be valid HTML. Now, considering Microsoft are stupid enough to implement conditional comments in Internet Explorer [microsoft.com], we can wrap things up very nicely:
    <!--[if IE]><input type crash><![endif]-->
    There you go - something which is a valid comment, but MSIE decides to think its something else - like conditional markup.
  • I tried with Opera (Score:2, Informative)

    by Azahar ( 113797 ) on Saturday May 03, 2003 @07:09AM (#5868267)
    Opera 7.10 on Win 2k just gave a blank page leaving the other pages up and running no matter what identification I set it to.

  • Re:Simpler repro (Score:2, Informative)

    by Ollierose ( 202763 ) on Saturday May 03, 2003 @07:11AM (#5868270)
    In the aim of experimentation, I looked this up on the W3C HTML 4 pages. OK, so IE isn't usually one for sticking to the standards, but bear with me here...
    here is the bit distilled into /.ism below
    INPUT
    type (implied) one from text|password and so on
    if type is not present, text should be assumed. (This explains why everything renders it as a textbox, at least)

    In the code that kills IE, the type attribute is present but not set, so its quite feasible that other browsers check for the type value in a different method, like assuming it is text unless the attribute value is in the list of valid types.
  • by cscx ( 541332 ) on Saturday May 03, 2003 @08:10AM (#5868366) Homepage
    What's most interesting about this is after the "crash/error/send error report" dialog pops up, I get a small message box that says "IE has encountered an error and will need to close. Click OK to do so." However, if you don't click OK you still have complete use of the browser. I am submitting this in IE after having clicked the "crash" link on the front page.
  • by mr3038 ( 121693 ) on Saturday May 03, 2003 @08:15AM (#5868374)
    Make it shorter. Just type
    about:<input type>
    in the url bar and IE crashes.

    The important thing is to leave the value of type attribute undefined.

    For example, this works too:
    about:<input with sans-serif type "ALL YOUR BASE ARE BELONG TO US">

  • So what.. (Score:2, Informative)

    by destiney ( 149922 ) on Saturday May 03, 2003 @08:18AM (#5868376) Homepage

    Last time I checked I could still crash Mozilla with onSelect="select()" or an onFocus="select()" in a <textarea>.

    They all have bugs to some point. You're a fool if you think otherwise.

  • by artemis67 ( 93453 ) on Saturday May 03, 2003 @08:32AM (#5868401)
    From what I've read, IE for Mac doesn't share any code from its Windows counterpart. In fact, I've read that the Mac Business Unit doesn't get much assistance at all from the Windows developers at MS.
  • by Anonymous Coward on Saturday May 03, 2003 @08:38AM (#5868411)
    Using IE6 on WinXP prof. with all SPs and updates installed.

    IE version: 6.0.2800.1106.xpsp2.021108-1929

    but I cannot see any obvious reason, WHY this happens. and WHY this only happens, when you put the mouse over the cell...

    actually a bit mysterious to me

    (Also checked: Mozilla 1.4a renders this page fine and has no problems with the mouse hovering over the cells. Again, mysterious, eeeeh...)
  • by blibbleblobble ( 526872 ) on Saturday May 03, 2003 @08:48AM (#5868437)
    "Got a current example? [of mozilla crashing]"

    Yep. GNU/Linux/Windowmaker, visiting pages containing java, on a machine at best unfamiliar with the language.
    ps -a
    14472 java-vm [defunct]
    14475 java-vm
    14476 java-vm
    14479 java-vm
    ... etc
  • Re:Crash (Score:1, Informative)

    by Anonymous Coward on Saturday May 03, 2003 @09:10AM (#5868476)
    Think before you bash.

    Ofcourse Mozilla has bugs. So has Opera, Konquerour and Safari, hell, maybe even Lynx have its flaws.

    The point is that about 95% of all Internet users browse with MSIE v5+, which makes this a pretty critical bug (and possible exploit)

    -smurk
  • by Anonymous Coward on Saturday May 03, 2003 @09:13AM (#5868485)
    BTW, the above link does not make use of the about-link method to inject the malicious code. Slashcode filters attempts to use about: in links and IE does not follow redirects to the about: protocol. Also the most well known URL obfuscating redirector, http://yahoo.com?http://host/foo/bar.html, won't redirect to about: anyway. The script which is addressed by the above URL does not filter the URL data which it then uses in the redirection announcement. It's not my script or webserver, and if I had taken proper precautions, that link would not be traceable to me. It is also possible to further obfuscate the target by chaining it with the yahoo redirector: bye bye [yahoo.com]. With this method, anyone who knows the URL of an amateurish script like the one mentioned above, can post "killer-links" to message boards.
  • I got a fix... (Score:5, Informative)

    by miketang16 ( 585602 ) on Saturday May 03, 2003 @09:34AM (#5868520) Journal
    http://www.w3c.org [w3c.org]

    nuff said.
  • by Anonymous Coward on Saturday May 03, 2003 @09:42AM (#5868532)
    It does if you preview the page :-)
  • Re:A new way... (Score:3, Informative)

    by dorward ( 129628 ) on Saturday May 03, 2003 @09:43AM (#5868536) Homepage Journal
    you either have body tags or you have frameset tags, the one you use depends on the type of html document you have

    No, the specification says you need a body element or a frameset element, you don't need to use a tag to create an element though.

    7.5.1 The BODY element

    Start tag: optional, End tag: optional

    The following is a valid HTML 4.01 Strict document, feed it in to the validator [w3.org] if you want conformation.

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
    <title>Demo of a Valid Document</title>
    <h1>Demo of a Valid Document</h1>
    <p>This is a valid HTML 4.01 Strict document. Note the lack of
    &lt;body&gt; tags.</p>
  • Re:why it crashes (Score:3, Informative)

    by frisket ( 149522 ) <peter@sil[ ]il.ie ['mar' in gap]> on Saturday May 03, 2003 @10:40AM (#5868693) Homepage
    When there is no type string, a null-pointer is used.

    There's the bug. When TYPE is absent, the default is the value "TEXT". This is in the HTML spec, and in the DTD, but as I said earlier, browser makers don't read doc. It should only compare the value to HIDDEN if a value has been specified.

    Handling default values is something most 12-year-old programmers can master. Why do some browser makers fail to do it right?

  • by rollingcalf ( 605357 ) on Saturday May 03, 2003 @10:47AM (#5868715)
    You don't need to specifically put "input type crash", as something like this also crashes IE:

    <html>
    <form>
    <input type abc123>
    </form>
    </html>
  • by questionlp ( 58365 ) on Saturday May 03, 2003 @11:33AM (#5868884) Homepage
    I believe the about:whatever has been disabled (with the key ones like about:blank and about:mozilla) by one of the patches in the IE6 "branch" as typing about:<input type foo> or using the HTML:
    <a href="about:<input type foo>">Click Here</a>
    just cases my installs of IE6 to come up with "Action canceled". Testing it under IE5.5 (with the latest patches) does indeed crash the browser.
  • by _xeno_ ( 155264 ) on Saturday May 03, 2003 @11:51AM (#5868954) Homepage Journal
    Actually, under Windows and UNIX and almost every OS I know about memory location 0 is mapped. It's mapped to the kernel. (Hense the talk of "user space" vs "kernel space".) Attempting to read or write to this location will cause an access violation on the resulting page fault, whatever the OS chooses to call the error. UNIX calls it a segmentation fault, and Windows calls it a general protection fault. (XP calls it "a problem.")

    This is a good thing. NULL is generically used to indicate that a pointer is invalid. Attempting to read or write to a NULL pointer is always a bug and should cause the application to be stopped. Writing and reading from random memory address is a sure fire way to cause interesting results. Enforcing such restrictions helps to force programmers to ensure their programs are at least less buggy in that respect.

    MacOS 9 allowing location 0 read/write is a bug, not a feature. (Well... probably not, really. MacOS 9 and prior probably allowed 0 as a valid userspace location.) When a program attempts to read or write to NULL, it should be terminated, as this is an error condition. This would be like ignoring the low oil pressure light on your car - you might be able to keep running for a while, but disaster could strike further down the road.

  • by pointym5 ( 128908 ) on Saturday May 03, 2003 @12:07PM (#5869017)
    The 1,3 version seems to fix all the ebay crash problems.
  • by netsharc ( 195805 ) on Saturday May 03, 2003 @12:15PM (#5869045)
    That sucks. :) Better find the Outlook.pst file (%HOME%\Application Data\Microsoft something something), which has all the data Outlook shows. Rename that file temporarily, start Outlook (it'll probably create a blank PST file), turn off the Preview Pane/AutoPreview, close Outlook and replace the new PST file with a copy of the original one. Hopefully you can then start Outlook with the Preview Pane turned off. Of course, this may not work when Outlook stores the Preview Pane settings inside the PST file itself. When that's the case, you can always go back to the previous method, but don't close Outlook and instead try to open the old PST file (Right click on "Outlook Today - [Personal Folders]" on the Folders List and choose "Open Outlook Data File...").

    Hey why am I bothering, you are AC and probably won't see this anyway.
  • by RzUpAnmsCwrds ( 262647 ) on Saturday May 03, 2003 @12:25PM (#5869094)
    As of IE6SP1, the about: protocol is disabled, and this no longer works (you can still get it, of course, by going to a page).
  • Re:IE Mac is fine (Score:2, Informative)

    by KefkaFloyd ( 628386 ) on Saturday May 03, 2003 @12:44PM (#5869198) Homepage
    You need some reading comprehension skills. He meant that in ADDITION to IE.
  • by Delphix ( 571159 ) on Saturday May 03, 2003 @01:01PM (#5869290)
    Gotta call you on this one because you're talking out your ass.

    It's obvious you don't understand how the operating systems handle memory on MacOS, MacOS X, and Windows NT/2K/XP.

    First of all when something says NULL, it does not always mean zero. It's true that many systems use zero as an alias for NULL, but NULL can be defined as anything (read your C/C++ language definitions... that's why that have something called null and NULL defined.)

    Secondly, Mac OS is not a protected memory operatating system. So yeah, it will let you write to any address you give it. WHICH IS VERY VERY BAD. It will let you write to the memory space whether or not you own it. And it's the reason why Mac OS when it crashes, crashes hard.

    However, attempting to read from or write to NULL even on Mac OS will cause it to terminate your program. It's not valid to access the NULL identifier.

    In Windows and Mac OS X, where protected memory is implemented... it will generate a Segmentation Fault for trying to access memory outside of your program and thus terminate your program.

    If you really want to see how fast you can crash a Mac by writting to null this simple C program will demonstrate:

    int main(int argc, char** argv)
    {
    int *a;
    a = (int*)NULL;
    *a = 5;

    return 0;
    }

    And it's not explorer itself that causes the crash on Windows, it's a specific DLL it's accessing, SHLWAPI.DLL. I imagine whatever the Mac version of Explorer uses in it's place is implemented correctly. So go read the RTFA yourself, then go read some books on Computer and OS architecture before you make a post about something you don't understand again, because I'm sure a lot of people are nodding their heads at you saying "yeah, that makes sense." when its a bunch of BS.
  • DIY IE (Score:3, Informative)

    by usotsuki ( 530037 ) on Saturday May 03, 2003 @02:02PM (#5869593) Homepage
    5.50.4134.0600

    Type address
    about:<input type crash>

    and watch IE go up in smoke


    IEXPLORE caused an invalid page fault in
    module SHLWAPI.DLL at 016f:70bd1d1e.
    Registers:
    EAX=00000001 CS=016f EIP=70bd1d1e EFLGS=00010202
    EBX=01b9bf20 SS=0177 ESP=0279fa00 EBP=0279fa10
    ECX=0279fa18 DS=0177 ESI=00000000 FS=138f
    EDX=70d4b0a8 ES=0177 EDI=00000000 GS=0000
    Bytes at CS:EIP:
    0f b7 06 46 46 83 f8 41 7c 05 83 f8 5a 7e 1d 0f
    Stack dump:
    70e7f5b0 70e4e2e2 00000000 70d4b0a8 00000034 70c93150 00000000 00000034 01ba6148 01b9b1d0 01b9bf20 01ba6148 01ba6148 70c9300b 00000034 01ba6148
  • by rgmoore ( 133276 ) * <glandauer@charter.net> on Saturday May 03, 2003 @02:46PM (#5869786) Homepage

    I know that Galeon has an automatic "recover session" option. If the program crashes, the next time you start it you're given the option of re-opening it in its previous state. I'm not sure if it actually keeps track of what you had typed into forms, but at least it means that if you had twelve different, hard to reach pages open at once you can get back to where you were.

  • by Krach42 ( 227798 ) on Saturday May 03, 2003 @05:23PM (#5870583) Homepage Journal
    The semicolon is from Slashdot breaking your & g t ; apart, to ensure that it properly line wraps.

    They still insist that breaking apart &blah; tags is not a bug.
  • smaller code (Score:3, Informative)

    by Fletch ( 6903 ) * <fletch AT pobox DOT com> on Sunday May 04, 2003 @01:12AM (#5872685) Homepage
    this alone yields the same result (in IE 6.0.2800.1106.xpsp1.020828-1920, at least):

    <table border="1">
    <tr>
    <td style="position: fixed;"></td><td></td>
    </tr>
    </table>

    it looks like the table border must be >0, but only because the crash actually occurs when you mouse-over (any part of) the border, not the cell itself. weird.
  • by TechnoLust ( 528463 ) <kai...technolust@@@gmail...com> on Monday May 05, 2003 @12:03AM (#5878723) Homepage Journal
    Probably because the "Crash" is actually happening in the SHLWAPI.DLL file, not in IE itself.

A morsel of genuine history is a thing so rare as to be always valuable. -- Thomas Jefferson

Working...