Weakly Supervised Vulnerability Localization via Multiple Instance Learning

2509.11312v1 cs.SE, cs.AI 2025-09-17
Авторы:

Wenchao Gu, Yupan Chen, Yanlin Wang, Hongyu Zhang, Cuiyun Gao, Michael R. Lyu

Резюме на русском

## Контекст В последние годы системы безопасности программного обеспечения приобрели важное значение, в связи с повышением активности злоумышленников и ростом сложности цифровых систем. Одна из ключевых проблем в этой области — уязвимости программного кода. Хотя существуют методы для обнаружения уязвимостей на уровне функций или файлов, эти подходы не позволяют точно определить конкретные участки кода, требующие исправления. Это влечет за собой дополнительные затраты времени и бюджета на ручной анализ. Таким образом, необходимо разработать алгоритм, который бы не только обнаруживал уязвимости на уровне функций, но и автоматически ставил визуализировать их в коде. ## Метод Проект WAVES (WeAkly supervised Vulnerability Localization via multEple inStance learning) предлагает инновационный подход к автоматическому локализованию уязвимостей без необходимости дополнительного маркирования внутри функций. Основной новизной является использование многоинстансного обучения (multiple instance learning), при котором полученные метки на уровне системы (функций) преобразуются в локальные метки для отдельных инструкций кода. Эти метки используются для обучения классификаторов, отвечающих за функционал быстрого определения уязвимости. Такой подход уменьшает необходимость в высококвалифицированном времени разработчиков, одновременно сохраняя высокую точность работы. ## Результаты На основе экспериментов, проведенных на трех наиболее популярных бенчмарк-данных, показано, что алгоритм WAVES демонстрирует высокую точность в обнаружении уязвимостей на уровне функций. Более того, он показал значительные преимущества по сравнению с традиционными подходами при локализации уязвимостей на уровне отдельных инструкций. Такой результат достигается благодаря тому, что WAVES аккуратно преобразует глобальные метки в локальные, при этом сохраняя высокую точность в определении того, где именно произошла уязвимость. ## Значимость Помимо возможности обнаружения уязвимостей, этот подход имеет большой потенциал в различных областях, таких как автоматическое тестирование, анализ кода и робототехника. Одним из главных преимуществ является снижение затрат на экспертный анализ и времени, необходимого для ручного определения участков кода, требующих исправления. Таким образом, WAVES может существенно повысить эффективность разработки, уменьшить риски и повысить уровень безопасности программных систем. ## Выводы В итоге, WAVES представляет собой новый подход к обнаружению и локализации уязвимостей, который не требует дополнительных маркировок на уровне отдельных инструкций. Он демонстрирует потенциал для ускорения проц

Abstract

Software vulnerability detection has emerged as a significant concern in the field of software security recently, capturing the attention of numerous researchers and developers. Most previous approaches focus on coarse-grained vulnerability detection, such as at the function or file level. However, the developers would still encounter the challenge of manually inspecting a large volume of code inside the vulnerable function to identify the specific vulnerable statements for modification, indicating the importance of vulnerability localization. Training the model for vulnerability localization usually requires ground-truth labels at the statement-level, and labeling vulnerable statements demands expert knowledge, which incurs high costs. Hence, the demand for an approach that eliminates the need for additional labeling at the statement-level is on the rise. To tackle this problem, we propose a novel approach called WAVES for WeAkly supervised Vulnerability Localization via multiplE inStance learning, which does not need the additional statement-level labels during the training. WAVES has the capability to determine whether a function is vulnerable (i.e., vulnerability detection) and pinpoint the vulnerable statements (i.e., vulnerability localization). Specifically, inspired by the concept of multiple instance learning, WAVES converts the ground-truth label at the function-level into pseudo labels for individual statements, eliminating the need for additional statement-level labeling. These pseudo labels are utilized to train the classifiers for the function-level representation vectors. Extensive experimentation on three popular benchmark datasets demonstrates that, in comparison to previous baselines, our approach achieves comparable performance in vulnerability detection and state-of-the-art performance in statement-level vulnerability localization.

Ссылки и действия