Apache Shiro przed wersją 1.12.0 lub 2.0.0-alpha-3 jest podatny na atak path traversal, który może skutkować obejściem mechanizmu uwierzytelnienia. Podatność jest krytyczna, ponieważ nie wymaga żadnego uwierzytelnienia ani interakcji użytkownika i jest dostępna zdalnie przez sieć.
▸ Pokaż oryginał (EN)
Apache Shiro, before 1.12.0 or 2.0.0-alpha-3, may be susceptible to a path traversal attack that results in an authentication bypass when used together with APIs or other web frameworks that route requests based on non-normalized requests. Mitigation: Update to Apache Shiro 1.12.0+ or 2.0.0-alpha-3+
Podatność ujawnia się, gdy Apache Shiro jest używany razem z zewnętrznymi API lub frameworkami webowymi, które przekazują żądania na podstawie ścieżek w postaci nieznormalizowanej. Atakujący może spreparować żądanie HTTP zawierające sekwencje path traversal (np. znaki '../' lub ich warianty zakodowane), które są inaczej interpretowane przez Shiro niż przez docelowy framework. Rozbieżność w interpretacji ścieżki powoduje, że reguły bezpieczeństwa Shiro nie są poprawnie stosowane, umożliwiając dostęp do chronionych zasobów bez konieczności uwierzytelnienia.
Atakujący może ominąć mechanizmy uwierzytelnienia i uzyskać nieautoryzowany dostęp do chronionych zasobów aplikacji, co może prowadzić do naruszenia poufności, integralności oraz dostępności systemu.
Należy zaktualizować Apache Shiro do wersji 1.12.0 lub nowszej (gałąź 1.x) albo do wersji 2.0.0-alpha-3 lub nowszej (gałąź 2.x). Dodatkowo warto zweryfikować konfigurację integracji z innymi frameworkami webowymi pod kątem spójnej normalizacji ścieżek żądań.
Apache Shiro we wszystkich wersjach przed 1.12.0 oraz przed 2.0.0-alpha-3, stosowany łącznie z API lub frameworkami webowymi obsługującymi nieznormalizowane żądania
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HApache Shiro
APPApache2.0.0< 1.12.0
Powiązane podatności
Apache Shiro RCE przez nieskonfigurowany klucz szyfrowania 'remember me'
Apache Shiro – pominięcie uwierzytelnienia przez RequestDispatcher
Apache Shiro — ominięcie autoryzacji przez błędną konfigurację RegexRequestMatcher
Apache Shiro — authentication bypass w integracji ze Spring Boot
Apache Shiro — authentication bypass w integracji ze Spring