CRITICAL🇬🇧 English

CVE-2026-58455

Dockwatch – nieuwierzytelniony OS command injection przez ajax/compose.php

CVSS 9.2v4.0pub. 2026-07-02upd. 2026-07-06

Dockwatch w wersjach do 0.6.567 zawiera krytyczną podatność typu command injection, umożliwiającą zdalnym, nieuwierzytelnionym atakującym wykonanie dowolnych poleceń systemowych na hoście. Ze względu na standardowe wdrożenie z zamontowanym gniazdem Docker, możliwe jest pełne przejęcie kontroli nad hostem.

Pokaż oryginał (EN)

Dockwatch through 0.6.567 contains an unauthenticated OS command injection vulnerability that allows remote attackers to execute arbitrary shell commands by exploiting a missing exit() after an authentication redirect in loader.php combined with unsanitized input passed to shell_exec() in ajax/compose.php. Attackers can seed the required session flag through the incomplete auth check, then inject arbitrary commands via the composePath POST parameter in the composePull action to achieve full host compromise, facilitated by the standard deployment mounting of the Docker socket.

🤖 Analiza AI
Jak działa

Podatność wynika z połączenia dwóch błędów: brakującego wywołania exit() po przekierowaniu uwierzytelniającym w pliku loader.php (CWE-698) oraz braku sanityzacji danych wejściowych przekazywanych do funkcji shell_exec() w pliku ajax/compose.php (CWE-78). Atakujący najpierw inicjuje wymagany znacznik sesji, wykorzystując niekompletną kontrolę uwierzytelnienia w loader.php – pomimo przekierowania, wykonanie skryptu jest kontynuowane. Następnie, za pomocą żądania POST z parametrem composePath w akcji composePull, atakujący wstrzykuje dowolne polecenia systemowe, które są wykonywane bez żadnej weryfikacji przez shell_exec().

Skutki

Atakujący może wykonać dowolne polecenia powłoki systemowej na hoście bez potrzeby uwierzytelnienia. Poprzez standardowo montowane gniazdo Docker możliwe jest pełne przejęcie kontroli nad hostem (full host compromise), w tym odczyt i modyfikacja danych oraz uruchamianie procesów.

Mitygacja

Należy zaktualizować Dockwatch do wersji zawierającej poprawkę opisaną w pull requeście #135 w repozytorium GitHub (https://github.com/Notifiarr/dockwatch/pull/135). Do czasu wdrożenia patcha zaleca się ograniczenie dostępu sieciowego do interfejsu Dockwatch wyłącznie do zaufanych sieci/adresów IP za pomocą firewalla lub odwrotnego proxy z kontrolą dostępu.

Kogo dotyczy

Dockwatch w wersjach do 0.6.567 włącznie

Uwagi

Podatność dotyczy domyślnych wdrożeń Dockwatch, w których gniazdo Docker (/var/run/docker.sock) jest montowane do kontenera – co jest standardową praktyką dla tego narzędzia. Zwiększa to znacząco zasięg potencjalnych szkód.

CVSS Vector
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/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
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
ContainerCommand Injection
CWE
Referencje