W aplikacji bookcars v8.3 funkcja validateAccessToken nie weryfikuje kryptograficznego podpisu tokenów JWT, co pozwala atakującemu na sfałszowanie tokenu i ominięcie mechanizmu uwierzytelnienia. Podatność jest krytyczna, ponieważ nie wymaga żadnych uprawnień ani interakcji użytkownika.
▸ Pokaż oryginał (EN)
A lack of cryptographic signature verification in the validateAccessToken function of bookcars v8.3 allows attackers to bypass authentication via a forged JWT token.
Funkcja validateAccessToken odpowiedzialna za weryfikację tokenów dostępu JWT (JSON Web Token) nie sprawdza poprawności podpisu kryptograficznego tokenu. Atakujący może samodzielnie spreparować (sfałszować) token JWT z dowolnymi roszczeniami (claims), np. podszywając się pod administratora lub innego użytkownika. Ponieważ podpis nie jest weryfikowany, aplikacja akceptuje taki token jako prawidłowy, przyznając nieautoryzowany dostęp. Atak jest możliwy zdalnie, bez uwierzytelnienia i bez jakiejkolwiek interakcji po stronie ofiary.
Atakujący może całkowicie ominąć mechanizm uwierzytelnienia i uzyskać nieautoryzowany dostęp do zasobów aplikacji, potencjalnie z uprawnieniami dowolnego użytkownika — w tym administratora — co prowadzi do naruszenia poufności, integralności i dostępności danych.
Należy zastosować patche dostępne u producenta zgodnie z referencjami. Dodatkowo zaleca się wdrożenie prawidłowej weryfikacji podpisu kryptograficznego tokenów JWT (zgodnie z algorytmem wskazanym w nagłówku tokenu) oraz odrzucanie tokenów z algorytmem 'none'.
bookcars w wersji 8.3
Szczegóły techniczne oraz proof-of-concept dostępne są w repozytorium GitHub pod adresem wskazanym w referencjach (CC-T-454455/Vulnerabilities). Podatność sklasyfikowana jako CWE-347 (Improper Verification of Cryptographic Signature).
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H