Дипломная работа на тему "ТЮМГУ | Разработка системы защиты для микросервисной архитектуры от атак типа отказ в обслуживании с помощью rate liмiter"

Работа на тему: Разработка системы защиты для микросервисной архитектуры от атак типа отказ в обслуживании с помощью rate liмiter
Оценка: хорошо.
Оригинальность работы на момент публикации 50+% на антиплагиат.ру.
Ниже прилагаю все данные для покупки.
https://studentu24.ru/list/suppliers/Anastasiya1---1326

Описание работы

МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное автономное образовательное учреждение высшего образования
«ТЮМЕНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ»

ИНСТИТУТ МАТЕМАТИКИ И КОМПЬЮТЕРНЫХ НАУК
Кафедра информационной безопасности

Заведующий кафедрой,

ВЫПУСКНАЯ КВАЛИФИКАЦИОННАЯ РАБОТА
дипломная работа
РАЗРАБОТКА СИСТЕМЫ ЗАЩИТЫ ДЛЯ МИКРОСЕРВИСНОЙ АРХИТЕКТУРЫ ОТ АТАК ТИПА ОТКАЗ В ОБСЛУЖИВАНИИ С ПОМОЩЬЮ RATE LIМITER

10.05.03 «Информационная безопасность автоматизированных систем

Тюмень 2023

РЕФЕРАТ
Выпускная квалификационная работа на тему «Разработка системы защиты для микросервисной архитектуры от атак типа отказ в обслуживании с помощью Rate Limiter». Работа состоит из 58 страниц, 5 таблиц, 5 рисунков, 19 листингов, 37 использованных источников и 1 приложения.
При разработке системы были использованы материалы технической документации, статьи, материалы сети Интернет по связанным темам.
Целью выпускной квалификационной работы является разработка системы защиты для микросервисной архитектуры от атак типа отказ в обслуживании с помощью Rate Limiter. Для выполнения цели была изучена соответствующая документация; проектирование систем, алгоритмов; подобран список необходимых технологий; реализована система защиты для микросервисной архитектуры от атак типа отказ в обслуживании с помощью Rate Limiter.
Результатом данной работы является система защиты для микросервисной архитектуры от атак типа отказ в обслуживании с помощью Rate Limiter.
Ключевые слова: Rate Limiter, микросервисная архитектура, защита от атак типа «Отказ в обслуживании», Nginx, Lua, Docker, ИБ.

СОДЕРЖАНИЕ
ТЕРМИНЫ И ОПРЕДЕЛЕНИЯ 5
ВВЕДЕНИЕ 8
1 Rate Limiter 10
1.1 Что это такое 10
1.2 Цели использования 10
1.3 Какие алгоритмы ограничения скорости используются 11
1.4 Типы ограничений 12
Выводы по главе 1 14
2 Модули Nginx 15
2.1 Что такое модули 15
2.2 Установка модуля 16
2.3 Категории модулей 17
2.4 Как работает модуль 18
2.5 Как подключить сторонний модуль 19
Выводы по главе 2 21
3 Разработка системы защиты для микросервисной архитектуры от атак типа отказ в обслуживании 22
3.1 Используемые технологии 22
3.2 Архитектура 24
3.3. Бесшовное обновления частей конфигураций Nginx при помощи Lua и FoundationDB 25
3.4. Работа с Lua dynamic модулем Nginx 27
3.5 Разработка микросервисов 33
Выводы по главе 3 35
4 Тестирование 36
4.1 Характеристики системы 36
4.2 Тестирование инструментом ApacheBench 37
4.3 Результаты тестирования алгоритма 38
4.4 Сравнение эффективности работы со стандартным Rate Limiter Nginx 42
Выводы по главе 4 43
ЗАКЛЮЧЕНИЕ 44
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 46
ПРИЛОЖЕНИЕ А 50

ТЕРМИНЫ И ОПРЕДЕЛЕНИЯ
Nginx – Высокопроизводительный веб-сервер и обратный прокси-сервер
DoS – Кибератака, которая перегружает систему трафиком, делая ее недоступной.
DDoS – Распределенная версия DoS, когда несколько систем атакуют одну цель.
Rate Limiter – Ограничитель скорости: Инструмент, контролирующий частоту запросов для предотвращения исчерпания ресурсов.
API – Интерфейс, обеспечивающий взаимодействие между различными компонентами программного обеспечения.
Lua – Легкий язык сценариев
Микросервис – Небольшой независимый компонент программного обеспечения, ориентированный на выполнение одной функции.
Микросервисная архитектура – Архитектурный стиль, который структурирует приложения как наборы слабо связанных микросервисов.
FoundationDB – масштабируемая, распределенная, ACID- совместимая база данных NoSQL.
Dockerfile – Сценарий, используемый для автоматизации создания образов контейнеров Docker.
ApacheBench – Инструмент командной строки для бенчмаркинга производительности веб- сервера.
Воркер – Фоновый процесс, выполняющий задачи в распределенной или параллельной системе.
IP-адрес – Уникальный цифровой идентификатор, присваиваемый устройствам в сети.
HTTP – Основной протокол, используемый для передачи данных в Интернете.
SSL/TLS – Безопасные протоколы для зашифрованной связи через Интернет.
URL – Веб-адрес, определяющий местоположение ресурса в Интернете.
SMTP – Протокол для отправки сообщений электронной почты между серверами.
POP3 – Протокол для получения электронной почты с удаленного сервера.
GitHub – Веб-платформа для контроля версий и совместной работы с использованием Git.
NoSQL – Категория нереляционных баз данных, которые хранят и извлекают данные иначе, чем традиционные реляционные базы данных.
ACID – Набор свойств, обеспечивающих надежность и согласованность транзакций базы данных.
MVCC – Метод управления параллелизмом, используемый в базах данных для одновременного доступа к данным нескольких пользователей.
Docker Hub – Облачный реестр для обмена и распространения образов контейнеров Docker.
DLL – Динамически подключаемая библиотека, содержащая многократно используемый код для различных приложений.

ВВЕДЕНИЕ
С ростом распространенности веб-приложений и микросервисных архитектур эффективное управление и защита сетевого трафика приобрели решающее значение. Традиционные механизмы ограничения скорости, такие как стандартный ограничитель скорости Nginx, обеспечивают базовую защиту от атак типа "отказ в обслуживании" (DoS), но им может не хватать гибкости для адаптации к быстро меняющимся моделям трафика. В этой работе я предлагаю Rate Limiter на базе Nginx с общим хранилищем атакующих пользователей, который обеспечивает улучшенную производительность, безопасность и масштабируемость. Благодаря постоянному мониторингу трафика и корректировке ограничений скорости в режиме реального времени, этот адаптивный подход обеспечивает бесперебойную работу пользователей для легитимных клиентов и эффективно снижает вероятность DoS-атак.
Актуальность данной работы заключается в ее вкладе в решение важнейших задач, стоящих перед современными веб-приложениями и микросервисными архитектурами, таких как эффективное управление сетевым трафиком и обеспечение надежной защиты от атак типа "отказ в обслуживании" (DoS). С ростом сложности и масштабов веб-сервисов необходимость в адаптивных и масштабируемых механизмах ограничения скорости становится все более актуальной. Предлагаемый Rate Limiter на базе Nginx с общим хранилищем атакующих пользователей превосходит традиционные решения по ограничению скорости, демонстрируя улучшенную производительность, безопасность, масштабируемость и самое главное возможность внедрения на любом этапе развития проекта.
Объектом является микросервисная архитектура, предметом – разработка системы её защиты от атак типа «Отказ в обслуживании».
В рамках ВКР поставлена цель разработать систему защиты для микросервисной архитектуры от атак типа отказ в обслуживании с помощью Rate Limiter.
Для реализации целей необходимо было выполнить такие задачи:
1. изучить существующее способы защиты с помощью Rate Limiter;
2. изучить Nginx и принципы работы его модулей;
3. разработать систему защиты для микросервисной архитектуры от атак типа отказ в обслуживании с помощью Rate Limiter;
4. провести тестирование разработанной системы.
ВКР может быть полезна для студентов направлений «Информационная безопасность автоматизированных систем». Также, она может быть интегрированная в реальный проект и (или) быть использована в учебных целях.

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
1. Distributed API Rate Limiter [Электронный ресурс]. - 2021.
2. Nginx Rate Limiting [Электронный ресурс]. - 2017.
3. Rate Limiting in API Management [Электронный ресурс]. - 2019.
4. What is a DDoS Attack? - DDoS Meaning [Электронный ресурс]. - 2021.
5. Yandex Pummeled by Potent Meris DDoS Botnet [Электронный ресурс].
6. "Cloudflare mitigates record-breaking 71 million request-per-second DDoS attack Botnet [Электронный ресурс]. - 2023.
7. Reverse Proxies and Load Balancing [Электронный ресурс]. - 2016.
8. What Is Geo-Blocking and How to Bypass It [Электронный ресурс]. - 2021.
10. What Is a Nuke? | Radware — DDoSPedia [Электронный ресурс]. - 2019.
11. An Alternative Approach to Rate Limiting [Электронный ресурс]. - 2017.
12. Implementing a New IO Scheduler Algorithm for Mixed Read/Write Workloads [Электронный ресурс]. - 2022.
13. The New DDoS Landscape [Электронный ресурс]. - 2017.
14. Leaky Bucket Algorithm [Электронный ресурс]. - 2022.
15. Nginx Documentation [Электронный ресурс]. - 2023.
16. Load Balancing with Nginx [Электронный ресурс]. - 2021.
17. Nginx Caching for Performance [Электронный ресурс]. - 2015.
18. Use NGINX as a Front-end Proxy and Software Load Balancer [Электронный ресурс]. - 2023.
19. Introducing Dynamic Modules in NGINX 1.9.11 - NGINX [Электронный ресурс]. - 2016.
20. Nginx Guide: Essentials [Электронный ресурс]. - 2015.
21. Web Server Modules [Электронный ресурс]. - 2023.
22. Emiller’s Guide To Nginx Module Development [Электронный ресурс].- 2007.
23. Nginx Module Extension [Электронный ресурс]. - 2013.
24. Lua Programming Language [Электронный ресурс]. - 2023.
25. FoundationDB [Электронный ресурс]. - 2023.
26. Docker [Электронный ресурс]. - 2023.
27. Microservices Architecture [Электронный ресурс]. - 2018. -
28. Nginx_lua Module [Электронный ресурс]. - 2023.
29. LuaJIT [Электронный ресурс]. - 2022.
30. OpenResty [Электронный ресурс]. - 2021.
31. Lua Performance Tips [Электронный ресурс]. - 2008.
32. Using Lua Nginx module for dynamic routing based on Redis values [Электронный ресурс]. - 2021.
33. Docker Networking [Электронный ресурс]. - 2021.
34. Docker Compose [Электронный ресурс]. - 2023.
35. Design Patterns for Microservices [Электронный ресурс]. - 2021.
36. Microservices Testing Strategies [Электронный ресурс]. - 2014.
37. How to use ApacheBench for web server performance testing [Электронный ресурс]. - 2019.

НЕ НАШЛИ, ЧТО ИСКАЛИ? МОЖЕМ ПОМОЧЬ.

СТАТЬ ЗАКАЗЧИКОМ