Программирование [Talkpython] Веб-безопасность на Python: OWASP Top 10 и Agentic AI

Регистрация
7 Апр 2025
Сообщения
10,778
Реакции
81
Автор: Talkpython​
Название: Веб-безопасность на Python: OWASP Top 10 и Agentic AI​

cover.jpg

Продолжительность: 5 ч 28 мин Количество уроков: 126 Видео Язык: Английский Вес архива: 1,47 ГБ


Безопасность веб-приложений долгое время оставалась областью, где глубокий аудит кода требовал привлечения дорогих специалистов по пентестингу. Но с развитием агентного ИИ ситуация меняется.

Недавний пример — исследование Mozilla, в рамках которого Claude проанализировал JavaScript runtime Firefox и обнаружил более 100 уязвимостей, включая 14 достаточно серьезных для получения CVE. Подобный подход теперь можно применять и к собственным Python-веб-приложениям.

Этот курс показывает, как системно искать и устранять уязвимости в Python-приложениях с помощью OWASP Top 10 2025 и агентного ИИ. Сначала вы подробно разберете все десять категорий OWASP на реальных уязвимых и исправленных примерах для Flask, Django и FastAPI. Затем создадите собственного AI-агента Security Lead на базе Claude Code, специально настроенного для аудита Python- и SaaS-приложений.

В финальной части агент будет применен к трем реальным open-source проектам — Apache Superset, Paperless-ngx и Kibitzr. Вы увидите полноценный процесс аудита: от поиска потенциальных проблем до анализа найденных уязвимостей, их исправления и формирования приоритетного списка задач.

Что делает этот курс особенным

Актуальный OWASP Top 10 2025 — разбор новой версии стандарта, включая появившуюся категорию Mishandling of Exceptional Conditions.
Собственный AI-агент для аудита — вы создадите Security Lead, которого сможете использовать в будущих проектах.
Реальные open-source аудиты — анализ Apache Superset, Paperless-ngx и Kibitzr проводится непосредственно на реальных кодовых базах.
Уязвимый и исправленный код — для каждой категории вы увидите, как выглядит проблема, почему она опасна и как ее корректно устранить.
Flask, Django и FastAPI — одни и те же классы уязвимостей рассматриваются на примерах трех популярных Python-фреймворков.
Фокус на SaaS и multi-tenancy — отдельное внимание уделяется IDOR, изоляции данных пользователей и предотвращению утечек между тенантами.
Agentic AI вместо «вайб-кодинга» — вы научитесь использовать AI-агента как системного помощника по безопасности, а не просто просить его «найти баги».
Контроль стоимости — на практике рассматривается, сколько может стоить аудит большой кодовой базы и как сделать расходы предсказуемыми.
Современный Python security toolbox — Argon2, MultiFernet, slowapi, loguru, pip-audit, Have I Been Pwned и другие инструменты.
Ответственное применение AI — вы узнаете, как использовать AI-аудиты корректно и почему не стоит автоматически отправлять разработчикам open-source проектов низкокачественные AI-generated PR.

Чему вы научитесь

После завершения курса вы сможете:

• находить и исправлять все категории уязвимостей OWASP Top 10 2025 в Python-веб-приложениях;
• выявлять Broken Access Control, включая IDOR, path traversal и отсутствие проверок доступа на уровне функций;
• безопасно настраивать Docker Compose, Django и HTTP security headers;
• защищать зависимости Python от атак на цепочку поставок с помощью uv pip compile и pip-audit;
• интегрировать проверку зависимостей в CI/CD и Docker-сборки;
• использовать Argon2 вместо слабых алгоритмов хеширования паролей;
• безопасно ротировать ключи шифрования с помощью MultiFernet без простоя приложения;
• защищаться от SQL injection, NoSQL injection и stored XSS;
• использовать параметризованные запросы и корректное экранирование шаблонов;
• применять серверную валидацию с помощью Pydantic;
• реализовывать rate limiting и защиту от перебора учетных записей;
• создавать безопасные политики паролей с проверкой скомпрометированных паролей через Have I Been Pwned;
• строить защищенный password reset flow без user enumeration;
• предотвращать mass-assignment атаки с помощью строгой сериализации;
• безопасно работать со сторонними JavaScript и CSS-зависимостями;
• внедрять структурированное security audit logging;
• настраивать автоматические оповещения о подозрительной активности;
• корректно обрабатывать исключения, не раскрывая пользователю внутренние детали приложения;
• использовать SQLAlchemy transaction context managers для предотвращения частично выполненных операций;
• проводить аудит multi-tenant SaaS-приложений на предмет утечек данных между пользователями;
• создавать собственных Claude Code-агентов под конкретный стек и threat model;
• подключать официальные материалы OWASP к AI-агенту, чтобы он опирался на проверенные источники;
• проводить полноценный agentic security audit любой Python-кодовой базы;
• превращать результаты аудита в приоритетный план исправлений;
• использовать AI для исправления уязвимостей с сохранением понятного audit trail;
• оценивать и контролировать стоимость AI-аудитов.

Программа курса

Введение и настройка инструментов

Вы познакомитесь со структурой курса, установите Claude Code и VS Code, настроите необходимые инструменты и подготовите исходный код для практических заданий.

OWASP #1 — Broken Access Control

Разбор IDOR, path traversal и отсутствующих проверок доступа на уровне функций. Практические примеры рассматриваются в FastAPI, Flask и Django.

OWASP #2 — Security Misconfiguration

Настройка Docker Compose, Django settings и HTTP security headers, включая HSTS, X-Frame-Options и Content Security Policy.

OWASP #3 — Software Supply Chain Failures

Защита Python-зависимостей с помощью uv pip compile, предотвращение установки потенциально скомпрометированных пакетов и интеграция pip-audit в CI и Docker builds.

OWASP #4 — Cryptographic Failures

Переход от быстрых и небезопасных алгоритмов хеширования к Argon2, безопасное хранение секретов и ротация ключей шифрования с помощью MultiFernet.

OWASP #5 — Injection

Защита от SQL injection, NoSQL injection в MongoDB/PyMongo и stored XSS в Jinja-шаблонах. Вы научитесь использовать параметризованные запросы и правильное экранирование данных.

OWASP #6 — Insecure Design

Реализация rate limiting и блокировки учетных записей с помощью slowapi. Отдельно рассматривается серверная проверка бизнес-правил с использованием Pydantic.

OWASP #7 — Authentication Failures

Создание надежной политики паролей, проверка скомпрометированных паролей, защита от перебора и безопасная реализация password reset без возможности определить существование учетной записи.

OWASP #8 — Software or Data Integrity Failures

Защита от mass-assignment атак, строгая настройка serializer fields и отказ от ненадежных внешних CDN в пользу размещения JavaScript и CSS в собственной инфраструктуре.

OWASP #9 — Logging and Alerting Failures

Создание структурированного security audit logging с помощью loguru и настройка оповещений о credential stuffing и другой подозрительной активности.

OWASP #10 — Mishandling of Exceptional Conditions

Безопасная обработка ошибок: пользователю возвращается минимальная информация, а полный контекст сохраняется на сервере с traceable reference ID. Также рассматривается использование SQLAlchemy transaction context managers для предотвращения частично выполненных операций.

Создание Security Lead — AI-агента для безопасности

Во второй части курса вы создадите полноценного Security Lead — специализированного Claude Code-агента объемом около 550 строк, настроенного на аудит Python- и SaaS-приложений.

Агент будет способен:

• проводить OWASP-ориентированный аудит;
• проверять изоляцию данных пользователей;
• анализировать authentication и authorization;
• проверять security logging;
• формировать структурированный отчет;
• ссылаться на канонические источники OWASP;
• выделять наиболее критичные проблемы;
• помогать превращать результаты анализа в конкретный план исправлений.

Главная идея заключается не в том, чтобы один раз запустить AI на проекте, а в том, чтобы создать повторяемый процесс безопасности, который можно применять к каждой новой кодовой базе.

Практические аудиты реальных проектов

После создания Security Lead агент будет протестирован на трех реальных open-source приложениях.

Kibitzr

Аудит старого Python-инструмента для мониторинга веб-сайтов. В процессе анализа рассматриваются реальные проблемы, включая возможность незаметного downgrade SMTP TLS, неограниченный размер HTTP-ответов и отсутствие timeout-защиты.

Apache Superset

Полноценный аудит крупного проекта Apache. Security Lead анализирует вопросы безопасности JWT guest tokens, логирования неудачных попыток входа и обработки CSV-экспортов.

Paperless-ngx

Аудит популярной системы управления документами. В ходе анализа обнаруживается проблема с неподписанным pickle в Redis-кэше, после чего рассматривается ее исправление с использованием уже существующих механизмов безопасности проекта.

Для кого этот курс

Курс подойдет:

Python-разработчикам, создающим production-приложения на Flask, Django или FastAPI;
SaaS-финдерам и indie hackers, которым необходимо надежно изолировать данные разных пользователей;
Senior-разработчикам и Tech Lead, которым нужен системный подход к security review;
разработчикам legacy Python-приложений, давно не проходивших полноценный аудит безопасности;
• специалистам, которым необходимо документировать практики безопасности для compliance-процессов;
• разработчикам, которые уже активно используют AI-инструменты и хотят применять их не только для написания кода, но и для профессионального security review.

Итог

Курс объединяет два важных направления: практическую безопасность Python-веб-приложений и агентный искусственный интеллект.

Вы не просто изучите OWASP Top 10 как теоретический список уязвимостей. Вы научитесь находить реальные проблемы в коде, понимать механизм атаки, применять безопасные исправления и автоматизировать значительную часть процесса с помощью собственного AI-агента.

В результате у вас будет не только понимание современных угроз Python-приложений, но и готовый Security Lead, который можно использовать для регулярного аудита собственных проектов и кодовых баз.

https://github.com/talkpython/python-web-owasp-top-10-with-agentic-ai-course

СКАЧАТЬ:
 📥 Скрытое содержимое! Войдите или Зарегистрируйтесь
 
10,840Темы
10,893Сообщения
787Пользователи
Ganna!Новый пользователь
Сверху