RUS  ENG
Полная версия
ЖУРНАЛЫ // Труды института системного программирования РАН // Архив

Труды ИСП РАН, 2016, том 28, выпуск 5, страницы 93–104 (Mi tisp69)

Эта публикация цитируется в 1 статье

Применение диверсифицирующих и обфусцирующих преобразований для изменения сигнатуры программного кода

А. Р. Нурмухаметов

Институт системного программирования РАН

Аннотация: Развитие методов обнаружения вредоносных приложений привело к развитию специальных технологий, которые помогают вредоносным приложениям оставаться незамеченными. Многие из них направлены на изменение сигнатуры программного кода. Для академического изучения этих методов и кода, получаемого с их помощью, необходимо разработать инфраструктуру для автоматизированного изменения сигнатуры имеющейся программы. В данной работе приводится результаты работы по разработке и реализации такого автоматизированного инструмента на базе компиляторной инфраструктуры LLVM и инфраструктуры инструментации и трансформации бинарного кода Syzygy. В рамках этих инфраструктур были реализованы диверсифицирующие и обфусцирующие преобразования, которые были направлены на изменение сигнатуры исполняемого файла. Для работы этих инструментов требуется соответственно наличие исходного кода или отладочной информации. Были разработаны и реализованы следующие преобразования: вставка мертвого кода, перестановка местами инструкций, перестановка местами базовых блоков, перестановка местами функций в модуле, замена инструкций на эквивалентные, шифрование константных буферов данных. По результатам проведенных работ была продемонстрирована работоспособность данного подхода на реальных примерах, а также выявлены недостатки предложенного подхода и пути дальнейшего развития.

Ключевые слова: диверсификация, обфускация, сигнатурный поиск, вредоносные приложения.

DOI: 10.15514/ISPRAS-2016-28(5)-5



Реферативные базы данных:


© МИАН, 2024