Как проверить атаки JWT?
Привет всем, в этом блоге я попытаюсь обобщить атаки JWT.
У нас есть 3 основных важных момента, о которых мы поговорим
. Что такое JWT?
- Что такое атаки JWT?
- Сценарии об атаках JWT
Давайте начнем !!
- Что такое JWT ?
Веб-токены JSON (JWT) — это стандартизированный формат для отправки криптографически подписанных данных JSON между системами. В отличие от классических токенов сеанса, все данные, которые нужны серверу, хранятся на стороне клиента в самом JWT.
JWT состоит из 3 частей: заголовка , полезной нагрузки и подписи . Каждый из них разделен точкой.xxxxx.yyyyy.zzzzz
Части заголовка и полезной нагрузки JWT — это просто объекты JSON с кодировкой base64url . В большинстве случаев данные заголовка и полезной нагрузки могут быть легко прочитаны или изменены любым, у кого есть доступ к токену. Поэтому безопасность любого механизма на основе JWT сильно зависит от криптографической подписи .
Чтобы создать часть подписи, вы должны взять закодированный заголовок , закодированную полезную нагрузку , секрет , алгоритм, указанный в заголовке , и подписать это .
- Что такое атаки JWT?
В атаках JWT пользователь отправляет модифицированные JWT на сервер для достижения злонамеренной цели.
- Сценарии об атаках JWT
Подводя итог, у нас есть одна цель — поиграть с подписью. мы можем играть с подписью, играя с содержимым подписи (полезная нагрузка — «alg» заголовка — заголовок — секрет — подписать все упомянутое). у нас есть 7 сценариев в этом блоге, и я буду использовать расширение JWT Editor, чтобы узнать больше об этом здесь
- Первый сценарий: (играть только с полезной нагрузкой)
- второй сценарий: (поиграйте с полезной нагрузкой и «alg»)
{
"alg": "none",
"typ": "JWT"
}
Протестируйте секретные ключи грубой силы с помощью hashcat, затем используйте выходные данные и закодируйте их, нажмите « Новый симметричный ключ» и замените сгенерированное значение для kсвойства секретом в кодировке Base64.
hashcat -a 0 -m 16500 <jwt> <wordlist>
Тест на внедрение самоподписанных JWT с помощью jwkпараметра, нажав « Новый ключ RSA и сгенерировать», jwkа затем атаковать с помощью встроенного JWK.
- Пятый сценарий: (играть с заголовком через внешний сервер)
{
"keys": [
]
}
- Шестой сценарий:
- Седьмой сценарий:

![В любом случае, что такое связанный список? [Часть 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































