Details

Title Выявление атак на веб-приложения с использованием WAF на базе машинного обучения: выпускная квалификационная работа специалиста: направление 10.05.03 «Информационная безопасность автоматизированных систем» ; образовательная программа 10.05.03_08 «Анализ безопасности информационных систем»
Creators Томшинский Антон Михайлович
Scientific adviser Павленко Евгений Юрьевич
Organization Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности
Imprint Санкт-Петербург, 2025
Collection Выпускные квалификационные работы ; Общая коллекция
Subjects межсетевой экран ; машинное обучение ; HTTP-запросы ; многоклассовая классификация ; бинарная классификация ; случайный лес ; web application firewall ; machine learning ; HTTP requests ; multiclass classification ; binary classification ; random forest
Document type Specialist graduation qualification work
File type PDF
Language Russian
Level of education Specialist
Speciality code (FGOS) 10.05.03
Speciality group (FGOS) 100000 - Информационная безопасность
DOI 10.18720/SPBPU/3/2025/vr/vr25-858
Rights Доступ по паролю из сети Интернет (чтение)
Additionally New arrival
Record key ru\spstu\vkr\34832
Record create date 7/2/2025

Allowed Actions

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

Group Anonymous
Network Internet

Целью работы является защита веб-приложений от сетевых атак с использованием WAF, основанного на технологии машинного обучения. Задачи, решаемые в ходе исследования: 1. Провести анализ уязвимостей веб-приложений и классифицировать типовые атаки. 2. Провести анализ архитектуры и принципов работы WAF, определить их преимущества и недостатки. 3. Исследовать возможности применения машинного обучения для выявления атак на веб-приложения. 4. Выбрать и реализовать подходящую модель машинного обучения для анализа HTTP-запросов. 5. Разработать прототип WAF, интегрирующий модель машинного обучения в процесс обработки трафика. 6. Провести экспериментальные исследования точности работы разработанного прототипа. В ходе работы был исследован процесс функционирования межсетевых экранов для защиты веб-приложений, а также возможности использования методов машинного обучения для выявления вредоносных HTTP-запросов. Были проанализированы основные типы атак, в том числе XSS, SQL-инъекции, XXE и другие, а также изучены подходы к бинарной и многоклассовой классификации трафика. В результате была разработана система, способная автоматически классифицировать входящие HTTP-запросы и обнаруживать потенциальные угрозы. Был сделан вывод о целесообразности применения алгоритмов машинного обучения для повышения эффективности защиты веб-приложений. Полученные результаты могут быть использованы в качестве основы для проектирования WAF систем на базе машинного обучения. Для достижения данных результатов была разработана программа, реализующая генерацию HTTP-запросов, предварительную обработку данных и обучение моделей машинного обучения для обнаружения атак. В процессе работы использовались такие технологии, как Python (включая библиотеки Pandas, Scikit-learn), а также облачный сервис Google Colab для обучения моделей. Кроме того, применялись классификационные модели Random Forest и Decision Tree, объединённые в ансамбль.

The purpose of the study is to protect web applications from network attacks using a WAF based on machine learning technology. 1. Analyze vulnerabilities in web applications and classify common types of attacks. 2. Study the architecture and operating principles of WAFs, identifying their strengths and weaknesses. 3. Explore the potential of machine learning for detecting web application attacks. 4. Select and implement appropriate machine learning models for analyzing HTTP requests. 5. Develop a WAF prototype that incorporates machine learning into traffic processing. 6. Experimentally evaluate the accuracy and effectiveness of the developed system. During the work, the operation of WAFs and the application of machine learning methods for identifying malicious HTTP requests were studied. Typical attack types — such as XSS, SQL injection, and XXE—were analyzed, and methods for binary and multiclass traffic classification were applied. The work resulted in the development of a prototype system capable of automatically classifying incoming HTTP requests and detecting potential threats using machine learning algorithms. To achieve these results, a custom software solution was created to generate HTTP traffic, preprocess data, and train machine learning models. Technologies such as Python (with Pandas and Scikit-learn), Google Colab cloud platform, and ensemble models based on Random Forest and Decision Tree algorithms were used.

Network User group Action
ILC SPbPU Local Network All
Read
Internet Authorized users SPbPU
Read
Internet Anonymous
  • РЕФЕРАТ
  • ABSTRACT
  • Содержание
  • Определения, обозначения и сокращения
  • введение
  • 1 Анализ уязвимостей и классификация типовых атак на веб приложения
    • 1.1 Нарушение контроля доступа
    • 1.2 Ошибки криптографии
    • 1.3 Инъекции
    • 1.4 Недостатки в архитектуре или логики приложения
    • 1.5 Небезопасная конфигурация веб-приложения
    • 1.6 Устаревшие и небезопасные компоненты
    • 1.7 Ошибки в идентификации и аутентификации
    • 1.8 Ошибки программного обеспечения и целостности данных
    • 1.9 Ошибки логирования и мониторинга
    • 1.10 Подделка серверных запросов
    • 1.11 Классификация типовых атак
      • 1.11.1 Классификация по уровню воздействия
      • 1.11.2 Классификация по уровню реализации
      • 1.11.3 По причине возникновения
      • 1.11.4 По способу атаки
    • 1.12 Выводы
  • 2 Анализ архитектуры и принципов работы WAF
    • 2.1 Определение и назначение WAF
    • 2.2 Типы развёртывания WAF
    • 2.3 Архитектура WAF
    • 2.4 Методы анализа трафика
      • 2.4.1 Анализ по репутационным спискам
      • 2.4.2 Сигнатурный анализ
      • 2.4.3 Файловый анализ
      • 2.4.4 Поведенческий анализ
    • 2.5 Вывод
  • 3 Применение машинного обучения для выявления атак на веб-приложения
    • 3.1 Роль ML в обеспечении безопасности веб-приложения
    • 3.2 Преимущества ML в обеспечении безопасности веб-приложения
    • 3.3 Примеры использования машинного обучения для обнаружения атак
      • 3.3.1 Бинарная классификация с использованием ансамблевых методов
      • 3.3.2 Многоклассовая классификация с использованием XGBoost
      • 3.3.3 Поведенческий анализ с использованием кластеризации
      • 3.3.4 Глубокое обучение для сложных атак
      • 3.3.5 Гибридные подходы для повышения производительности
    • 3.4 Вывод
  • 4 Применение машинного обучения для выявления атак на веб-приложения
    • 4.1 Формализация задачи классификации
    • 4.2 Использование двухуровневой модели классификации
    • 4.3 Выбор и генерация датасета
      • 4.3.1 Генерация нормальных HTTP-запросов
      • 4.3.2 Генерация вредоносных HTTP-запросов
      • 4.3.3 Распределение классов в датасете
    • 4.4 Выбор метода ML
      • 4.4.1 Бинарная классификация
      • 4.4.2 Многоклассовая классификация
    • 4.5 Обучение моделей машинного обучения
      • 4.5.1 Результаты бинарной модели
      • 4.5.2 Результаты многолкассовой модели
    • 4.6 Вывод
  • 5 Разработка прототипа WAF с интеграцией модели машинного обучения в процесс обработки трафика
    • 5.1 Архитектура прототипа
    • 5.2 Обработка новых и неизвестных признаков
    • 5.3 Направления для доработки и расширения WAF-прототипа
    • 5.4 Вывод
  • 6 Экспериментальные исследования точности работы созданного прототипа WAF
    • 6.1 Описание используемых данных
    • 6.2 Результаты и анализ
    • 6.3 Вывод
  • заключение
  • список использованных источников
  • ПРИЛОЖЕНИЕ. ПРогрАММНЫЙ КОД ПРОТОТИПА МЕЖСЕТЕВОГО ЭКРАНА

Access count: 0 
Last 30 days: 0

Detailed usage statistics