CVE-2026-38979
ŚrednieCVSS 5.4Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 4 - wyżej niż 4% wszystkich znanych CVE
Streszczenie
Ajenti do wersji 2.2.13 zawiera podatność na clickjacking w interfejsie logowania i administracyjnym. Brak nagłówków X-Frame-Options i Content-Security-Policy frame-ancestors w odpowiedziach HTTP umożliwia osadzenie strony w ramce iframe.
Ocena ryzyka
Atakujący może nakłonić administratora do wykonania nieświadomych działań (np. zmiany konfiguracji) poprzez osadzenie panelu Ajenti na złośliwej stronie, co prowadzi do przejęcia kontroli nad systemem.
Rekomendacja
Zaktualizuj Ajenti do najnowszej wersji, która zawiera poprawkę. Jeśli aktualizacja nie jest dostępna, dodaj ręcznie nagłówki X-Frame-Options: DENY lub Content-Security-Policy: frame-ancestors 'none' w konfiguracji serwera proxy.
Inne podatności w Ajenti
Zobacz wszystkie- CVE-2026-79920Krytyczne
Ajenti to modularny panel administracyjny serwera dla Linuksa i BSD. W wersjach przed 2.2.16 każdy uwierzytelniony użytkownik może wywołać /api/core/tasks/start, aby zakolejkować InstallPlugin, UnInstallPlugin lub UpgradeAll z plugins/plugins/tasks.py bez uprawnień do zarządzania wtyczkami. InstallPlugin i UnInstallPlugin budują specyfikację pakietu pip z niezweryfikowanych pól name i version, a proces roboczy uruchamia pip jako root. Niskouprzywilejowany użytkownik może więc zainstalować, usunąć lub zaktualizować wtyczkę z uprawnieniami roota, co prowadzi do wykonania kodu jako root i pełnego przejęcia hosta. Problem naprawiono w wersji 2.2.16.
- CVE-2020-37002Krytyczne
Ajenti w wersji 2.1.36 zawiera podatność na zdalne wykonanie poleceń po uwierzytelnieniu, która pozwala zdalnym atakującym na wykonywanie dowolnych poleceń po pomyślnym zalogowaniu. Atakujący mogą wykorzystać punkt końcowy /api/terminal/create do wysłania ładunku reverse shell netcat, celując w określony adres IP i port.
- CVE-2026-35175Średnie
Ajenti przed wersją 2.2.15 umożliwia uwierzytelnionemu użytkownikowi (korzystającemu z wtyczki auth_users) instalację niestandardowego pakietu, nawet jeśli nie jest on superużytkownikiem. Luka została naprawiona w wersji 2.2.15.
Oryginalny opis (angielski, źródło NVD)
ajenti through v2.2.13 has a clickjacking weakness in the browser-facing login and administrative UI. In ajenti-core/aj/http.py, the core HTTP response path initializes an empty header list, forwards handler-added headers verbatim, and finalizes responses through WSGI start_response() without adding anti-framing protections such as X-Frame-Options or a Content-Security-Policy frame-ancestors restriction.

