Поделиться в MAX

Думать как компилятор - Обфускация с другой стороны

Аватар автора
Из RE//verse 2026 смотрите ключевое выступление Лори Кирк «Думай как компилятор»: «Запутывание с другой стороны» У реверс-инженеров все наоборот. Вы боретесь с компилятором, не понимая, как он борется. Самые опытные инженеры по обфускации и программисты разбираются в скомпилированных приложениях на уровне ввода. Они пишут LLVM-проходы, которые вставляют сглаживающие поток управления и непрозрачные предикаты непосредственно в сборку. Они внедряют Rust до того, как у сообщества RE появятся инструменты для этого. Они разрабатывают пользовательский байт-код виртуальной машины, который никогда не будет поддерживаться ни одним декомпилятором. Есть соблазн перейти непосредственно к скомпилированному двоичному файлу, но лучший способ избежать преобразования - написать его самостоятельно. В этом докладе мы перестанем рассматривать двоичный файл как черный ящик и начнем рассматривать компилятор как хирургический инструмент. Мы создаем методы обфускации, враждебной оптимизации и настройки LLVM с нуля. Используя Compiler Explorer, C++ Insights и BinDiff, каждый метод сопоставляется с исходным кодом, сборкой и декомпилированным двоичным файлом. Перестаньте гадать о результатах. Осваивайте входные данные.

0/0


0/0

0/0

0/0

0/0