Aplikacja parisneo/lollms-webui w wersji a9d16b0 jest podatna na path traversal oraz ataki typu denial of service za pośrednictwem niezabezpieczonego endpointu `/select_database`. Błąd umożliwia atakującemu tworzenie dowolnych katalogów w systemie plików oraz manipulowanie lokalizacją bazy danych, co prowadzi do utraty danych użytkowników lub uniemożliwienia uruchomienia serwera.
▸ Pokaż oryginał (EN)
parisneo/lollms-webui is vulnerable to path traversal and denial of service attacks due to an exposed `/select_database` endpoint in version a9d16b0. The endpoint improperly handles file paths, allowing attackers to specify absolute paths when interacting with the `DiscussionsDB` instance. This flaw enables attackers to create directories anywhere on the system where the application has permissions, potentially leading to denial of service by creating directories with names of critical files, such as HTTPS certificate files, causing server startup failures. Additionally, attackers can manipulate the database path, resulting in the loss of client data by constantly changing the file location to an attacker-controlled location, scattering the data across the filesystem and making recovery difficult.
Endpoint `/select_database` nieprawidłowo waliduje ścieżki plików przekazywane przez użytkownika, akceptując ścieżki bezwzględne bez żadnych ograniczeń. Atakujący może wskazać dowolną lokalizację w systemie plików podczas interakcji z instancją `DiscussionsDB`, co pozwala na tworzenie katalogów w dowolnym miejscu, do którego aplikacja posiada uprawnienia. Poprzez utworzenie katalogu o nazwie odpowiadającej krytycznym plikom (np. certyfikatom HTTPS) atakujący może uniemożliwić poprawny start serwera. Dodatkowo, stała zmiana ścieżki bazy danych na lokalizację kontrolowaną przez atakującego powoduje rozproszenie danych klientów po całym systemie plików, utrudniając ich odzyskanie.
Atakujący może doprowadzić do niedostępności usługi (denial of service) poprzez zakłócenie procesu startowego serwera, a także spowodować trwałą utratę danych klientów przez manipulację lokalizacją bazy danych i rozproszenie jej zawartości po systemie plików.
Należy zaktualizować aplikację do wersji zawierającej poprawkę dostępną w commicie 02e829b5653a1aa5dbbe9413ec84f96caa1274e8 w repozytorium GitHub projektu. Dodatkowo zaleca się ograniczenie dostępu do endpointu `/select_database` wyłącznie do zaufanych użytkowników oraz wdrożenie walidacji i sanityzacji wszystkich ścieżek plików przekazywanych przez użytkownika.
parisneo/lollms-webui w wersji a9d16b0
Podatność zgłoszona za pośrednictwem platformy huntr.com (bounty c1cfc0d9-517a-4d0e-bf1c-6444c1fd195d). Wektor ataku sieciowy bez wymagania uwierzytelnienia (PR:N, UI:N) istotnie podnosi ryzyko wykorzystania.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:HLollms Web Ui
APPLollmswszystkie wersje
Powiązane podatności
SSRF i brak uwierzytelnienia w lollms-webui — dostęp do wewnętrznych zasobów
Path traversal w API install/uninstall lollms-webui V12 (Strawberry)
Path Traversal w lollms-webui umożliwia usunięcie dowolnego pliku
Path Traversal i arbitrary file upload w parisneo/lollms-webui
Path Traversal prowadzący do RCE w parisneo/lollms-webui