Publication: ПРИМЕНЕНИЕ МАШИННОГО ОБУЧЕНИЯ В ЗАДАЧЕ ОБНАРУЖЕНИЯ ПРОГРАММНЫХ КЛОНОВ
Дата
2026
Авторы
Грибков, Н. А.
Иванов, Д. В.
Journal Title
Безопасность информационных технологий
Journal ISSN
Volume Title
Безопасность Информационных Технологий
Издатель
НИЯУ МИФИ
Аннотация
Статья посвящена анализу методов определения схожести фрагментов программного кода, в частности, на уровне бинарных представлений прошивок программно-аппаратных комплексов. Наибольшей эффективности позволяют достичь гибридные методы, сочетающие анализ на нескольких уровнях абстракции. Все подходы классифицируются на основе используемых признаков: синтаксических и семантических. К синтаксическим признакам относятся низкоуровневые элементы, такие как последовательности байт, ассемблерные инструкции, статистические величины и графы потока управления (CFG). Их анализ близок к уровню байт и эффективен для поиска синтаксических клонов. Семантические же признаки, напротив, описывают взаимосвязи в коде и часто представляют собой векторные или графовые модели, построенные с применением алгоритмов машинного обучения, включая NLP-методы. Ключевая проблема – выбор и комбинирование оптимальных источников признаков. Использование только низкоуровневых данных ведет к «недостатку семантики», а опора исключительно на высокоуровневые представления увеличивает число ложных срабатываний. Комбинирование же подходов часто снижает общую эффективность, повышая частоту ошибок обоих типов. В качестве решения предлагается последовательное извлечение и совместное использование низкоуровневых признаков бинарного кода и высокоуровневых семантических признаков, извлекаемых на основе абстрактных синтаксических деревьев (AAST), для оптимизации поиска семантических клонов.
Описание
Ключевые слова
Машинное обучение , Синтаксический и семантический анализ , Схожесть программного кода , Анализ кода
Цитирование
Грибков, Н., Иванов, Д. (2026). Применение машинного обучения в задаче обнаружения программных клонов. Безопасность информационных технологий, 33(2), 28-37. doi: http://dx.doi.org/10.26583/bit.2026.2.04