Slashdot Log In
Mac OS X Users Vulnerable To Major Java Flaw
Posted by
kdawson
on Wed May 20, 2009 03:59 AM
from the write-once-own-everyone dept.
from the write-once-own-everyone dept.
FruitWorm writes in with word of a vulnerability in Java that has been patched by everyone but Apple. "Security researchers say that Mac OS X users are vulnerable to a critical, 6-month-old, remote vulnerability in Java, a component that is enabled by default in Web browsers on this platform. Julien Tinnes notes that this vulnerability differs from typical Java security flaws in that it is 'a pure Java vulnerability' and doesn't involve any native code. It affected not only Sun's Java but other implementations such as OpenJDK, on multiple platforms, including Linux and Windows. 'This means you can write a 100% reliable exploit in pure Java. This exploit will work on all the platforms, all the architectures and all the browsers,' Julien wrote. This bug was demonstrated during the Pwn2own security challenge this year at CanSecWest, but the details were not made public at that time. Tinnes recommends that Mac OS X users disable Java in their browsers until Apple releases a security update."
Related Stories
Submission: MacOS X users vulnerable to major Java flaw by Anonymous Coward
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
Loading... please wait.
Java and not javascript (Score:5, Informative)
I've disabled Java in Safari and doubt I'll see any difference since so few sites use Java applets these days. This is of course unrelated to Javascript which is much more disruptive when disabled.
Re:Java and not javascript (Score:5, Informative)
I've had Java disabled for years, and have only ever had to enable it for broadband speed test applets. Aside from that, and some upload plugins (though that's mostly flash or AJAX nowadays) client-side java just isn't used much on the web anymore.
I doubt you'll notice the difference.
Parent
Re:Java and not javascript (Score:5, Informative)
I've had Java disabled for years, and have only ever had to enable it for broadband speed test applets.
Then you are very lucky, and likely don't work for a ginormous company whose only way to not make things in ActiveX is to make them in Java. My timesheet program = Java. My Expense Report software = "Extensity" which seems to only like one version of the JVM. Lucky you!
Parent
Re:Java and not javascript (Score:4, Insightful)
Very similar here.
At home, I had removed all traces of Java like eons ago. Never had a problem. Only OO.o occasionally complains that there is no Java installed, but no crucial functionality is affected.
In office, one of the corporate portals uses ActiveX and Java. Though Java applet is used apparently only during authentication, it still requires Java. (IOW, puny 20K applet wastes countless megabytes/gigabytes of disk space on hundred desktops.) Otherwise - no Java in sight.
Parent
Re:Java and not javascript (Score:5, Insightful)
Then you are very lucky, and likely don't work for a ginormous company whose only way to not make things in ActiveX is to make them in Java.
: ) Reason no 12939 not to work at a gigantic corporation. Having experienced working in large companies, I sympathise.
The funniest thing about large companies using web-apps for internal software is that most of them produce web-apps which depend on technology which is not truly cross-platform (Active-X, using a certain JVM, depending on a certain browser, etc), thus removing most of the business benefit of using a web application in the first place.
Parent
Re:Java and not javascript (Score:5, Insightful)
But, because of this standardization, the internal development staff only needs to target one defined platform, they aren't really worried about cross-platform support.
This works really well as a way to cut costs *for the IT department* in the short term. As to whether it cuts costs for the company as a whole (there's the lost productivity involved in enforcing a standard install that you alluded to, and the lack of choice of tools), is another matter, and I'm sure varies with the company/tech involved. Obviously some degree of standardisation is required when managing large numbers of computers, so I'd happily concede that point.
But there is a bigger issue related to this strategy in the long term. In the long term, targeting one platform exclusively leads to the production of tools which are tied tighter and tighter to that platform. So it means you can never switch to a competitor; you can't even consider switching to a competitor unless you're willing to ditch all the internal software that you've built up which will only work on version X of system X. It becomes simply impossible for your business to even think about switching. You might even find that moving to a new version of an operating system has significant costs which you had not anticipated (an XP to Vista migration for example, or IE 6 to IE 8). These are not the normal costs of doing business, they are the costs of doing business if you choose to lock yourself too tightly to one platform.
There is a reason that Microsoft pushed things like Active-X, .NET and IE for web apps, Sun pushes Java everywhere, Apple encourages web pages made for iPhones, etc. It is to tie developers/companies in to using just their products, and it is in the long-term interests of the tool provider, not the company using the tools to work with.
Using web apps for internal software is a good way out of this conundrum, so long as you do not target a specific platform with them. Otherwise, you may as well be writing binary software tied to a specific version of one OS - the end result is the same - lock-in. I understand completely why, in the real world, these decisions are made, but if you look at the situation rationally they are not good investments of time/money over the long-term, and they undermine the very reasons for writing software as a web application in the first place.
Parent
Re:Java and not javascript (Score:5, Informative)
Though I'm not sure why this whole discussion is under the title "Mac OS X users vulnerable..." when as the submission says the issue affects everybody. Other than to start yet amother boring FUD/flamebait war, of course.
Maybe it's because everybody else has patched it
FruitWorm writes in with word of a vulnerability in Java that has been patched by everyone but Apple.
Parent
Re:Java and not javascript (Score:5, Informative)
I say may because Flex / Flash is pretty embedded and Microsoft is moneyhatting its way into the scene. Sun doesn't have money so its almost a charity case at this time, relying on good will from mobile phone companies and Java devs.
Anyway, Apple's "support" of Java is pretty pathetic. They're usually a year or more behind the curve and its not acceptable.
Parent
Re:Java and not javascript (Score:5, Insightful)
Anyway, Apple's "support" of Java is pretty pathetic. They're usually a year or more behind the curve and its not acceptable.
You're absolutely right about that. Apple decided that they'd be better than Sun at creating a JVM for their OS, so they did it themselves.
The result? PPC Macs are stuck on Java 1.5; Intel Macs have outdated, slow, and exploit vulnerable Java 1.6...
I'm more inclined to let the company that specializes in that stuff deal with it - but then again, maybe it gave them much needed experience for their Rosetta technology.
Parent
Re:Java and not javascript (Score:5, Interesting)
I'm more inclined to let the company that specializes in that stuff deal with it - but then again, maybe it gave them much needed experience for their Rosetta technology
According to the Sun engineers I've talked to it all has to do with a really old license agreement between Apple and Sun that they can't change for now. Sun is forbidden to directly release Java for Mac OS X until the agreement expire or Apple decides to make a new agreement. The only practical solution they proposed was to use the BSD port of OpenJDK. You won't have the Aqua UI and I think you have to deal with X11, but you will have an overall better Java.
Parent
Re:Java and not javascript (Score:5, Informative)
It looks like OpenJDK now runs on MacOSX:
http://landonf.bikemonkey.org/static/soylatte/ [bikemonkey.org]
Parent
Re:Java and not javascript (Score:5, Informative)
It does, but only with X11.
Parent
Re:Java and not javascript (Score:4, Informative)
AWT/Swing may be limited to X11, but SWT applications can still use Carbon (or Cocoa using the in-development version.)
Parent
Re:Java and not javascript (Score:4, Interesting)
Parent
Re: (Score:3, Informative)
The result? PPC Macs are stuck on Java 1.5; Intel Macs have outdated, slow, and exploit vulnerable Java 1.6...
Not only that but the Java "1.6" they support isn't the full version, it's missing all sorts of API's that are in the Sun version.
I'm not a huge Java fan but I wish Apple would step up their Java support. I hear rumors that Snow Leopard will contain the full Java 1.6 from Sun.
Re:Java and not javascript (Score:4, Informative)
Apple decided that they'd be better than Sun at creating a JVM for their OS, so they did it themselves.
That might have been the initial reason. Maybe.
But Apple really, really wants developers to use Objective-C and Cocoa when they are creating software for OS X. From Apple's strategic perspective, why support an alternative platform (and Java is an alternative platform) that doesn't lead to great Mac software, especially great Mac-only software.
And about that agreement between Sun and Apple that keeps Sun off OS X: now that Java is open sourced, what is keeping the community from creating and releasing an OS X-native client?
Parent
Great interoperability (Score:5, Funny)
'This means you can write a 100% reliable exploit in pure Java. This exploit will work on all the platforms, all the architectures and all the browsers,'
And the Java critics said total platform independence was impossible!
Re:Great interoperability (Score:5, Funny)
Yay this is gonna be so much easier than trying to ship Wine with my viruses...
Parent
Oh I don't know... (Score:5, Interesting)
after meeting some Mac newbies I am think I can already see the iceberg. Two are friends, one of which called me out of the blue to tell me that he just bought his first Mac (an iMac actually). Well needless to say I get calls from both since I am the "mac expert" (Read: I had one longer than them).
The simplest way to say it, they are more than happy to key in their password for anything that asks, even if they don't know what they are doing. After all, they are on a Mac, they don't have virus protection because it doesn't need it, so how is something bad going to get on the system. These are not normally dense people, well maybe they are proving me wrong.
So I figure that someone out there will rely on this type of stupidity to get key loggers, bots, and the like, on Macs. The number of people out there who buy one because they think it makes them cool or smart cannot be underestimated.
I do know one of these two did ditch firefox because they didn't like clicking the ad-block button to allow some sites. So it is just a matter of time.
(and no, I do not run a AV or worry about it on either of my Macs)
Parent
Re:Oh I don't know... (Score:4, Insightful)
In "the oldun days", computers used to come with books, instruction manuals, telling you how to use them. Nower days, OS vendors will jump through hoops to try and ensure that their users Do Not Have To Learn A God Damn Thing(tm)... and in some instances, inconsistent user interfaces actually prohibit learning (although I wouldn't call this common case). And this is the result.
I'm not suggesting people should have to know all the nuts and bolts of the internals, but I'm sure there's a middle ground so this culture of "our users are stupid, we must protect their tiny brains" can be vanquished.
(this is not limited to Apple/OSX by any means, although they do appear to me to be worse for it, this gap is closing fast)
Parent
Re:Oh I don't know... (Score:5, Informative)
As an agriculture monoculture, PCs were an easy infection target because of their uniformity and number. I wonder if, in an imaginary world where Win, Mac & Linux were split 30/30/30, you would still see 1/3 of the Windows malware? Hopefully not. Hopefully it'd be less.
I hate to break it to you but I remember the days when there was no Windows monoculture and data was usually passed with floppy disks.
Malware existed on all common desktop platforms back then. It couldn't spread as fast, but it certainly existed.
Parent
Re: (Score:3, Funny)
Nonsense! For years Java apps have been producing platform-independent error messages on all platforms equally. Fortunately, the exploit will probably error out too!
Re:Great interoperability (Score:5, Funny)
Am I the only one who first read that headline as "Mac OS X Users Vulnerable To Major Lava Flow"?
Parent
Instructions for turning off Java... (Score:5, Informative)
In case you don't have OS X but want to pass on the instructions to relatives, etc:
In Safari (version 4 beta):
Safari->Preferences->Security->Web Content: Enable Java (uncheck)
In Firefox (3.5 beta, probably the rest):
Firefox->Preferences->Content->Enable Java (uncheck)
I don't have any other browsers (opera, different versions, etc.) on hand, but it might be nice to add instructions in a reply...
Re: (Score:3, Informative)
Try Noscript.
Design or implementation flaw? (Score:5, Interesting)
The articles and bug reports are light on detail, I could only find out it is related to "Deserializing Calendar Objects" and allows the applet to execute stuff with the users rights (or probably more correct, the rights of the webbrowser who started the applet)., which sounds like an implementation problem to me. Was there some reference implementation all JVM-developers used for this specific functionality?
Re:Design or implementation flaw? (Score:5, Informative)
This [blogspot.com], gotten from the comments at TFA, has a bit more details on it.
Apparently it's a mix of both, a structural problem with the fact it needs to grant the Calendar class special priviledges to access ZoneInfo objects, and merely a common pitfall in that nobody had thought to limit those priviledges before to *just* accessing the calendar.
Beautiful stuff they used in the exploit, though, it's as if they actively tried to use every OOP-derived feature in Java on it at the same time ;)
Parent
Re:Design or implementation flaw? (Score:5, Interesting)
technical details here [cr0.org].
The gist of it that the Java Calendar code temporarily elevates its privileges in order to deserialize a ZoneInfo object. If you substitute your own object's serialization for the ZoneInfo, you can get the Java runtime to create any object you want. Some questions:
Parent
Re:Design or implementation flaw? (Score:4, Interesting)
Good link. It should have been in the summary. It seems like a fairly obscure bug though. Here's an interesting quote:
"I've mentioned that this was a class of vulnerabilities: the reason is that with this design, every time Java code deserializes an attacker-controlled input in a privileged context, it's a security vulnerability."
Maybe it's just lack of imagination on my part, but I can't think of a good reason for a privileged app to deserialize objects from an untrusted source.
Parent
To be expected (Score:4, Interesting)
Yes I know I'm probably going to get modded down immediately for saying this, but hell, it's the truth.
Re:To be expected (Score:5, Interesting)
"The (untrue) assumption that many people seem to hold (is) that...", patching actually is a "best practice", when it's not.
Marcus Ranum has a interesting and humorous take [ranum.com] on patching that spells it out much better than I could.
The short version:
This is true of 99.9% of software in use.
Parent
Re:To be expected (Score:4, Insightful)
Frak, someone always has to make this post, don't they?
Of course OS X has security flaws: it's a modern, general purpose operating system.
The fact remains that by many metrics it is much more secure than Windows. For one, there are no where near the number of malware in the wild targeting OS X as there are for Windows. Most people who run OS X have never, ever had to worry about contracting a virus, trojan, or worm. That is not the same thing as saying they never will, but it is a remarkable track record.
I am concerned about Apple's slow response to newly identified flaws. Their lack of candor in discussing vulnerabilities, their potential impact on the platform, or details of its remediation in patches' release notes is also worrisome. They need to pick up their game if they want to keep that track record as the platform expands.
Parent
Also disable Safari's 'Open"safe" files. (Score:5, Informative)
In addition to disabling Java support, Safari's 'Open "safe" files after downloading' must also be disabled to prevent websites from automatically loading a Java WebStart application via a JNLP file.
I've also posted a demonstration of the vulnerability at http://landonf.bikemonkey.org/code/macosx/CVE-2008-5353.20090519.html [bikemonkey.org]
Not all OS X users at risk (Score:4, Interesting)
For the record, those running Firefox as their default browser, with NoScript installed, won't be affected* unless they *choose* to execute an unknown, untrusted binary within the browser.
*At least the sample exploit at the top of the thread didn't execute for me, YMMV
So how much damage can this do? (Score:3, Interesting)
So it can arbitrarily execute java code in a browser. Well hold on, arn't browser VMs rather crippled anyway in their functionality? And thats after you take into account it'll only have the priviledges of whichever user launched the browser in the first place. So what exactly could you do with this exploit? Steal some cookies, bring up some annoying windows? Or is this about it being able to escape the sandbox? I don't really get it.
Re: (Score:3, Interesting)
A *lot*.
Consider. Many, if not most, Mac users run with admin privileges (though this is a not solely a Mac problem), so having an untrusted binary, able to execute whatever the hell it wants, accessing everything from / on down... well... I leave it to your imagination, but nuking your home directory would be the least of your problems.
Re: (Score:3, Insightful)
apple letting down java users.. (Score:5, Informative)
Steve Jobs, JavaOne Keynote 2000:
WWDC 2006
Steve Jobs, January 2007 (iPhone related):
2008/05/01
Re:apple letting down java users.. (Score:5, Interesting)
I don't see the point you're making. You might as well have contrasted nine-year disparate statements about RAM size. Over nine years, Apple's stance towards Java has changed; what's wrong with that? In 2000, Java seemed to have a wider path on the desktops than it does in 2009. Other languages and runtime environments have grown up around Java in the subsequent nine years, and to Apple's thinking, the other languages (such as Objective-C 2.0) allow for building better software than Java allows.
Apple's stance appears to be, right or wrong, that Java on the desktop and mobile devices is no longer the best way to develop and deploy software, and thus, they've allowed the Java implementation in OS X to grow long in the tooth, and have outright declined to port it to the iPhone/iPod Touch OS.
Parent
Re:why specify Mac OSX (Score:5, Informative)
If you had read the very first paragraph of the summary, you'd know that it's "a vulnerability in Java that has been patched by everyone but Apple."
For all the other platforms, architectures and browsers the fix is "use a version of Java that's less than 6 months old". For OSX users, however, the only solution is to stop using it altogether.
Parent
Pick and choose your quotes much? (Score:4, Informative)
Very well...
I choose this one...
FruitWorm writes in with word of a vulnerability in Java that has been patched by everyone but Apple.
So essentially... All Apple users who have left JAVA enabled, and all -other- users who have not yet patched their JAVA installations. Yes, that does include Microsoft Windows, flavor-of-the-month Linux, etc. users who decided to disable auto-updating - if any - of their JAVA installation.
Parent
Re:Why am I not surprised? (Score:5, Informative)
You've kinda just proven the OP's point. Snow Leopard is just prettying up what already exists.
Snow Leopard is mainly a beneath-the-hood architectural upgrade. http://www.apple.com/macosx/snowleopard/ [apple.com] "Taking a break from adding new features..."
That having been said, there's nothing on there about added security. I can tell you there are some rumors that things like more complete code page protection and address randomization will be in Snow Leo, but Apple's priorities concerning security are rather low; they rely heavily on security-through-obscurity, and one day if they're not careful it's going to bite them.
Parent
Re: (Score:3, Informative)
Snow Leopard is mainly a beneath-the-hood architectural upgrade. Then how are they planning to market it to the Great Unwashed? They're never going to pursuade the fan-base to shell out dollars and cents if they can't see something new and shiny.
All of those people with Macbook Airs (no pun intended) and any upcoming Apple netbook who's systems could use a more svelte OS would be in the market for it. Think Vista vs. Windows 7, except less of a difference in speed and interface. If you don't believe me, check out the site I linked earlier - Apple's own marketing copy says the new features are on "pause" and the feature of Snow Leo is performance and smaller footprint.
Re: (Score:3, Insightful)
That's not really busy in my opinion. 3-5 security updates a month is nothing to be impressed by and it doesn't tell me if they fix all their vulnerabilities, which as we all know, they haven't.
You know, I've managed a
Re:Why am I not surprised? (Score:5, Informative)
Yeah, this page listing all of the security patches in every Apple update [apple.com] must surely not exist. You know, complete with links to knowledge base articles containing links to the CVE-IDs patched by that particular patch.
Posts like yours are the reason that Slashdot needs a "-1, Factually Incorrect" moderation.
I agree that Apple should have patched this a long time ago, but your argument that Apple does not care about security is just plan asinine.
Parent
Re:Now patched? (Score:5, Informative)
No patch is currently available -- a fully patched 10.5.7 system remains vulnerable. See also http://landonf.bikemonkey.org/code/macosx/CVE-2008-5353.20090519.html [bikemonkey.org]
Parent
Re:Now patched? (Score:5, Insightful)
Parent
Re:Now patched? (Score:4, Informative)
Nope. Patched to 10.5.7, with all updates, and the sample exploit would still run. Of course I use FF with NoScript so I had to allow it to run, which just goes to show that sometimes faster is not better [futuremark.com]
Parent
Re: (Score:3, Insightful)
Re:There is no reason to have Java enabled (Score:5, Informative)
First things I noticed after disabling it, restarting Firefox with my saved tabs:
At this point I got annoyed and turned Java back on.
Parent