W systemie Emlog w wersji 2.6.13 i wcześniejszych uwierzytelniony autor może wstrzyknąć ścieżkę prowadzącą do dowolnego lokalnego pliku .php, który zostanie dołączony podczas wyświetlania artykułu. Podatność pozwala na wykonanie dowolnego kodu po stronie serwera.
▸ Pokaż oryginał (EN)
Emlog is an open source website building system. In 2.6.13 and earlier, the article publishing interface stores a path-traversal template parameter from api_controller.php without validation, and log_controller.php later checks file_exists and calls include View::getView($template), allowing an authenticated author to include an arbitrary local .php file when an article is viewed. No fixed version is currently identified.
Interfejs publikowania artykułów w pliku api_controller.php przyjmuje parametr szablonu zawierający sekwencje path traversal (np. '../') bez jakiejkolwiek walidacji i zapisuje go. Następnie podczas wyświetlania artykułu plik log_controller.php sprawdza istnienie wskazanego pliku za pomocą file_exists, po czym wywołuje include poprzez View::getView($template). Uwierzytelniony autor może w ten sposób wskazać dowolny lokalny plik .php na serwerze i doprowadzić do jego wykonania.
Atakujący z uprawnieniami autora może wykonać dowolny lokalny plik PHP na serwerze, co w praktyce prowadzi do pełnego przejęcia kontroli nad aplikacją i potencjalnie całym serwerem (RCE). Możliwe jest również odczytanie lub modyfikacja wrażliwych danych aplikacji.
Brak zidentyfikowanej poprawionej wersji w momencie publikacji podatności. Należy śledzić repozytorium producenta pod kątem wydania łatki i zastosować ją niezwłocznie po udostępnieniu. Tymczasowo zaleca się ograniczenie uprawnień do tworzenia artykułów wyłącznie do zaufanych użytkowników oraz monitorowanie aktywności kont z rolą autora.
Emlog w wersji 2.6.13 i wcześniejszych
Podatność dotyczy wyłącznie zalogowanych użytkowników z rolą autora (PR:L). Zgodnie z informacją z opisu, w momencie publikacji nie istnieje żadna poprawiona wersja oprogramowania.
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/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