Hi
GangStarr, nice to meet you! For some time, I've been hearing that you'll reverse engineer Nirai. That's no big deal. However, some inaccurate things have been said. Please allow me describe Nirai's security model.
First of all,
Nirai is now open source! No more
security through obscurity. In fact, it's never been. Panda3D and Python are almost 98% of its code and they are publicly available. Because of that, looking for TLOPO-specific code is unfeasible. You gotta be quite lucky or determined to find the relevant 2%. The rest is just Panda3D/Python/third-party code you aren't interested into. Ain't it cool?
https://github.com/nirai-compiler
2. For most projects,
AES is used. Remember Kerckhoff's principle (since you mentioned kernel I'm assuming you know what you are talking about, therefore you should know it): even if you use a dissembler, you won't know the key, as long as it's done properly. And for TLOPO I will do it correctly. Ain't it cool?
3. Nirai supports
Python bytecode obfuscation. Even if you happen do dump
PyImport_FrozenModules array, a lot of garbage would be dumped. The bytecode is deobfuscated just in time. Ain't it cool?
4. Nirai generates a static executable. That means no exposed python DLL. That means no
Python code injection. Ain't it cool?
5. The connection between TLOPO client and server uses
properly validated TLS. We use certificate pinning, so even if you happen to intercept it, the client would not accept your certificate. Ain't it cool?
6. All our phases are digitally signed and properly verified.
Phase files which are tampered with are not loaded at all. Ain't it cool?
7.
TLOPO AI method properly validate all requests. For example, if you request an invalid weapon in your inventory, it refuses to add it and logs such event. Ain't it cool?
Now, I'm gonna make you an invitation. Since Nirai is open source, go ahead and have fun! Clone and build it (docs are yet to made but if you claim you can decompile it you must be able to compile it, which is extremely easier and doable), compile the sample project and try to reverse engineer it. But... the sample project is easy to "hack". There's no security enforcement: AES key is hardcoded into the exe and the obfuscation process is ridiculous (let's see if you can even figure that out).
After you have successfully hacked the sample project (I would consider only arbitrary Python code injection or module dumping, with proof-of-concept, successful), move on to a real-world application which is already using (an older version) of Nirai: Toontown Next. I doubt you can harm them in anyway. Ain't it cool?
However, if you do find any serious exploit in Nirai, feel free to report it at
https://github.com/nirai-compiler/src/issues
So long,
Loblao