awesome-everything EN
↑ Обратно к восхождению

Безопасность

JWT pitfalls: свободное припоминание

Суть Промпты на свободное припоминание по юниту JWT-pitfalls. Сначала ответь своими словами, затем раскрой модельный ответ и сравни.
Высота — путь к senior
НольJuniorMiddleSenior
Ты на senior-высоте — в орбите
◷ 14 min

Припоминание сильнее перечитывания. На каждый промпт проговори или запиши полный ответ по памяти, прежде чем открыть модельный — именно усилие припоминания закрепляет защиту, когда ты ревьюишь реальный auth-код.

Цель

Восстанови ключевые механизмы юнита — пиннинг алгоритма, привязку ключа, проверки claim, отзыв, ротацию и компромиссы хранения — не подглядывая в урок.

Вспомните перед уходом
  1. 01
    Разбери атаку путаницы алгоритмов RS256→HS256 и две защиты RFC 8725, которые её останавливают.
  2. 02
    Signature проверена корректно. Почему этого необходимо, но недостаточно, и какие claim нужно проверить ещё?
  3. 03
    Как заголовок kid (или jku/x5u) превращается в уязвимость инъекции ключа и как её нейтрализовать?
  4. 04
    Почему у stateless JWT нет настоящего logout и как короткие TTL плюс ротация refresh-токена сдерживают украденный токен?
  5. 05
    Сравни localStorage, httpOnly cookie и хранение в памяти для токенов. Какую атаку приглашает каждое и как митигировать?
  6. 06
    Почему HMAC-секрет должен быть минимум 256 случайных бит из CSPRNG и что идёт не так с выбранным человеком?
Итог

Если ты смог восстановить каждый ответ по памяти, ты держишь хребет юнита: пинь алгоритм и привязывай каждый ключ к одному алгоритму, чтобы alg:none и путаница RS256→HS256 не сработали; считай валидную signature необходимой, но недостаточной и валидируй exp/nbf/iss/aud; резолви kid/jku только по закреплённому allowlist, чтобы заголовок не инжектил ключ; сдерживай украденный токен короткими TTL access и ротацией refresh-токена с детектом повтора, раз настоящего logout нет; выбирай хранение по тому, какую атаку предпочитаешь защищать; и используй 256-битный секрет из CSPRNG, чтобы HMAC нельзя было взломать офлайн.

Продолжить восхождение ↑JWT pitfalls: чтение кода и токенов
хоткеи развернуть
поиск
K
пред. пьеса
k
след. пьеса
j
тиры
t
это меню
?
sources3
expand
  1. 01
  2. 02
  3. 03

Trademarks belong to their respective owners. Editorial reference only.