Proceedings of ISP RAS


Защита программ от дизассемблирования.

С.И. Алейников, А.О. Богатов.

Abstract

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

Edition

Proceedings of the Institute for System Programming, vol. 11 (in Russian), 2006, Стр. 9-16.

ISSN 2220-6426 (Online), ISSN 2079-8156 (Print).

Full text of the paper in pdf (in Russian) Back to the contents of the volume