Details
Title | Разработка анализатора компонентов исходного кода на примере web-сервисов, использующих Spring Boot: выпускная квалификационная работа бакалавра: направление 09.03.03 «Прикладная информатика» ; образовательная программа 09.03.03_03 «Интеллектуальные инфокоммуникационные технологии» |
---|---|
Creators | Емельянов Виталий Дмитриевич |
Scientific adviser | Пархоменко Владимир Андреевич |
Organization | Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности |
Imprint | Санкт-Петербург, 2025 |
Collection | Выпускные квалификационные работы ; Общая коллекция |
Subjects | компонентный анализ ; анализ исходного кода ; программные компоненты ; безопасность программного обеспечения ; поиск плагиата ; composition analysis ; source code analysis ; software components ; software security ; plagiarism detection |
Document type | Bachelor graduation qualification work |
File type | |
Language | Russian |
Level of education | Bachelor |
Speciality code (FGOS) | 09.03.03 |
Speciality group (FGOS) | 090000 - Информатика и вычислительная техника |
DOI | 10.18720/SPBPU/3/2025/vr/vr25-1135 |
Rights | Доступ по паролю из сети Интернет (чтение, печать, копирование) |
Additionally | New arrival |
Record key | ru\spstu\vkr\35677 |
Record create date | 7/30/2025 |
Allowed Actions
–
Action 'Read' will be available if you login or access site from another network
Action 'Download' will be available if you login or access site from another network
Group | Anonymous |
---|---|
Network | Internet |
Объектом исследования выступает процесс компонентного анализа программного обеспечения, рассматриваемый как элемент обеспечения безопасности, лицензионной чистоты и управляемости жизненного цикла web-сервисов на базе Spring Boot. Цель работы заключалась в создании прототипа SCA-системы, способной надёжно выявлять сторонние, модифицированные и обфусцированные библиотеки с помощью алгоритмов Winnowing и Dolos, заимствованных из практик поиска программного плагиата. Для реализации проекта задействованы JDK 17, PostgreSQL, Spring Boot, Hibernate, синтаксический парсер tree-sitter, а также репозитории GitHub и Maven, что позволило построить цепочку. В результате создан модульный прототип, прошедший модульные, интеграционные и нагрузочные испытания и показавший высокую точность обнаружения компонентов даже при существенных изменениях исходного кода, превосходя классический анализ зависимостей по полноте выявления библиотек. Инструмент может применяться в DevSecOps-конвейерах для автоматической проверки зависимостей, при аудите open-source-лицензий, в образовательных курсах по SCA и во внутренних платформах разработки крупных компаний, где требуется обнаруживать скрытые или изменённые библиотеки до выпуска релиза.
The object of the research is the process of Software Composition Analysis, viewed as an element for ensuring security, license compliance, and lifecycle manageability ofSpring Boot–based web services. The aim of the work was to create a prototype SCA system capable of reliably detecting third-party, modified, and obfuscated libraries by applying the Winnowing and Dolos algorithms adopted from code-plagiarism detection practices. To implement the project (section 6 of the assignment), JDK 17, PostgreSQL, Spring Boot, Hibernate, the tree-sitter parser, and GitHub and Maven repositories were employed. As a result, a modular prototype was built, passed unit, integration, and load tests, and demonstrated high accuracy in identifying components even under substantial source-code changes, outperforming classical dependency analysis in completeness of library detection. The tool can be used in DevSecOps pipelines for automatic dependency checks, in open-source license audits, in educational courses on SCA, and within large companies’ internal development platforms where hidden or altered libraries must be uncovered before release.
Network | User group | Action |
---|---|---|
ILC SPbPU Local Network | All |
|
Internet | Authorized users SPbPU |
|
Internet | Anonymous |
|
- Разработка анализатора компонентов исходного кода на примере web-сервисов, использующих Spring Boot
- Введение
- 1. Исследование методов и средств анализа компонентов программ
- 2. Проектирование решения по анализу компонентов программ
- 3. Реализация решения по анализу компонентов программ
- 4. Тестирование и апробация решения по анализу компонентов программ
- Заключение
- Список использованных источников
- Приложение 1 Листинг программного кода
- Приложение 2 Исходные данные для подбора оптимальных параметров алгоритма
Access count: 1
Last 30 days: 1