CVE-2026-16544
ŚrednieCVSS 6.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 31 - wyżej niż 31% wszystkich znanych CVE
Streszczenie
W AWX funkcja websocket event consumer wykonuje kontrolę autoryzacji RBAC tylko dla grup zdarzeń zmapowanych w funkcji consumer_access(). Trzy grupy zdarzeń (inventory_update_events, project_update_events, system_job_events) nie są zmapowane, co powoduje pominięcie kontroli autoryzacji. Każdy uwierzytelniony użytkownik może subskrybować te grupy i otrzymywać dane wyjściowe z zadań należących do organizacji, do których nie ma dostępu.
Ocena ryzyka
Uwierzytelniony użytkownik może uzyskać nieautoryzowany dostęp do danych wyjściowych zadań (stdout) z organizacji, do których nie ma uprawnień, co prowadzi do ujawnienia poufnych informacji.
Rekomendacja
Zaleca się zastosowanie poprawek dostarczonych przez producenta AWX, które mapują brakujące grupy zdarzeń w funkcji consumer_access().
Inne podatności w AWX
Zobacz wszystkie- CVE-2026-71366Wysokie
Znaleziono podatność typu Server-Side Request Forgery (SSRF) w wielu backendach powiadomień AWX. Backendy webhook, Mattermost, Rocket.Chat i Grafana używają adresów URL z szablonów powiadomień jako bezpośrednich celów żądań HTTP bez walidacji adresu docelowego pod kątem prywatnych, pętli zwrotnej lub zastrzeżonych zakresów IP. Administrator powiadomień organizacji może tworzyć szablony powiadomień wskazujące na wewnętrzne adresy lub adresy pętli zwrotnej, powodując, że węzeł kontrolny AWX wysyła żądania HTTP do usług, które nie są dostępne z zewnątrz. Dodatkowo backend webhook podąża za przekierowaniami HTTP i ponownie wysyła skonfigurowane poświadczenia Basic Authentication do celów przekierowania niezależnie od zmiany hosta, co pozwala atakującemu na eksfiltrację poświadczeń powiadomień poprzez przekierowanie na kontrolowany przez atakującego host. Backend Grafana wysyła swój klucz API w nagłówku Authorization do skonfigurowanego docelowego adresu URL.
- CVE-2026-71364Wysokie
Znaleziono podatność typu path traversal w ekstrakcji archiwów projektów w AWX. Wtyczka akcji project_archive rozpakowuje elementy archiwów zip i tar, łącząc ścieżkę katalogu projektu z nazwą pliku elementu bez normalizacji ścieżki, walidacji granic lub odrzucania sekwencji traversal. Złośliwe archiwum zawierające elementy z sekwencjami traversal może zapisywać pliki w dowolnych lokalizacjach w systemie plików węzła wykonawczego poza zamierzonym katalogiem projektu. Atakujący, który kontroluje zawartość archiwum, czy to poprzez skompromitowane źródło nadrzędne, złośliwy adres URL archiwum, czy atak man-in-the-middle na zwykłym połączeniu HTTP, może osiągnąć dowolny zapis plików jako użytkownik wykonujący ekstrakcję, potencjalnie prowadząc do zdalnego wykonania kodu poprzez mechanizmy takie jak pliki cron, klucze autoryzowane SSH lub wstrzyknięcie treści playbooka.
- CVE-2026-71365Wysokie
Znaleziono podatność na server-side request forgery (SSRF) w mechanizmie wywołań zwrotnych webhooków w AWX. Podczas przetwarzania webhooków GitHub pull request, AWX wyodrębnia URL wywołania zwrotnego statusu (pull_request.statuses_url) z ładunku webhooka bez walidacji hosta docelowego względem oczekiwanego dostawcy Git. Ten URL jest zapisywany w zmiennych dodatkowych zadania i później używany do wysyłania uwierzytelnionych aktualizacji statusu. Użytkownik z rolą administratora w szablonie zadania z włączonym webhookiem może odczytać klucz podpisywania webhooka szablonu, sfałszować podpisany ładunek webhooka GitHub z dowolnym statuses_url i spowodować, że AWX wyśle aktualizacje statusu na URL kontrolowany przez atakującego lub wewnętrzny. Żądanie aktualizacji statusu zawiera skonfigurowany Personal Access Token (PAT) Git w nagłówku Authorization, co prowadzi do wycieku poświadczeń do punktu końcowego wskazanego przez atakującego.
Oryginalny opis (angielski, źródło NVD)
A flaw was found in AWX. The websocket event consumer performs RBAC authorization checks only for event groups that are mapped in the consumer_access() function (job_events, workflow_events, ad_hoc_command_events). Three event groups - inventory_update_events, project_update_events, and system_job_events — are not mapped, causing the authorization check to be skipped. Any authenticated user can subscribe to these unmapped websocket event groups for any object ID and receive real-time stdout output from jobs belonging to organizations they have no access to. This is an incomplete remediation of CVE-2020-10698.

