Slashdot Mirror


Open Source Firm Releases Patch for IE Bug [UPDATED]

An anonymous reader writes "An open source and freeware software development web site has released a patch to fix the URL spoofing vulnerability in Internet Explorer, which can be exploited by scammers who try to trick people into revealing details of online banking accounts or other private information." Naturally, the source for the patch is available as well. Update: 12/19 15:06 GMT by M : Sadly, the patch appears to contain a buffer overflow and some possibly-malicious code - see an analysis and news story, and this comment which suggests the patch author is trying to figure out who is taking advantage of the original vulnerability. Caveat patcher.

142 of 544 comments (clear)

  1. DMCA violator by DigiShaman · · Score: 5, Insightful

    In other news....M$ slams a DMCA lawsuit for "hacking".

    --
    Life is not for the lazy.
    1. Re:DMCA violator by pvt_medic · · Score: 2, Troll

      Now at first that is what I was thinking when I saw teh article. Clear case of microsoft embarrassment and microsofts reaction would clearly be one of litigation (now of course, it still is likely to do that) but is that the best thing for microsoft. One of the reasons other systems have such good security is because they have a consortium of people and organizations working on them. If microsoft took this approach they could move to be a more secure environment (they still be evil)

      My 2 cents worth

      --
      30% Troll, 50% Underrated, 10% Interesting
      Score:5, Troll
  2. ... huh? by TellarHK · · Score: 2, Interesting

    I can't even come up with a good joke for this. Seriously. It's just too good. Way, way too good.

    1. Re:... huh? by arvindn · · Score: 4, Funny
      Try some of these (funny yet scary at the same time):
      • Next time there's a hole in MSIE so big you can drive a cart through it, MS will release a patch in a week and say: "See! We told you we're more secure than open source. We have a patch out already and openwares.org hasn't yet!"
      • People will believe them when they say that
      • Openwares is going to get sued by MS claiming there's no way they could have released a patch unless they illegally obtained the source
      • I'm sure there's a joke or three out there about the name (wares->warez) but I can't find it :)
    2. Re:... huh? by Niten · · Score: 5, Funny

      If this patch gets the press coverage that it deserves, maybe people will learn to take Microsoft's claims of better security response rates than those open-source folk, with a grain of salt.

      Or maybe Microsoft will actually start working harder to keep their software secure in a timely manner?

      </fingers_crossed>
    3. Re:... huh? by BiggerIsBetter · · Score: 4, Interesting

      Or maybe Microsoft will figure it doesn't need to provide patches in a timely manner, because the user community will do it for them.

      --
      Forget thrust, drag, lift and weight. Airplanes fly because of money.
    4. Re:... huh? by hdparm · · Score: 3, Interesting
      Exactly. This is only good for Microsoft. They've got their ways of convincing masses why anything that comes out in press is actually good and why is Microsoft the one to praise.

      They have thousands of programmers, let them move their butts and do their fucking job. More holes in IE, easier to convince people to switch to Mozilla.

  3. well done by b4rB3li7h · · Score: 4, Insightful

    trust OS people to fix what M$ can't find profit for!

  4. No Trusted Computing logo on patch? by Anonymous Coward · · Score: 5, Funny

    I'm not downloading anything that isn't part of a MS plan. Sounds like a trojan attempt to me.

    1. Re:No Trusted Computing logo on patch? by Anonymous Coward · · Score: 5, Funny

      Did you know that MS are now sending out these patches direct via email? Be sure to install it when it arrives.

    2. Re:No Trusted Computing logo on patch? by wangotango · · Score: 2, Insightful

      Words cannot express how much I wouldn't apply this patch.

    3. Re:No Trusted Computing logo on patch? by zin · · Score: 3, Funny

      Yeah next XP service pack won't install because you have a corrupt OS file (due to an unauthorized patch).

      --
      -ZiN-
    4. Re:No Trusted Computing logo on patch? by nacturation · · Score: 4, Funny

      Of course it isn't a trojan. It's a legitimate security update which gets run on your system and makes IE invulnerable to that particular spoof attack. Why, openwares.org even has a definition on their site of what a trojan is:
      • Trojan and/or Worm loaders

        Trick unsuspecting users into downloading harmful viruses
        by disguising them as legitimate security updates.

      So you see, this is nothing more than a legitimate security upd... wait a second!!
      --
      Want to improve your Karma? Instead of "Post Anonymously", try the "Post Humously" option.
    5. Re:No Trusted Computing logo on patch? by WNight · · Score: 2, Informative

      I applied Win2K patches (via Windows Update) and it rendered my system unbootable. Something about path expansion(?) and msgina.dll... Not worth investigating when Ghost is so handy.

      Luckily it was only the spare computer, but still...

  5. Acceptance? by xeno_gearz · · Score: 2, Interesting
    This is great that they did this but perhaps resources would be better spent developing for Mozilla? It will be interesting to see how Microsoft react to this. Why is the group releasing this on their own? Was Microsoft contacted?

    Unfortunately, with this being an unofficial release, I don't see many people likely to utilize this until it is released by Microsoft. In the meantime, I am enjoying reading this in Mozilla :)

    --
    *
    troll blacklist. Please mo
    1. Re:Acceptance? by TellarHK · · Score: 4, Funny

      Why is the group releasing this on their own?
      To quote the wise sages of the Quake 3 voiceover...

      HUMILIATION!

    2. Re:Acceptance? by DavesWorld334 · · Score: 5, Insightful

      Pretty sure this makes Microsoft look really inept. I mean, if the largest and richest software company in the world can't patch their own products before a group of volunteer coders can figure out a fix ... seems to me that makes M$ look like fools.

      My US$0.02, unadjusted for inflation of course.

    3. Re:Acceptance? by daniel23 · · Score: 4, Interesting

      I think mozilla misrepresents the url in the status line while the address line shows the url correctly.
      MSIE, on the other hand, fails completly.

      In fact, on some versions of mozilla you even can spot a control char in the status line, too. But real spoofing depends on the address line.

      heise (German)

      As a test:
      http://www.mozilla.org%00@www.heisec.de

      is shown as http://www.heisec.de in mozilla, while msie puts http://www.mozilla.org into the address line.

      --
      605413? Yes, it's a prime.
    4. Re:Acceptance? by Kymermosst · · Score: 2, Interesting

      To quote the wise sages of the Quake 3 voiceover...

      HUMILIATION!


      I figured what Microsoft was thinking was more like one the one that came with one of the newer point releases:

      HOLY SHIT!

      (It happens when you get gibbed when you are really close to capturing the flag. I about fell out of my chair the first time my machine spouted out "HOLY SHIT!" when playing Q3. I had the volume way up, too.)

      Humiliation probably set in a little later...

      --
      "Alcohol, Tobacco, Firearms, and Explosives" should be a convenience store, not a government agency.
  6. I already got the patch by Anonymous Coward · · Score: 2, Insightful

    It's called Mozilla/Firebird.

    1. Re:I already got the patch by LPetrazickis · · Score: 2, Informative

      Actually, Mozilla/Firebird is partially vulnerable to this bug too. At the moment, the patches are Opera and Safari.;)

      --
      Is this a sigs-optional kind of place? 'Cause I am totally down with that if you know what I mean.
    2. Re:I already got the patch by damiam · · Score: 2, Insightful

      Firebird's partial vulnerability means nothing. An attacker can't spoof the location bar in any way. The only thing they can do is quasi-spoof the status bar (a junk character is shown, which ought to tip someone off). That's easy to do using Javascript in any browser. This "vulnerability" only affects people who surf with Javascript off, blindly trust their status bars, and never glance at their location bars.

      --
      It's hard to be religious when certain people are never incinerated by bolts of lightning.
  7. How were they able to make such a patch... by znode · · Score: 5, Interesting

    Without the original source to IE?

    1. Re:How were they able to make such a patch... by epiphani · · Score: 4, Interesting

      Exactly what I was going to ask. How do you "patch" software without the original code? You'd basically have to reverse engineer the software, back to some other form of programming language - probably ASM.

      Now, just as a quick check, isnt reverse engineering any M$ product against the EULA? I seriously expect a lawsuit about this.

      Also, patching a binary - that requires *very* detailed knowledge of the binary itself, not? You cant just diff two binaries, and apply patches like that, can you? Run into adressing problems, not? I've never really studied the end result of my code beyond a little gdb'ing.

      --
      .
    2. Re:How were they able to make such a patch... by WolfWithoutAClause · · Score: 4, Informative
      You'd basically have to reverse engineer the software, back to some other form of programming language - probably ASM.

      Off-hand- I'd probably stick a debugger on it, viewing the code at assembler level, and trace the carriage return in from the OS; or something like that. I mean the OS has to call or return to IE when the carriage return is hit; there can't be that many places in the code where it is waiting for input- stick a breakpoint on all of them, and whichever one gets hit after you click on the carriage return is starting to process the code. Run it multiple times with different input and pretty soon you should start to see the patterns.

      It's not especially easy, but it's doable, I've done stuff like that before. It's easier if you have the source code, but it's just slower if you don't.

      --

      -WolfWithoutAClause

      "Gravity is only a theory, not a fact!"
    3. Re:How were they able to make such a patch... by umofomia · · Score: 4, Interesting
      Exactly what I was going to ask. How do you "patch" software without the original code? You'd basically have to reverse engineer the software, back to some other form of programming language - probably ASM.

      Now, just as a quick check, isnt reverse engineering any M$ product against the EULA? I seriously expect a lawsuit about this.

      Actually they didn't have to do that... they just redirect the URLs you click on into their own cgi script off on their server to determine if it's a valid URL.

      I don't know about you, but I prefer that the URLs I go to not be sent to some random server out there. Isn't this basically the definition of spyware!? Also, what happens if their server goes down? Does that mean I'm unable to browse the web at all?

      Wait for Microsoft to come out with a better fix that properly addresses this issue.

    4. Re:How were they able to make such a patch... by KFK+-+Wildcat · · Score: 5, Informative
      It only redirects if the address seems like it contains illegal caracters (and thus tries to spoof the address), not for all webpages accessed.

      See http://www.openwares.org/cgi-bin/exploit.cgi?slash dot.org&www.goatse.cx for instance.

      It might log the addresses attempting to spoof webpages, but I'm all for that. And at least this explains clearly that a spoof was attempted through this exploit. I think it's better than just correcting the string, which would access a spoofed webpage anyways, even if showing the right address at the top... which of course would not work as well but many would still fall for it no matter, especially since it probably would look like http://www.paypal.com@paypal.something.net/ which would seem legitimate to the casual looker.

    5. Re:How were they able to make such a patch... by netsharc · · Score: 2, Informative

      It seems like they made an add-on to IE (it's been done before, e.g. GoogleBar, various pop-up stoppers, Gator/Claria), that probably monitors all URLs, and removes %00's and %01's out of it before giving it back to IE.

      Funny stuff, it's mostly a band-aid solution IMO, but a nice slap in the face for MS. :P

      --
      What time is it/will be over there? Check with my iPhone app!
    6. Re:How were they able to make such a patch... by netsharc · · Score: 5, Informative

      Wrong. :) The URL I found in the source code is http://www.openwares.org/cgi-bin/exploit.cgi? .. try it with http://www.openwares.org/cgi-bin/exploit.cgi?slash dot.org. It's the error page that the program displays when it hits a probable exploit. The program does the checking in your computer and when the link doesn't have %00 or %01, it just shows it normally. Only when it does see a %00 or %01, it sends the link to the above mentioned page.

      If you ask me, maybe they want to have a record of which evil Paypal clone-sites are taking advantage of the exploit so they can tell the cops. Maybe they want to make it easy to tell the users that "MS has issued an update for this problem, please download it!", but of course maybe they want to display ads on that error page (Heh I would do the same).

      But no, URLs that are okay are not being sent to that site.

      --
      What time is it/will be over there? Check with my iPhone app!
    7. Re:How were they able to make such a patch... by foofoodog · · Score: 2, Informative

      It is more like a crutch. Their DLL uses the Browser Helper Objects COM hook to synch events from IE. They examine the url and take you to their website instead when you try to navigate to a spoofed url.

      --
      Can I bum a sig?
    8. Re:How were they able to make such a patch... by meanfriend · · Score: 3, Insightful
      Now, just as a quick check, isnt reverse engineering any M$ product against the EULA? I seriously expect a lawsuit about this.

      While I dont think any reverse engineering took place here, I dont think it would be illegal.

      EULAS are not contracts, you did not sign anything and EULAS cannot override the laws of that country. If reverse engineering is legal, then no amount of draconian wording or clicking on "I Agree" can change that. So if the EULA prohibits me from backing up my copy of Windows (as an example), yet the copyright laws of the country (Canada, in my case) specifically permit me one backup copy, then I am allowed: 1 backup copy

      Some types reverse engineering are prohibited. Like hacking copy protection (as it's covered by the lovely DMCA). But there are efforts to reverse engineer other MS products, like the MSWord format or NTFS and I dont think those are coming under fire. (MS might try to obfuscate or change the formats rapidly, but the very process of RE is not illegal)

      IANALBISLTPOOT (I am not a lawyer but I'd sure like to play one on TV!)

    9. Re:How were they able to make such a patch... by crapulent · · Score: 5, Informative

      From looking at the source it's not actually a patch so much as a 'wedge'. It creates a typelib (or COM object of some sort) that registers itself with the system. By doing this it hooks into the IE API, such that it is called every time a URL is visited. If it detects that the URL contains the spoof, it redirects you to their site, where a CGI script gives you an IE-error-like page: For example if the faked part of the URL was 'fake.com' and the real site was 'real.com' it would redirect you to http://www.openwares.org/cgi-bin/exploit.cgi?true. com&http://fake.com

      So this is not so much a patch as a 'workaround'. It doesn't fix anything, it just intercepts those URLs and warns you about it.

    10. Re:How were they able to make such a patch... by Geek+of+Tech · · Score: 4, Funny
      >> Hmm, don't like that, it would be better to redirect it to someplace harmless like http://127.0.0.1

      Don't bother. I'm so 31337 that I just hacked that 127.0.0.1 loser... In a minute someone should be noticing their root file system missing.... Heheheh

      Hmmmm.... That's funny.... Where'd my MP3's go......

      --
      Stop the Slashdot effect! Don't read the articles!
    11. Re:How were they able to make such a patch... by arkanes · · Score: 2, Informative
      It's not a "patch", its an IE helper object using IEs COM interface.

      It's also a really crappy implementation thats full of it's own security and coding issues - it's cool that they did it and all but I kinda wish that they'd spent some more time checking the code, because this is exactly the sort of shit that MS is talking about when it brings up it's FUD about "it takes a long time because we have to test the patches".

    12. Re:How were they able to make such a patch... by jhoffoss · · Score: 2, Funny
      ...this is exactly the sort of shit that MS is talking about when it brings up it's FUD...
      Bet'cha five bucks these guys are under-cover MS operatives ordered to spoil the image of open-source developers by writing shitty code to break people's operating systems. Wait, why would they have to be undercover?
      --
      Linux: The world's best text-adventure game.
    13. Re:How were they able to make such a patch... by protoshoggoth · · Score: 2, Insightful
      Well ya know what? To everyone who is bothered about the naughty redirect and feels that it's part of some evil plan: please change the code however you like and recompile it for your own use. I mean, there it is, the source, just sitting there...it's OPEN. Cease this carping and caviling, revel in the open-ness of the source.

      Criminy, just can't please some people.

  8. New MS Security Fix by Ironclad2 · · Score: 5, Funny

    This patch fixes a security bug in Internet Explorer that could allow someone who actually knows what they're doing to repair buggy programs on your computer.

  9. Good to know... by TSR+Wedge · · Score: 4, Interesting

    Good to know that while Microsoft is leaving its users hanging out to dry patch-wise, the community still cares enough to fix the problems. Who knows -- maybe we'll see more effective (i.e., fixing more problems than they cause) patches from here forward.

    --
    What if the hokey-pokey really is what it's all about?
  10. And this matters why? by Anonymous Coward · · Score: 5, Insightful

    So, there is an open source patch for a browser that the people that would have heard of the patch wouldn't use, the /. readers ought to be using mozilla and they know it, if they aren't using mozilla they probably will not install the patch either.

    the people that would likely be fooled by this haven't heard of mozilla and haven't heard of open source and will not hear of this patch.

    so this patch is pointless
    (cool that it can be done though)

    1. Re:And this matters why? by s20451 · · Score: 4, Insightful

      so this patch is pointless
      (cool that it can be done though)


      Ah, but my good Mr. Coward, far from being pointless, the patch puts Microsoft in a delicious conundrum! Either accept and distribute an open source patch (thereby publicly validating the open source model), or ignore the patch and get sued by customers, because a patch existed that they did not publicize.

      ps. Are you related to Noel Coward? Send my regards.

      --
      Toronto-area transit rider? Rate your ride.
    2. Re:And this matters why? by aled · · Score: 4, Funny

      Sued by... by customers bwahaha haha... not... 'nough...ha haha... air...got...to...breath...hahah sued.... customers....

      --

      "I think this line is mostly filler"
    3. Re:And this matters why? by rnd() · · Score: 2, Insightful

      dear zealot:

      the "patch" simply redirects all URLS to the organization's own server, where they attempt to verify that they are authentic.

      This is spyware, and you got fooled into cheering for it!

      --

      Amazing magic tricks

    4. Re:And this matters why? by GoofyBoy · · Score: 2, Insightful

      If it is spyware, the its a great piece of social engineering.

      Wrap your self up in the "OpenSource" flag, add a dash of bashing MS and instant approval form mindless hordes. Get your code installed and leave OpenSource with a black mark.

      --
      The surprise isn't how often we make bad choices; the surprise is how seldom they defeat us.
    5. Re:And this matters why? by damiam · · Score: 2, Informative

      dear moron: The patch only redirects URLs that it has already verified are being spoofed. The only time a request is redirected is if you've tried to access a spoofed page.

      --
      It's hard to be religious when certain people are never incinerated by bolts of lightning.
    6. Re:And this matters why? by greenrd · · Score: 2
      You clearly don't know what the fuck you're talking about. (a) it doesn't; (b) the very idea that this fix somehow "requires" sending info to a server "for analysis" is wrong in so many ways it beggars belief. Please refrain from talking about things which you clearly do not understand, and help keep the signal to noise ratio high. Thank you.

    7. Re:And this matters why? by jrumney · · Score: 3, Insightful
      You'd think that Slashdot readers would read the source before installing something claiming to be a security fix from a previously unknown outfit:
      // Terms of Agreement:
      //
      // By using this source code, you agree to the
      // following terms:
      //
      // 1) You may use the source code, resource
      // files for educational purposes only.
      // 2) You MAY NOT redistribute this source code
      // without written permission. Failure to do
      // so is a violation of copyright laws.
      // 3) The author of this code may have retained
      // certain "additional copyright rights".
      // If so, this is indicated in the author's
      // description.
      //
      Yet another example of someone paying lip service to "open source". Do you trust them with the information they are collecting on who is gullible enough to click on links to scams by other parties? Who is to say they aren't running their own scams and allowing them through exploit.cgi while blocking the competition?
  11. What the "patch" really does.... by mikewren420 · · Score: 5, Funny

    What the article doesn't say is that the "patch" just removes IE and installs Mozilla. :)

  12. Direct Link to patch by bogie · · Score: 4, Informative

    For the adventurous among you.

    http://www.openwares.org/downloads/IEpatch.EXE

    --
    If you wanna get rich, you know that payback is a bitch
    1. Re:Direct Link to patch by GaelenBurns · · Score: 4, Informative

      Thanks. I've patched my test system and it didn't even require a reboot! Windows has come so far... when you use as little MS software on it as possible.

      Anyway, I've tested IE by running through some windows updates and going to a few exploit test sites. Everything has behaved as it should.

      By the way, one of the joys of this patch is that when you browse to a site attempting the exploit, you get one of those nice IE error pages, formatted in the traditional way. Except, instead of seeing Microsoft branding all over it, the Openware patch is referenced. I don't know... having this little bit of OSS within IE warms my heart. And just in time for the holidays!

  13. This doesn't actually fix the problem by realdpk · · Score: 4, Interesting

    If you check the code, all it appears to do is redirect the browser to http://www.openwares.org/cgi-bin/exploit.cgi?URL if someone clicks on a bogus URL.

    The overpresence of "strcpy" is a bit unsettling, too.

    While it's a nice step, it's no replacement for an official Microsoft patch.

    1. Re:This doesn't actually fix the problem by Ironica · · Score: 3, Funny

      While it's a nice step, it's no replacement for an official Microsoft patch.

      It's no replacement for... nothing, in other words?

      Microsoft hasn't even said they're *going* to patch this yet, you may be waiting an awful long time.

      --
      Don't you wish your girlfriend was a geek like me?
    2. Re:This doesn't actually fix the problem by crapulent · · Score: 4, Informative
      Yeah no shit, you'd expect better code from "Security researchers." This thing is ripe with bad code (it's sprinked with gotos for error handling) as well as at least one probably exploitable buffer overflow. Observe: here is a bit of the code for the main URL checking routine: ('dest' holds the URL in question and can be up to 256 chars long)


      char surl[256];
      strcpy(surl,"http://www.openwares.org/cgi-bin/ex pl oit.cgi?");

      char sFake[256];
      char sTrue[256];

      if (NULL != strstr(dest,"\2"))
      {
      strcpy(sFake,strstr(dest,"\2") +1);
      _mbsnbcpy((unsigned char*)sTrue,(unsigned char*)dest,strlen(dest)-strlen(sFake)-1);
      sTrue[strlen(dest)-strlen(sFake)-1]='\0';
      RemoveAtAnd(sTrue);
      RemoveAtAnd(sFake);

      } else if (NULL != strstr(dest,"\1"))
      {
      strcpy(sFake,strstr(dest,"\1") +1);
      _mbsnbcpy((unsigned char*)sTrue,(unsigned char*)dest,strlen(dest)-strlen(sFake)-1);
      sTrue[strlen(dest)-strlen(sFake)-1]='\0';
      RemoveAtAnd(sTrue);
      RemoveAtAnd(sFake);
      }
      else
      {
      strcpy(sFake,"unknown");
      strcpy(sTrue,"unknown");
      RemoveAtAnd(sTrue);
      RemoveAtAnd(sFake);
      }

      strcat(surl,sFake);
      strcat(surl,"&");
      strcat(sur l,sTrue);

      Notice the parts in bold. Is it not apparent that 'surl' can easily be overflowed if strlen(sFake) + strlen(sTrue) + strlen("http://www.openwares.org/cgi-bin/exploit.c gi?") exceeds 256. This is really sloppy code.
    3. Re:This doesn't actually fix the problem by realdpk · · Score: 2, Informative

      I do not believe that is entirely correct. It's only giving it 256 bytes to store the redirected-to URL. It then gives 256 bytes for the fake URL and the true URL. Nothing, that I see in here, is preventing strcat/strcpy from pushing data beyond 256 bytes.

    4. Re:This doesn't actually fix the problem by Adhoc · · Score: 2, Insightful
      This thing is ripe with bad code (it's sprinked with gotos for error handling)

      We all know about Djikstra and "Goto considered harmful". But do you know about Linus?

      I think goto's are fine, and they are often more readable than large
      amounts of indentation. That's _especially_ true if the code flow isn't
      actually naturally indented (in this case it is, so I don't think using
      goto is in any way _clearer_ than not, but in general goto's can be quite
      good for readability).


      See the kerneltrap article for more detail on that. Since I program mostly in using exceptions, I haven't really formed an opinion on this yet.

      cheers,
      AdHoc
  14. How? by blair1q · · Score: 4, Insightful

    How do you patch closed source code?

    By violating the EULA by disassembling IE?

    Lovely. I want Bill Gates poking around my sock drawer because I installed an unauthorized patch...

  15. Can we really trust this patch? by GoofyBoy · · Score: 3, Insightful


    A third party releasing a patch to a browser. How safe is this?

    Yes the source code is there, but how do we know the executable doesn't have crap in there?

    Even if everything is clean now, how about the next patch from another source?

    (Not even saying anything about testing and how it can break something. They don't even have the source code of the original product.)

    --
    The surprise isn't how often we make bad choices; the surprise is how seldom they defeat us.
    1. Re:Can we really trust this patch? by Atlantix · · Score: 3, Insightful

      Good questions. It's hard (maybe impossible) to know that an open source patch to a closed source product doesn't break something else. On the bright side, you can know the executable doesn't have extra crap. The point of releasing the source code is so anyone can compile it and verify it actually produces the executable.

      --Atlantix

    2. Re:Can we really trust this patch? by Mikey-San · · Score: 4, Funny

      How do we know the executable doesn't have crap in there?

      You know, the same could be asked of Internet Explorer.

      --
      Mikey-San
      Karma: +Eleventy billion (mostly affected by watching Celebrity Jeopardy)
  16. Re:Seriously. by 56uSquareWave · · Score: 5, Insightful

    Ahem you cant see the source code of IE but you trust that? okay then

    --
    - meta language used, please apply your own spelling and gramma
  17. Will this violate the EULA? by jaxdahl · · Score: 3, Insightful

    Does applying a third party patch violate the EULA for IE?

  18. No thanks by Anonymous Coward · · Score: 5, Funny

    Sorry, but its going to be a cold day in hell when I run something from a website named "openwarez.org".

  19. OMG!!! by Infernon · · Score: 4, Funny

    It didn't ask me to reboot afterwards!!!
    Someone start knitting a sweater for Satan...

  20. Mmf. by BJH · · Score: 5, Informative

    It's only "open source" in the very loosest sense. From the patch:

    Internet Explorer URL Spoofing Security Patch

    Developed by Opensoft Corporation, Vanuatu

    Contact: opensoft@openwares.org

    Opensoft Corporation, Vanuatu
    Copyright 2003 All rights reserved.

    Terms of Agreement:

    By using this source code, you agree to the
    following terms:

    1) You may use the source code, resource
    files for educational purposes only.
    2) You MAY NOT redistribute this source code
    without written permission. Failure to do
    so is a violation of copyright laws.
    3) The author of this code may have retained
    certain "additional copyright rights".
    If so, this is indicated in the author's
    description.

  21. Microsoft. Where did you want to go yesterday? by rice_burners_suck · · Score: 2, Insightful
    Heh, count on the open source community to do Microsoft's job. What else do you expect?

    I can tell you this: It doesn't surprise me that Microsoft isn't doing its job properly. It's a software company. It should produce a reliable product. But instead, it produces trouble.

    Further, it doesn't surprise me that the open source community is fighting back, so to speak, by fixing this particular problem. I think that as time goes by, more patches for commercial software will be released by independant programmers in the open source community, because of frustration with the inability to get satisfaction from the "real" producer of the software.

    I only hope that Microsoft won't pull some stupid DMCA bullshit to stop this. "Yeah, your honor, we believe it is detrimental to the best interests of our customers when bugs in our software are fixed. It should, instead, be illegal to discuss, fix, or exploit these bugs in any way, unless one is a member of the underground h4x0r community, in which case, exploiting the bugs is perfectly ok." (We all know Bill Gates is the leader of all these movements to steal credit card numbers through exploits in his own code. That's how he earned his zillions of dollars. Nobody actually buys stuff from Microsoft, you know.

    1. Re:Microsoft. Where did you want to go yesterday? by Keeper · · Score: 2, Insightful

      I wouldn't be cheering for the "open source community" just yet, considering the "patch" has an exploitable buffer overflow...

  22. Re:Seriously. by Atlantix · · Score: 4, Insightful

    Sounds like you're in a no-win situation. You won't install a patch without the MS seal of approval but the patch (allegedly) repairs a known flaw in a product that HAD the MS seal of approval. So that begs the question: What is the value of the MS seal of approval if they're wrong? You'll never be able to install anything!!!

    --Atlantix

  23. This will go far by Ridgelift · · Score: 3, Interesting

    While Microsoft has released an article providing details about the vulnerability, the company is yet to provide a patch.

    I hope this become a trend and attitude among the Open Source community. I must admit that I've been a Microsoft-hater for years, but over time I found that people are really put off by anti-corporation sentiments. I suppose it makes sense in a way; If I invested thousands in a technology for my business, I wouldn't want people telling me "Aw man! You got totally taken! Windows is total crap!"

    If the Open Source community begins patching Windows before Microsoft, not only does it help consumers deal with problems they can't solve, but it bring honor and respect to the Open Source community. Then when people consider Open Source, they're more likely to conclude that Open Source programmers are more competant than corporate programmers.

    It's a win-win-lose. Open Source wins, Consumers win, and Microsoft loses. Which is what I wanted in the first place.

    ESR's right in his article "How to Become a Hacker"

    Q: Do I need to hate and bash Microsoft?

    A: No, you don't. Not that Microsoft isn't loathsome, but there was a hacker culture long before Microsoft and there will still be one long after Microsoft is history. Any energy you spend hating Microsoft would be better spent on loving your craft. Write good code -- that will bash Microsoft quite sufficiently without polluting your karma.

  24. No updates for December? by Neo-Rio-101 · · Score: 2, Insightful

    I don't have any idea why MS decided to wait until next year before fixing something which is otherwise a severe security issue. I guess everyone is just lead to believe that MS simply doesn't care if your PC gets hacked, because then they can go around and pass the buck to spammers and charge people for an upgrade or support.

    I think this patch release makes more of a political statement, regardless of the issues surrounding whether an OSS company should be putting out patches for proprietary products.

    --
    READY.
    PRINT ""+-0
    1. Re:No updates for December? by Neo-Rio-101 · · Score: 4, Insightful

      That's not the point. The point is that MS has ignored patching this vulnerability for far too long. It put its promise of "no patches for December" above the real and critical need to update the most common browser running on the worlds computers from hack attacks. Whether you install it or not is your business, and further more, if the patch was truly buggy everyone would be screaming about it by now.

      --
      READY.
      PRINT ""+-0
  25. did anyone else feel it... by Stevyn · · Score: 4, Funny

    when hell just froze over? Will microsoft actually have to acknowledge them? Thank them?

    1. Re:did anyone else feel it... by WolfWithoutAClause · · Score: 5, Funny
      Will microsoft actually have to acknowledge them?

      Yes, of course! The subpoena will mention them by name.

      --

      -WolfWithoutAClause

      "Gravity is only a theory, not a fact!"
  26. The patch was released a while back!!! by Eberlin · · Score: 2, Funny

    An open source firm issued the patch a while back -- It was called mozilla.

    How does this affect IE, the MS EULA, and all the other wonderful legal stuff that could be dragged out simply because you modified software that wasn't meant to be modified outside the confines of One Microsoft Way?

    Patch on, I guess...if you must. I sleep much more soundly with my RH9 and Firebird.

  27. FWIW... by NickFitz · · Score: 3, Insightful

    this is the whois record for that domain from whois.networksolutions.com:

    Domain ID:D98313967-LROR
    Domain Name:OPENWARES.ORG
    Created On:03-Jul-2003 22:49:55 UTC
    Last Updated On:02-Sep-2003 03:58:23 UTC
    Expiration Date:03-Jul-2004 22:49:55 UTC
    Sponsoring Registrar:R14-LROR
    Status:OK
    Registrant ID:WBMRD
    Registrant Name:ori rejwan
    Registrant Street1:52 Herbert Samuel St.
    Registrant City:Tel Aviv
    Registrant State/Province:NA
    Registrant Postal Code:63304
    Registrant Country:IL
    Registrant Phone:+1.97250314892
    Registrant Email:orejwan@yahoo.com
    Admin ID:WBMRD
    Admin Name:ori rejwan
    Admin Street1:52 Herbert Samuel St.
    Admin City:Tel Aviv
    Admin State/Province:NA
    Admin Postal Code:63304
    Admin Country:IL
    Admin Phone:+1.97250314892
    Admin Email:orejwan@yahoo.com
    Tech ID:AD384-ORG
    Tech Name:Mohammed Zarqa
    Tech Organization:Tri State Contracting
    Tech Street1:POBox 455
    Tech City:East Brunswick
    Tech State/Province:NJ
    Tech Postal Code:08816
    Tech Country:US
    Tech Phone:+1.7322383766
    Tech Email:mzarqa@aol.com
    Name Server:NS2.ABAC.COM
    Name Server:NS1.ABAC.COM

    It's up to you to decide whether you trust them or not.

    --
    Using HTML in email is like putting sound effects on your phone calls. Just say <strong>no</strong>.
  28. Crikey, mate. by IvyMike · · Score: 2, Funny

    That's not a link! This is a link:

    http://www.openwares.org/downloads/IEpatch.EXE

    P.S. I haven't actually tried the executable out, I just added the clickable goodness. I also couldn't pass up the chance to make a Crocodile Dundee joke.

    1. Re:Crikey, mate. by Dwonis · · Score: 2, Informative
  29. In other news... by BladeMelbourne · · Score: 5, Funny

    Open Source Firm Releases Patch for IE Bug

    In other news...

    Today Micro$oft contributed code to the Linux kernel, and announced plans to help iron out differences between Mozilla and MSIE :-)

  30. Poor Microsoft... (Not really, but...) by Pathway · · Score: 2, Funny

    Poor MicroSoft!

    Microsoft's biggest software threat gets a huge update, one of their own products gets a patch by a third party, Real Networks sues them for monopolistic activities, and Lord of the Rings - Return of the King (a movie made with cheap Linux boxes) is realeased. All this in a 48 hour period!

    Man, it's been a rough couple of days.

    Sm:)e.

  31. Are you an accountant? by Idou · · Score: 2, Insightful

    I guess you don't invest in any stock then . . .

    Being open is not for your benefit because you have any clue how things work. Being open allows objective 3rd parties who have a clue to give an opinion on the matter so that the clueless masses (though shrinking everyday) can make a decent decision. To benefit to you is indirect, but it is a real tangible benefit, nonetheless.

    Now, objectivity and expertise to you might simply be synonymous with "MS," but if the financial market were that naive I doubt we would have ever recovered from the great depression . . .

    Hope my reality wasn't too harsh for your bubble.

    --
    Sdelat' Ameriku velikoy Snova!
    1. Re:Are you an accountant? by knewman_1971 · · Score: 2, Informative

      Wow. That's great! You mean, somewhere, there's a group of people who have reviewed this code and pronounced it safe for my enterprise? Kool and the gang, man! Where's the url for that? Better yet, give me a phone number I can call so I can talk to them. I'm sure that I've met most of them and can personally attest to the fact that they know shit over shinola about development AND my environment.

      Sorry Skippy...I've got better things to do with my time than potentially fuck the enterprise that my employer has entrusted to me and my team.

      Who's to say that my onsite TAM isn't going to spontaeneously combust when he sees that I rolled out a patch from some group o' yayhoos who genned it up for shitz n grinz? What happens when my support contract gets nullified on 10,000+ desktops? You think my boss is going to give a tin-plated rat's ass that some Slashdot folks think it's cool that there's an open source patch for a proprietary app?

      Microsoft may not be the best dog, and it may not have the fewest fleas. But when the guy signing your paycheck says that you're a Microsoft shop and you're gonna support it by their rules, then you by-God are gonna do it. Or find yourself a new line of work.

      --
      where is the "I feel for ya, but that's some funny ass shit" moderation?
  32. Proxy: Better Solution? by molafson · · Score: 2, Insightful

    This patch apparently intercepts the badly-formated URL and then forwards you to patch maker's website.

    It would be more efficient, safer, and simpler (no need to do any patching) to implement a similar solution using a proxy like Privoxy. The proxy (installed on your local machine or LAN) would then be used to intercept the badly-formated URL, and replace it with its own locally generated warning page (again, similar to Privoxy).

    I think Privoxy is OSS. Maybe someone could whip something up.

  33. Inept and free! by fm6 · · Score: 4, Interesting
    Pretty sure this makes Microsoft look really inept.
    Since when have they needed any help with that?

    If people are doing open source IE patches, would somebody please fix this sucker? Thousands of people are complaining about this bug online, yet MS hasn't even officially admitted its existence. Now that's inept!

    1. Re:Inept and free! by lurker412 · · Score: 5, Funny

      Yeah, patch Q824145. In my case, it turned out to be a blessing. I got so pissed off that MSFT broke standard UI scrolling behavior that I switched to Firebird. I don't understand how a large, successful software company can do such sloppy QA and think that nobody will notice. But then, there are many things that I don't understand.

    2. Re:Inept and free! by Grim+Grepper · · Score: 2, Interesting

      Or better yet, fix the problem that's been around for years, where IE can't even display PNGs with alpha transparancy. I'd love to be able to use them instead of cruddy 256 color GIFs, but I can't because of IE.

      And yes, I know about the various bits of Javascript and CSS that allow IE to show them, but it shouldn't have to be done in the first place. And none of them completely work.

    3. Re:Inept and free! by fm6 · · Score: 2, Informative
      I don't understand how a large, successful software company can do such sloppy QA and think that nobody will notice.
      It's called "absence of competition".
  34. Re:Seriously. by NamShubCMX · · Score: 2, Funny
    he's actually in a "too-much-win" situation :P

    (t'was easy, sorry)

    --
    We've always been at war with Eurasia.
  35. Re: isnt reverse engineering against the EULA? by NortWind · · Score: 2, Funny

    Maybe they forgot to sign the EULA?

  36. Free IE patch and fix. by ratfynk · · Score: 4, Funny

    Found a wonderful fix it is called cfdisk! and slackware 9.1 setup, works great and no IE security issues!

    --
    OH THE SHAME I fell off the wagon and use sigs again!
  37. The means may be good, but the principle is wrong. by DrewBeavis · · Score: 2, Interesting

    This is the beginning of a really bad precedent. It is bad enough that M$ makes bad software and takes too long to fix it, but this just makes it okay to keep doing that. M$ will know that now they don't even HAVE to fix it. Just wait and let the open source community do it. THEN, when multiple patches start conflicting because of reasons already mentioned above, M$ can blame open source as the problem. Heck, they might even 'embrace' open source for a time, then use this as justification that it open source doesn't work.

  38. Just another example of taking the high road by El · · Score: 2, Interesting

    Open source enthusiasts have TWICE paid to renew Microsoft's domain registries (once for hotmail, once for microsoft UK) when Microsoft forgot... so who should you trust with your data, the people that can't even remember to renew their own domain registrations, or the people that keep bailing them out?

    --

    "Freedom means freedom for everybody" -- Dick Cheney

    1. Re:Just another example of taking the high road by Dirtside · · Score: 2, Interesting
      so who should you trust with your data, the people that can't even remember to renew their own domain registrations, or the people that keep bailing them out?
      Much as I hate Microsoft, this is not a rational argument. The guys who wrote this "patch" are not the ones who paid for Microsoft's domain registrations. Yes, I want Redmond to fall into a giant sinkhole, but irrational, zealous logic doesn't help anyone.
      --
      "Destroy science and religion. Science would re-emerge exactly the same; but not religion." - Penn Jillette, paraphrased
  39. using the API by ramzak2k · · Score: 4, Interesting

    If i am correct all microsoft applications do have allow access to APIs (Application Programming interfaces). I have written a simple application in Visual Basic once that used the API of MSN instant messenger to listen to the messages sent to me and do a custom auto reply saying things like "i will be back in a few mins".

    Once someone has a grip of IE's API, this shouldnt have been too difficult - after all they just check if the URL requested for(which should be triggering an event in the API) has a particular type of input. If so they redirect it to a different URL (their own website).

    If the patch has been done this way it is more reason not to apply it - it is not exactly the cleanest way to fix it.

    --

    Siggy Say, Siggy Do
  40. How about this one .... by taniwha · · Score: 4, Funny

    M$ picks up an open source bug fix off the net, rolls it into IE and releases it real fast ..... 2 weeks later the FSF comes a knocking wanting to know where the source for IE is and "didn't you say in court your browser is so highly integrated into your OS it can't be removed ... we'll have the source to that too please" ....

    1. Re:How about this one .... by CaptBubba · · Score: 5, Interesting
      I actually don't see any mention of the GPL on any of the pages, or in the downloadable source.

      Doesn't this mean that nobody else is allowed to distribute it? I mean, MS could still get in a whole lot of trouble for inclusing this code in its patch, but they wouldn't risk losing source code.

    2. Re:How about this one .... by jujitsustab · · Score: 5, Insightful

      Why would Microsoft use this code in their patch ? This patch code is based upon readily available IE com interfaces which allow addon IE programs to interact with browser operations. In fact, this patch simply checks the url for the vulnerability every time you navigate to the page. If the vulnerability is found it instead naviagtes to: http://www.openwares.org/cgi-bin/exploit.cgi?A&amp ;B where A is the spoofed url and B is the actual url. Microsoft would fix this vulnerability in the actual IE code, not in a bolted on module like this.

    3. Re:How about this one .... by aulendil · · Score: 3, Informative
      Doesn't this mean that nobody else is allowed to distribute it?

      No, the GPL isn't the only way for distributing source code. The code could be in the public domain (or no license), allowing anyone to use/distribute it, it could well be under a BSD style license which would allow anyone to do whatever with the code. And no, whichever way the code is licensed Microsoft couldn't lose source code. As this is a standalone fix using the IE COM interface the code doesn't link to any Microsoft object code. Therefore the GPL doesn't apply.

    4. Re:How about this one .... by arkanes · · Score: 2, Informative

      Except that, in fact, it's not any of those OTHER options either. No, nobody besides the author is permitted to distribute the patch code (RTFLicense). The GPL not applying has nothing to do with it being a IE COM help object, the GPL doesn't apply because the code isn't under the GPL. Simple as that.

  41. I wouldn't call this a patch... by goranb · · Score: 5, Insightful

    Judging from the source it's a quite simple COM object, which hooks into IE and checks URLs before IE actually starts "processing" them (opening connections, parsing...)
    If it finds anything out of the ordinary (like an exploit) it just redirects IE to their own site. Specifically to http://www.openwares.org/cgi-bin/exploit.cgi. It adds a few paramters (the fake url among other), so I guess they will be building a database of exploiters...

    It's no patch, IE stays as it is. It's more a workaround. I'm not sure whether these hooks are documented (allthough being a windows system programmer I never liked IE and stayed as far away from it as possible), but if yes, Microsoft might actually have nothing on openwaves...

  42. Memory leak by Anonymous Coward · · Score: 4, Informative

    From a cursory look at the source code, it looks to me as though there are at least two memory leaks. To be more specific, in function BeforeNavigateEvent(), there are two calls to malloc(), but no calls to free(), and the pointers that malloc() returns are stored in local variables, so there is no possibility that a parent function free()s them. Having said this, I haven't written any code under Windows, so maybe there is some kind of garbage collection in the Windows memory model that I am ignorant of?

  43. The time problem has nothing to do with the patch by SonicBurst · · Score: 5, Insightful

    The time it takes to patch the problem is miniscule compared to the regression testing done to make sure the patch fucks up as little as possible. They test EXTENSIVELY and even so you still get the occasional patch that interacts with other software and ways you can't predict and breaks something. It happens. Any code monkey could hack out a patch, but I know damn well they haven't tested this as much as a corporation supporting 90% of the world's browser users would. That's where the time is, so quit bitching about how long it takes to release a patch. Now, the time it takes to ACKNOWLEDGE a bug is a different story....

    --

    Geek used to be a four letter word. Now it's a six-figure one.
  44. Re:Seriously. by AaronW · · Score: 2, Informative

    Out of curiosity I took a quick look at the code. Right off the bat I see what MAY be new problems introduced by this code (I'm not a Windows programmer or user so I can't be sure), but I see what looks like a memory leak for every URL. In CIETray::BeforeNavigateEvent a new destination string gets allocated via malloc.

    1. *dest is not verified to be non-NULL.
    2. *dest does not appear to be freed, resulting in a 256 byte memory leak per URL.
    3. URLs greater than 255 characters in size might have problems since the length 256 is hard-coded into the code.
    4. It may be a similar problem for *url.

    Granted, I only spent 5 minutes glancing at the code, but I don't like what I see, and the cure might be worse than the disease. I'd like to see a serious audit of this code before trusting it.

    I'm not sure if these are actual problems or not since I don't have the time to learn all the Windows APIs and programming, but it looks highly suspect to me. I do embedded C and Unix programming, not Windows programming.

    -Aaron

    --
    This post is encrypted twice with ROT-13. Documenting or attempting to crack this encryption is illegal.
  45. Re:Seriously. by redfenix · · Score: 2, Informative

    How many times did you decide to post this same comment? It does not become you, especially since the other two were anonymous.

    Here's the first anonymous duplicate posting.

    And here's the other anonymous duplicate posting!

    --
    "It's a very tangled subsystem." --Windows kernel guru
  46. This "patch" leaks memory - and other bad stuff by bighoov · · Score: 5, Informative

    A list of the bad things about this "patch", just at first glance:

    1. Leaks 256 bytes on every URL navigation
    2. Leaks 512 additional bytes if it finds an exploit URL
    3. Creates a string with the \1 char in it on every call, but does nothing with it
    4. Will overwrite stuff on the stack if the URL has the exploit and is very close to 256 chars in length.

    It's a good thing these guys aren't on the real IE dev team.

  47. RTFC by b17bmbr · · Score: 5, Informative

    if you'd have taken a few minutes (or seconds w/broadband) to get the source and look at the code, you'd see this:

    By using this source code, you agree to the following terms: 1) You may use the source code, resource files for educational purposes only. 2) You MAY NOT redistribute this source code without written permission. Failure to do so is a violation of copyright laws. 3) The author of this code may have retained certain "additional copyright rights". If so, this is indicated in the author's description.

    since i doubt there'd be anything educational about IE source code...and by the way, i don't think this qualifies as an open source license.

    --
    My problem? I was perfectly gruntled, until some numbnuts came by and dissed me.
    1. Re:RTFC by Holi · · Score: 4, Interesting

      I disagree. Just be3cause something is open source (as in they offer the source with the binary) does not mean it must be GPL (freely ditributable (ok nevermind the really poor spelling)). GPL is not the only open source license. In fact I wish more commercial software were like this. It would make security auditing much easier. Yes I cannot use their code in my projects but at least I could have some trust in their programs.

      --
      Sorry, teleporters just kill you and then make a copy. A perfect, soul-less copy.
  48. Do Not Use It-It's Got a Huge Vulnerability Itself by DmitriA · · Score: 5, Informative
    For one thing, it's an IE add-on (similar to a GoogleBar and others), not a patch. So it's a messy solution to begin with.

    On top of that, it's buggy. It has a memory leak in its BeforeNavigatorEvent() IE callback function which gets triggered before a loading of each new page. There they allocate a string of 256 bytes, but never even bother to clean it up!
    I'm not even sure if that memory is going to be cleaned up when you close all the IE windows, since it's really a Windows system component and this DLL may not be unloaded even with the closing of IE. But I may wrong that point...

    But even that's not the worst thing. Their code actually contains a buffer overflow, allowing the attacker to execute code on your machine with the privileges of the IE process just by crafting an invalid URL link and getting you to click on it!

    Basically, they use WideCharToMultiByte() to convert the unicode URL string to that allocated 256-byte ASCII character array. They tell the function the size of their array, but if the URL string exceed 256 characters in length, it will not overwrite that buffer and cause an immediate buffer overflow. Instead it will fail and tell you to increase your buffer. Well, guess what? They don't check for that failure condition (and, incidentally, it may fail for many other reasons during the Unicode->ASCII conversion) and happily proceed to use it in a strcpy() later on, overwriting another 256-byte character array which is now located on the stack. A nasty buffer overflow just waiting to be exploited...

    So to summarize, they took a relatively minor problem (URL spoofing) and made it a hundred times worse with their 'solution'. Great job, guys!

    Offending code:
    /* memory leak */
    char *dest = (char *)malloc(256*sizeof(char));

    /* Unicode->ASCII conversion that doesn't do error checking */
    WideCharToMultiByte( CP_ACP, 0, BSTR)url->bstrVal, -1, dest, 256, NULL, NULL );

    ...

    /* vulnerable arrays on the stack */
    char sFake[256];
    char sTrue[256];

    ...

    /* please overwrite the return address on the stack and execute my shellcode */
    strcpy(sFake,strstr(dest,"\2") +1);
  49. Re:Do Not Use It-It's Got a Huge Vulnerability Its by DmitriA · · Score: 5, Informative

    Eh. Just realized that since WideCharToMultiByte() will fail, it will not actually copy the URL to the dest[] array and thus, you probably can't overwrite the return address with a legitimate value and get it to point at your shellcode. It's still easy to overwrite it with a random value (with whatever is sitting at the time in the uninitialized dest[] array) and cause a crash, but executing malicious code may be a little harder to pull off...

  50. Re:The time problem has nothing to do with the pat by Minna+Kirai · · Score: 2, Insightful

    The time it takes to patch the problem is miniscule compared to the regression testing done to make sure the patch fucks up as little as possible.

    If Microsoft employed better software design, IE wouldn't be entangled with the whole OS, and their testing workload wouldn't need to be so extensive.

    I know damn well they haven't tested this as much as a corporation supporting 90% of the world's browser users would

    Several times, 3rd party volunteers have demonstrated the ability to test Microsoft's software more thoroughly than the publisher ever did. (Server software though, which can be easily tested by software, not the browser)

  51. Opera by 10scjed · · Score: 4, Interesting

    Opera7.23- not only is it not vulnerable to this exploit, it pops up a dialog box to advise you're being redirected to a user@ address (and shows the real address in the bar).

    --
    --10scjed IANAL,AFAIK
  52. Over hyped. by jag164 · · Score: 4, Interesting
    First of all. This 'patch' isn't too extrodinary. This is a plugin similar to the google bar. There is no reverse engineering, thus no threat of DMCA. It's really not a patch, it's more of a work around. It's also a publicity stunt. Upon detecting a spoof, there should me no reason to go to the 'patch makers' website for info when it could be done within the plugin.

    Second, it's a horrible precedent for closed source software. Let close source fixed close source. This may seem like a good thing(tm) for the OSS communtity, but you know damn well that not-so-good-intentioned 'patches' will soon follow. Post some source on a site, provide an EXE(that of course didn't come from the source) and you've fished in countless joe users before the real word is out that a copy cat has duped you. Too late for some.

    I can only see bad things(tm) coming from this idea. Geeks know who and what to trust, but Joe User doesn't. And when joe user screws up it screws us all.

    The sum: This may have a greater negative impact in the long run then the good one it was intended to have.

  53. Re:Do Not Use It-It's Got a Huge Vulnerability Its by DmitriA · · Score: 4, Insightful

    Well, this is hilarious. I guess I should never assume anything until I try it out myself. Apparently when WideCharToMultiByte() fails, it DOES overwrite your string until but presumably does not go over the specified bounds. So their code is still vulnerable to remote code execution since you can fill the dest[] array with the shellcode and a new return address that would point to it. You only have 256 bytes to work with (in reality even less, since they have some other stuff on the stack that you need to get over before you get to the return address), but if you are good with assembly, that should be enough to do some fun stuff... In comparison, Slammer was 306 bytes in size, but of course did quite a bit too...

  54. Re:The time problem has nothing to do with the pat by AntiOrganic · · Score: 2, Insightful

    If your software is so tangled in intertwined components that a patch for an issue this simple would conceivably break something elsewhere on your system, then your terrible product design is the concern, not the QA.

  55. Re:The time problem has nothing to do with the pat by SonicBurst · · Score: 2, Insightful

    If Microsoft employed better software design, IE wouldn't be entangled with the whole OS, and their testing workload wouldn't need to be so extensive

    Even if IE wasn't entangled in the OS, there's still a shitload of testing to do. Also, MS TRIES to make sure that their patches don't break 3rd party apps. How many other companies do you know that do that? I'm not saying they always succeed at that, but they try, since it is in their own best interest. They don't need the whole world thinking their patch sucks because it broke some spyware/hotbar/whatever else IE add-in.

    Several times, 3rd party volunteers have demonstrated the ability to test Microsoft's software more thoroughly than the publisher ever did. (Server software though, which can be easily tested by software, not the browser)

    Yes, any one with an axe to grind with MS can spend the majority of their adult life testing MS software in order to break it and find flaws. In fact, many security companies make their living doing this. However, MS is a business. A business that likes money. As everyone knows, time is money, and if MS thinks it has put enough time into testing, it will release the patch, perhaps a bit prematurely. It happens. Hell, for all we know, MS may wait for someone else to find the bugs so that they don't waste time and money on it! It's unlikely, but it would be smart business. Also, if you are suggesting that software testing would catch all the problems, you'd be mistaken. Who is to say the software checking the software doesn't have a few bits loose? Adding to that, it is impossible (in hardware, software, or otherwise) to predict every interaction code will have due to all of the 3rd party apps out there.

    --

    Geek used to be a four letter word. Now it's a six-figure one.
  56. Next on the list .... by Vilim · · Score: 2, Interesting

    Now if a benevolent open source firm would make a patch that gave IE PROPER PNG support, then I would be very grateful (I have been swearing at IE's lack of png support for the last hour for messing up my very cool website design)

    --
    History will be kind to me, for I intend to write it - Sir Winston Churchill
  57. Re:The time problem has nothing to do with the pat by LnxAddct · · Score: 2, Insightful

    Umm...I don't know if you've ever done any patching, but usually you can tell by the broken code and the new code what areas to generally look at for incompatibilities. Most calls made shouldn't really be changed and the original code should be left untouched as much as possible. If so much of the code is a problem that you literally have to test the whole system, oh well thats sloppy coding and its their fault. On Debian, security patches are as much of the original code as possible and the rules on what can be changed in the code are fairly strict. Despite this, security patches are always released promptly and people can have the assurance that their systems will remain stable and won't be broken. MS doesn't really have an excuse. Hell, if they opened the code I'd do the patching for them. Just my 2 cents.
    -Steve

  58. Re:Do Not Use It-It's Got a Huge Vulnerability Its by qtp · · Score: 4, Funny

    It seems you've got a good handle on this, so when can Openwares expect your patch for the vulnerability in thier patch?

    --
    Read, L
  59. Dangerous by SkewlD00d · · Score: 2, Insightful

    This patch uses strcpy()/strcat() and 256 char buffers instead of dynamic buffers and strncpy()/strncat() in IETray.cpp.

    FOR THE LOVE OF GOD/ALLAH/BUDHA DONT USE strcpy()/strcat()/gets() !!!

    These functions ought to be made illegal. This is why buffer overflows exist, because amateur coders generally don't know what they're doing and because they dont grasp the security implications of design decisions. Be warned, users[ESC]bcwidiots herd together.

    -- Naive C programming will get you everywhere, it appears, even if you don't have a clue.

    --
    The biggest trick the devil pulled was letting lawyers become politicians so they can write the laws.
  60. In Other Other News... by Anonymous Coward · · Score: 4, Funny

    SCO Group of Lindon Utah announces that it has filed suit against Microsoft for including Unix/Linux code in Microsoft's Internet Explorer. Darl McBride says "There's no way these burger flipping losers could fix IE without our help. Microsoft couldn't even fix it without our lawyers."

    Shrewd investors continue to laugh at the SCO Group's activities and have the following comments:

    "The funniest thing I've seen since the Paris Hilton tapes!" - MSN

    "A gut buster worthy of John Belushi - but SCO does more drugs" - Timothy Leary

    SCO also announced that Caldera Linux licences still outpace all other SCO products - excluding lawsuits - by a 2:1 margin. Darl announced that they expect to make that 3 to 1 by next summer before they are purchased outright by IBM for $1.50 and a can of Red Bull.

  61. And if it were MS code by phorm · · Score: 3, Insightful

    Then nobody would have noticed the stack vulnerability, unless you had either a machine vulnerable to the original exploit, or a machine vulnerable to a new exploit as per being patched

    Since it is open-source, however, somebody can fix that bug nice and quick before it becomes another problem (gee, imagine that).

    Lack of foresite on the behalf of the patch developer is a bit disturbing, but not a bad reflection on OS code at all :-)

  62. FoxPro was patched sans source ... by kupci · · Score: 3, Interesting
    Granted, not your average programmer can do this, and yes you're right, it does take detailed knowledge, and a little familiarity with assembly.

    Microsoft, in it's efforts to steer people away from FoxPro to Access, many years ago, decided to not bother patching some serious issues with FoxPro. What happened was there was a very poor piece of code that tried to figure out how fast your processor was when FoxPro started up, I forget exactly what it was for, but the programmer(s) made a small bug where if the processor was extremely fast, the value would be set to -1, and FoxPro would promptly crash. Worked fine for years until some of the new processors came out.

    Anyway, Microsoft stalled on fixing this timing issue bug, so some smart fellow tweaked the exe file to fix it. Yeah, not even assembler, we're talking hex. Pretty damn cool.

  63. That's why OSS is more secure... by kupci · · Score: 3, Interesting
    For one thing, it's an IE add-on (similar to a GoogleBar and others), not a patch. So it's a messy solution to begin with.

    There's a saying for this: crap built upon crap.

    There they allocate a string of 256 bytes, but never even bother to clean it up! I'm not even sure if that memory is going to be cleaned up when you close all the IE windows, since it's really a Windows system component ...[more scary windows stuff]

    Seems like a combination of the lousy design of the Windows components coupled with using C. Long, long time since I've worried about destroy and the like, what with the availability of better languages like Java, etc. Granted once buffer overflows are a thing of the past, there will be new holes, but at least we will be moving forward.

    But even that's not the worst thing. Their code actually contains a buffer overflow, allowing the attacker to execute code on your machine with the privileges of the IE process just by crafting an invalid URL link and getting you to click on it!

    Good catch. So one security flaw fixed, opening up another flaw - a little embarrasing, except MSFT did the same thing a few weeks ago in their flurry of untested patches. But it does show the inherent advantage of open source in that *anyone* can review the code, and fix it, without resorting to messy hacks such as this.

  64. Re:The time problem has nothing to do with the pat by 1lus10n · · Score: 3, Informative

    To quote: "MS TRIES to make sure that their patches don't break 3rd party apps."

    Bullshit ! MS only tests for apps that have parent companies they get along with (also known has, they haven't tried to start a monopoly in that market yet.). As a matter of fact they were convicted in court of releasing patches that BROKE third party functionality on PURPOSE.

    Who ever modded you as insightful was an ass.

    --
    "Two things are infinite: the universe and human stupidity; and I'm not sure about the the universe." --Albert Einstein
  65. Avoiding buffer overflows in C by Chris+Burke · · Score: 2, Informative

    is not that freaking hard, people!

    At least this simple type with C-style strings (char*) and fixed-size buffers.

    Here's the rule:
    Instead of using any of
    strcat()
    strcpy()
    sprintf()
    gets()

    you use
    strncat()
    strncpy()
    snprintf()
    fgets()

    The second set of functions all take a length parameter which is the maximum number of bytes that the function will copy. You don't have to worry about your source not being null-terminated, or being unusually long, because the function will not copy more bytes than you say it can. snprintf() (in C99) is especially cool because it returns the number of bytes it would have written if the length parameter were larger.

    strncat() is still kinda annoying, because it copies N bytes, as opposed to using N as the overall size of the target buffer. So whereas in the other functions you just pass it the size of the destination buffer, with strcat you pass size of buffer - strlen(buffer). Still pretty easy.

    Do not use strcpy, strcat, or sprintf with user-supplied input! And especially don't use gets()!

    It really isn't that hard!

    --

    The enemies of Democracy are
    1. Re:Avoiding buffer overflows in C by Ninja+Programmer · · Score: 4, Informative
      Here's the rule:
      Instead of using any of
      strcat(), strcpy(), sprintf(), gets()

      you use
      strncat(), strncpy(), snprintf(), fgets()
      This is hardly a sufficient recommendation for significantly reducing buffer overflow problems in C code. It changes the problem into a length management problem, where the unskilled C coder (after all, didn't they have a buffer overflow in their code in the first place?) is not necessarily going to fare any better.

      If you want to really reduce buffer overflow problems I suggest you visit the following two web pages:

      The Better String Library

      and

      Getting user Input

      I personally guarantee that buffer overflows in your code will dramatically decrease if you use the ideas spoken of and the source code on those pages.
  66. You don't know, apparently. by ZxCv · · Score: 2, Informative

    You do know that the "patch" is a spyware style CGI script to log your browsing habits?

    Wrong. Try actually reading the source, and you'll see that's not what it is at all. I don't even use IE, so my reading through the source was very quick, yet I was even able to pick up on how it actually works.

    --

    Perl - $Just @when->$you ${thought} s/yn/tax/ &couldn\'t %get $worse;
  67. Gasp! You violated copyright! by Dwonis · · Score: 2, Funny

    // Terms of Agreement:
    //
    // By using this source code, you agree to the
    // following terms:
    //
    // 1) You may use the source code, resource
    // files for educational purposes only.
    // 2) You MAY NOT redistribute this source code
    // without written permission. Failure to do
    // so is a violation of copyright laws.
    // 3) The author of this code may have retained
    // certain "additional copyright rights".
    // If so, this is indicated in the author's
    // description.

  68. Re:Holy FuckBalls by Anonymous Coward · · Score: 3, Informative
    Don't program much do you? Tell you what sunshine why don't you tell me what this if statement does:
    if (NULL != strstr(dest,"\2") || NULL != strstr(dest,"\1") || NULL != strstr(dest,"\218"))
    Since you missed it the first time let me spell it out. They search the destination string for a "\2", "\1" or a "\218". If they find it then they redirect to their own server sending if the offending URL.
  69. Re:Hey, morons by Anonymous Coward · · Score: 5, Interesting

    hmm...
    In ::BeforeNavigateEvent (IETray.cpp)
    It copies the string to a MBCS buffer, and scans for %01, %02, and %DA. If none of these exist, the rest of the function is skipped. Don't see how this phones home.

    Of course, the strings is malloc()ed but never free()ed... But that's another matter. That and for some reason they don't just use all-unicode (use wcsstr() etc.)... What if I wanted to surf to a site with a character that is not in the current code page? (e.g., search for Japanese text on Google using an English O/S) (Note that IE has the option of always sending the URL in UTF-8, so it has to be able to deal with characters not in the ACP)

  70. Re:Hey, morons by KarmaPolice · · Score: 4, Insightful

    You do realize this patch phones home, don't you? Slashdot just advertised a piece of spyware. It phones home to validate every URL. Read the website.

    The patch is open source. I don't even know if you are right in your statement but if you are, then download the source and change the way it works! Or live in fear...

  71. No, not so much. by Jeff+Mahoney · · Score: 4, Informative

    Check the code again.

    The only URLs that get sent to their servers are the ones that it's filtering out, ones that would normally exploit the bug. At the other end (granted, at least for now) is an IE-lookalike error message saying that the exploit was caught.

    The first line before all that stuff involving redirection through their servers:
    if (NULL != strstr(dest,"\2") || NULL != strstr(dest,"\1") || NULL != strstr(dest,"\218"))

    It only matches URLs containing %01, %02, or %8F, which doesn't really "fix" the problem, but it's at least a workaround.

  72. Re:Holy FuckBalls by nacturation · · Score: 2, Insightful

    Uh... you may want to try and understand the code first, particular this conditional statement:
    if (NULL != strstr(dest,"\2") || NULL != strstr(dest,"\1") || NULL != strstr(dest,"\218"))
    Only if that condition is matched -- the string contains bytes having the integer values 1, 2, or 218 -- do you get redirected to their server. Nice troll attempt though.
    --
    Want to improve your Karma? Instead of "Post Anonymously", try the "Post Humously" option.
  73. A feature (RFC) not a bug by llauren · · Score: 2, Interesting

    Is the "@-spoof" really a spoof? According to RFC2396, section 3.2.2 "Server-based Naming Authority", this is a feature of the URI and not a bug or a spoof.

    Certainly it can be made to fool even an enlightened user, but isn't it wrong to cripple a browser's ability to adhere to the "Uniform Resource Identifiers (URI): Generic Syntax" RFC -- and even more so with spyware ;)

    Browsing the "test page" at Openwares with my Konqueror gives me the spoof page. Good. That just means that Konqueror is RFC2396-compliant (but should i patch anyway? ;).

    I first came across this "bug" about two years ago when i was forwarded an "authentic" page from Microsoft Support: Q209354 - HOWTO (mirror). It took me a while to realize that nobody at M$ was going to be fired for this type of creativity.

    See The Reg for an article for some coverage -- although the host hwnd.net is off the net, so you can't really try to get spoofed.

    • ~llauren
  74. Third party patch...oh dear by Zog+The+Undeniable · · Score: 2, Interesting
    No corporates are going to risk installing it, since it didn't come out of Redmond. And home users who give enough of a stuff about security to realise that IE has problems are probably using Mozilla or Opera.

    On a related topic, did anyone else notice that chrome-free popups are to be terminated in XP SP2 (announced yesterday)? They're a great technique for the site spoofers since you can have the whole shebang - genuine looking URL *and* a nice little SSL padlock. Simply use a screenshot of a real online bank as the background and stick your own HTML form on top to capture the login details. JavaScript aficionados can even make the address bar and toolbar work like the real thing, if they see fit. Thankfully the Russian mafia aren't that sophisticated...yet.

    --
    When I am king, you will be first against the wall.
  75. Patch the patch ... by Ninja+Programmer · · Score: 2, Insightful

    Well that's hardly in the spirit! I have a proposed fix for this "patch" that you can find here:

    IETrap.cpp

    Diffs

    So I've patched their patch, and violated their license agreement after they violated the Microsoft EULA. That makes me feel so recursive.

  76. Use MyIE2 0.9.11 by SuckItTrebek · · Score: 3, Insightful

    You should use MyIE2 instead, http://www.myie2.com Fixed "IE URL Spoofing Vulnerability" problem. You also get the following: Tabbed Browsing Interface Mouse Gestures Super Drag&Drop Privacy Protection AD Hunter Google Bar Support External Utility Bar Skinning What else could you ask for?

    1. Re:Use MyIE2 0.9.11 by insomaniac · · Score: 2, Funny

      I know I'm going to get modded to hell for this but how about a w3c compliant html/css implementation?

      --
      The way to corrupt a youth is to teach him to hold in higher value them who think alike than those who think differently
  77. Actually this is a patch by SmallFurryCreature · · Score: 2, Insightful
    Pointed this out before but this is a patch. Word you are looking for is a fix. Patch is temporary. Like patching a wound until it can heal. Patching your clothing until it can either be properly repaired or replaced. Patching a punctured tire so that you can put some air back in and get home where sooner or later you will have to get it repaired properly.

    I am against words getting a new meaning just because computers are involved. YES I am anal. Some of us need to be.

    As for how this is done? Same way as all the IE plugins. All those bars you see and popup blockers? Same thing.

    --

    MMO Quests are like orgasms:

    You may solo them, I prefer them in a group.

  78. Re:Holy FuckBalls by Pharmboy · · Score: 2, Informative

    Uhh... MS al ready does on host not found errors, with their MSN search.

    Not only do they redirect you to their servers, but their service packs have a nasty habit of resetting your IE preferences to doing this, even if you have chosen to NOT go to MSN.com in your settings. I don't like either company doing this, but MS is the worse about it. Symantec also is bad about this kind of violations. Try installing and uninstalling any Norton product, then go swimming into your registry and see. Adds half a meg of registry even when uninstalled.

    Again, a major reason I keep looking toward Linux/MacOS/BSD.

    --
    Tequila: It's not just for breakfast anymore!
  79. Very Dangerous Patch by cipset · · Score: 2, Interesting

    According to Heise Security www.heise.de this patch actually builds up bigger security holes than it repairs

    In german:

    http://www.heise.de/newsticker/data/dab-19.12.03-0 02/

    Actually the have also a test for those who already patched their systems with this:


    http://www.heise.de/security/dienste/browserchec k/ demos/ie/e5_18.shtml

    So do not use this patch!

  80. Re:Hey, morons by arkanes · · Score: 2, Interesting
    It actually changes faked URLS to a url pointing at thier home page - this page may simply do a redirect or it might be an alert page letting the user know that they were about to be spoofed (probably the latter). It's not really "phoning home" per se, but the certainly could (and probably do) track traffic to that page to try to analyze the use of this exploit.

    That said, I'm not real impressed with this "patch" - theres alot of use of c-style string work in a C++ file, which is silly, and more than that it's not even safe use of c-strings - the file concatenation of the URL together involves just using strcat() (not even strncat()) without any sort of length or sanity checking on the buffer.

  81. Re:Holy FuckBalls by arkanes · · Score: 2, Informative
    I'm a little more worried about this part:
    strcat(surl,sFake);
    strcat(surl,"&");
    strcat(sur l,sTrue);

    Notice the total lack of sanity checking on the lengths of those buffers... This is especially bad because surl is a stack based buffer and theres no reason whatsoever to not use strncat() in this case.

  82. Re:The time problem has nothing to do with the pat by Anonymous Coward · · Score: 2, Informative

    So the old mantra of "Dos isn't done until Lotus won't run" has been completely wiped out of MS' corporate consciousness?

  83. Stacks by Scorchio · · Score: 2, Insightful

    Yep, better string handling. Always good.

    But I was wondering... buffer overflows are a problem because we have a descending stack - ie. as you add stuff, the stack pointer moves backwards through memory - so the return address and other data is always located just in front of any local data.

    What is the reasoning behind the use of a descending stack? Is this a legacy from a hardware or software decision? Is there anything we would lose by having an ascending stack, which would make overflow exploits a lot more difficult? Anyone know?