Podatności Admidio
20 znanych podatności CVE w Admidio, przetłumaczonych i ocenionych.
- CVE-2026-47232Średnie
Admidio przed wersją 5.0.10 zawiera podatność CSRF w akcji `mode=export` w `modules/sso/keys.php`, która eksportuje pakiet PKCS#12 z kluczem prywatnym i certyfikatem. Walidacja tokena CSRF jest zakomentowana, co pozwala na sfałszowane żądanie POST z sesji administratora i wyeksportowanie klucza prywatnego bez ważnego tokena.
- CVE-2026-47231Wysokie
Admidio przed wersją 5.0.10 zawiera podatność w modules/documents-files.php, gdzie obsługa trybów zmiany stanu sprawdza uprawnienia upload na parametrze folder_uuid, ale handler move_save operuje na oddzielnym parametrze file_uuid i wywołuje File::moveToFolder($destFolderUUID). Funkcja moveToFolder sprawdza uprawnienia upload tylko na folderze docelowym, nie na źródłowym. W rezultacie każdy użytkownik, który może przesyłać pliki do dowolnego folderu, może przenieść dowolny plik z innego folderu, w tym prywatnego, do folderu, który kontroluje, a następnie go pobrać.
- CVE-2026-47228Średnie
Admidio przed wersją 5.0.10 ma brak walidacji tokena CSRF w `modules/registration.php` w trybie `send_login`. Ten tryb generuje nowe losowe hasło dla `user_uuid_assigned`, zapisuje jego hash bcrypt i wysyła hasło jawnym tekstem do użytkownika. Inne tryby w tym samym pliku sprawdzają token CSRF, ale `send_login` tego nie robi. Strona odwiedzona przez administratora rejestracji może wysłać żądanie jako nawigacja najwyższego poziomu, a przeglądarka wyśle ciasteczka `SameSite=Lax`, co pozwoli na zresetowanie hasła wybranego użytkownika bez interakcji administratora.
- CVE-2026-47227Średnie
Admidio przed wersją 5.0.10 ma podatność w `modules/categories.php`, gdzie kontrola uprawnień dla konkretnej kategorii jest martwym kodem, ponieważ porównuje `$getType` (kod typu kategorii) z nazwami trybów (`edit`/`save`/`delete`), co jest zawsze fałszywe. W rezultacie przypadki `delete`, `sequence` i `save` ładują kategorię po UUID i działają na niej bez ponownego sprawdzenia, czy kategoria należy do modułu administrowanego przez aktora. Użytkownik z prawem administratora tylko jednego modułu może niszczyć lub zmieniać kolejność pustych kategorii należących do innych modułów.
- CVE-2026-69093Średnie
Admidio przed wersją 5.0.11 nie waliduje tokena adm_csrf_token w pliku modules/category-report/preferences.php, który dokonuje trwałych zmian konfiguracji Category Report na podstawie parametrów GET (delete i copy). Atakujący może nakłonić uwierzytelnionego administratora do odwiedzenia spreparowanego URL w celu usunięcia lub zduplikowania konfiguracji Category Report, wpływając na integralność i dostępność tego modułu.
- CVE-2026-69092Średnie
Admidio przed wersją 5.0.11 zawiera odbitą podatność na cross-site scripting w punkcie końcowym SSO/SAML. Nieuwierzytelnieni atakujący mogą wstrzyknąć dowolny kod JavaScript przez elementy SAML Issuer lub parametry biblioteki LightSaml, co umożliwia przejęcie sesji użytkowników.
- CVE-2026-69091Wysokie
W systemie Admidio przed wersją 5.0.11 wykryto podatność ominięcia uwierzytelniania w module forum, gdy jest on skonfigurowany w trybie login-only. Logika kontroli dostępu w pliku modules/forum.php nie sprawdza poprawnie stanu konfiguracji, co pozwala nieuwierzytelnionym atakującym na odczyt tematów i postów na forum.
- CVE-2026-69090Średnie
Admidio przed wersją 5.0.11 nie weryfikuje przynależności do docelowej organizacji w handlerach ról. Uwierzytelnieni administratorzy ról mogą usuwać, aktywować, dezaktywować lub edytować role należące do innych organizacji, podając UUID roli z innej organizacji.
- CVE-2026-41660Wysokie
Admidio to otwarte rozwiązanie do zarządzania użytkownikami. W wersjach przed 5.0.9 występuje błąd logiczny w procesie resetowania uwierzytelniania dwuskładnikowego, który odwraca kontrolę autoryzacji, umożliwiając nieadministracyjnym użytkownikom usuwanie konfiguracji TOTP innych użytkowników, w tym administratorów.
- CVE-2026-47234Średnie
Admidio to open-source'owe narzędzie do zarządzania użytkownikami. Przed wersją 5.0.10, gdy włączone jest logowanie debugowania, `Session::setCookie()` loguje pełne wartości ciasteczek, a `Session::start()` loguje bieżący identyfikator sesji. W rzeczywistym wdrożeniu Admidio obejmuje to zarówno aktywne ciasteczko sesji, jak i trwałe ciasteczko automatycznego logowania. Każdy, kto ma dostęp do dziennika, może odzyskać aktywne poświadczenia typu bearer z logów. Wersja 5.0.10 zawiera poprawkę.
- CVE-2026-47233Średnie
Admidio to open-source'owe narzędzie do zarządzania użytkownikami. Wersja 5.0.9 dodała brakującą kontrolę `isAdministratorInventory()` do `case 'item_delete':` w `modules/inventory.php`. Ta sama poprawka nie została zastosowana do sąsiedniego `case 'field_delete':`, który niszczy całą definicję pola inwentarza, kaskadowo usuwając wszystkie wiersze `adm_inventory_item_data` i wpisy `adm_inventory_field_options`. Procedura sprawdza tylko token CSRF związany z sesją; nie ma kontroli `isAdministratorInventory()` na poziomie kontrolera, a `Admidio\Inventory\Entity\ItemField::delete()` nie egzekwuje jej na poziomie encji (w przeciwieństwie do `ItemField::save()`, które sprawdza `$gCurrentUser->isAdministrator()`). Każdy zalogowany użytkownik może trwale zniszczyć nie-systemowe pole inwentarza, wysyłając jeden POST. Wersja 5.0.10 zawiera poprawkę.
- CVE-2026-47230Średnie
Admidio przed wersją 5.0.10 ma podatność IDOR w `modules/documents-files.php` w trybie `file_rename_save`. Kontrola uprawnień na górze sprawdza prawo do przesyłania na podstawie parametru `folder_uuid`, ale operacja zmiany nazwy działa na `file_uuid` bez ponownego sprawdzenia folderu, w którym plik faktycznie się znajduje. Użytkownik z prawem przesyłania w dowolnym folderze A może zmienić nazwę pliku w folderze B, jeśli ma do niego dostęp do odczytu.
- CVE-2026-47229Średnie
Admidio przed wersją 5.0.10 ma brak walidacji tokena CSRF w `modules/sso/clients.php` dla akcji `enable`. Przypadek `enable` ładuje klienta SAML lub OIDC po UUID, wywołuje `$client->enable($enabled)` i zapisuje nowy stan bez sprawdzenia tokena. Akcja jest osiągalna przez zwykłe parametry GET, co pozwala zewnętrznej stronie na wyłączenie lub ponowne włączenie dowolnego skonfigurowanego klienta SSO u uwierzytelnionego administratora.
- CVE-2026-47226Średnie
Admidio przed wersją 5.0.10 ma podatność, która pozwala uwierzytelnionemu członkowi z prawem przesyłania w dowolnym folderze na trwałe usunięcie plików z folderów, do których ma tylko dostęp do odczytu. Kontrola uprawnień na górze `modules/documents-files.php` sprawdza prawo przesyłania na podstawie parametru `folder_uuid`, a nie rzeczywistego folderu nadrzędnego pliku. Handler `file_delete` weryfikuje tylko prawo odczytu, nigdy prawo przesyłania. Jest to niekompletna poprawka GHSA-rmpj-3x5m-9m5f, która została załatana w v5.0.7, ale pozostaje wykorzystywalna w v5.0.9.
- CVE-2026-69094Średnie
Admidio przed wersją 5.0.11 zawiera podatność IDOR w trybie save_temporary pliku mylist_function.php, która umożliwia uwierzytelnionym użytkownikom przechwytywanie konfiguracji list. Atakujący mogą wyliczać globalne UUID list i nadpisywać listy globalne zarządzane przez administratora lub prywatne listy innych użytkowników, podając parametr list_uuid, przenosząc własność i degradując listy globalne do konfiguracji osobistych.
- CVE-2018-25370Średnie
Admidio 3.3.5 zawiera lukę CSRF, która pozwala użytkownikom o niskich uprawnieniach na zwiększenie swoich uprawnień poprzez wykorzystanie nieprawidłowego sprawdzania pochodzenia żądań. Atakujący mogą stworzyć złośliwe formularze HTML kierujące do roles_function.php z parametrami takimi jak rol_assign_roles, rol_approve_users i rol_edit_user ustawionymi na 1, co prowadzi do eskalacji uprawnień bez uwierzytelnienia.
- CVE-2026-34384Średnie
Admidio przed wersją 5.0.8 zawiera podatność CSRF w module rejestracji. Akcje zatwierdzania oczekujących rejestracji (create_user, assign_member, assign_user) są wykonywane przez żądanie GET bez walidacji tokena CSRF, co pozwala atakującemu na automatyczne zatwierdzenie własnej rejestracji, oszukując administratora z odpowiednimi uprawnieniami.
- CVE-2026-34383Średnie
Admidio przed wersją 5.0.8 zawiera podatność w module inwentarza, gdzie punkt końcowy item_save akceptuje kontrolowany przez użytkownika parametr POST imported, który po ustawieniu na true całkowicie omija walidację tokena CSRF oraz walidację po stronie serwera. Uwierzytelniony użytkownik może wysłać bezpośrednie żądanie POST, aby zapisać dowolne dane elementu inwentarza bez ochrony CSRF i bez sprawdzania wartości pól, które normalnie wymusza FormPresenter.
- CVE-2026-34382Średnie
Admidio przed wersją 5.0.8 nie waliduje tokena CSRF w procedurze usuwania konfiguracji list w mylist_function.php. Atakujący może nakłonić uwierzytelnionego użytkownika do odwiedzenia złośliwej strony, co prowadzi do trwałego usunięcia konfiguracji list, w tym współdzielonych list organizacyjnych, jeśli ofiara ma uprawnienia administratora.
- CVE-2026-34381Wysokie
Admidio w wersjach od 5.0.0 do 5.0.7 polega na pliku adm_my_files/.htaccess w celu blokowania bezpośredniego dostępu HTTP do przesłanych dokumentów. Obraz Dockera zawiera AllowOverride None w konfiguracji Apache, co powoduje, że Apache ignoruje wszystkie pliki .htaccess. W rezultacie każdy plik przesłany do modułu dokumentów jest bezpośrednio dostępny przez HTTP bez uwierzytelnienia dla każdego, kto zna ścieżkę pliku. Problem został naprawiony w wersji 5.0.8.

