3 ms·
The truth is you can't really stop cracking. Even asymmetric crypto can be subverted by, e.g., changing/patching the public key in the executable.
by ronsor 4y ago
The truth is you can't really stop cracking. Even asymmetric crypto can be subverted by, e.g., changing/patching the public key in the executable.
- 1letterunixname 4y agoIt can until there's hard hardware chain-of-trust enforcement (like UEFI) with signed images. Without signed executables, and if someone is willing to spend the time to look for the exact spots in a disassembler in non-verified executables, they can either negate the condition or skip over the license check. This assumes it only happens in 1 location. Every upgrade of that particular file would likely need to be re-patched each time. The least work semi-automated way to find it is through tracing a initial failure run and then binary search inverting logic of branch instructions.
- josephcsible 4y ago> It can until there's hard hardware chain-of-trust enforcement (like UEFI) with signed images. That can only happen if Treacherous Computing wins. If you actually have control over the things you own, you'd be able to tell your device to lie about the first stage's signature.
- Mindwipe 4y agoHacker News sings the praises of Apple doing this constantly and decries anti-trust action to stop them. It has already happened.
- ronsor 4y agoHacker News is not a monolithic entity.
- brokenmachine 4y agoI'm Hacker News and I never said any of that.
- matheusmoreira 4y ago> It can until there's hard hardware chain-of-trust enforcement (like UEFI) with signed images. Until they make it so we need corporation or government signatures to run software on "our" machines. Until they finally destroy our computing freedom.
- bakugo 4y ago> Until This has been the case for over a decade on smartphones, and corporations like Microsoft are currently hard at work bringing it to traditional computers.
- matheusmoreira 4y agoNot at all. Android phones had relatively good user freedom for a long time. You could root them, intercept system calls and return fake data to apps, intercept their network traffic and see what it's phoning home about or even debug the apps themselves. Life was good, the device was mostly ours, we were in control and all these app developers answered to us whether they wanted to or not. Only now is hardware remote attestation putting an end to all that.
- deleted 4y ago[deleted]
- themoonisachees 4y agoAndroid phones are still like that if you choose to not buy pixels or Samsungs
- theodric 4y agoYes, but why would you?
- matheusmoreira 4y agoFor now.
- 4y ago
- dinom 4y ago> It can until there's hard hardware chain-of-trust enforcement (like UEFI) with signed images. And then hackers will graduate to side-channel attacks... it's a game of cat and mouse. The best bet, IMHO, is to make the cost of cracking exceed the value of what's being cracked.
- flangola7 4y agoWith hardware root trust the side channel attacks look something like breaking into Apple's most secured facilities and ordering multiple senior employees around at gunpoint. Hardware remote attestation means your local physical device is as accessible as a distant server. Dumping RAM does not work, tapping the bus does not work, writing your own firmware does not work. It is exactly like an ISP performing a machine-in-the-middle attack on a TLS connection; impossible unless without some way of obtaining the certificate private key.
- dinom 4y ago> impossible Probably, but I'm not the type who likes to rule anything out completely.
- brookst 4y agoAbsolutely true, in the same way you can't truly prevent burglary. Yet we all have lock our cars, have door locks, have bike locks, etc.
- vbezhenar 4y agoDownloading some sketchy binaries is one thing. Using generated license key is another thing. Many users would avoid first thing because of fear of download a virus (and for a good reason!). But using some online keygen or running keygen in VM once is not a big deal. IMO best way to implement license check is: using asymmetric crypto (so it's impossible to write keygen) and online activation (so it's impossible to share key).
- nvy 4y ago>IMO best way to implement license check is: using asymmetric crypto (so it's impossible to write keygen) and online activation (so it's impossible to share key). I believe from my experiences downloading CLASS and MYTH game rips from sketchy IRC channels on DALnet that even this method can be subverted by simply patching out the online activation check. The only feasible way to combat this that I'm aware of is to have some required code/data live on the company's server and thus force always-online to use the software.
- PragmaticPulp 4y agoTrue in an absolute sense, but making the cracking sufficiently difficult, painful, or risky will at least deter a lot of the people who have the means to pay. It’s not perfect but it does make a significant difference.
- jeroenhd 4y agoN=1 but back in my broke teenager years I definitely preferred keygens over cracks. With antivirus flagging everything crack or keygen related as a virus, I considered it important to only run the keygen once (in a sandbox/VM) to get the install done. Replacing DLLs and EXEs with a cracked version always came with risks that keygens don't.
- blincoln 4y agoIf you wanted to be really cautious, you could diff the original and cracked binaries and reverse engineer the difference. We did that on a project for a client once (a major software corporation) and the cracked version of their software literally just had one opcode replaced. The fellow working on the project with me had a lot of specialized domain experience in such things, and told me the actual cracking teams would never put malware in their own cracks, because it would ruin their reputation in the scene. I'm sure some cracks have had malware added after release by other people, of course, but I wonder how much of it was fearmongering by software companies.
- arsome 4y agoI just did this the other day and fairly quickly confirmed the crack patch replaced only the RSA key, then they keygen'd the rest. The higher risk thing tends to be downloading cracks from torrents or usenet where there's 3rd parties between you and a scene group.
- jeroenhd 4y agoI compeletely trust the cracking teams themselves. They're not wasting their talents just to install a key logger into four random machines halfway across the world. The problem is, the scene usually isn't about making piracy mainstream. Many release groups only released their cracks within closed circles to show off that they managed to crack a game. The cracks that made it out to the web often came through leaks, hosted on a shady site or distributed through torrents. For an outsider, these cracked files weren't all that trustworthy. That, together with antivirus software being made completely unreliable because of false positives, made it very hard to trust the .exes/.dlls that I used. Piracy is still a major infection vector today, and I imagine it will always be because of all the fake cracks on SEO hacked websites and shady operations necessary for the original crackers to distribute a crack without copyright lawyers sending you very scary letters.
- jameshart 4y agoAs with physical security, you often don't even need to attack the lock if you can instead compromise the latching mechanism. Most local software cracking doesn't involve fixing the license key check or the crypto code at all. You just remove the conditional jump that exits the program if the check fails.