Apple Cleaning Up App Store After Its First Major Attack
Reuters reports that Apple is cleaning up hundreds of malicious iOS apps after what is described as the first major attack on its App Store. Hundreds of the stores apps were infected with malware called XcodeGhost, which used as a vector a counterfeit version of iOS IDE Xcode.
Things could be a lot worse, though:
Palo Alto Networks Director of Threat Intelligence Ryan Olson said the malware had limited functionality and his firm had uncovered no examples of data theft or other harm as a result of the attack. Still, he said it was "a pretty big deal" because it showed that the App Store could be compromised if hackers infected machines of software developers writing legitimate apps. Other attackers may copy that approach, which is hard to defend against, he said.
Thirty-one years later, it's still worth reflecting on it.
Then what, pray tell, is the point of Apple's byzantine approvals process?
I'm wondering how these apps made it through in the first place. Apple is known for being strict about vetting apps and what's allowed to enter the walled garden. If so many apps were able to make it past the vetting, it ought to raise concerns about what other malicious apps might be in the app store on a smaller scale. The vetting process probably lulls many users into a false sense of security that any app downloaded is going to be safe because Apple wouldn't let unsafe apps through. Obviously that's not the case, and it's not possible to know before downloading an app whether it's safe or not. Even reputable publishers could be compromised in this way. Although I think the walled garden is actually a good idea, it's obviously not sufficient, and there needs to be other layers of security. As much as I despise most antivirus software, it might be another good line of defense. I'd like to see more about app permissions like the old Android Market listing, and perhaps firewalling and only whitelisting certain sites for apps to connect to. It's reasonable that the browser you download would be able to connect to any site; that game, not so much. What's there now isn't enough and there really is no way for a user to know that an application is safe prior to installing it.
M-I-Z
kU still sucks!
Some Chinese developers downloaded this tainted XCode because of slow download times of XCode from the Mac App Store.
Downloading XCode from the Mac App Store takes nearly a full day!
I think this delivery mechanism of XCode is developers is very crummy and quite a nuisance.
Um, Xcode is free.
The only thing you pay for is the $99 to distribute applications (through the App Stores or within your organization) - writing and installing your own applications to your iPhone, iPad, Apple Watch, Mac, etc. are all free.
The issue here appears to be limited to developers that are downloading Xcode from unofficial sources which allows their code to become infected.
I print, therefore I am.
I can't figure out what the exact angle is, but it just seems too strange for legitimate developers to "innocently" make such a boneheaded mistake.
I'm just throwing it out there, but could it be something like: The developer thought he'd be clever by downloading a pirated/hacked version of OS X that runs on non-Apple hardware. The hacked version either then downloads a hacked version of Xcode, or won't allow a legit installation of Xcode so that the developer is forced to pirate that, too.
I don't know, just I'm hypothesizing. If it's not something like that, then I have a hard time figuring out how an iOS developer could unintentionally install a fake version. Unless... I don't know, maybe someone rigged Chinese search engines so that when you search for "Xcode", the top hits point to illegitimate sources?
XCode takes forever to download in China
XCode, and everything Apple, takes forever to download everywhere. It's faster to download the CentOS "Everything ISO" (7GB) from a shitty ftp mirror in Egypt than to get XCode (3GB) from the global network of the wealthiest company in the world.
Wtf Apple.
lucm, indeed.
Sign into https://developer.apple.com/do..., and click here
how about adding an extra hidden recipient to all your emails?
How would you do that?
The MFMailComposer class window you open tokenizes email recipients for the user, I can't see any way of composing an email that you could not see it was going to more than one person, or that you had pre-populated the "to" or "cc" or "bcc" values with an address they did not know.
You have no control or visibility as to email addresses the user populates in this composer window. The content is totally separated from the other email fields.
The app has no control of what happens when you press send; you cannot inject post-send hooks. The mail server communication does not occur in the same application process.
how about a bank app that transfers money to the malware author instead of the intended recipient?
That's a more realistic scenario for risk I imagine. But also much harder to get through the extensive testing any serious app has; you would see funds were not being transferred to the right account. Also pretty sure any decent banking API would catch the oddity around accounts it requested info for vs. account numbers you said to transfer to.
There are a lot of layers any such attack would have to go through, in the end scrubbing out anything much useful (which is what we see with the results). I'm not saying there's no risk, I'm saying that the system as a whole does a good job of having enough layers of security that it's very hard to get something really malicious in place.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
Generally I'd agree with you.
But the prompting on iOS is clear enough that many people actually do click no - especially for things like location, which people know uses battery. Or contacts, which is very easy to say "no application you do not need to see my contacts".
And again, all this prompting happens at the time the resources is requested. So if permission is asked for later it's especially odd.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
You can easily download Xcode, put it on a USB stick, and share it with others. I do that with every build. Using a modern USB3 memory stick it will copy fairly rapidly.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
"I wish Apple had a solution where you could download the update once then redistribute it." They do. Two in fact. Once it's on your own network, use Caching Server inside OS X Server. $20. Worth the savings in aspirin alone. Or ARD. Similarly cheap. Outside of Apple, sneakernet. Store apps like XCode only care that you bought them and they they are intact on the drive. I did this for several large in-the-store, non-installer-based, free-with-OSX apps (GarageBand, iMovie) in a building that shared a 10-base fiber link across 18 machine and I wanted to get home for dinner.
"Win treats sysadmins better than users. Mac treats users better than sysadmins. Linux treats everyone like sysadmins."
Some Chinese developers downloaded this tainted XCode because of slow download times of XCode from the Mac App Store.
Downloading XCode from the Mac App Store takes nearly a full day! I think this delivery mechanism of XCode is developers is very crummy and quite a nuisance.
Maybe it's an effect of the Great Firewall? My understanding is that Internet throughput in China (especially for inbound traffic) is very unpredictable with speed varying not only across time but also on physical location.
blog
I think it was 10-15 minutes for me. But I digress...
If these people were able to download the infected alternative faster than from the App Store, then the real question is why? Is this a consequence of the Chinese government's internet interference?
Yeah, and I would simply include the correct hashes, from the "original (second)" XCode Installation.
What you would do in the Java world is signing all classes, however I guess that won't help much as I assume the "hacked XCode" simply added an additional lib.
That could be compiled freshly all the time and signed with the developers key, then the Trojan/Virus looks like the develoepr had written it.
Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
Xcode is signed and Gatekeeper warns about a corrupted binary. The issue is that these developers that were infected intentionally disabled Gatekeeper checks so they could run the infected Xcode.
It doesn't mean that there's no value in imperfect security. Apple's walled garden failed in this attack, but it succeeded in thousands of other cases. The infected apps will be removed from devices and the app store, the hole will be closed.
The answer is NOT to present customers with fourteen more layers of pop-ups and train users to just hit 'accept' on everything. The answer is NOT to load down our mobile devices with anti-virus software, most of which are worse that most viruses. The answer is NOT to expect users to become experts on technology.
Those are the failed ideas and policies of the Windows world. Android is trying hard to make most of the same mistakes. They are horrible, horrible, ideas and it's scary that there are some in the tech community that are still advocating them.
Apple's current model IS the answer. Just look at the stats of malware/virus infections of Apple devices vs. Windows or Android. But nothing is perfect, there are going to be occasional infections.