Platforma Erugo do samodzielnego hostowania plików zawiera krytyczną podatność umożliwiającą uwierzytelnionemu użytkownikowi o niskich uprawnieniach wykonanie dowolnego kodu na serwerze. Błąd wynika z braku odpowiedniej walidacji ścieżek podanych przez użytkownika podczas tworzenia tzw. shares.
▸ Pokaż oryginał (EN)
Erugo is a self-hosted file-sharing platform. In versions up to and including 0.2.14, an authenticated low-privileged user can upload arbitrary files to any specified location due to insufficient validation of user‑supplied paths when creating shares. By specifying a writable path within the public web root, an attacker can upload and execute arbitrary code on the server, resulting in remote code execution (RCE). This vulnerability allows a low-privileged user to fully compromise the affected Erugo instance. Version 0.2.15 fixes the issue.
Podczas tworzenia share'a aplikacja nie weryfikuje poprawnie ścieżki docelowej wskazanej przez użytkownika, co umożliwia atak typu path traversal. Atakujący może wskazać zapisywalną ścieżkę w obrębie publicznego katalogu web root i przesłać tam dowolny plik (np. skrypt serwerowy). Wgrany w ten sposób plik może zostać następnie wywołany przez serwer WWW, co prowadzi do zdalnego wykonania kodu (RCE). W efekcie użytkownik o minimalnych uprawnieniach jest w stanie przejąć pełną kontrolę nad instancją Erugo.
Atakujący może wykonać dowolny kod na serwerze, uzyskując pełną kontrolę nad instancją Erugo, w tym dostęp do przechowywanych danych, możliwość naruszenia poufności, integralności i dostępności systemu.
Należy zaktualizować Erugo do wersji 0.2.15, która eliminuje opisaną podatność. Dostępne są odpowiedni commit (256bc63831a0b5e9a94cb024a0724e0cd5fa5e38) oraz oficjalne wydanie v0.2.15 w repozytorium producenta.
Erugo w wersjach do 0.2.14 włącznie (self-hosted). Wymagane jest posiadanie dowolnego konta użytkownika w aplikacji.
Podatność wymaga uwierzytelnienia — atakujący musi posiadać konto w aplikacji (nawet o najniższych uprawnieniach). Podatność zgłoszona i poprawiona przez producenta; szczegóły dostępne w security advisory GHSA-336w-hgpq-6369 na GitHub.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:HErugo
APPErugo≤ 0.2.14