Skip to content

Что такое JWK

Коротко:

JWK (JSON Web Key, RFC 7517) — JSON-представление cryptographic key (RSA, EC, AES). Используется в OAuth 2.0 и OpenID Connect для публикации public keys, которыми подписаны JWT. JWKS (JSON Web Key Set) — URL вида https://provider.com/.well-known/jwks.json, содержит массив текущих keys. Client fetchит JWKS, находит key по kid (key ID) → verifies JWT signature.

Ниже: подробности, пример, смежные термины, FAQ.

Подробности

  • Структура: kty (Key Type), use (sig/enc), kid (Key ID), n/e (RSA) или x/y/crv (EC)
  • JWKS endpoint: /.well-known/jwks.json
  • Rotation: provider добавляет new key с новым kid, старый оставляет 30 дней для overlap
  • Client caches JWKS для снижения нагрузки на provider
  • Безопасность: НИКОГДА не публикуйте private key (d параметр в JWK)

Пример

{
  "keys": [
    { "kty": "RSA", "kid": "abc123", "use": "sig", "alg": "RS256",
      "n": "0vx7agoe...", "e": "AQAB" }
  ]
}

Смежные термины

ЗаголовкиCSP, HSTS, X-Frame-Options и др.
SSL/TLSШифрование и сертификат
КонфигурацияСерверные настройки и утечки
Оценка A-FОбщий балл безопасности

Почему нам доверяют

OWASP
рекомендации
15+
заголовков безопасности
<2с
результат
A–F
оценка безопасности

Как это работает

1

Введите URL сайта

2

Анализ заголовков безопасности

3

Получите оценку A–F

Что проверяет анализ безопасности?

Инструмент проверяет HTTP-заголовки безопасности, конфигурацию SSL/TLS, утечки серверной информации и защиту от распространённых атак (XSS, clickjacking, MIMEsniffing). Оценка от A до F показывает общий уровень защиты.

Анализ заголовков

Проверка Content-Security-Policy, HSTS, X-Frame-Options, X-Content-Type-Options, Referrer-Policy и других.

Проверка SSL

Версия TLS, срок сертификата, цепочка доверия, поддержка HSTS.

Обнаружение утечек

Поиск раскрытых серверных версий, debug-режимов, открытых конфигов и директорий.

Отчёт с рекомендациями

Детальный отчёт с объяснением каждой проблемы и конкретными шагами для исправления.

Кому это нужно

Специалисты по безопасности

аудит HTTP-заголовков

DevOps

проверка конфигурации

Разработчики

CSP и HSTS настройка

Аудиторы

соответствие стандартам

Частые ошибки

Нет Content-Security-PolicyCSP — главная защита от XSS. Без него инъекция скриптов значительно проще.
Нет заголовка HSTSБез HSTS возможна downgrade-атака с HTTPS на HTTP. Включите Strict-Transport-Security.
Server header раскрывает версиюServer: Apache/2.4.52 помогает атакующим подобрать эксплойт. Скройте версию.
X-Frame-Options не установленСайт можно встроить в iframe для clickjacking-атаки. Установите DENY или SAMEORIGIN.
Нет X-Content-Type-OptionsБез nosniff браузер может интерпретировать файлы неправильно (MIME sniffing).

Лучшие практики

Начните с базовых заголовковМинимум: HSTS, X-Frame-Options, X-Content-Type-Options, Referrer-Policy. Займёт 5 минут.
Внедрите CSP постепенноНачните с Content-Security-Policy-Report-Only, мониторьте нарушения, затем включите.
Скройте серверные заголовкиУдалите Server, X-Powered-By, X-AspNet-Version из ответов.
Настройте Permissions-PolicyОграничьте доступ к камере, микрофону, геолокации — только то, что реально используется.
Проверяйте после каждого деплояЗаголовки безопасности могут быть перезаписаны при обновлении конфигурации сервера.

Получите больше с бесплатным аккаунтом

История security-проверок и мониторинг HTTP-заголовков безопасности.

Зарегистрироваться (FREE)

Больше по теме

Часто задаваемые вопросы

JWK vs x509 PEM cert?

JWK — JSON, легко парсится в JS/Python. PEM — traditional base64. JWT с JWKS = standard OAuth path.

Как ротировать keys?

Generate new key → publish в JWKS с новым kid → wait 30 days пока clients обновят cache → remove old.

Как проверить JWT с JWKS?

Library типа jose (Node), python-jose, PHP firebase/php-jwt с getKeyById callback.