ie8 fix
madison

Hardware 2.0

Adrian Kingsley-Hughes

Mac Apps already cracked and pirated, malware likely to follow

By | January 7, 2011, 3:03am PST

It seems that it only took hackers a few hours to figure out how to circumvent the protection mechanisms used by Apple to protect applications from piracy. It seems that the Mac App Store could be very transformation, just not in the way Apple had expected.

How easy is it to pirate apps? This easy:

So what does it take in order to pirate an app from the Mac App Store? All you have to do is find the .dmg file hosted online somewhere. Sure, you can’t readily download premium apps without paying for them, from the App Store, but that’s never stopped files from ending up on pirate websites before. Once you’ve found the app, all you have to do is install it as you would any other application and then copy over 3 files (and/or folders) from any legitimate download that you’ve made in the App Store — even if it’s a free download (Twitter, for instance).

This method bypasses the app protection mechanism called “Receipt Checking“ which is supposed to link Apps purchased to a specific Apple ID. 

It’s not clear whether this vulnerability affects all Mac App Store apps, or only some. I have confirmation that it works for Angry Birds and plenty of reports to back up the suggestion that other apps are vulnerable to this technique.

Sean Christmann of Craftymind blames Apple for the mess:

So why are all of the app store developers in this position? Apples current documentation on how to validate receipts is fairly complex, but the sample code and Apple own instructions ask developers to validate against data that is entirely external to the binary itself. Worse yet, it instructs developers to validate against plain text data easily editable with any text editor.

He goes on to offer a partial solution to Mac App Developers:

  • Verify that the receipt bundle identifier matches the value for CFBundleIdentifier that you hard code into your application.
  • Verify that the version identifier string in the receipt matches the value for CFBundleShortVersionString hard coded into your application. If they do not match, verification fails.

But he also injects some realism into the debate:

At the end of the day, if your app is popular enough it’s going to end up on a pirated site, but for the time being, by following the instructions above, you can avoid having your app easily cracked with TextEdit.

Security experts worry that this mechanism could be exploited by hackers to spread malware to Mac systems. Here’s what Chester Wisniewski of Sophos has to say:

Will the App Store lead to the same problem? No doubt some Mac users, also too cheap thrifty to pay, will succumb to the temptation of Googling to acquire these cool apps/games/utilities at no cost.

Unfortunately, as I demonstrate below, some applications downloaded from the App Store can easily be modified to include any sort of executable code you wish. It wouldn’t surprise me to see a surge in markets for pirated applications that might just be booby-trapped to include unexpected surprises.


So a double-whammy security black eye for Apple on the first day of throwing open the doors to the Mac App Store.

Bad news for Mac App developers, potentially bad news for Mac users … overall not a good start for Apple.

Kick off your day with ZDNet's daily e-mail newsletter. It's the freshest tech news and opinion, served hot. Get it.

Topics

Adrian Kingsley-Hughes is an internationally published technology author who has devoted over a decade to helping users get the most from technology.

Disclosure

Adrian Kingsley-Hughes

All opinions expressed on Hardware 2.0 are those of Adrian Kingsley-Hughes. Every effort is made to ensure that the information posted is accurate. If you have any comments, queries or corrections, please contact Adrian via the email link here. Any possible conflicts of interest will be posted below. [Updated: February 23, 2010] - Adrian Kingsley-Hughes has no business relationships, affiliations, investments, or other actual/potential conflicts of interest relating to the content posted so far on this blog.

Biography

Adrian Kingsley-Hughes

Adrian Kingsley-Hughes is an internationally published technology author who has devoted over a decade to helping users get the most from technology -- whether that be by learning to program, building a PC from a pile of parts, or helping them get the most from their new MP3 player or digital camera.

Adrian has authored/co-authored technical books on a variety of topics, ranging from programming to building and maintaining PCs. His most recent books include "Build the Ultimate Custom PC", "Beginning Programming" and "The PC Doctor's Fix It Yourself Guide". He has also written training manuals that have been used by a number of Fortune 500 companies.

Adrian also runs a popular blog under the name The PC Doctor, where he covers a range of computer-related topics -- from security to repairing and upgrading.

110
Comments

Join the conversation!

Just In

WOW
SonofaSailor 22nd Feb 2011
@cyberslammer2
0 Votes
+ -
Ok
Richard Flude 7th Jan 2011
Software is piratable. Pirate software can contain malware.

Got it. Is this restricted to Apples App Store?
0 Votes
+ -
Just for clarification ...
RationalGuy 7th Jan 2011
Are lazy programmers restricted to Apple's App Store, too? You know, the ones who do things like not verifying the app's identifier strings during the app identifier string verification?
0 Votes
+ -
@RationalGuy... Well, they are "verifying" the app's identifier string. The problem is that Angry Birds developers only used 2 of the 5 steps to properly validate their application. They only went as far as validating the CFBundleIdentifier and CFBundleShortVersionString stored in the applications Info.plist against the receipt's Info.plist. The problem with this is that in both instances, you can simply right-click and select "Show Package Contents" (on the application or receipt) and change them. In this instance, you'd change the CFBundleIdentifier and CFBundleShortVersionString in the application's Info.plist to point to and match a free App Store application's receipt like Twitter. Then your paid-for-app validates against Twitter instead of properly validating against its own receipt, and tells the App store, "Yup, I'm valid. Yessir. All valid here, and anybody can use me."

But you might run into problems using both Twitter and your paid-for-app at the same time, as both applications would be competing for and writing over each other's preference file.

[edit]

But, as the one commentor suggested, if you hardcode it in your application rather than relying on the Info.plist, you can help mitigate this problem.
@RationalGuy
I like to do some system testing of your software some time. happy

Unless you're a project manager because they always assume programs should be bug free from the get go and everything is easy to do.
@WarhavenSC

... then you are not doing that thing. Thanks for describing exactly how lazy these programmers were.
0 Votes
+ -
@rengek

I'm not sure what you're getting at with your post. When I write code, I test it myself and don't give it to anyone until I know it works. No code bugs are acceptable, but the only ones that should make it into a release should be ones that fall into unusual use cases, or unforeseeable circumstances.

In this case, a programmer considered comparing two external unencrypted text files as being a reasonable application verification mechanism. Clearly, this person is either lazy or incredibly stupid. I chose to assume the best.
0 Votes
+ -
A higher standard was expected
dzdrazil 7th Jan 2011
@Richard Flude
Apple is shooting their own profits in the foot, not just those of developers.

Given that Apple wholly owns, operates and developed the Mac App store, and takes a 30% cut of your sales, you'd expect security to be a little better documented, and that security measures beyond simple string matches to external sources would be a requirement for submission.
Unless something changes, Apple has basically guaranteed that the Mac App store will not be as profitable as it should be, a serious mis-step from a company prized for its focus on quality control; simply put, they're getting sloppy, and it shows.
@dzdrazil
Apple dosen't take a single cent of your sales. You as a developer set the price you want for your product, add 30% mark up for Apple to do all your selling, distribution, cash flow, credit control and hosting. You just sit back and watch the money roll in. Its so easy.

Get a Mac, get a hefty bank balance.
0 Votes
+ -
Haha, only in Apple RDF land!
NonZealot 7th Jan 2011
@dzdrazil
Get a Mac, get a hefty bank balance.

The average iOS app earns the developer approximately $1 a day. Apple likes to tout the couple exceptions as "proof" that their application storefront earns developers a lot of money but the truth is that you are better off playing the lottery.
  • Flagged
0 Votes
+ -
@Zealot... Because at your fictional $1 a day, companies can apparently afford to pay their iOS developers the very real $86,000/year in Portland, OR, or $83,000/year in Cleveland, OH, based on average earning reports to simplyhired.com.

[edit]

Oh, and apparently the lottery also pays out more than $1 a day. F*ck me. Why haven't I been supplementing my income with a a ton of lottery tickets. According to Zealot, playing the lottery is practically a license to print money.
  • Flagged
Because at your fictional $1 a day, companies can apparently afford to pay their iOS developers the very real $86,000/year in Portland, OR, or $83,000/year in Cleveland, OH, based on average earning reports to simplyhired.com.

And unless that average company has some other revenue generating business, they will soon go bankrupt. But you knew that.
communities-dominate.blogs.com/brands/2010/06/full-analysis-of-iphone-economics-its-bad-news-and-then-it-gets-worse.html

There are a few massive success stories that Apple like to hype but the rest will lose a ton of money.

Oh, and apparently the lottery also pays out more than $1 a day.

Yes, playing the lottery will absolutely give you revenue. The question is: how much does it cost you to earn that revenue? In the case of both the lottery and Apple's application storefront, a tiny minority will make a profit. The vast majority, however, will end up paying far more than they will receive.
  • Flagged
0 Votes
+ -
Does nonzealot works for government
Richard Flude Updated - 7th Jan 2011
Doesn't surprise. But those of us in the very competitive real world accept the challenges this represents. There's no guarantee a product will sell.

Apple has eliminated many barriers of entry into the software business. Many of us congratulate them for it and the diversity this produces. The government employee looks to controlled markets.

In a competitive market not everyone wins. Apple has given the greatest opportunity to anyone to at least participate. The quality of their offering and it's reception in the market determining the outcome.

Foreign concepts to the public servant, a lifestyle funded from the stealing from others.
0 Votes
+ -
@Richard Flude: Doesn't surprise. But those of us in the very competitive real world accept the challenges this represents. There's no guarantee a product will sell.

Martin Kelly said:

Get a Mac, get a hefty bank balance.

That was the point NonZealot was addressing.
0 Votes
+ -
Martin Kelly, that doesn't make any sense
AllKnowingAllSeeing 7th Jan 2011
If someone marks up their software 30% to cover Apple's costs, a few things come to mind:

1) will people buy a 299.99 dollar software package now that it costs 389.99 because you raised the price 30%?
2) If they're willing to do so, why not sell it for 389.99 and keep all the money?
0 Votes
+ -
So no one was participating before?
AllKnowingAllSeeing 7th Jan 2011
@Richard Flude
It really does sound like you're telling us that nobody's ever competed before?

Pretty massive software ecosystem out there right now, not counting "app stores".

How was that possible?
For the small developer in the App Store model and the opportunities it represents.

It wasnt impossible before, just significantly harder.

The ecosystem has become massive with the move.
About a minute into the video, Chester says "Unfortunately Rovio did not use the best practices Apple setup for Mac apps".
He then goes on to show how he could replace the Angry Birds executable for a Firefox webpage.
Not exactly the way you tell.
@MG537
Rovio not following best practices and being arrogant? They are by far the worst set of developers.
@Loverock Davidson
Arrogant is your middle name.
  • Flagged
0 Votes
+ -
malware
banned from zdnet 7th Jan 2011
downloading mac apps from pirate sites is dangerous. they can contain trojans. that has been the case since the dawn of times. nothing new here. just another phony click baiting hit piece with the word "apple" in the headline.
0 Votes
+ -
Pirated software can have malware....

Whoda thunk it?
@itguy08: Pirated software can have malware....

Whoda thunk it?

This is no different than Windows becoming infected due to a trojan. But you'd never know it listening to the Mac fanboys.
@ye
Yet itguy08 is one of the first to complain when it happens on Microsoft Windows.
  • Flagged
@ye

Except you can get a trojan on Windows by the simple act of surfing to a website.

Except you can get a trojan on Windows much more easily.

On the Mac you have to engage in shady behaviour to get infected; not so with Windows.
0 Votes
+ -
Laughing so loud right now!!
NonZealot 7th Jan 2011
Except you can get a trojan on Windows by the simple act of surfing to a website.

Actually, it is OS X that is the easiest to get infected with a drive by, as proven year after year after year after year after year at PWN2OWN. happy happy happy
  • Flagged
0 Votes
+ -
Amazingly slow!
Gr8Music 7th Jan 2011
@NonZealot - Must have taken 4 hours to research the drive-by info. I commend you for at least looking for once instead of the usual mis-information!
@itguy08
Sorry, but if you surf to a malicious site on an iphone your sms database can be lifted off your phone. Proven to work in seconds of visiting the site. No shady activity on your part needed. Just get redirected by a link and you are jacked.
@itguy08: Except you can get a trojan on Windows by the simple act of surfing to a website.

This one statement indicates you're clueless about the subject matter under discussion.
I dont see any discussion.
@ye What's your point? Is it the overwhelming **** storm of security problems for users with Windows that don't exist on the Mac?
0 Votes
+ -
@His_Shadow: What's your point?

OS X is no different than Windows. And every time an example of such appears we have ABMers making statements along the lines of:

Pirated software can have malware....

Whoda thunk it?


It's hypocritcal.
... software that fails to follow Apple's guidelines on checking/validation of purchases or doing it wrongly, like Angry Birds. Apple can not control developers' end in this scheme, alas.

And no, nothing tells that "malware" is coming. While malware exists in some Android software/stores, it does not in the worlds biggest Apple's app store with almost 400 000 applications and there is no information that it would all of sudden start to appear in Mac App Store.
@denisrs Exactly, thank you. Another one of an ongoing stream of these types of "articles".
It was called The Pirate Bay.
0 Votes
+ -
LOL!
ye 7th Jan 2011
@dazzlingd: That was damn good!
0 Votes
+ -
How so?
ye 7th Jan 2011
@choyongpil: Childish
0 Votes
+ -
Pirated apps bad... not only on Macs
Pete "athynz" Athens 7th Jan 2011
And this is something new and news worthy?

News flash - just about any app for any platform can be and usually is pirated by someone... heck I found all sorts of pirated and hacked apps for my old powerPC Mac 8100... not that I used them as I'm not a fan of having to wipe the hard drive and reinstall everything... but they were pretty easy to find.

So how is this news again?
0 Votes
+ -
@athynz

This is a black eye for Apple, but hardly fatal. It's more a hubris thing. Apple said "Hey, our App Store is secure!" and pirates said "uh, no. Just no". happy
0 Votes
+ -
@wolf_z What happened exactly? Where IS this malware? Oh wait, there are NO reports of it anywhere?

Right now this is a case of the devs not sticking to the programming protocols Apple laid out so this is more on the devs than Apple. And before someone bleats about how Apple should have not allowed the app to be released like that I have to ask what the reaction would be if Apple did not allow the app to be released? Probably something like "Apple has yet another walled garden" or some other crap.

I'm not giving Apple a pass on this, I'm just pointing out the blatant hypocrisy running rampant on this talkback...
@athynz And before someone bleats about how Apple should have not allowed the app to be released like that I have to ask what the reaction would be if Apple did not allow the app to be released? Probably something like "Apple has yet another walled garden" or some other crap.

It already is a walled garden. People accept that, and apparently don't mind it. So, since they already have to approve every app that get's submitted, why not go the extra step and check to make sure it meets all of the guidelines before it is released. After all they have shown they have no problems rejecting apps. Why not reject the app for lazy coding?
0 Votes
+ -
HAHAHHAHAHAHAHAHAHAHAHAHAHAHHA!!
I was told to get a Mac because it just works and doesn't have this problem. We can rule that out now.
@Loverock Davidson Gee, and you're an IDIOT.

Let's see, software downloading/install 101..

1. DONT GO TO PIRATE SITES
2. DONT INSTALL APPS FROM PIRATE SITES
3. IF IN DOUBT GO BACK TO NUMBER 1.

Is that too hard to read moron?
0 Votes
+ -
Hey Cyberidiot
SonofaSailor 7th Jan 2011
WHen someone speaks negatively about the iPad or anything else Apple, you tell them "if you don't have one, you can't comment on them"

So, by using your own words, you have admitted that you don't own a Mac, so you can't comment on them.

So STFU
  • Flagged
@Subhumangarbagepieceofsh!t Since you have never posted anything regarding your qualifications in IT, you don't deserve to post ANYWHERE here.

So STFU you garbage piece of ****...go down to St Judes and make fun of the cancer patients, I'm sure you do that well considering you make fun of liver transplant recipients.
  • Flagged
@cyberslammer2 Unlike you, most of us are secure enough in our profession and qualifications and thus do not need to post them. The thing about that is any of us can claim to do anything professionally... I could claim to be the CIO of Oracle and you'd have no way of verifying whether it's true or not. Since you're the only one harping on about that, I'm going to just assume you're a highschool kid with no actual professional experience.
  • Flagged
0 Votes
+ -
yeah whatever. hypocrite.
SonofaSailor 7th Jan 2011
@cyberslammer2

Nice try Dumb_ass, but Steve Jobs looked the same BEFORE that.

Get off your soapbox, and don't act like your offended.

And tricktom3 is right, hypocrite, you treat others the same way
  • Flagged
0 Votes
+ -
Dude, don't be a *********
Pete "athynz" Athens 7th Jan 2011
@cyberslammer2 Seriously all you seem to do is attack LD, SoaS, TT3, and whoever else disagrees with you... hell you've got an avatar calling SoaS a ***... not cool and in fact kills what credibility you had.
  • Flagged
0 Votes
+ -
Are you for real?
AllKnowingAllSeeing Updated - 7th Jan 2011
@cyberslammer2
Dude, you come across as a wan-a-be

What you wan't to be remains the mystery
  • Flagged
0 Votes
+ -
@cyberslammer2 Awwww did I hurt your feelings, is that why you flagged my comment? I guess the old saying that truth hurts is right on target.
  • Flagged
0 Votes
+ -
WOW
SonofaSailor 22nd Feb 2011
@cyberslammer2

Join the conversation!

Formatting +
BB Codes - Note: HTML is not supported in forums
  • [b] Bold [/b]
  • [i] Italic [/i]
  • [u] Underline [/u]
  • [s] Strikethrough [/s]
  • [q] "Quote" [/q]
  • [ol][*] 1. Ordered List [/ol]
  • [ul][*] · Unordered List [/ul]
  • [pre] Preformat [/pre]
  • [quote] "Blockquote" [/quote]
ie8 fix
Click Here
ie8 fix

The best of ZDNet, delivered

ZDNet Newsletters

Get the best of ZDNet delivered straight to your inbox

Facebook Activity

White Papers, Webcasts, & Resources
ie8 fix
ie8 fix