CRITICAL🇬🇧 English

CVE-2024-56511

DataEase – obejście uwierzytelnienia przez path traversal w TokenFilter

CVSS 9.3v4.0pub. 2025-01-10upd. 2025-02-20

W narzędziu DataEase (do wizualizacji danych) wykryto poważną lukę w mechanizmie uwierzytelnienia klasy TokenFilter, która umożliwia nieautoryzowany dostęp do chronionych zasobów. Podatność jest szczególnie groźna, gdyż nie wymaga żadnych uprawnień ani interakcji użytkownika.

Pokaż oryginał (EN)

DataEase is an open source data visualization analysis tool. Prior to 2.10.4, there is a flaw in the authentication in the io.dataease.auth.filter.TokenFilter class, which can be bypassed and cause the risk of unauthorized access. In the io.dataease.auth.filter.TokenFilter class, ”request.getRequestURI“ is used to obtain the request URL, and it is passed to the "WhitelistUtils.match" method to determine whether the URL request is an interface that does not require authentication. The "match" method filters semicolons, but this is not enough. When users set "server.servlet.context-path" when deploying products, there is still a risk of being bypassed, which can be bypassed by any whitelist prefix /geo/../context-path/. The vulnerability has been fixed in v2.10.4.

🤖 Analiza AI
Jak działa

Klasa `io.dataease.auth.filter.TokenFilter` pobiera adres URL żądania za pomocą metody `request.getRequestURI` i przekazuje go do metody `WhitelistUtils.match`, która sprawdza, czy dany endpoint wymaga uwierzytelnienia. Metoda `match` filtruje średniki, jednak filtrowanie to jest niewystarczające. Gdy administrator skonfiguruje niestandardową wartość `server.servlet.context-path`, atakujący może skonstruować żądanie z prefiksem ścieżki w postaci `/geo/../context-path/`, co powoduje, że mechanizm dopasowania do białej listy błędnie klasyfikuje żądanie jako niewymagające uwierzytelnienia (path traversal z użyciem sekwencji `..`). W rezultacie dowolny endpoint aplikacji staje się dostępny bez podania ważnego tokenu.

Skutki

Atakujący zdalny i nieuwierzytelniony może uzyskać nieautoryzowany dostęp do chronionych interfejsów API aplikacji, co może prowadzić do ujawnienia, modyfikacji lub zniszczenia przechowywanych danych.

Mitygacja

Należy zaktualizować DataEase do wersji 2.10.4 lub nowszej, w której podatność została usunięta. Referencje producenta: https://github.com/dataease/dataease/security/advisories/GHSA-9f69-p73j-m73x

Kogo dotyczy

DataEase w wersjach wcześniejszych niż 2.10.4, przy czym ryzyko obejścia uwierzytelnienia występuje w szczególności w instalacjach z niestandardowo skonfigurowanym parametrem `server.servlet.context-path`.

Uwagi

Podatność dotyczy wyłącznie instalacji z niestandardową konfiguracją `server.servlet.context-path`; domyślne wdrożenia bez tego parametru mogą mieć mniejszą powierzchnię ataku, choć nadal zaleca się natychmiastową aktualizację.

CVSS Vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
  • Dataease

    APP
    Dataease
    < 2.10.4
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
Path Traversal
CWE
Referencje

Powiązane podatności

CVE-2026-32140CRITICAL9.3PL ✓ten sam produkt

Dataease: RCE poprzez path traversal w parametrze IniFile sterownika JDBC

CVE-2026-32137CRITICAL9.3PL ✓ten sam produkt

SQL Injection w Dataease — niekontrolowany parametr tabeli w podglądzie danych

CVE-2024-57707CRITICAL9.8PL ✓ten sam produkt

RCE w DataEase v1 poprzez komponenty konta użytkownika i hasła

CVE-2024-52295CRITICAL9.3PL ✓ten sam produkt

DataEase: hardkodowany sekret JWT umożliwia przejęcie usługi

CVE-2024-47073CRITICAL9.3PL ✓ten sam produkt

DataEase: brak weryfikacji podpisu JWT umożliwia dostęp do dowolnego interfejsu