W aplikacji lollms-webui istnieje podatność typu path traversal oraz nieautoryzowanego przesyłania plików, wynikająca z braku odpowiedniej sanityzacji parametru wejściowego. Umożliwia ona atakującemu zdalne odczytanie wrażliwych danych, nadpisanie plików konfiguracyjnych oraz potencjalnie wykonanie dowolnego kodu (RCE).
▸ Pokaż oryginał (EN)
A path traversal and arbitrary file upload vulnerability exists in the parisneo/lollms-webui application, specifically within the `@router.get("/switch_personal_path")` endpoint in `./lollms-webui/lollms_core/lollms/server/endpoints/lollms_user.py`. The vulnerability arises due to insufficient sanitization of user-supplied input for the `path` parameter, allowing an attacker to specify arbitrary file system paths. This flaw enables direct arbitrary file uploads, leakage of `personal_data`, and overwriting of configurations in `lollms-webui`->`configs` by exploiting the same named directory in `personal_data`. The issue affects the latest version of the application and is fixed in version 9.4. Successful exploitation could lead to sensitive information disclosure, unauthorized file uploads, and potentially remote code execution by overwriting critical configuration files.
Podatność zlokalizowana jest w endpoincie `@router.get("/switch_personal_path")` w pliku `lollms_core/lollms/server/endpoints/lollms_user.py`. Parametr `path` przekazywany przez użytkownika nie jest odpowiednio walidowany ani sanityzowany, co pozwala atakującemu na wskazanie dowolnej ścieżki w systemie plików (CWE-22, CWE-29). Exploit umożliwia bezpośrednie przesyłanie plików do wybranych lokalizacji, wyciek danych z katalogu `personal_data` oraz nadpisanie konfiguracji w katalogu `configs` poprzez wykorzystanie identycznie nazwanego katalogu w `personal_data`. Nadpisanie krytycznych plików konfiguracyjnych może prowadzić do wykonania dowolnego kodu (RCE).
Atakujący może uzyskać dostęp do wrażliwych danych użytkownika, przesyłać dowolne pliki na serwer, nadpisywać pliki konfiguracyjne aplikacji, a w konsekwencji doprowadzić do zdalnego wykonania kodu (RCE) na serwerze hostującym aplikację.
Należy zaktualizować aplikację lollms-webui do wersji 9.4 lub nowszej, w której podatność została naprawiona. Poprawka dostępna jest w commicie aeba79f3ea934331b8ecd625a58bae6e4f7e7d3f w repozytorium GitHub producenta.
Aplikacja parisneo/lollms-webui — wersje poprzedzające 9.4 (podatność obecna w najnowszej wersji w momencie publikacji).
Podatność zgłoszona i udokumentowana za pośrednictwem platformy Huntr (bounty ID: 39e17897-0e92-4473-91c7-f728322191aa). Endpoint podatny jest dostępny bez uwierzytelnienia (PR:N, UI:N), co znacząco zwiększa ryzyko eksploatacji przez nieuprawnione podmioty.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HLollms Web Ui
APPLollms< 9.4
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 DoS w endpoint /select_database aplikacji lollms-webui
Command Injection w lollms-webui — obejście zabezpieczeń i RCE