Блог
Что требует экспертиза, где чаще всего ошибаются и как это закрыть — из нашего опыта.
ORM не защищает от SQL-инъекций полностью. Опасные места в whereRaw, orderBy, LIKE и сырых запросах, как их проверить и как исправить в Laravel и Node.
API за мобильным приложением и SPA на экспертизе проверяют отдельно. Каждый пункт OWASP API Top 10 (2023), как проверить его самостоятельно и как закрыть в Laravel и Node.
React и Blade экранируют данные автоматически, но dangerouslySetInnerHTML, {!! !!}, ссылки javascript: и markdown обходят эту защиту. Как проверить и как исправить.
Обновления, аудит плагинов, xmlrpc, запрет редактирования файлов, запрет PHP в uploads, админы, 2FA, бэкапы, WAF и контрольные суммы — с командами и настройками.
Как работает CSRF, насколько от него защищает SameSite, CSRF-токены, API с cookie и bearer-токенами и связь с CORS. С примерами для Laravel и Node.
В API с токенами экспертиза проверяет алгоритм подписи, стойкость ключа, срок жизни и состояние после выхода. Типичные ошибки и их исправление в Laravel, Node и Flutter.
Форма загрузки аватара или документа может открыть путь к выполнению кода на сервере. Практические правила: проверка типа, место хранения и именование файлов.
Загрузка картинки по URL, вебхуки и превью ссылок могут направить сервер во внутреннюю сеть. Как работает SSRF, 169.254.169.254, DNS rebinding, проверка и исправление.
CORS — не защита, а разрешение для браузера. При ошибке чужой сайт читает данные из вашего API от имени пользователя. Проверка через curl и правильная настройка.
Какие HTTP-заголовки безопасности нужны, от чего защищает каждый и как правильно добавить их в nginx — с готовой конфигурацией.
Можно ли открыть чужой отчёт, поменяв число в URL? Что такое IDOR, как его найти и как закрыть с помощью policy в Laravel.
Страница входа — это дверь в систему. Практические проверки: ограничение подбора паролей, OTP-коды, сброс пароля и правильное управление сессией.
Если приложение доверяет заголовку Host или X-Forwarded-Host, ссылки сброса пароля могут вести на чужой домен. Реальный случай, способ проверки и исправление в Laravel и nginx.
Каждая категория OWASP Top 10 (2021) простыми словами: что это, как выглядит в реальном проекте и что можно проверить уже сегодня.
APP_DEBUG, trustProxies, CSRF, mass assignment, политики, rate limiting и ещё 12 пунктов — практический список для подготовки Laravel-приложения к экспертизе.
Режим отладки, stack trace, версия сервера и выданный в браузер список маршрутов дают атакующему карту системы. Как это закрыть.
Показывать «оплата успешна», как только пользователь вернулся от платёжного провайдера, — ошибка. Статус подтверждает только callback провайдера.