Деобфускация вредоносного программного обеспечения с использованием промежуточного представления LLVM

Безопасность программного обеспечения
Авторы:
Аннотация:

Рассматривается задача автоматизации деобфускации вредоносного программного обеспечения. Предложен метод, основанный на промежуточном представлении LLVM, объединяющий динамическую распаковку с трассировкой, гибридное (trace-assisted) восстановление графа потока управления и итеративную девиртуализацию. Разработан программный прототип, реализующий предложенный метод. Проведена экспериментальная оценка, подтвердившая применимость метода к снятию обфускации классов: упаковка, искажение потока управления, обфускация инструкций и виртуализация кода.