Безопасность веб-приложения
Изучаем безопасность на примере библиотеки личных заметок: модель угроз, проверка данных, XSS, SQL, пароли, сессии, права доступа, файлы и эксплуатация приложения.
В серии 22 урока. Последовательно расширяем модель угроз и учебное приложение security-lab. После отдельных механизмов защиты переходим к зависимостям, HTTPS, жизненному циклу данных, реагированию на инциденты и итоговому разбору.
Перед началом
Понимание HTTP, HTML, Python и основ SQL. Практические примеры выполняются в собственном учебном приложении.
Уроки по порядку
- Модель угроз веб-приложения
- Локальный стенд безопасности
- Проверка входных данных
- XSS и контекст вывода
- CSP и защитные заголовки
- SQL-запросы с параметрами
- Хранение и проверка паролей
- Сессии и cookie
- Права на отдельные объекты
- Защита форм от CSRF
- Перенаправления и адреса
- Безопасная загрузка изображений
- Пути и доступ к файлам
- SSRF и исходящие запросы
- Безопасность API и CORS
- Ограничение попыток и нагрузки
- Секреты, ошибки и журналы
- Безопасность зависимостей
- HTTPS и доверие к прокси
- Жизненный цикл данных
- Действия при утечке и инциденте
- Проверка безопасности перед выпуском
Уроки развивают общий пример. Переходите к следующему после разбора результата предыдущего; к нужной теме можно вернуться по этому оглавлению.