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

Труды ИСП РАН, 2022, том 34, выпуск 5, страницы 63–76 (Mi tisp721)

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

Способ оценки похожести программ методами машинного обучения

П. Д. Борисовa, Ю. В. Косолаповb

a Научно-исследовательский институт “Специализированные вычислительные устройства защиты и автоматика”, г. Ростов-на-Дону
b Южный федеральный университет

Аннотация: В работе рассматривается задача построения алгоритма сравнения двух исполнимых файлов. В основе алгоритма лежит построение по заданной паре программ вектора показателей похожести и принятие на основе этого вектора решения о похожести или непохожести программ с помощью методов машинного обучения. Показатели похожести строятся с помощью алгоритмов двух типов: с помощью алгоритмов, не учитывающих формат входных данных (значения нечетких хеш-функций, значения коэффициентов сжатия), и с помощью алгоритмов, выполняющих анализ машинного кода (с помощью дизассемблеров). Всего построено 15 показателей: 9 показателей первого типа и 6 второго. На основе построенного обучающего множества пар похожих и непохожих программ (на основе набора программ coreutils) обучены и протестированы 7 разных бинарных классификаторов. Результаты экспериментов показали высокую точность моделей на основе случайного леса и k ближайших соседей. Также выявлено, что совместное применение показателей обоих типов может увеличить точность классификации.

Ключевые слова: обфускация, похожесть программ, машинное обучение

DOI: 10.15514/ISPRAS-2022-34(5)-4



© МИАН, 2024