Разработка инструмента для автоматического выявления уязвимостей в исходном коде на основе глубоких нейронных сетей
Аннотация
Название ВКР: Разработка инструмента для автоматического выявления уязвимостей в исходном коде на основе глубоких нейронных сетей
ФИО магистранта: Русинова Залина Ринатовна
ФИО научного руководителя: Долганов Антон Юрьевич
Аннотация: Данная работа посвящена разработке инструмента автоматического тестирования программного кода, который позволяет эффективно обнаруживать и классифицировать уязвимости с помощью методов глубокого обучения, в частности, методов обработки естественного языка. В работе представлен обзор существующих подходов и методов машинного обучения, проведен анализ и подбор наборов данных и алгоритмов машинного обучения для решения поставленной задачи, описана инфраструктура для проведения исследований и отслеживания их результатов. В ходе исследования изучены модели бинарной классификации, модели многоклассовой классификации для определения идентификаторов CWE, большие языковые модели для генерации описаний обнаруженных уязвимостей. Также был разработан новый подход для локализации уязвимостей на уровне строк программного кода с использованием методов объяснимости моделей машинного обучения SHAP и LIME.
Ключевые слова: МАШИННОЕ ОБУЧЕНИЕ, МОДЕЛИ МАШИННОГО ОБУЧЕНИЯ, ОБНАРУЖЕНИЕ УЯЗВИМОСТЕЙ В КОДЕ, БОЛЬШИЕ ЯЗЫКОВЫЕ МОДЕЛИ, ИНТЕРПРЕТАЦИЯ МОДЕЛЕЙ МАШИННОГО ОБУЧЕНИЯ
Metadata of the master's student
Title: Development of a tool for automatic detection of vulnerabilities in the source code based on deep neural networks
Full name of the master's student: Rusinova Zalina Rinatovna
Full name of the scientific supervisor: Dolganov Anton Yurievich
Abstract: This work is devoted to the development of an automatic code testing tool that allows to effectively detect and classify vulnerabilities using deep learning methods, in particular, natural language processing methods. The paper provides an overview of existing approaches and methods of machine learning, analyzes and selects datasets and machine learning algorithms to solve the task, describes the infrastructure for conducting research and tracking their results. In the course of the study, binary classification models, multiclass classification models for determining CWE identifiers, and large language models for generating descriptions of detected vulnerabilities were studied. A new approach has also been developed to localize vulnerabilities at the line level of program code using the explainability methods of the SHAP and LIME machine learning models.
Keywords: MACHINE LEARNING, MACHINE LEARNING MODELS, VULNERABILITY DETECTION IN CODE, LARGE LANGUAGE MODELS, INTERPRETATION OF MACHINE LEARNING MODELS
Дополнительная информация:
Институт: Институт радиоэлектроники и информационных технологий-РТФ.
Кафедра: Информационных технологий и систем управления.
Направление:
Срок обучения: 2022–2024 гг.
ФИО магистранта: Русинова Залина Ринатовна
ФИО научного руководителя: Долганов Антон Юрьевич
Аннотация: Данная работа посвящена разработке инструмента автоматического тестирования программного кода, который позволяет эффективно обнаруживать и классифицировать уязвимости с помощью методов глубокого обучения, в частности, методов обработки естественного языка. В работе представлен обзор существующих подходов и методов машинного обучения, проведен анализ и подбор наборов данных и алгоритмов машинного обучения для решения поставленной задачи, описана инфраструктура для проведения исследований и отслеживания их результатов. В ходе исследования изучены модели бинарной классификации, модели многоклассовой классификации для определения идентификаторов CWE, большие языковые модели для генерации описаний обнаруженных уязвимостей. Также был разработан новый подход для локализации уязвимостей на уровне строк программного кода с использованием методов объяснимости моделей машинного обучения SHAP и LIME.
Ключевые слова: МАШИННОЕ ОБУЧЕНИЕ, МОДЕЛИ МАШИННОГО ОБУЧЕНИЯ, ОБНАРУЖЕНИЕ УЯЗВИМОСТЕЙ В КОДЕ, БОЛЬШИЕ ЯЗЫКОВЫЕ МОДЕЛИ, ИНТЕРПРЕТАЦИЯ МОДЕЛЕЙ МАШИННОГО ОБУЧЕНИЯ
Metadata of the master's student
Title: Development of a tool for automatic detection of vulnerabilities in the source code based on deep neural networks
Full name of the master's student: Rusinova Zalina Rinatovna
Full name of the scientific supervisor: Dolganov Anton Yurievich
Abstract: This work is devoted to the development of an automatic code testing tool that allows to effectively detect and classify vulnerabilities using deep learning methods, in particular, natural language processing methods. The paper provides an overview of existing approaches and methods of machine learning, analyzes and selects datasets and machine learning algorithms to solve the task, describes the infrastructure for conducting research and tracking their results. In the course of the study, binary classification models, multiclass classification models for determining CWE identifiers, and large language models for generating descriptions of detected vulnerabilities were studied. A new approach has also been developed to localize vulnerabilities at the line level of program code using the explainability methods of the SHAP and LIME machine learning models.
Keywords: MACHINE LEARNING, MACHINE LEARNING MODELS, VULNERABILITY DETECTION IN CODE, LARGE LANGUAGE MODELS, INTERPRETATION OF MACHINE LEARNING MODELS
Дополнительная информация:
Институт: Институт радиоэлектроники и информационных технологий-РТФ.
Кафедра: Информационных технологий и систем управления.
Направление:
Срок обучения: 2022–2024 гг.