Кол салуучунун таасири
Туура эмес JWT валидациясы чабуулчуларга дооматтарды жасоо же мөөнөтү өтүп кеткен [S1] токендерин кайра колдонуу аркылуу аутентификация механизмдерин айланып өтүүгө мүмкүндүк берет. Эгер сервер жарактуу кол тамгасы жок токендерди кабыл алса, чабуулчу артыкчылыктарды жогорулатуу же [S1] колдонуучусунун кейпин кийүү үчүн пайдалуу жүктү өзгөртө алат. Андан тышкары, жарактуулук мөөнөтү (exp) талап кылынбаса, чабуулчуга [S1] бузулган токенди чексиз колдонууга мүмкүнчүлүк берет.
Негизги себеп
JSON Желе Токени (JWT) – санарип кол коюлган же бүтүндүгү корголгон [S1] дооматтарды көрсөтүү үчүн колдонулган JSON негизиндеги түзүм. Коопсуздук каталары, адатта, эки негизги ишке ашыруу боштугунан келип чыгат:
- Коргоосуз JWT'лерди кабыл алуу: Эгер кызмат колтамга текшерүүсүн катуу талап кылбаса, ал колтамга жок жана алгоритм "жок" [S1] деп коюлган "Коргоосуз JWTs" иштетиши мүмкүн. Бул сценарийде сервер пайдалуу жүктөгү дооматтарга алардын бүтүндүгүн [S1] текшербестен ишенет.
- Дооматты текшерүү жок:
exp(жарактуулук мөөнөтү) дооматы JWT [S1] иштетүү үчүн кабыл алынбашы керек болгон же андан кийин убакытты аныктайт.aud(аудитория) дооматы [S1] энбелгисинин болжолдонгон алуучуларын аныктайт. Эгер булар белгиленбесе, сервер мөөнөтү өтүп кеткен же башка [S1] тиркеме үчүн арналган токендерди кабыл алышы мүмкүн.
Бетон оңдоолор
- Криптографиялык кол коюуларды күчтөндүрүү: Колдонмону алдын ала бекитилген, күчтүү кол коюу алгоритмин (мисалы, RS256) колдонбогон JWT четке кагуу үчүн конфигурациялаңыз.
- Мөөнөтүн бүтүшүн текшерүү: Учурдагы дата менен убакыттын
expдооматында көрсөтүлгөн убакыттан мурун болушун камсыз кылуу үчүн милдеттүү текшерүүнү жүргүзүңүз [S1]. - Аудиторияны текшерүү:
audдооматында жергиликтүү кызматты аныктоочу маани камтылганын текшериңиз; эгерде кызматaudдооматында аныкталбаса, токен [S1] четке кагылышы керек. - Кайра ойнотууну болтурбоо:
jti(JWT ID) дооматын ар бир токенге уникалдуу идентификатор ыйгаруу үчүн колдонуңуз, бул серверге [S1] кайра колдонулган токендерге көз салууга жана четке кагууга мүмкүндүк берет.
Detection Strategy
JWT иштетүүдөгү аялууларды токендердин структурасын жана сервердин жооп жүрүм-турумун талдоо аркылуу аныктоого болот:
- Белгилерди текшерүү:
alg(алгоритм) аталышын текшерүү, анын "эч ким" деп коюлбагандыгын жана күтүлгөн [S1] криптографиялык стандарттарын колдонот. - Дооматты текшерүү:
exp(жарактуулук мөөнөтү) жанаaud(аудитория) [S1] JSON пайдалуу жүктөгү дооматтарынын бар экендигин жана жарактуулугун ырастоо. - Валидациялык тестирлөө:
expдооматына ылайык мөөнөтү бүткөн жеaudдооматы [S1] аныктагандай башка аудитория үчүн арналган токендерди сервер туура четке кагып жатканын текшерүү.
