Software Update Vulnerability 92
redmoss writes "I just saw this exploit for Software Update on Bugtraq. Quoting the discoverer Russell Harding: 'Mac OS X includes a software updating mechanism 'Software Update.' Software Update, when configured by default, checks weekly for new updates from Apple. HTTP is used with absolutely no authentication. Using well-known techniques, such as DNS Spoofing, or DNS Cache Poisoning, it is trivial to trick a user into installing a malicious program posing as an update from Apple.' Looks like people using Software Update need to be careful, as there is currently no workaround." Well, one workaround for this particular exploit is to not share a LAN with someone who would do that sort of thing.
It's not a bug, it's a feature! (Score:3, Interesting)
Re:It's not a bug, it's a feature! (Score:3, Interesting)
Re:It's not a bug, it's a feature! (Score:3, Informative)
I haven't used it since it went out of free beta but it is a pretty neat tool for folks who are truly addicted [wired.com] to having the latest version of any software.
Re:It's not a bug, it's a feature! (Score:2, Interesting)
Rather than going through the agony of installing sshd on each and every client computer, and then writing a bash script to scp updated files as necessary, just have each client poll a central http server (hidden from the Internet by a firewall, of course) for bug updates. Then you just need one person at each workstation to click "okay" and install the thing.
Just because the Mac is now Unix-based, doesn't mean we should give up the ease of use and convenience that made the Mac great in the first place.
Re:It's not a bug, it's a feature! (Score:3, Informative)
Not to be pedantic, but each and every client computer already has sshd on it. It's a part of OS X.
Re:It's not a bug, it's a feature! (Score:1)
Re:It's not a bug, it's a feature! (Score:2)
How do you plan to install software or preload libraries using rsync?
we already have that (Score:2)
Granted, it's still a bit shaky on Macintosh OS X, but it's getting better.
Re:It's not a bug, it's a feature! (Score:2)
Wouldn't work on me, or most net-savvy Mac users. (Score:2, Interesting)
Re:Wouldn't work on me, or most net-savvy Mac user (Score:3, Interesting)
Re:Wouldn't work on me, or most net-savvy Mac user (Score:1, Funny)
Re:Wouldn't work on me, or most net-savvy Mac user (Score:1)
Re:Wouldn't work on me, or most net-savvy Mac user (Score:2, Insightful)
Re:Wouldn't work on me, or most net-savvy Mac user (Score:2)
Now is it *likely* that anyone would do this to you specifically? Not really. But this is a terrible way to think about computer security. The fact is you don't know what creative ways someone might come up with to exploit this hole. The fact that you can't think of an exploit that will work against you doesn't mean there isn't one-- if the software is exploitable, all that's needed is a bit of social engineering to find a way to make use of it in the real world.
The "who would hack little old me" argument might have worked 5 years ago when there were relatively few people on the 'net and most of them were responsible adults. But these days the 'net is swarming with script kiddies, and if a vulnerability appears it's likely to be exploited quickly and in parallel.
I'll grant that in this particular case, it seems unlikely that there's any way this could be exploited without access to your local network, which presumably is secure. But it's never a good idea to rely on such assumptions-- there are many examples where minor holes were discovered, were poo-pooed by the authorities, and were later discovered to be major holes because of a clever exploit no one thought of. That could happen in this case as well-- someone might figure out a way to trick your Mac into connecting to someone other than Apple.
Re:Wouldn't work on me, or most net-savvy Mac user (Score:1)
I always check the response from others before applying updates as well (yea VersionTracker). But, if someone targetted my network (DNS servers for example) _I_ would be the only one affected by the exploit with this particular attack.
So, all someone has to do is coordinate an attack on you with an update from Apple, you go read the reports, people say "Great update, no problems," and you go ahead and apply the updates across your machines. All the while, your DNS server was hacked, and your machines are actually connecting to some eroneous source that just installed a backdoor... and while it's at it, installs the Apple update to appear real.
For now, you need to just trust that your local network and DNS is secure. But some form of host certification should really be applied to ensure that the app is connecting to a valid machine... much like web browsers can do when connecting to an SSL server.
Just my $0.02.
-Alex
Re:Wouldn't work on me, or most net-savvy Mac user (Score:1)
Re:Wouldn't work on me, or most net-savvy Mac user (Score:1)
True Of All Updaters (Score:2, Informative)
Re:True Of All Updaters (Score:3, Informative)
Re:True Of All Updaters (Score:2)
erm, except the gpg signature comes from the same person supplying the malicious file..... oops.
Re:True Of All Updaters (Score:1)
Re:True Of All Updaters (Score:3, Interesting)
1. I believe swscan.apple.com to be the correct source. The point is, that could be made to resolve to a different, hostile, IP address.
2. A public verification key? From apple? See, thats the problem. They don't do that currently. When they start to, they'll probably build it into the software update system, like they should have in the first place.
An interesting sidenote: I've been sniffing some SU traffic after reading all this, and noticed some interesting HTTP headers: Looks like Apple doesn't practice what they preach in terms of server software.
And wtf is that NetApp cache bullshit? Does everyone see that, or am I being transparently proxied somewhere?! OK, just checked some other stuff, the NetApp cache header is only present on my SoftwareUpdate connections. Something on apple's end? Does everybody see this?
(fwiw i'm using the incredibly simple tcpflow [circlemud.org] to watch my tcp traffic. ethereal is cooler, and lets me see non-tcp traffic too, but the current mac (fink) version has a very high suck factor. Sometimes ICMP packets don't show up, streams can almost never be reconstructed entirely, etc etc. Moving capture files off the mac over to a linux or bsd box for analysis is the only way I can seem to use ethereal for much of anything.)
What's wrong with Netscape-Enterprise server? (Score:2)
Or what are you suggesting that I don't understand?
Re:What's wrong with Netscape-Enterprise server? (Score:2)
In other words, possibly having just 1 piece of Apple software doesn't make it all OK. Hence, they're not practicing what they preach.
Re:What's wrong with Netscape-Enterprise server? (Score:2)
Re:What's wrong with Netscape-Enterprise server? (Score:3, Interesting)
Why did Apple add hotswap drives, advanced monitoring tools, and 24/7 technical support? For shits and giggles? Why did they add REDUNDANT disk arrays? To impress the ladies? Why do they advertise this box to hardcore sys admins? Because they want sys admints to buy it. Do sys admins rely on boxes to handle mission critical operations? Yes. Is that not PREACHING?
Why, yes, it is.
Re:What's wrong with Netscape-Enterprise server? (Score:2)
Re:What's wrong with Netscape-Enterprise server? (Score:1)
Refer yourself to my previous post to see the "circumstantial evidence" of Apple's intent. I'm sorry they didn't spell it out any easier for you.
Re:What's wrong with Netscape-Enterprise server? (Score:1)
Re:What's wrong with Netscape-Enterprise server? (Score:2)
Re:What's wrong with Netscape-Enterprise server? (Score:1)
Re: Apple Servers (Score:2)
I think this is a good idea, as 1) the machines are still good, and 2) it saves resources by using them as long as possible. Apple's server forays are still relatively new (and against the spirit of building personal computers), so it's natural that they'd had somebody else's boxen.
Re:True Of All Updaters (Score:1)
Re:True Of All Updaters (Score:1)
Right... (Score:2, Insightful)
You mean like the thousands of users on my cable network that I share a DNS server with? I'm not sure I trust them too much, but I can't really do much about that.
Re:Right... (Score:1)
I often ask myself why I want to work at a college when the students are so good at hosing systems. I'm glad I don't deal with them more often than I do.
Most of the students who are supposed to know about this kind of stuff don't (there are exceptions) and the ones who shouldn't know it do.
I need to figure out who is upstream a little better.
Not Sharing a LAN? (Score:3, Funny)
These exploit techniques could be used by a good blackhat to affect everyone on, let's say Rogers Cable, in a specific geographic region. Face, it: since this became a one-protocol world with fat pipes, we all trust upstream.
Are you big enough for your home DNS to point only at root?
Re:Not Sharing a LAN? (Score:1)
Yup.
In God we trust. All others must provide DSA keys.
"Easy" solution (Score:3, Interesting)
Looks bad. How rapid a response? (Score:3, Interesting)
Meanwhile I actually sent Apple an email describing the problem and asking for a public advisory and a fix ASAP. Just doing my part.
Re:Looks bad. How rapid a response? (Score:2)
Re:Looks bad. How rapid a response? (Score:2)
It's been five days and it seems the fix has been issued. I wonder if there will be a followup story where we can all go "gee, Apple handled that fairly well"?
No easy fixes... (Score:2, Insightful)
This is an old trick. Remember the stink raised recently about users 'uncapping' their cable modems? Same idea. It's a problem here primarily because the install runs as root.
The solution is a bit hairy though. Let's say Apple builds authentication into the "SoftwareUpdate" mechanism. That doesn't stop someone from spoofing a third party software updating mechanism. It also doesn't stop someone from writing malicious software that poses as shareware. I downloaded a shareware app last week that asked for Admin privileges just so the installer could drop the application in /Applications.
And should Apple build authentication into the installer process from the ground up, everyone will be wringing their hands with concerns about how Apple selects who gets signed. It will strongly resemble the code signing thing Microsoft said it would start doing in future versions of Windows. (Though, I'm more apt to trust Apple to 'do the right thing' when it comes to *not* stifling the competition.)
Even then, a malicious code writer could craft an install process that 'looks' like Apple's long enough to get a password and then pipe it to sudo with something like java.lang.Runtime.exec(). Anybody that thinks Apple should/will have a solution to this problem in a few days really ought to rethink the problem a bit. It has as much to do with educating end users about code signing, security, privileges, and encryption as it does with any software fix Apple finally does produce.
The irony here is this isn't a problem until an end user enters a password and clicks "OK". It isn't automatic like some javascript launched Outlook attachment. Whoever posted this 'testing' software could have done the same with Windows, or one of a thousand other auto-updating programs on the net, but chose Apple. Why? In my estimation he is tired about hearing how secure and virus free Macs are.
Re:No easy fixes... (Score:2)
I doubt it, since Software Update is only used to update Mac OS itself.
It will strongly resemble the code signing thing Microsoft said it would start doing in future versions of Windows.
Not really, since MS is talking about requiring code to be signed, while we're talking about having Apple sign updates for their own software. Debian signs their updates, right? Does that make them evil, too?
Re:No easy fixes... (Score:1)
Unfortunatly, no.
Re:No easy fixes... (Score:2)
It is entirely possible on the other hand that they have been addressing this issue for the last several months while developing OS X 10.2 and that the fix is right around the corner. Maybe not a few days but within a few weeks is reasonable. Especially as they are looking for high marks from the government regarding security.
No workaround my @$$ (Score:4, Informative)
204.179.120.93 swquery.apple.com
Now if somebody tries the DNS attack it won't work as we hardcoded swquery.apple.com -> 204.179.120.93 You will of course have to activate your
The NetInfo method (Score:4, Informative)
sudo niload hosts /
Re:The NetInfo method (Score:2)
Re:The NetInfo method (Score:4, Informative)
Simply copy this file [mac.com] to lookupd.txt. Then type:
niload -r
Yes, I "stole" all of this from this page [macwrite.com]. Except mine is modifyed to activate the
If you're going to be insulting... (Score:2)
Re:The NetInfo method (Score:2)
Re:No workaround my @$$ (Score:2)
workaround != solution. (Score:2)
Re:workaround != solution. (Score:2)
It was not an attack on your idea, sir.
I was merely pointing out to others who may have interpreted it as a solution and felt they were safe that this did not eliminate the vulnerability.
--jquirke
Re:workaround != solution. (Score:2)
Wow, getting called "sir" I feel all giddy now.
And yes you're right it wont be fully secure till they have cripto singned updates.
Re:workaround != solution. (Score:2)
To spoof verisign and https it would require that you have a valid cert(yes it is possible to make them).To spoof a connection that used a false cert would alert the user to that fact. The fact of the matter is that apple swupdate doesnt even use SSL! So it doesn't matter if you can spoof SSL. This is why redhat up2date uses gpg, because if it is spoofed, they cant SIGN the packages! AND YOU KNOW YOU HAVE BEEN HACKED! Because you can't prevent the hack with the way the internet works! You can detect if the programmers who made the system are semi security minded.
Apple is not that.
Re:workaround != solution. (Score:2)
The story says that the vulnerable is because apple uses http and not https. My point was that if you can spoof IPs you cloud easly spoof both the https server IP and the signing authorities IP. Thus bypassing any https connection. Unless public keys for all the signing authorities are included with every https implementation.
Anyhow it's a workaround. It workaround this exploit. Hopefully apple will update software update to use crypto signed packages and SSL connections. Till then I'm keeping the line in my
Re:No workaround my @$$ (Score:2)
Obviously the workaround isn't perfect. What if apple changes the IP of their update server? What if they use akamai to host the updates, and the IP that was posted is actually some server halfway around the globe from you?
It's not perfect, but give the man some credit for being creative, will ya?
Re:No workaround my @$$ (Score:2)
204.179.120.93 swquery.apple.com
Oh, sure, and we're just supposed to trust that your DNS hasn't already been poisoned? :)
Re:No workaround my @$$ (Score:2, Informative)
1) open it up /Applications/Utilities/NetInfo Manager /machines/
2) click the lock to authenticate.
3) use the browser to go to
4) click the "Create New Directory" button.
5) modify the new directory you just made to have these attributes:
key:ip_address value:204.179.120.93
key:name value:swquery.apple.com
key:serves value:./local
6) save the modified netinfo database. it will ask you if you "REALLY" want to do it. if you're sure, agree.
Re:No workaround my @$$ (Score:2)
Take that newfangeled netinfo thingy and give my my flat files anyday.
Re:No workaround my @$$ (Score:2)
Updates must be at least checksummed and really should also be cryptographically signed. Period.
The Other Major Operating System Corporation (Score:1)
Bug Fix (Score:2, Funny)
Oh, but only if you're on my campus network.
1 possible security exploit.... (Score:2)
Keep going, Apple. Maybe someday you'll be taken seriously as a operating system company and have thousands.
Or at LEAST ship with one hole that you know about with Jagwire... that would probably jump start your reputation.
Please forgive me but I have a question... (Score:1)
(I know - then get off'a
Any theories (besides the one I read elsewhere that "steve was fresh from graduation from assclown school" -Techfocus)?
And what's an assclown? I can't recall seeing one.
Re:Please forgive me but I have a question... (Score:1)
come on, why do you think they call them the ringling brothers?
nevermind (Score:1)
I swear I didn't know. I guess I was a... dammit!
Apple Has Released a Fix (Score:2)
The vulnerability discussed above has now been addressed by an from Apple [apple.com]. I would say pretty fast work--the exploit page on
It's clear that Apple has a security focus now--although they may not always get it right out of the box, they have responded quickly to the last 3 major holes, patching the system in days, not weeks.