A tool to replace local environment info in binaries #361
Labels
Beginner
Simple projects that can be done by people relatively new to programming.
Developer tooling
Help your fellow developers out by making their job a bit more enjoyable with good tooling.
Little work
This project takes little time to complete. (ETA couple of days)
Project description
Sometimes when one compiles software, it turns out the libs built capture various sorts of local environment information, like paths. It especially happens in software in Rust, where the compiler put this info into panic messages, and there is no way to disable it for third-party crates, but it also happens in software in C++ since the compiler has macros like FILE.
Presence of such kind of info causes builds being non-deterministic and also causes leaks of sensitive information like local paths, including user names and parent directories, which can give insight into private life of the developer and facilitate reverse engineering of a module.
So it is proposed to create a software which will scan binaries on strings looking like paths and replace them to the ones relatively to the base dir. It is a shortening operation, so can be done in-place, while the rest of the string can be replaced with neutral padding, like zeros and whitespaces.
Relevant Technology
strings
command line utilitybash
and any other scripting language, sincestrings
returns offsets.Complexity and required time
Complexity
Required time (ETA)
Categories
The text was updated successfully, but these errors were encountered: