Разбор SQL-инъекций. Создание файервола для защиты веб-приложения от реализации SQL-инъекции.
ВВЕДЕНИЕ. 5
1 Теоретическая часть. 6
1.1 Принципы реализации SQL-инъекций. 6
1.1.1 Изменение входных параметров путем добавления в них конструкций языка SQL 7
1.1.2 Внедрение в строковые параметры 8
1.1.3 Использование Union 10
1.1.4 Экранирование хвоста запроса 15
1.1.5 Расщепление SQL-запроса 16
1.2 Методы защиты от SQL-атак. 17
1.2.1 Фильтрация строковых параметров 18
1.2.2 Фильтрация целочисленных параметров 18
1.2.3 Усечение входных параметров 19
1.2.4 Использование параметризованных запросов 19
1.2.5 Использование принципа наименьших привилегий при предоставлении доступа к БД 20
1.3 SQL-инъекции в веб-приложениях. 21
1.3.1 SQL-инъекция через параметры URL. 22
1.3.2 SQL-инъекция через Cookie. 22
1.3.3 SQL-инъекция через поля input HTML формы. 22
1.3.4 SQL-инъекция через скрытые поля HTML-формы. 23
1.4 Актуальные угрозы от SQL-инъекций. 23
1.4.1 Кража БД.. 23
1.4.2 Deface. 23
1.4.3 DoS 24
1.4.4 Чтение системных файлов. 24
1.4.5 Повышение привилегий. 24
1.5 Рекомендации по обеспечению безопасности веб-приложения 25
1.6 Анализ существующих реализаций WAF. 26
1.7 Основные требования к WAF. 29
1.8 Выбор средств разработки. 29
2 Практическая реализация и тестирование файервола. 30
2.1 Построение структуры программы.. 31
2.2 Практическая реализация WAF. 32
2.3 Реализация анализа входных данных. 33
2.4 Создание веб-приложения для тестирования WAF. 35
2.5 Тестирование файервола. 37
2.5.1 Тестирование на качество работы файервола. 37
2.5.2 Тестирование на нагрузку веб-приложения. 39
Заключение. 43
Список сокращений. 44
Список использованных источников 45
1. OWASP Top 10 2017 [Электронный ресурс]. – Режим доступа URL: https://wiki.owasp.org/images/9/96/OWASP_Top_10-2017-ru
2. Атака SQL Injection[Электронный ресурс]. – Режим доступа URL: https://technet.microsoft.com/ruru/library/ms161953%28v=sql.105%29.aspx
3. Противодействие атакам, использующим SQL-инъекции [Электронный ресурс]. – Режим доступа URL: http://www.ibm.com/developerworks
/ru/library/se-sql-injection-attacks/
4. Advanced SQL-Injection [Электронный ресурс]. – Режим доступа URL: https://www.ptsecurity.com/upload/corporate/ru-ru/download/PT-devteev-Advanced-SQL-Injection.pdf
5. MySQL Documentation [Электронный ресурс]. – Режим доступа URL: https://dev.mysql.com/doc/
6. SQL Injection [Электронный ресурс]. – Режим доступа URL: https://acribia.ru/articles/why_sql_injection_is_the_most_dangerous_type_of_vulnerability
7. Рынок WAF [Электронный ресурс]. – Режим доступа URL: https://www.anti-malware.ru/reviews/web_application_firewall_market_
overview_russia
8. Внедрение SQL-кода [Электронный ресурс]. – Режим доступа URL: https://dic.academic.ru/dic.nsf/ruwiki/626186
9. Статистика уязвимостей веб-приложений [Электронный ресурс]. – Режим доступа URL: https://www.ptsecurity.com/ru-ru/research/analytics/web-application-vulnerabilities-statistics-2019/
10. Рейтинг языков программирования приложений [Электронный ресурс]. – Режим доступа URL: https://progtips.ru/yazyki-programmirovaniya/rejting-yazykov-programmirovaniya.html
11. Уязвимости и угрозы веб-приложений в 2019 году [Электронный ресурс]. – Режим доступа URL: https://www.ptsecurity.com/ru-ru/research/analytics/web-vulnerabilities-2020/ html