Таъсири ҳамлакунанда
Тасдиқи нодурусти JWT ба ҳамлагарон имкон медиҳад, ки бо роҳи қалбакӣ даъвоҳо ё дубора истифода бурдани нишонаҳои мӯҳлаташон гузашта [S1] аз механизмҳои аутентификатсия гузаранд. Агар сервер токенҳоро бе имзои дуруст қабул кунад, ҳамлакунанда метавонад бори боркуниро тағир диҳад, то имтиёзҳоро афзоиш диҳад ё ба ягон корбар [S1] тақлид кунад. Ғайр аз он, иҷро накардани даъвои мӯҳлат (exp) ба ҳамлакунанда имкон медиҳад, ки токени вайроншударо ба таври номуайян истифода кунад [S1].
Сабаби аслӣ
Web Token JSON (JWT) як сохтори ба JSON асосёфта мебошад, ки барои муаррифии даъвоҳое, ки ба таври рақамӣ имзо шудаанд ё тамомияти [S1] ҳифз шудаанд, истифода мешавад. Нокомиҳои амниятӣ маъмулан аз ду холигии ибтидоии татбиқ бармеоянд:
- Қабули JWT-ҳои эминнашуда: Агар хадамот тафтиши имзоро ба таври қатъӣ иҷро накунад, он метавонад "JWT-ҳои бехатар" -ро коркард кунад, ки имзо мавҷуд нест ва алгоритм ба "ҳеҷ" [S1] муқаррар карда шудааст. Дар ин сенария, сервер ба иддаъоҳо дар сарбории боркаш бе тафтиши якпорчагии онҳо [S1] эътимод мекунад.
- Таъдиди даъвои гумшуда: Даъвои
exp(мӯҳлати анҷом) вақтеро муайян мекунад, ки дар давоми ва ё баъд аз он JWT барои коркарди [S1] набояд қабул карда шавад. Даъвоиaud(аудитория) гирандагони пешбинишудаи токени [S1]-ро муайян мекунад. Агар инҳо тафтиш карда нашаванд, сервер метавонад нишонаҳоеро, ки мӯҳлати истифодаашон гузаштааст ё барои замимаи дигар [S1] пешбинӣ шуда буданд, қабул кунад.
Ислоҳҳои мушаххас
- Имзоҳои криптографиро ҷорӣ кунед: Барномаро барои рад кардани ҳама гуна JWT танзим кунед, ки алгоритми имзои қаблан тасдиқшуда ва қавӣ (ба монанди RS256) истифода накунад.
- Таъйид кардани мӯҳлати мӯҳлат: Санҷиши ҳатмӣ анҷом диҳед, то боварӣ ҳосил кунед, ки сана ва вақти ҷорӣ пеш аз вақте, ки дар даъвои
exp[S1] нишон дода шудааст. - Тафтиш кардани аудитория: Боварӣ ҳосил кунед, ки даъвои
audдорои арзиши муайянкунандаи хидмати маҳаллӣ мебошад; агар хидмат дар даъвоиaudмуайян карда нашавад, нишона бояд [S1] рад карда шавад. - Пешгирии Бозӣ: Истифода аз даъвои
jti(JWT ID) барои таъини идентификатори беназир ба ҳар як нишона, имкон медиҳад, ки сервер токенҳои аз нав истифодашуда [S1]-ро пайгирӣ ва рад кунад.
Стратегияи ошкор
Осебиятҳоро дар коркарди JWT тавассути таҳлили сохтори токен ва рафтори посухи сервер муайян кардан мумкин аст:
- Тафтиши сарлавҳа: Санҷиши сарлавҳаи
alg(алгоритм) барои боварӣ ҳосил кардан, ки он ба "ҳеҷ" таъин нашудааст ва стандартҳои криптографии пешбинишудаи [S1]-ро истифода мебарад. - Тасдиқи даъво: Тасдиқи мавҷудият ва эътибори даъвоҳои
exp(мӯҳлат) ваaud(аудитория) дар доираи бори JSON [S1]. - Санҷиши тасдиқ: Санҷиш, ки оё сервер нишонаҳоеро, ки мувофиқи даъвои
expгузаштааст ё барои аудиторияи дигар, тавре ки даъвоиaudZXCVFIXVIBETOKEN2ZXV муайян кардааст, дуруст рад мекунад.
