Details

Title Статический анализ безопасности программного обеспечения на языке C/C++ на основе LLVM-представления: выпускная квалификационная работа специалиста: направление 10.05.01 «Компьютерная безопасность» ; образовательная программа 10.05.01_02 «Математические методы защиты информации»
Creators Плотников Василий Михайлович
Scientific adviser Жуковский Евгений Владимирович
Organization Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности
Imprint Санкт-Петербург, 2025
Collection Выпускные квалификационные работы ; Общая коллекция
Subjects статический анализ ; поиск уязвимостей ; промежуточное представление ; ошибки кода ; static analysis ; vulnerability scanning ; intermediate representation ; code errors
Document type Specialist graduation qualification work
File type PDF
Language Russian
Level of education Specialist
Speciality code (FGOS) 10.05.01
Speciality group (FGOS) 100000 - Информационная безопасность
DOI 10.18720/SPBPU/3/2025/vr/vr25-51
Rights Доступ по паролю из сети Интернет (чтение)
Additionally New arrival
Record key ru\spstu\vkr\34231
Record create date 2/27/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. Провести сравнительный анализ способов статического анализа и оценить возможность их применения в задачах выявления уязвимостей программного обеспечения на языке C/C++. 3. Разработать способ обнаружения уязвимостей в программном обеспечении на языке C/C++ на основе анализа LLVM-представления приложений. 4. Разработать программный прототип, реализующий предложенный способ, и оценить результативность его работы. В ходе работы была исследованы методы обнаружения уязвимостей программного обеспечения. Были проанализированы современные исследования в области статического тестирования безопасности программного обеспечения. В результате работы был реализован программный прототип предложенного способа поиска наиболее распространенных уязвимостей программного обеспечения, была продемонстрирована эффективность способа. Полученные результаты могут быть использованы для проектирования систем статического анализа программного обеспечения.

The purpose of the study is identification of vulnerabilities in the source code of C/C++ software based on LLVM representation. The subject of the work is static application security testing methods used to detect vulnerable code sections. The research set the following goals: 1. Analyze the methods of software vulnerability detection. 2. Carry out a comparative analysis of static analysis methods and evaluate the possibility of their application in the tasks of software vulnerability detection in C/C++. 3. Develop a method of detecting vulnerabilities in C/C++ software on the basis of analyzing LLVM representation of applications. 4. Implement a software prototype that implements the proposed method and evaluate its performance. During the work software vulnerability detection methods were investigated. Modern research in the field of static software security testing was analyzed. The work resulted in software prototype of the proposed method of searching for the most common software vulnerabilities was implemented, the effectiveness of the method was demonstrated. The results could be used as a base for designing systems of static software analysis.

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

Access count: 5 
Last 30 days: 4

Detailed usage statistics