News for hackers. Stuff that matters.
Re:I Can Crack Your App With Just A Shell (And How To Stop Me) by snorkel on Monday January 17, 2011 @05:33PM (#2113742)
The most stealth cracking countermeasure I ever witnessed was the application would XOR some of its UI messages with the hash sig of the application binary file, so if you edited the application binary file directly the crack seemed to work just fine ... but then the application would gradually go insane. The cracker who finally posted a working crack was impressed with how simple and devious the countermeasures were.
Re:I Can Crack Your App With Just A Shell (And How To Stop Me) by phillco on Monday January 17, 2011 @08:14PM (#2114149)
Brilliant, but be careful about this. There was an article here years ago about an indie game developer who put tons of different piracy checks all throughout his game. He was pretty clever, and made it so that several didn't activate until partway through the levels — that way the crackers might miss them. Also, he didn't show any "pirated copy detected!" messages, which would have made the checks trivial to find. Instead, the application would simply crash with a cryptic error message.

It worked perfectly — the crackers missed the later checks. Anyone who torrented the game found that it crashed reliably as soon as you completed the first level. Game over.

Unfortunately, this did not generate the kind of PR he was hoping for. In fact, all this did was give the impression to everyone who pirated the game that it was a buggy piece of shit. Since there was no obvious reason for the odd behavior, they assumed it was the fault of the application. They stormed the gaming review forums and discussion boards, complaining about how the game was "shitty" and "unplayable". Nobody was keen to mention that they had pirated it, so there wasn't an obvious trend. At the time, the ratio of pirated video games to legal ones was about 10:1, so the bad feedback overpowered the good feedback by about 10:1. He was ruined.

Be careful about anti-piracy. You just might succeed.

Re:I Can Crack Your App With Just A Shell (And How To Stop Me) by coderdude on Monday January 17, 2011 @09:15PM (#2114279)
I mentioned this game in another comment on this page, but Spyro: Year of the Dragon used this technique and it worked very well for them. It could be that this is because it was on a console and not on the PC, but who knows. The goal for them was to simply keep the crackers at bay for as long as possible to keep the sales high during the initial release of the game. The developers stated that once the game is cracked the sales drop dramatically, so the longer they can keep the game uncracked the more money they made.

Great article from the developers about this: http://www.gamasutra.com/view/feature/3030/keeping_the_pirat...

Re:I Can Crack Your App With Just A Shell (And How To Stop Me) by asnyder on Monday January 17, 2011 @11:30PM (#2114607)
I remember playing Spyro, good memories. I think there's a new one out, maybe I'll check it out for old time sake. Thanks for the positive nostalgia
Re:I Can Crack Your App With Just A Shell (And How To Stop Me) by btn on Monday January 17, 2011 @09:29PM (#2114311)
A similar (but much simpler) anti-piracy feature was built into Command & Conquer: Red Alert 2. The game would appear to operate normally, and let you start playing; however, after 30 seconds, all of your buildings would explode and you'd instantly lose.
Re:I Can Crack Your App With Just A Shell (And How To Stop Me) by nfriedly on Monday January 17, 2011 @09:51PM (#2114373)
That one was a bitch - sometimes it'd happen to my legally bought and paid for copy of the game.
Re:I Can Crack Your App With Just A Shell (And How To Stop Me) by cynoclast on Tuesday January 18, 2011 @04:09PM (#2117395)
DRM = functionally indistinguishable from broken
Re:I Can Crack Your App With Just A Shell (And How To Stop Me) by mike-cardwell on Tuesday January 18, 2011 @05:05AM (#2115298)
If lots of games used similar methodologies then people would slowly learn that "pirated game" == "buggy game". Wouldn't work unless lots of them did the same thing of course.
Re:I Can Crack Your App With Just A Shell (And How To Stop Me) by steveklabnik on Tuesday January 18, 2011 @08:26AM (#2115667)
No, they don't have anything to compare it with. They'd never figure out that it's because stuff is pirated.
Re:I Can Crack Your App With Just A Shell (And How To Stop Me) by phillco on Tuesday January 18, 2011 @09:49AM (#2115947)
Exactly. It's even worse if you add the crippling behavior later on, i.e. in the upgrade from v1.2 to v1.3. All pirates notice is that the new version is really unstable.
Re:I Can Crack Your App With Just A Shell (And How To Stop Me) by JonnieCache on Tuesday January 18, 2011 @08:32AM (#2115684)
I am almost certain Ableton Live for the mac does something like this. It is a piece of music production/performance software. It will appear to function normally, but the audio engine will gradually begin to fail in increasingly ugly ways, especially when you use plugins.

It usually starts doing this after a few weeks or months of regular uninterrupted use. Considering this app is used by professional musicians to perform in front of audiences of thousands of fans, having the possibility of the app crashing hard at a random time hanging over you is a pretty powerful disincentive against piracy.

Over the years, many cracking groups have tried and failed to overcome this. The guys at ableton are extraordinary programmers and they've obviously done a number on this one.

There were even rumours that one of the top audio software cracking group members was actually an ableton developer, and that they leaked these devilishly broken builds to the warez scene themselves.

Re:I Can Crack Your App With Just A Shell (And How To Stop Me) by freedrull on Thursday January 20, 2011 @02:03AM (#2122947)
I think that Ableton does this too. Almost every month or few weeks it would reliably crash.
Re:I Can Crack Your App With Just A Shell (And How To Stop Me) by ZoFreX on Tuesday January 18, 2011 @05:11AM (#2115311)
Why bother with stealth? My favourite approach is the Microsoft approach. It pops up, says "I'm cracked, click here", which takes the user to a web page that shows them all the benefits they'll reap if they get a legit version, just type your credit card number in this box and all is forgiven. It's hilariously easy to make your installation legal, which is the point... it's easier than pirating it, AND you get benefits.
Re:I Can Crack Your App With Just A Shell (And How To Stop Me) by ZoFreX on Tuesday January 18, 2011 @10:14AM (#2116032)
Just wanted to add that this is the exact opposite to what some large game companies do. I bought Settlers 7 (an Ubisoft title) and got kicked out of the single-player campaign every time my internet connection blipped. In contrast, had I pirated the game, I would have had a paradoxically better experience. No incentive to buy, whatsoever.
Re:I Can Crack Your App With Just A Shell (And How To Stop Me) by muppetman on Monday January 17, 2011 @07:36PM (#2114049)
Forgive my numbness, but how does this work? How do you know the right signature to be verifying against? It seems (to my not-much-of-a-programmer mind) that you've got a chicken and egg scenario here.

But that's obviously not the case, so you can explain briefly how it works? Or just paste a link.

Thanks!

Re:I Can Crack Your App With Just A Shell (And How To Stop Me) by jared314 on Monday January 17, 2011 @07:59PM (#2114121)
You move the UI messages into a separate resource file, as you would for language translation. The executable signature is unaffected by the changed UI messages.
Re:I Can Crack Your App With Just A Shell (And How To Stop Me) by stcredzero on Tuesday January 18, 2011 @01:25PM (#2116768)
Alternatively, you could use a broken hash and modify an unneeded string so as to produce a collision with the key you decided ahead of time.
Re:I Can Crack Your App With Just A Shell (And How To Stop Me) by SeoxyS on Monday January 17, 2011 @06:30PM (#2113887)
Brilliant!