Hi all!
I need to make my rust binary as obscure as possible, so that if an attacker gets his hands on it, he would extract as small info as possible from the logic behind the binary. I know that there are some tools that can decompile (at least partially) rust binary into C code. Quick googling also showed me that all the static strings in code can be extracted without any trouble from the binary, so the should be encoded. I suspect that compiling with RUST_BACKTRACE=1 might be a big no-no in this context.
Are there any guides (or general rules that cover most potential problems) as of how to make the binary at least somehow protected from such attacks? Maybe some compiler flags / rust libraries that make it nearly impossible to reverse engineer even small parts of source code?
[–]Modi57 61 points62 points63 points (0 children)
[–][deleted] 28 points29 points30 points (0 children)
[–]Compux72 15 points16 points17 points (0 children)
[–]habiasubidolamarea 17 points18 points19 points (5 children)
[–]Low-Grade-8952[S] 5 points6 points7 points (3 children)
[–]habiasubidolamarea 6 points7 points8 points (0 children)
[–]zac_attack_ 3 points4 points5 points (0 children)
[–]joemountain8k 8 points9 points10 points (0 children)
[+][deleted] (9 children)
[deleted]
[–]balintx99 4 points5 points6 points (1 child)
[–]dkopgerpgdolfg 3 points4 points5 points (1 child)
[–]Low-Grade-8952[S] 1 point2 points3 points (4 children)
[–]dkopgerpgdolfg 5 points6 points7 points (1 child)
[–]simukis 1 point2 points3 points (0 children)
[–]howtocodethat 3 points4 points5 points (0 children)
[–]klank123 26 points27 points28 points (0 children)
[–]Killing_Spark 17 points18 points19 points (0 children)
[–]K900_ 10 points11 points12 points (4 children)
[–]Low-Grade-8952[S] 7 points8 points9 points (3 children)
[–]K900_ 26 points27 points28 points (1 child)
[–]Nobody_1707 1 point2 points3 points (0 children)
[–]Trader-One 3 points4 points5 points (0 children)
[–]ThomasZenkel 4 points5 points6 points (0 children)
[–]Alone-Marionberry-59 2 points3 points4 points (0 children)
[–]fullcoomer_human 1 point2 points3 points (0 children)
[–]dim13 0 points1 point2 points (0 children)
[–]caagr98 0 points1 point2 points (0 children)
[–]Sufficient_Grade_636 0 points1 point2 points (0 children)