Slashdot Mirror


Two Unofficial IE Patches Block Attacks

Pentrex writes "eWeek reports that two well-respected Internet security companies (eEye and Determina) have released unofficial patches to correct the vulnerability being exploited to load spyware, bots and Trojan downloaders on Windows machines. Microsoft isn't sanctioning the third-party patches, which include source code for review. As always, the advice is to weigh the risks before opting for an unofficial hotfix."

51 of 233 comments (clear)

  1. Re:Why doesn't Microsoft... by ZiakII · · Score: 2, Insightful

    Why doesn't Microsoft just tell people to switch to Ubuntu and use Firefox? It would save them a hassle and a lot of work.

    Maybe because they like money?

  2. Other patches: by NilObject · · Score: 5, Funny

    There's two other patches out there that work pretty damn well:

    1 and 2.

    1. Re:Other patches: by Volanin · · Score: 4, Insightful

      1. [apple.com] and 2. [mozilla.com]


      Yeah, but only number 2 "include source code for review."
      --
      If I clone myself, can I call it a thread?
      If a girl winks to us, can I call it a race condition?
    2. Re:Other patches: by Poltras · · Score: 2, Insightful

      does that mean it's less effective?

    3. Re:Other patches: by chrome · · Score: 4, Informative
      Yeah, but only number 2 "include source code for review."

      Not entirely true. You can review the code for darwin, and you can review the code for WebKit.

      The only thing you can't review is the UI drawing code in AppKit/Quartz/Cocoa etc.
    4. Re:Other patches: by chrome · · Score: 2, Insightful

      Don't be silly. You wouldn't consider it because your a unix zealot :P

    5. Re:Other patches: by ettlz · · Score: 2, Insightful
      Don't be silly. You wouldn't consider it because your a unix zealot :P

      So what is OS X? A VMS offshoot? Grandparent is a total disclosure zealot. I don't condemn the grandparent for having this attitude.

  3. Free as in... by HolyCrapSCOsux · · Score: 2, Insightful
    Some folks would like you to believe that free as in beer software is a horrible thing.

    The question is, would people patch if they had to pay for them?

    --
    0xB315AA8D852DCD3F3DCA578FD2E0BF88
    1. Re:Free as in... by monkaduck · · Score: 2, Insightful

      If they were told to, yes. Never underestimate the lemmingness of the human species.

      --
      Napalm is nature's toothpaste
    2. Re:Free as in... by Arandir · · Score: 3, Interesting

      In an old interview Bill Gates said, and I paraphrase, "people don't pay for bug fixes." This explains a lot.

      --
      A Government Is a Body of People, Usually Notably Ungoverned
  4. Re:Why doesn't Microsoft... by Dante+Shamest · · Score: 4, Funny
    Why doesn't Microsoft just tell people to switch to Ubuntu and use Firefox? It would save them a hassle and a lot of work.

    Are you related to my girlfriend? Because she asks smart questions like you. =)

  5. Are there not risks even with official patches? by El+Cubano · · Score: 4, Insightful

    As always, the advice is to weigh the risks before opting for an unofficial hotfix.

    Is this not something that smart admins/companies so even with official patches and fixes? To me, the fact that the source was released shows that these people are quite serious about being taken seriously. I suppose that is better than MS assurances that they extensively tested the fix before release.

    1. Re:Are there not risks even with official patches? by Ravatar · · Score: 3, Insightful

      Without releasing the source, they have almost no credibility. If they hadn't released the source, slashdot would be packed with cries of "who would actually run this?!" "wtf, no source? no thanks".

    2. Re:Are there not risks even with official patches? by tshak · · Score: 5, Insightful

      I suppose that is better than MS assurances that they extensively tested the fix before release.

      This quite far from the truth. Reading source code will not find the integration problems that can come up when you release a patch on millions of machines with different configurations.

      --

      There is no longer anything that can be done with computers that is nontrivial and clearly legal. -- Paul Phillips
    3. Re:Are there not risks even with official patches? by whitehatlurker · · Score: 4, Insightful

      And yet, we will accept the same from MicroSoft without the assurance of source ;-)

      --
      .. paranoid crackpot leftover from the days of Amiga.
  6. How do they even write these patches??? by MoxFulder · · Score: 4, Interesting

    I don't even understand how they manage to *write* third-party patches. I mean, it must be hard as hell to do without the IE source code. I think they write a separate DLL which acts as an intermediary to the flawed insecure library or something, but it sounds like an enormous pain-in-the-ass process. Or do these companies have access to MS code through Shared Source program or something?

    Yep, the more I watch the ills that befall the Microsoft-bound, the more I'm happy with my decision to go Linux-only a few years back.

    1. Re:How do they even write these patches??? by Anonymous Coward · · Score: 5, Informative

      We certainly don't have access to Microsoft source code. I ran Internet Explorer in a debugger and traced through the execution of the exploit (which was publicly available at this point). Most memory corruption vulnerabilities result in an exception, which is caught by the debugger. Once you have the location of the exception, you can identify which function the vulnerable code is in.

      Once I had the name of faulty function, I disassembled it using IDA Pro and found the bug by reading the disassembly. With enough reverse engineering experience reading disassembled code is not much harder than reading C source code. It just takes longer.

      The IE vulnerability is caused by a funcion called with incorrect parameters which returns SUCCESS instead of an error code. The caller belives that the function suceeded and tries to use an uninitialized variable. The patch is a single byte change in mshtml.dll. The patched function now returns a valid error code and the vulnerability is stopped.

      This free patch is just a demonstration of what we do every month as part of our LiveShield product. It is a lot more advanced, but the idea is similar. We use the vulnerability analysis techniques described above to create "shields" that detect and stop specific Microsoft vulnerabilities. The coolest part is that the shields can be inserted and removed at runtime, without having to reboot any of the running applications.

      Alexander Sotirov
      Security Research
      Determina Inc.

    2. Re:How do they even write these patches??? by romka1 · · Score: 5, Informative

      "The fix is a DLL that gets injected into all applications via the AppInit_DLLs registry key," Sotirov wrote in a message posted to security mailing lists. He said the DLL fixes the bug by patching a single byte in MSHTML.DLL when it is loaded in memory. "This change makes the 'createTextRange()' function return an error code instead of returning 0. This exactly how the problem was fixed in the latest IE7 beta from March 20," Sotirov explained.
      from the article

      --
      Visit my site @ http://www.madtorrent.com
    3. Re:How do they even write these patches??? by Anonymous Coward · · Score: 2, Insightful

      You better watch out :)

      From the EULA:
      "LIMITATION ON REVERSE ENGINEERING,
      DECOMPILATION, AND DISASSEMBLY. You may
      not reverse engineer, decompile, or disassemble the
      Product"

    4. Re:How do they even write these patches??? by QuantumG · · Score: 4, Interesting

      You should do your work here in Australia. We have laws that guarentee our right to reverse engineer software to fix security issues.

      --
      How we know is more important than what we know.
    5. Re:How do they even write these patches??? by Darby · · Score: 2, Funny

      It's the same here in New Zealand, only our chicks are much hotter.

      They're cooler after you shear them ;-)

    6. Re:How do they even write these patches??? by Anonymous Coward · · Score: 5, Interesting

      I don't use debuggers as much as you'd think. I prefer to disassemble the code and read it until I understand what's going on, and then confirm it with a debugger. Some other people use debuggers as their primary tool, and resort to disassembers only when they are really stuck. I guess it's just a matter of personal preference and temperament.

      When I do use a debugger, it's usually WinDbg. I like the command line interface and it has very good support for all versions of Windows. A lot of other security researchers use OllyDbg. For kernel debugging I use both WinDbg and SoftIce. SoftIce has the advantage of being able to follow code from user space to kernel space and back, which is very useful for analyzing kernel vulnerabilities.

      Alexander Sotirov
      Security Research
      Determina Inc.

    7. Re:How do they even write these patches??? by igny · · Score: 2, Insightful

      But you can reverse engineer, decompile, or disassemble the exploit.

      --
      In theory there is no difference between theory and practice. In practice there is. - Yogi Berra
  7. I'm waiting for the official IE patches by WillAffleckUW · · Score: 3, Funny

    Of course, I'll probably be retired before they're out.

    --
    -- Tigger warning: This post may contain tiggers! --
  8. weigh the risks by enrevanche · · Score: 3, Insightful

    Certainly you should weigh the risks with any patch but since an "official" patch would come from the originators of the flaw (and numerous others) why should it be considered any better than an "unofficial" patch? At least these patches can be scrutinized by the outside world for problems. A MS patch will be forever hidden. The perils of closed source!

  9. But how many would install them? by E+IS+mC(Square) · · Score: 5, Insightful

    Given the fact that the average IE user would not even be aware of the flaw, how would he even know such third party patches even exist?

    Most of them are going to be patched only when MS releases the patch, AND they have selected to be updated automatically.

    Its a horrible situation.

    1. Re:But how many would install them? by ClamIAm · · Score: 2, Insightful

      Better question: how many of them know that Microsoft releases patches?

  10. Fat, slow, and lazy by dtfinch · · Score: 2, Insightful

    If third parties can regularly patch your bugs before you do, without access to the source, after giving you a generous head start... Well, I guess that could mean a lot of things. They're definitely lazy, to say the least.

    1. Re:Fat, slow, and lazy by dtfinch · · Score: 4, Insightful

      If it was just a testing thing, they wouldn't wait until the 2nd Tuesday of the following month. Minor patches can wait, but delaying critical patches is inexcusable.

    2. Re:Fat, slow, and lazy by tshak · · Score: 2, Insightful

      ... or they run through rigorous tests since they have to answer to millions of customers on millions of different system configurations. I'm not saying that MS shouldn't be faster about patching, but they have improved their turnaound and there's only so much you can do if you care about rigorous quality assurance.

      --

      There is no longer anything that can be done with computers that is nontrivial and clearly legal. -- Paul Phillips
  11. Re:Why doesn't Microsoft... by X0563511 · · Score: 2, Insightful

    True, it's not like they sell IE seperate. They have no real reason to be so die-hard about IE.

    --
    For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
  12. Tested and deployed by ninja_assault_kitten · · Score: 3, Informative

    I had our IT department test and deploy the silent installation this morning. We're a web-based software company and there's been zero reported impact to our development staff as 6pm EST.

    While it's clearly not the best solution, it does work and provides a much needed layer for the vast majority of corporations who simply cannot and will not disable active script.

  13. Applying Patches Is Not Free by patio11 · · Score: 4, Informative

    Microsoft releases one patch day a month because their corporate customers, the lion's share of their market, demand it. And they demand it because "release a million little patches as soon as that individual patch is done" is unworkable in a corporate environment. You can plan around one big patch a month -- the magic word is "scheduled downtime". It is less bad for some customers to be periodically marginally more vulnerable for a period of two weeks or so then to be continusouly vulnerable to unscheduled downtime due to patching. "Publish early and often" works well with an enthusiast running one machine but when you've got an IT department overseeing a cast of thousands spread over 14 time zones things get a little more dicey.

    1. Re:Applying Patches Is Not Free by apoc.famine · · Score: 4, Insightful

      I'm missing the part where the sense is....If MS released all patches as soon as they were ready, everyone who wanted to patch right away could. If large corporate IT depts still want to patch every 2nd tuesday, they still can! Scheduled Downtime is Scheduled Downtime is Scheduled Downtime. I see no connection between when MS releases a patch and when an IT department schedules their downtime to roll that patch out. (Well, other than the fact that the patch has to come first. ;)

      This whole "scheduled patching" bit really is BS. All it does is leave critical problems unpatched longer than necessary, so that managers can point to MS when bad shit happens to the network. "Well, we couldn't patch until two days after patch-day, because we needed to test the patches." works lots better than "We got fucked because I decided that it wasn't critical enough to test and deploy right away."

      While I can see where it would make a lot of people more confortable to know that there is patching every third Wed or something, I just don't see the value in withholding critical patches because "they aren't scheduled yet". At the very worst, let the IT departments decide if they want to schedule additional downtime, because ultimately, they know whether it will affect their systems or not. But then again, MS knows best, all the time, doesn't it?

      --
      Velociraptor = Distiraptor / Timeraptor
    2. Re:Applying Patches Is Not Free by Anonymous Coward · · Score: 2, Interesting

      No, applying patches is not free. But you are missing the point. If patching was a fairly rare occurrence, then it would not be nearly the problem that it is. release a million little patches as soon as that individual patch is done - you probably thought that was an overstatement; it is not. Microsoft just patches far too much to make updating their products anything but a continual hassle.

      From descriptions of the fix elsewhere here, it is a stupid mistake that never should have made it through any kind of testing that I routinely run my code through. So why the hell did it make it through Microsoft's superior testing that they have guaranteed since making security "job one" [just a hint of sarcasm there].

      Perhaps the problem is really one of testing and verifying the code before it sold to a trusting customer base in the first place! That's right, you heard me; I too am blaming the customer: they fscked up! they trusted Microsoft to actually do something about making their code more secure!

  14. well by Trailer+Trash · · Score: 2, Funny
    As always, the advice is to weigh the risks before opting for an unofficial hotfix

    Anybody who has the ability to weigh risks is already using firefox.

  15. In memory fix by roman_mir · · Score: 4, Insightful

    the patch fixes the affected DLL in memory by overwriting a byte that is stored in RAM for MSHTML.DLL this begs a freaking question, should a modern OS even allow some application to modify behaviour of another application in memory, especially behaviour of a system level application, an OS DLL? I believe the patch needs to be installed from an administrator account, but even then, this doesn't mean that it is good design decision, to allow an arbitrary application to overwrite in memory code of another application. Of-course if that wasn't possible this specific patch couldn't exist, but still, the OS allows questionable application behaviour to say the least.

    1. Re:In memory fix by Zenki · · Score: 3, Interesting

      Then how do you expect debugging to work? Pretty much all OS's offer an API to let the debugger read/write bytes from program memory. A similar hack could be done on Linux by writing into /proc.

    2. Re:In memory fix by roman_mir · · Score: 2, Interesting

      Then how do you expect debugging to work? Pretty much all OS's offer an API to let the debugger read/write bytes from program memory. A similar hack could be done on Linux by writing into /proc. - debugging could be done in read only mode, but if necessary it could be done in a simulated (virtual machine) environment without such security restrictions. You cannot insist that this 'feature' is a good thing for application security.

    3. Re:In memory fix by guet · · Score: 2

      If someone untrusted has admin access to your machine, it's really game over for security. They can replace applications, dlls, run programs and change settings at will, they don't need to go to the trouble of replacing a running dll with a specially patched version via this API.

    4. Re:In memory fix by baadger · · Score: 2, Interesting

      This 'patch' isn't accessing or modifying the memory of 'another application'. What these vendors have created is a DLL that can be loaded by an application to patch the mshtml dll instance in memory for the application in which it is loaded.

      Next they use the AppInit_DLL registry key, which essentially forces the Operating System to load this DLL into all applications that link against user32.dll (I think), hence no hackery is going across address space boundaries, there is nothing wrong with self modifying code.

      Next you will be asking why this little DLL injection key exists, well it's useful, for making unofficial application patches for one thing, and it has other legitimate uses as well although I believe the key is now depreciated in favour of cleaner methods :P

  16. Re:Why doesn't Microsoft... by Cromac · · Score: 2, Insightful
    True, it's not like they sell IE seperate. They have no real reason to be so die-hard about IE.

    Microsoft views IE as a "rich client" and one more reason to tie people to Windows. MS may one day have a 100% standards compliant browser but I gaurentee they will also have another 20% worth of features that only work in IE as one more way to try and keep people using Windows.

    It's the same reason they will never have a Linux version of Office as long as they view Linux as any kind of threat to their OS.

  17. Re:This is good but..... by whitehatlurker · · Score: 2, Funny
    Anyone with the good sense God gave the common radish is using [...] Opera

    I am ... Radish!

    Damn, I wish I had mod points for your post. 'Course it would be modded funny, but hey ...

    --
    .. paranoid crackpot leftover from the days of Amiga.
  18. Anyone remember? by WalterGR · · Score: 5, Insightful

    Does anyone remember the previous third-party patch to IE? This is from December of '03.

    Slashdot: "Open Source Firm Releases Patch for IE Bug [UPDATED]"

    An open source and freeware software development web site has released a patch to fix the URL spoofing vulnerability in Internet Explorer... Update: Sadly, the patch appears to contain a buffer overflow and some possibly-malicious code. (link)
  19. opensource? by sumdumass · · Score: 3, Interesting

    It would be interesting to see microsfts official patch when it becomes availible and attempt to see how close it is to these unofficial patches.

    Maybe the code would be completley different but would it achieve its goal by going about the same ways as the unofficial patch? Or would it be patched on a level deeper then we could access. I guess the most interesting part would be that a third party without access to the source code could actualy come together with a solution before microsoft. What would be more interesting is seeing how close those solutions match match each other. Sort of a test to how these third party programers can predict the neccesity or orders of different code they only have limited access to.

    1. Re:opensource? by Zarel · · Score: 2, Informative
      From the article:
      "The fix is a DLL that gets injected into all applications via the AppInit_DLLs registry key," Sotirov wrote in a message posted to security mailing lists. He said the DLL fixes the bug by patching a single byte in MSHTML.DLL when it is loaded in memory. "This change makes the 'createTextRange()' function return an error code instead of returning 0. This exactly how the problem was fixed in the latest IE7 beta from March 20," Sotirov explained.
      --
      Want a high quality FOSS RTS game? Try Warzone 2100!
  20. Assembler and debugging references by AltControlsDelete · · Score: 3, Informative

    For x86 assembler, Intel is a good source of information: http://www.intel.com/design/Pentium4/documentation .htm#manuals. You'll want to check out volumes 2A and 2B at a minimum for reference material.

    I would be surprised if Alexander used the Visual Studio debugger; more likely he used SoftICE or one of the Windows debuggers (NTSD/CDB/KD/WinDbg). SoftICE is a commercial product sold by Compuware and provides both user-mode and kernel-mode debugging. A version of the NTSD debugger comes with Windows, but is less useful than the one that comes with Debugging Tools for Windows. NTSD and CDB provide user-mode debugging, the only difference between the applications being that NTSD opens a new console window and CDB does not. KD is the kernel debugger. WinDbg provides the same functionality as NTSD/CDB/KD but with a (spartan) Windows interface.

  21. Re:Why doesn't Microsoft... by drsmithy · · Score: 2, Insightful
    Microsoft views IE as a "rich client" and one more reason to tie people to Windows.

    There's also the rather significant problem of Firefox not being a drop-in replacement for IE.

    It's the same reason they will never have a Linux version of Office as long as they view Linux as any kind of threat to their OS.

    OS X is a vastly greater "threat" to Windows than Linux is on the Desktop, but Microsoft are happy to make money selling Office for OS X. Your argument does not hold water.

  22. Re:Bug fixes by LardBrattish · · Score: 2, Insightful
    XP has relatively few new features over Windows 2000 which is why I didn't list Win 2k (Or Windows NT for that matter)

    Win 3.1 was an (admitedly significant) upgrade of 3.0 which they charged for.

    Similarly 98 was incremental on 95, 98SE on 98, Me on 98SE all of which you had to pay for yet none of which offered significantly more than bug fixes & drivers.

    That's my point.

    --
    What are you listening to? (http://megamanic.blogetery.com/)
  23. Re:Does anyone on /. even use IE anymore? by Darth_brooks · · Score: 2, Interesting

    Not in a pinch, but regularly. You can't monitor a WSUS server without it.

    Of course, IE on that particular network has a proxy server of 127.0.0.1 pushed out via group policy, with an exemption for the intranet. You could sneak around that by installing a proxy server on the machine you're using, but most of my users aren't that sharp. I've got Firefox 1.5.whatever running on everything now, so I can let my users off the leash a little.

    The only thing I miss about IE is the ability to push settings to the browser via group policy. It's nice to be able to centrally manage an application like that. I haven't found a way to do that for firefox (HINT HINT).

    --
    There are some people that if they don't know, you can't tell 'em.
  24. Anyone else see a trend here? by g0bshiTe · · Score: 2, Insightful

    I wonder how this makes Microsoft feel, and imagine the embarassment from having 3rd parties release hot fixes (work arounds, or patches) before your release cycle.

    It's like the security community is slapping them in the face and saying that their current model of using patch cycles is not good enough for threats on todays internet.

    In my opinion this makes Microsoft look very bad, this is that I know of the second time a patch has been released for an MS product before an official fix release.

    And they even produce sourcecode for community scrutiny/review.


    To eEye and others making these patches for MS products, thanks guys for making sure my parents don't get inundated by malware.

    --
    I am Bennett Haselton! I am Bennett Haselton!