Details

Title Применение промежуточного представления кода LLVM при поиске уязвимостей на основе анализа указателей: выпускная квалификационная работа бакалавра: направление 10.03.01 «Информационная безопасность» ; образовательная программа 10.03.01_03 «Безопасность компьютерных систем»
Creators Юдин Андрей Николаевич
Scientific adviser Жуковский Евгений Владимирович
Organization Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности
Imprint Санкт-Петербург, 2025
Collection Выпускные квалификационные работы ; Общая коллекция
Subjects статический анализ ; поиск уязвимостей ; промежуточное представление ; анализ указателей ; static analysis ; vulnerability scanning ; intermediate representation ; pointer analysis
Document type Bachelor graduation qualification work
File type PDF
Language Russian
Level of education Bachelor
Speciality code (FGOS) 10.03.01
Speciality group (FGOS) 100000 - Информационная безопасность
DOI 10.18720/SPBPU/3/2025/vr/vr25-1372
Rights Доступ по паролю из сети Интернет (чтение)
Additionally New arrival
Record key ru\spstu\vkr\35689
Record create date 7/30/2025

Allowed Actions

Action 'Read' will be available if you login or access site from another network

Group Anonymous
Network Internet

Целью работы является выявление уязвимостей в исходном коде программного обеспечения на языке C/C++ на основе промежуточного представления LLVM с применением анализа указателей. Предметом исследования является применимость алгоритмов анализа указателей для выявления уязвимостей. Задачи, решаемые в ходе исследования: 1. Анализ типов уязвимостей, связанных с ошибками работы с памятью, и способов их выявления. 2. Исследование алгоритмов анализа указателей и возможности их применения при поиске уязвимостей. 3. Разработка способа выявления уязвимостей на основе анализа указателей в LLVM-представлении кода программы. 4. Разработка и проведение тестирования средства выявления уязвимостей, основанного на предложенном способе анализа. В ходе работы были исследованы методы обнаружения уязвимостей программного обеспечения. Были проанализированы современные исследования в области статического анализа программного обеспечения. В результате работы было разработано средство поиска уязвимостей, связанных с доступом к памяти, была продемонстрирована эффективность средства. Полученные результаты могут быть использованы для проектирования систем статического анализа программного обеспечения.

The purpose of the study is vulnerability detection in C/C++ software source code based on LLVM intermediate representation using pointer analysis. The subject of the work is the applicability of pointer analysis algorithms for vulnerability detection. The research set the following goals: 1. Analysis of the types of memory safety vulnerabilities and the ways to identify them. 2. Research of pointer analysis algorithms and their potential application in vulnerability search. 3. Development of a method of vulnerability detection based on pointer analysis in LLVM IR. 4. Development and testing of a vulnerability detection tool based on the proposed analysis method. During the work methods for detecting software vulnerabilities were studied. Modern studies in static software analysis areas were analyzed. The work resulted in development of a tool to find memory safety vulnerabilities; the effectiveness of the tool was demonstrated. The results could be used as a base for designing static software analysis systems.

Network User group Action
ILC SPbPU Local Network All
Read
Internet Authorized users SPbPU
Read
Internet Anonymous

Access count: 2 
Last 30 days: 2

Detailed usage statistics