This article is currently an experimental machine translation and may contain errors. If anything is unclear, please refer to the original Chinese version. I am continuously working to improve the translation.
Recently, I wanted to switch from a hackintosh Synology on ESXi to unRAID. However, the official unRAID license is quite expensive, and I’m hesitant to use shady cracked versions.
I found an open-source cracking method, reposted from https://www.dosk.win/2022/03/11/unraid-guan-bu-xiu-gai-bu-yong-keymaker-ke-chi-xu-happy-de-fang-fa/
Personally tested and confirmed working on the latest unRAID 6.10.0 stable release. Actually, you can just compile the code using Ubuntu—no need for Slackware at all.
Preface
- The discussion in this article is strictly for technical exchange purposes. If you need it, please buy the official version !!!
- The discussion in this article is strictly for technical exchange purposes. If you need it, please buy the official version !!
- The discussion in this article is strictly for technical exchange purposes. If you need it, please buy the official version !
- Do NOT redistribute binaries!!!
Principle
emhttpdusesRSA_public_decryptto parse theBTRS.keyfile, which contains your registration information.- The parsed data is then written into
var/state.ini, making it accessible to other components.
Approach
- Use
LD_PRELOADto hook theRSA_public_decryptfunction and replace its behavior with custom logic.
Usage
Note: I compiled this on
Slackwareto avoid potential issues caused by different compilation environments.
- Compile the source code:
gcc -fPIC -shared crack.c -o BTRS.key. Why name itBTRS.key? Well, that file is useless anyway—might as well reuse the name and reduce clutter. (P.S. If you choose another name, make sure the originalBTRS.keyfile still exists and is large enough. So it’s better to just name the compiled outputBTRS.key.) - Place the compiled
BTRS.keyfile into/boot/config/BTRS.key. - Modify the startup script
/boot/config/go, replacing
1 | /usr/local/sbin/emhttp & |
with
1 | export UNRAID_GUID=your_USB_drive_GUID |
Result
This code was written when version
6.9.2was current. I casually tested it on6.10.0-rc3and it worked fine too—here’s a screenshot:
img
Code
1 |
|
This article is licensed under the CC BY-NC-SA 4.0 license.
Author: lyc8503, Article link: https://blog.lyc8503.net/en/post/unraid-crack/
If this article was helpful or interesting to you, consider buy me a coffee¬_¬
Feel free to comment in English below o/
