Что именно мы проверяем, как считается оценка и — не менее важно — что мы не проверяем.
Как проходит скан
DeployGuard работает снаружи — так же, как любой посетитель. Мы открываем сайт, загружаем HTML и JavaScript, переходим по публичным ссылкам и смотрим заголовки ответов. Мы никогда не просим доступ к репозиторию, учётные данные или VPN внутрь вашей инфраструктуры.
Пассивный скан работает на любом сайте: он читает только то, что уже отдаётся каждому посетителю. Первый пассивный скан бесплатный.
Полный скан запускается только на домене, который вы подтвердили (файл или мета-тег на сайте). Он добавляет активные проверки: отправляет запросы приложению и смотрит на реакцию.
51 проверка
19 проверок работают в обоих режимах, ещё 32 — только в полном скане.
Секреты и ключи (пассивный + полный)
API-ключи OpenAI, Anthropic, Groq, Stripe, Resend, Brevo, HuggingFace, Pinecone; сервисные аккаунты Firebase; Supabase service_role; строки подключения к БД с паролями; приватные ключи — ищем в HTML, JS-бандлах и source maps.
Клиентский код (пассивный + полный)
XSS-паттерны (dangerouslySetInnerHTML, v-html, innerHTML, eval, document.write), токены в localStorage, анализ JWT (alg none, слабый секрет, нет срока действия, админ-флаги), fail-open auth (catch, который пропускает запрос), log injection, поверхности SQL-инъекций и SSRF, упоминания AI-инструментов.
Гигиена веба (пассивный + полный)
Content-Security-Policy и её слабые директивы, HSTS, X-Content-Type-Options, защита от clickjacking, Referrer-Policy, Permissions-Policy, флаги cookie (Secure, HttpOnly, SameSite), CORS с credentials, open redirect, mixed content, SRI для внешних скриптов, раскрытие версий.
Базы и хранилища (полный)
Supabase RLS по таблицам, публичные бакеты Supabase Storage, Firebase Realtime Database, Firestore, Firebase Storage, бакеты S3 и GCS с публичным листингом.
AI-поверхность (полный)
Поиск AI-эндпоинтов, prompt injection, jailbreak, утечка system prompt, AI-mediated XSS, excessive agency (tool calling), поверхности indirect-инъекций (загрузка файлов, RAG и векторные хранилища).
Открытые данные (полный)
Открытые .env и .git, дампы бэкапов, админ-панели, Swagger и OpenAPI, GraphQL introspection, API без авторизации, path traversal, опасные HTTP-методы, debug-страницы, stack trace и SQL-ошибки, Host header injection, cache poisoning, скрытые debug-параметры.
Инфраструктура и цепочка поставок (полный)
Качество TLS (устаревшие версии и шифры, HSTS preload), редирект HTTP→HTTPS, перечисление поддоменов через Certificate Transparency, subdomain takeover, slopsquatting (пакеты, выдуманные AI, которых нет в npm), уязвимые зависимости из package.json по базе OSV, CVE Next.js и проверка «а оно вообще работает» на страницах приложения и форме входа.