
Rust-бинарник "Two-Face" для Linux
Исполняемый файл, который в большинстве случаев запускает безвредную программу, но выполняет другой скрытый код, если развернут на определенном целевом хосте.
См. Создание «Two-Face» Rust-бинарного файла в Linux.
Вам потребуется сборочное окружение Rust, например из rustup.
Требуется nightly-тулчейн (для поддержки типа ! «never»).
Скрипт test-example соберет и запустит полный пример.
В репозитории представлены следующие пакеты:
evil_binary: пример «скрытого» бинарного файла, который запускается, когда данные хоста соответствуют заданным в example/host.jsonharmless_binary: пример «обычного» бинарного файла, который будет запускаться на других хостахexample: результирующий «Two-Face» бинарный файл, который упаковывает оба предыдущих бинарных файла и направляет выполнение в тот или иной файл в зависимости от хостаtwoface: библиотека, предоставляющая возможности времени сборки и времени выполнения