Детальная информация
| Название | Программный комплекс автоматизации разработки и анализа безопасности REST API: выпускная квалификационная работа специалиста: направление 10.05.01 «Компьютерная безопасность» ; образовательная программа 10.05.01_02 «Математические методы защиты информации» = A Software System for Automating Development and Security Analysis of REST APIs |
|---|---|
| Авторы | Харитонова Софья Александровна |
| Научный руководитель | Павленко Евгений Юрьевич |
| Организация | Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности |
| Выходные сведения | Санкт-Петербург, 2026 |
| Коллекция | Выпускные квалификационные работы ; Общая коллекция |
| Тематика | безопасность api ; rest api ; статический анализ кода ; roslyn api ; ci/cd ; анализ пул-реквестов ; secure by design ; api security ; static code analysis ; pull request analysis |
| Тип документа | Выпускная квалификационная работа специалиста |
| Язык | Русский |
| Уровень высшего образования | Специалитет |
| Код специальности ФГОС | 10.05.01 |
| Группа специальностей ФГОС | 100000 - Информационная безопасность |
| DOI | 10.18720/SPBPU/3/2026/vr/vr26-411 |
| Права доступа | Доступ по паролю из сети Интернет (чтение) |
| Дополнительно | Новинка |
| Ключ записи | ru\spstu\vkr\40254 |
| Дата создания записи | 20.04.2026 |
Разрешенные действия
–
Действие 'Прочитать' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети
| Группа | Анонимные пользователи |
|---|---|
| Сеть | Интернет |
Целью работы является автоматизация обеспечения безопасности API-приложений посредством интеграции механизмов статического анализа и интеллектуальной проверки пул-реквестов в среду разработки и CI/CD-процессы. Объектом исследования являются процессы разработки и обеспечения безопасности API-приложений. Задачи, решаемые в ходе исследования: 1. Провести анализ подходов к обеспечению безопасности API-приложений и средств статического анализа. 2. Спроектировать комплекс автоматизации разработки и анализа безопасности API-приложений. 3. Разработать плагин IDE, реализующий статический анализ безопасности API-приложений на основе Roslyn API. 4. Внедрить механизм анализа пул-реквестов с использованием моделей машинного обучения в инфраструктуре GitHub. 5. Провести экспериментальную оценку эффективности предложенного комплекса и сравнение с другими решениями. В работе рассмотрены современные подходы к обеспечению безопасности API. В результате была разработана архитектура комплекса для анализа безопасности REST API, включающая IDE-анализатор и модуль анализа пул-реквестов в CI/CD. Экспериментальная оценка показала эффективность решения и возможность его практического применения для внедрения практик безопасной разработки. Для достижения данных результатов были использованы: интерфейс Microsoft.CodeAnalysis (Roslyn), Yandex Cloud Functions с моделью Qwen3-235B-A22B-FP8 и система GitHub Actions.
The aim of this work is to automate the security assurance of API applications by integrating static analysis mechanisms and intelligent pull request verification into the development environment and CI/CD processes. The object of the research is the processes of development and security assurance of API applications. The objectives addressed in the course of the study are as follows: 1. To analyze existing approaches to ensuring the security of API applications and static analysis tools. 2. To design a software system for automating the development and security analysis of API applications. 3. To develop an IDE plugin that implements static security analysis of API applications based on the Roslyn API. 4. To integrate a pull request analysis mechanism using machine learning models into the github infrastructure. 5. To conduct an experimental evaluation of the effectiveness of the proposed system and to compare it with existing solutions. The paper examines modern approaches to API security. As a result, an architecture of a software system for REST API security analysis was developed, including an IDE-based analyzer and a pull request analysis module integrated into CI/CD pipelines. Experimental evaluation demonstrated the effectiveness of the proposed solution and its applicability for the adoption of secure-by-design development practices. To achieve these results, the following technologies were used: the Microsoft.CodeAnalysis (Roslyn) interface, Yandex Cloud Functions with the Qwen3-235B-A22B-FP8 model, and the GitHub Actions CI/CD system.
| Место доступа | Группа пользователей | Действие |
|---|---|---|
| Локальная сеть ИБК СПбПУ | Все |
|
| Интернет | Авторизованные пользователи СПбПУ |
|
| Интернет | Анонимные пользователи |
|
- Реферат
- Abstract
- Определения, обозначения и сокращения
- Введение
- 1 Анализ подходов к обеспечению безопасности API-приложений и средств статического анализа
- 1.1 Типы API и их особенности
- 1.1.1 REST API
- 1.1.1.1 Причины популярности REST
- 1.1.1.2 Безопасностные особенности REST
- 1.1.1.3 Почему REST наиболее уязвим и требует автоматизированного анализа
- 1.1.2 GraphQL
- 1.1.3 gRPC
- 1.1.1 REST API
- 1.2 Основные угрозы безопасности API
- 1.3 Технические и организационные меры защиты
- 1.3.1 Архитектурные и технические меры
- 1.3.2 Организационные и процессные меры
- 1.4 Методы анализа безопасности программного кода
- 1.4.1 Статический анализ (SAST)
- 1.4.2 Динамический анализ (DAST) и гибридные подходы
- 1.4.3 Fuzzing API и тестирование интерфейсов
- 1.5 Применение методов машинного обучения
- 1.5.1 Представления кода: от токенов к графам
- 1.5.2 Архитектуры моделей и приёмы обучения
- 1.5.3 Формирование и разметка тренировочных данных
- 1.5.4 Метрики и оценка моделей
- 1.5.5 Преимущества ML-подходов для безопасности API
- 1.5.6 Ограничения и риски
- 1.5.7 Внедрение в рабочий конвейер (integration patterns)
- 1.6 Исследования в области API-фаззинга
- 1.7 Анализ злоупотреблений и ошибок в API
- 1.8 Безопасность экосистемы GitHub и CI/CD
- 1.9 Выводы
- 1.1 Типы API и их особенности
- 2 Проектирование комплекса автоматизации разработки и анализа безопасности API-приложений
- 2.1 Основные компоненты архитектуры
- 2.2 Принципы построения статического анализатора безопасности
- 2.2.1 Классификация подходов к статическому анализу
- 2.2.2 Основные компоненты статического анализатора безопасности
- 2.2.3 Сравнение вариантов по параметрам эффективности
- 2.2.4 Обоснование выбора подхода на основе Roslyn API
- 2.3 Интеграция анализа безопасности в CI/CD
- 2.4 Выводы
- 3 Разработка плагина для IDE, реализующего статический анализ безопасности API-приложений на основе Roslyn API
- 3.1 Цели и задачи анализатора
- 3.2 Архитектура проекта
- 3.3 Анализ вызовов небезопасных криптографических методов
- 3.4 Анализ строковых литералов (HTTP вместо HTTPS)
- 3.5 Обнаружение SQL-инъекций
- 3.6 Формирование диагностических сообщений
- 3.7 Тестирование анализатора
- 3.8 Выводы
- 4 Внедрение механизмов анализа пул-реквестов с использованием моделей машинного обучения в инфраструктуре GitHub
- 4.1 Назначение и место компонента в комплексе
- 4.2 Общая архитектура и последовательность работы
- 4.3 Настройка инфраструктуры в Yandex Cloud
- 4.4 Конфигурация GitHub Actions
- 4.5 Спецификация Workflow (YaWL)
- 4.6 Пример результатов работы
- 4.7 Преимущества подхода
- 4.8 Ограничения и пути развития
- 4.9 Выводы
- 5 Экспериментальная оценка эффективности разработанной системы и сравнение с существующими решениями
- 5.1 Тестирование программного комплекса
- 5.1.1 Методика тестирования
- 5.1.2 Тестирование IDE-модуля анализа
- 5.1.3 Тестирование модуля анализа pull-request
- 5.1.4 Производительность программного комплекса
- 5.2 Общая характеристика сравниваемых программных средств
- 5.3 Критерии сравнительного анализа
- 5.4 Результаты сравнительного анализа
- 5.5 Выводы по результатам сравнительного анализа и тестирования
- 5.1 Тестирование программного комплекса
- Заключение
- Список использованных источников
- Приложение 1. Основной класс IDE-анализатора
- Приложение 2. Запуск анализатора пул-реквестов
- Приложение 3. Конфигурация workflow на языке yaWl
Количество обращений: 0
За последние 30 дней: 0