Веб-безопасность (OWASP Top 10)
OWASP
Что это такое
OWASP Top 10 — периодически обновляемый список самых распространённых классов недостатков веб-приложений: инъекции, нарушение разграничения доступа, небезопасный дизайн, ошибки конфигурации и браузерные классы вроде межсайтового скриптинга. Это каталог повторяющихся ошибок, а не контрольный список для сдачи, и за каждым классом стоит конкретное проектное или кодовое решение.
Почему это важно
Почти каждая утечка, о которой пишут в прессе, относится к одному из этих классов, и почти все они появляются из обычного кода, написанного в спешке, а не из изощрённых атак. Инъекция — это запрос, собранный конкатенацией строк. Нарушение разграничения доступа — эндпоинт, который проверяет, кто вы, но не проверяет, что вам позволено видеть. Ошибка конфигурации — забытая отладочная страница. Поскольку классы повторяются, знание их позволяет ревьюеру за секунды задать нужный вопрос по пул-реквесту, что гораздо дешевле аудита после релиза.
Что в этом треке
- Инъекции и разграничение доступа (07-security/01-web-security-owasp-top-10/01-injection-and-access-control) — два класса, которые отдают атакующему данные, на которые он не имел права.
- Межсайтовый скриптинг и классы уязвимостей на стороне браузера (07-security/01-web-security-owasp-top-10/02-cross-site-scripting-and-the-browser-side-classes) — выполнение кода в чужой сессии и механизмы, которые его ограничивают.
Предварительные требования
Нет.
Что читать дальше
- Content Security Policy (CSP) (07-security/06-content-security-policy-csp) — набор браузерных правил, который гасит внедрение скриптов.
- HTTPS и TLS (07-security/02-https-tls) — шифрование при передаче и почему его отсутствие сегодня считается жёсткой ошибкой.
- Управление секретами (07-security/03-secrets-management) — ключи вне репозитория, с ротацией при компрометации.
- Сканирование зависимостей (SCA) (07-security/04-dependency-scanning-sca) — уже известные уязвимые пакеты в вашем дереве.