Бакалавриат
2023/2024





Разработка защищенных приложений
Лучший по критерию «Полезность курса для Вашей будущей карьеры»
Лучший по критерию «Полезность курса для расширения кругозора и разностороннего развития»
Статус:
Курс обязательный (Информационная безопасность)
Направление:
10.03.01. Информационная безопасность
Когда читается:
2-й курс, 1-4 модуль
Формат изучения:
без онлайн-курса
Охват аудитории:
для своего кампуса
Преподаватели:
Башун Владимир Владимирович
Язык:
русский
Кредиты:
8
Контактные часы:
116
Программа дисциплины
Аннотация
Курс "Разработка защищенных веб-приложений" посвящён изучению принципов безопасности веб-среды, сетевых протоколов (HTTP/HTTPS, TLS) и современных методов защиты от угроз. Слушатели осваивают анализ уязвимостей (например, XSS, SQL Injection, CSRF), защиту API и микросервисов, а также ключевые стандарты, такие как OWASP Top 10 и Content Security Policy (CSP). Дополнительно курс охватывает процессы безопасной разработки (SSDLC), интеграцию DevSecOps в CI/CD, работу с инструментами анализа кода (SAST/DAST) и управление секретами. По завершении студенты смогут проектировать защищённые приложения, внедрять процессы DevSecOps и использовать инструменты для тестирования и мониторинга безопасности.
Цель освоения дисциплины
- Формирование системного понимания архитектуры веб-приложений и принципов их безопасной разработки
- Развитие практических навыков анализа веб-приложений с учётом безопасности
- Ознакомление с современными инструментами и процессами разработки
- Формирование глубокого понимания ключевых концепций информационной безопасности
- Ознакомление с основными угрозами информационной безопасности в контексте разработки веб-приложений
- Формирование представления о механизмах и способах защиты приложений, а также о практиках безопасной разработки
- Ознакомление с международными стандартами и фреймворками безопасности
- Формирование компетенций в управлении безопасностью на всех этапах жизненного цикла
Планируемые результаты обучения
- Знает основные элементы и структуру веб-приложения
- Знает синтаксис изучаемого языка программирования и реализует базовые приложения
- Разрабатывает серверное приложение
- Применяет на практике современные средства разработки (IDE, контроль версий)
- Применяет на практике средства тестирования
- Реализует сложные веб-приложения
- Перечисляет основные понятия информационной безопасности
- Называет основные актуальные уязвимости веб-приложений
- Приводит примеры механизмов безопасности для борьбы с уязвимостями
- Называет способы оценки угроз
- Анализирует приложение для выявления угроз безопасности
- Применяет механизмы защиты приложения от киберугроз
- Объясняет, какие механизмы от каких угроз защищают
- Понимает разные модели построения приложения
- Реализует приложение и механизмы безопасности с использованием современных фреймворков
- Применяет средства непрерывной разработки и интеграции
- Знать основные концепции безопасности веб-приложений.
- Уметь определять типичные угрозы для веб-приложений.
- Владеть методами классификации атак на веб-среду.
- Знать принципы работы HTTP/HTTPS и TLS
- Владеть инструментами анализа сетевого трафика
- Знать механизмы управления сеансами (cookies, tokens).
- Уметь применять HttpOnly, Secure-флаги и SameSite cookies для защиты сессий.
- Владеть методами защиты от атак типа session fixation и replay attacks.
- Знает основные схемы аутентификации (OAuth2, SAML, WebAuthn).
- Владеет методами защиты от атак на OAuth2 Refresh Tokens.
- Понимает проблемы безопасности Single Sign-On (SSO).
- Знать модели RBAC и ABAC, их преимущества и ограничения.
- Владеть методами защиты от Broken Access Control.
- Знать OWASP Top 10 и другие стандарты безопасности.
- Уметь анализировать код на наличие XSS, SQL Injection и CSRF уязвимостей.
- Владеть методами защиты от распространённых атак.
- Знать особенности REST, GraphQL и gRPC.
- Уметь выявлять уязвимости в API (over-fetching, under-fetching).
- Владеть методами защиты API от атак.
- Знать базовые угрозы и лучшие практики защиты API
- Знать виды атак (SSRF, XXE, IDOR, Path traversal).
- Уметь анализировать потенциальные уязвимости в коде.
- Владеть методами защиты от сложных атак.
- Знать стандарты защиты (CSP, HTTPS, HSTS).
- Уметь настраивать защиту от XSS, CSRF и других атак.
- Владеть методами валидации входных данных.
- Знать этапы жизненного цикла безопасной разработки.
- Уметь внедрять SSDLC в процесс разработки.
- Владеть методами анализа рисков на каждом этапе.
- Знать популярные инструменты SAST и DAST.
- Уметь использовать Burp Suite для тестирования веб-приложений.
- Владеть методами статического и динамического анализа кода.
- Знать базовые принципы DevSecOps и их реализацию.
- Уметь интегрировать проверки безопасности в CI/CD.
- Владеть методами защиты application supply chain.
- Знать OWASP ASVS, SAMM и другие стандарты безопасности.
- Уметь применять OWASP Threat Dragon для моделирования угроз.
- Владеть методами оценки зрелости процессов безопасности.
Содержание учебной дисциплины
- Раздел 1
- Введение в безопасность веб-приложений
- Раздел 3
- Раздел 4
- Раздел 5
- Раздел 6
Элементы контроля
- Домашние задания
- Лабораторные работы
- Опрос на занятиях
- Практические задания
- Тестирование (на занятии)
- Экзамен
Промежуточная аттестация
- 2023/2024 учебный год 2 модуль0.1 * Домашние задания + 0.2 * Лабораторные работы + 0.4 * Опрос на занятиях + 0.1 * Практические задания + 0.2 * Тестирование (на занятии)
- 2023/2024 учебный год 4 модуль0.2 * 2023/2024 учебный год 2 модуль + 0.237 * Домашние задания + 0.001 * Лабораторные работы + 0.001 * Опрос на занятиях + 0.24 * Практические задания + 0.32 * Тестирование (на занятии) + 0.001 * Экзамен
Список литературы
Рекомендуемая основная литература
- Безопасность веб-приложений : разведка, защита, нападение, Хоффман, Э., 2022
Рекомендуемая дополнительная литература
- Certification and security in health-related Web applications : concepts and solutions, Chryssanthou, A., 2011
- Zalewski, M. (2012). The Tangled Web : A Guide to Securing Modern Web Applications. San Francisco: No Starch Press. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=440083