Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

Create Account  |  Retrieve Password

Firefox Susceptible To QuickTime Security Flaw

Posted by kdawson on Tue Nov 27, 2007 02:56 PM
from the exploit-available-in-the-wild dept.
Hugh Pickens writes "Apple's QuickTime media player software contains a previously undocumented security weakness in the way QuickTime handles the RTSP media-streaming protocol. The vulnerability is present in QuickTime versions 4.0 through 7.3 (the latest version) on both Windows and Mac systems. Symantec has tested the publicly available exploit code and found that it failed to work properly against Internet Explorer 6/7 or Safari 3 Beta but the exploit works against Firefox if users have chosen QuickTime as the default player for multimedia formats. Firefox users are more susceptible to this attack because Firefox farms off the request directly to the QuickTime Player as a separate process outside of its control, while IE loads the QuickTime Player as an internal plugin and when the overflow occurs, standard buffer-overflow protection is triggered, shutting down the affected processes before any damage can occur."
+ -
story

Related Stories

This discussion has been archived. No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More
Loading... please wait.
  • by Shoeler (180797) * on Tuesday November 27 2007, @02:57PM (#21496135)
    Why? I mean help me understand how it simply farming the request to an external app, where the external app has the security problem, is a firefox problem?
    • by Volante3192 (953645) on Tuesday November 27 2007, @03:01PM (#21496177)
      Exactly...the way I'm reading this, if someone opens whatever this is straight in Quicktime it'd be vulnerable.

      Guess they want the more hits by throwing Fox into the mess though, but really, why have Mozilla fix Apple's flaws?
      • by Benaiah (851593) on Tuesday November 27 2007, @07:48PM (#21499615)
        People still use quicktime?
        Why? Just why?
        Every website that has a quicktime video, I just go straight to youtube and search for the equivalent.
        This is mainly due to the fact that the quicktime plugin traditionally hasn't been able to automatically install. You have to actually go to their website and install some adware filled crap that will never leave your system tray alone.

        *bends over ready for -5 apple bashing*
    • by aredubya74 (266988) on Tuesday November 27 2007, @03:01PM (#21496179)
      It's not a Firefox problem inasmuchas a fix to Firefox itself will fix the problem. However, it's a reasonable idea to provide a heads-up to Firefox users (savvy and not-so-savvy) that a popular associated app it interacts with contains a flaw that appears to be unique to said pairing.

      Besides, this is Slashdot. Since when did the headlines make sense?
    • I don't know. But IE gets blamed for similar sorts of situations as well (but not this particular instance).
    • by everphilski (877346) on Tuesday November 27 2007, @03:04PM (#21496243) Journal
      It isn't a firefox problem, but then again, it isn't an IE problem because Internet Explorer has some buffer overflow protection which prevents further execution.

      Glass half empty, half full type thing. Of course, Quicktime is causing the problem, but would you rather have a browser that arbitrarily trusts the plugin, or does some bounds checking?
      • Re: (Score:2, Insightful)

        Quicktime is causing the problem, but would you rather have a browser that arbitrarily trusts the plugin, or does some bounds checking?
        I'd rather have a browser that focuses on making sites render most correctly, most quickly, and where only its core functions are concerns of the already burdened developers.

        But that's just me talkin'.
          • by Shoeler (180797) * on Tuesday November 27 2007, @03:52PM (#21496939)
            Look - I'm a programmer. It may sound pedantic of me, but I believe programs should be responsible only for what they are designed to do. Clearly this means being responsive and indeed responsible for their own security. Lapses in one's own program are unavoidable but should be quickly and non-quietly fixed. It's an interesting suggestion that the paradigm needs to shift to the parent app being solely responsible for its children's security.

            So taking your logic further, the OS should be responsible for all of this, so it's not even Firefox's problem. ^_^ Apps should be purpose built and responsible for that purpose. If you do the blame game up the line, you'll find tremendous bloat (more so than it already is) creeping into all first-line programs and even more so to the OS. If you don't blame Microsoft and OSX (the only two platforms Quicktime runs on, IIRC) as much as Firefox, you have violated your own thinking line.
            • I agree with your logic extension. If the operating system can prevent a security problem, it should as long as it can differentiate between the malicious behavior and normal application behavior. This is why such things as SELinux exist. Every part of the program in the stack should be responsible for its security and prevent any of its children from doing bad things as much as possible.
            • by everphilski (877346) on Tuesday November 27 2007, @05:10PM (#21497963) Journal
              The real problem here is the way Firefox handles the plugins. Or rather does not.

              IE uses a plugin interface to deal with QuickTime. As such, it has a standard framework which does some bounds checking and can find buffer overflows like this one and kill a plugin (or iexplore.exe if necessary) preventing damage.
              Firefox just passes parameters on to an external program.

              Pick your poison, you can probably make justifications for either, but to me the IE method makes more sense. It's embedded content, it should be handled as a plugin to the parent application. You are a programmer, I'm sure you are familiar with the concepts of parents and children :). I'm a programmer too ... I have to sanitize my inputs and sanitize my outputs. When I call functions that aren't mine I have to make sure that they are doing what they should be doing, not wreaking havoc on my computer, and in a sense that's exactly what this comes down to, taking responsibility for a child process.
      • Well if you volunteering installed the plugin, I just assumed the browser would trust it. Interesting to find out otherwise. Does that mean the Quicktime plugin could take IE down with it in a crash?
      • by sm62704 (957197) on Tuesday November 27 2007, @03:23PM (#21496503) Journal
        Glass half empty, half full type thing.

        The optimist says the glass is half full. The pessimist says the glass is half empty. The scientist says there is .3764666437 litres. The realist says "there's not enough". The doctor says "he's dead, Jim".
      • by marcello_dl (667940) on Tuesday November 27 2007, @05:42PM (#21498343) Homepage Journal
        Uhm but let's say we have good dog IE terminating the plugin for an overflow. IE won't be able to tell if it's accidental or malware at work, so it will throw a generic error or a warning at most, and terminate. The user really wants to see "supersexy.mov" so he may be tempted to download or get it from the browser's cache (people getting pr0n likely know about the cache). Or the user got the file by email or downloaded it with a spider. This time Quicktime player is invoked and blam, user is Pwned. So either all players must do bounds checking (inefficient) or it should be the OS, not the browser, the one who babysits processes.

        OTOH, babysitting probably takes up more resources so a paranoid OS will slow down. But IMHO the solution is still to taint dangerous stuff (what you got just downloaded) and have the OS babysit it.
    • by Sycraft-fu (314770) on Tuesday November 27 2007, @03:06PM (#21496273)
      When you use QT in Firefox, it appears in the FF window itself, it in a very real way seems to be part of FF. We aren't talking about opening a file that ten spawns another app, we are talking about opening something embedded in a page itself. As such FF is the one that is going to get blamed. Also, one can argue, they should share some of the blame. If you are loading a plugin in your app, perhaps you should load it in such a way that your app can keep control over it. Seems that the other browsers do this.

      So while it isn't FF's responsibility to fix the specific bug, it could be an indication of how things should be done better.
    • Why? I mean help me understand how it simply farming the request to an external app, where the external app has the security problem, is a firefox problem?

      Because Internet browsers are one of the commonest entry-points for malware. While one could argue that this strictly speaking isn't a Firefox problem, I for one would still expect a modern web browser to place as many barriers as possible between itself and my OS. The fact that it is standard practice in IE 6/7 to sandbox apps like this as an internal plugin should be enough of a motivation for the Firefox team to go the same way. Being upstaged in security features by a Microsoft product is pretty embar

    • by jvkjvk (102057) on Tuesday November 27 2007, @05:12PM (#21497983)
      In a very narrow sense you are correct. The exploit is in Quicktime. However, in a general sense you are wrong because there are other browsers that, through their design and security models, do not allow this to happen. They shut down the offending code.

      It does not really matter that the 'actual' vulnerability is in Quicktime. Firefox is the application that controls whether this vulnerability will affect the user, since it is obvious that is it possible to have code in Firefox that stops this exploit from working.

      It is also a Firefox problem because any other plugin of this type is equally vulnerable using Firefox. From a secure coding point of view, is it your problem if you create an avenue whereby an exploit can occur? Damn straight! In this case, perhaps running the plugins in a controlled and monitored sandbox would be a good design change, instead of forking another process...
      • by 99BottlesOfBeerInMyF (813746) on Tuesday November 27 2007, @03:12PM (#21496365)

        Here's the deal: This is a QuickTime problem, not a Firefox problem. Apple needs to fix QuickTime. There should be nothing wrong with Firefox handing off the request to an application that's supposed to handle it correct.

        I 90% agree with you; however, I do think operating systems should handle transactions with internet applications differently than normal processes. Both Vista and Leopard and any Linux distro with SELinux enhancements has the ability to sandbox certain processes for added security. The reason this exploit does not work with IE is because runs it as a plug-in and sandboxes all of those plug-ins within IE. I'd argue that any process to which data is "handed off" by a Web browser, e-mail client, or chat client should run in a sandbox as an extra layer of protection against this common type of attack.

        Yeah, Quicktime is the culprit here and Firefox is not to blame, but I'd argue that the OS (all of them currently) is partly to blame for not sandboxing data coming into the machine via the Web.

      • Re: (Score:2, Insightful)

        My solution is to not use QuickTime. What pisses me off about QT is that it puts itself in the Windows startup, eating up memory for no reason. In fact, I stopped using iTunes all together because it installs a couple of services AND QuickTime. Plus, it's such a pain in the ass when I plug in my iPod to charge, and my computer starts to kill itself loading up iTunes automatically. I use Winamp with the external ml_ipod plugin. It's much better.
        • QT has become the new realplayer. iTunes sucks as well. I found it to be more counterintuitive than the godawful SonicStage for my SONY(don't laugh) mp3 player!
  • by skeftomai (1057866) on Tuesday November 27 2007, @03:00PM (#21496165)
    Man, I'm using IE from now on. It's WAY more secure...
  • by rminsk (831757) on Tuesday November 27 2007, @03:01PM (#21496181)
    So how is this a firefox problem? Firefox spawns off another process that has a flaw and it crashes. This process is completely outside of the memory space of firefox at this point.
    • Re: (Score:2, Interesting)

      by Anonymous Coward
      How do so many people have a problem understanding this? It's simple:

      Non-Firefox browser: exploit fails to execute, instead protected by bounds checking

      Firefox: exploit executes unchecked

      How is that NOT a Firefox problem? If you don't use Firefox, you're immune. If you do, you're vulnerable. Even if the final cause is currently QuickTime, it's only a matter of time until some other plugin is found vulnerable and exploitable under Firefox but nowhere else.

      Besides, Firefox and IE use different plugin models.
      • How do so many people have a problem understanding this? It's simple:

        Non-Firefox browser: exploit fails to execute, instead protected by bounds checking

        Firefox: exploit executes unchecked

        How is that NOT a Firefox problem? If you don't use Firefox, you're immune. If you do, you're vulnerable. Even if the final cause is currently QuickTime, it's only a matter of time until some other plugin is found vulnerable and exploitable under Firefox but nowhere else.

        Besides, Firefox and IE use different plugin models. Apparently the flaw is with Firefox's plugin model - clearly a Firefox problem.

        The headline should read "Vulnerability in QuickTime. IE mitigates attacks via its QT plugin. Firefox doesn't fix problem in QT."

        Per the Symantec article, the issue as related to Firefox is not with a plugin. The article states that QuickTime is run as a plugin inside IE and Safari. The vulnerable software is run inside the browser, and thus falls under the browser's control. http://www.symantec.com/enterprise/security_response/weblog/upload/2007/11/Image_IE.html [symantec.com] shows this. However, in the case of Firefox, QuickTime is run as a standalone app outside the browser. See http://www.symantec.com/enterprise/security_response/weblog/upload/2007/11/Image_FF.html [symantec.com]. In this case, Firefox gets Item A and sees that the system is configured to handle that type of item with Program B. Therefore, Firefox hands Item A to Program B. It works exactly the same as launching the malicious file from the Run box.

        Once again, it is not a problem with Firefox's plugin system because this is not running as a Firefox plugin. Let me correct your quote. See how that makes it a little less cut and dried?

        Non-Firefox browser: exploit fails to execute inside browser plugin, instead protected by bounds checking
        Firefox: exploit executes unchecked completely outside of Firefox

        If there were a vulnerability in your email or FTP program, would you blame Firefox because it hands off mailto: and ftp: links to those external programs? Should Firefox be held responsible for malicious files (of any type - Word, MP3, .exe, etc.) that you download and then run externally? The Symantec article also mentions emailing attachments as an attack vector. Uh oh, Outlook and Thunderbird are also flawed, because they hand the file off to QuickTime to open too!

        Also, judging by the IE pic, it appears that their "buffer overrun protection" is "crashing the browser". In this case, the QT vuln is also a DoS against IE, while Firefox does not have that vulnerability.

        I agree that every program should do what it can to limit damage. However, Firefox can't do much about completely external programs. In this case, Firefox has no understanding of the data being downloaded, just that the system is configured to handle the data with a certain program. The only way to fix this is with filename/URL blacklisting so it doesn't open the bad URL (gee, that's practical) or by coding Firefox to understand every type of data it encounters. Essentially, code every other program into Firefox itself so that it can determine if the data is good or bad before handing it off (gee, that's practical). If this were a problem with a Firefox plugin, I would agree with you fully. However, it's a completely external program which Firefox has no control over, so I can't disagree more.

    • Re: (Score:2, Insightful)

      by Anonymous Coward
      Because it is possible to have a better security model that doesnt spawn off another process.

      Kind of like how on an old operating system that doesnt have seperate address spaces it isnt the OSes fault if you run a program that brings down the entire system. But there is a better OS design they could have used that would have prevented that. Same thing here, there is a better browser design that would have prevented this.
    • Re: (Score:2, Insightful)

      by Anonymous Coward
      Which is exactly the problem. It should not pass untrusted files to other trusted apps. It should keep it inside it's own buffer overflow protection bubble as IE does.

      If this was an IE problem, you know the tagging beta would be full of 'defectivebydesign' and 'haha' remarks. But this is Firefox, so all is forgiven.
  • Stupid, stupid, stupid summary.
    • Summary mentions IE 6/7 but what about Mac? No IE 6/7 there.
      I use Safari for most browsing and I just upgraded my Firefox to 2.0.0.10
    • This does not happen in IE. And it seems like this problem spans all versions of Firefox that open Quicktime as a separate process rather than as an internal plugin.
      • Re: (Score:3, Informative)

        Better safe than hacked.

        No, better safe than CRACKED. When someone comes up with a hack for this, the problem is fixed.

        Don't you know where you are? This is slashdot, not the wall street journal. Hacking is when you turn your transistor radio into a fuzzbox or your lawnmower into a robot. Hacking is NOT "breaking into a computer system" you silly normal person.

        -mcgrew
  • by Anonymous Coward on Tuesday November 27 2007, @03:04PM (#21496231)
    So how many of these examples do we need to demonstrate that Apple software is not secure, and is only less exploited because it's less popular?
  • If it's just a simple buffer overflow, then shouldn't execute disable (NX bit for AMD, XD for stupid Intel who won't follow established standards) bit catch it for XP SP2 and other systems?
  • Troll -1 (Score:4, Funny)

    by dgr73 (1055610) on Tuesday November 27 2007, @03:05PM (#21496245)
    "Quicktime bug!?! Oh sweet Joseph of Arimathea!!!! Quick, inform the users.. YES BOTH OF THEM!"
    • Cause that is what his post is.
    • The interesting thing is, while Quicktime might not have two users, as an embedded player for online media, it has largely been supplanted as the defacto online media player and format by flash and flash videos. It seems while Quicktime's use might not be declining, it hasn't been gaining either even while online videos grow ever-more popular. The same could be said for WMV.

      Not that it matters, as all it takes is one bad site with an embedded malicious video...
  • by PhxBlue (562201) on Tuesday November 27 2007, @03:34PM (#21496653) Homepage Journal

    Software should be pessimistic. Design the code to handle incoming requests as potentially malicious, and you'll never be disappointed.

  • Phew (Score:2, Insightful)

    Man am I glad my system seems to deal with this problem proactively: The Quicktime plugin crashes anything that contains it almost as soon as it's drawn!

    Thank you Apple for protecting me from, well, Apple!
  • A bigger problem (Score:5, Insightful)

    by 0123456 (636235) on Tuesday November 27 2007, @03:59PM (#21497073)
    Is that there's apparently no way to simply disable a plugin in Firefox. In order to completely disable Quacktime I've had to go through various plugin directories physically deleting the files, and next time I have to update it all the bloody plugins will be back again.

    Why can't about:plugins just have a 'disable' box on each plugin? Or, better yet, a standard preferences menu list which just lets me disable them there and then?
    • Re:A bigger problem (Score:5, Informative)

      by post.scriptum (953120) on Tuesday November 27 2007, @04:30PM (#21497483) Homepage
      You can disable plugins in Firefox 3.0 beta 1.
    • by caitsith01 (606117) on Tuesday November 27 2007, @06:46PM (#21499039) Homepage Journal
      1. Quicktime doesn't ask whether you actually want to install the browser plugin when you install the QT player

      2. You HAVE to install Quicktime if you want to use iTunes

      3. You (sort of) HAVE to install iTunes if you want to use an iPod (although I strongly recommend people consider Winamp, which has native support now, or the excellent ml_ipod plugin for Winamp)

      4. Quicktime's browser plugin commandeers associations with a whole range of media types whether you want it to or not

      5. QT doesn't give you the option of launching QT in a totally separate window - it automatically opens things embedded in the browser and starts playing them

      6. QT seems to totally screw the ability to get Firefox to go back to launching media files with the good old "Open with..." dialog box, which lets you decide whether to open it, what to open it with, or whether to save it to disk

      7. QT has absolutely no regard for what other media players and file association you might already have configured for your browser

      and I guess we can add 8, although it was already implied

      8. QT is a buggy p.o.s. with worse functionality and security than any half-decent media player including VLC, Winamp, and (in my humble opinion) even the dreaded WMP.

      All of this reflects Apple's horrible attitude to developing software for the PC, which is essentially that they will utterly ignore the now well-established conventions of the platform in terms of installation behaviour, GUI and menu structure, and plugin behaviour and just run roughshod over the whole thing. Which would probably be more acceptable if their software JUST WORKED and was as fully featured as other options on the PC - but unfortunately that is not the case.
        • Re: (Score:3, Insightful)

          Yeah, that is annoying. They toyed around with the idea of making Quicktime optional, but they didn't like the idea of iTunes not being able to do kind of important stuff once it's installed like, I dunno... play music?

          Weird huh?

          Yeah, because without Quicktime installed in Windows it is simply not possible to do kind of important stuff like, I dunno... play music, is it?

          Microsoft better make it part of the default Windows install pronto to give millions of users worldwide the ability to actually play music

  • Symantec is wrong... (Score:4, Informative)

    by Anonymous Coward on Tuesday November 27 2007, @04:16PM (#21497321)
    http://erratasec.blogspot.com/2007/11/apple-quicktime-rtsp-update.html [blogspot.com]
    http://erratasec.blogspot.com/2007/11/new-rtsp-quicktime-flaw-affects-both.html [blogspot.com]

    Standard buffer overflow protection doesn't work, Symantec was wrong. It seems that parts of Quicktime are not enabled for ASLR making these attacks possible.
    • Re: (Score:3, Informative)

      Someone please mod parent up. Basically, there are two aspects to this:
      1) Someone has apparently figured out a way to launch the exploit that avoids the protection works correctly in Internet Explorer
      2) QuickTime (and its libraries) are not marked to allow ALSR, which would make this much harder to exploit.
  • by Cyko_01 (1092499) on Tuesday November 27 2007, @06:12PM (#21498663) Homepage
    if you are using 2.0.0.10 or later then you should already be protected against this exploit. THAT is why firefox is still the best browser available
    • Re: (Score:3, Insightful)

      If you have a Mac, then you have QuickTime. If you have iTunes, then you have QuickTime. That may not apply to you, but its fair to say it covers a huge chunk of marketplace overall. (I believe people who download Safari 3 Beta for Windows, and Bonjour for Windows, also have QuickTime by default, but they are bound to be a very small group.)
    • Does anyone use the Quicktime player at all? What does it do that mplayer or VLC doesn't (besides having a terrible user interface and no support for Linux)?
      • Re: (Score:3, Insightful)

        Of course. It comes with my Mac. It works well. I have the Perian, Divx, and Flip4Mac plugins so I can handle pretty much any codec, including FLV so I'm quite happy. It will also export pretty much anything. FAQ about QuickTime [apple.com]