systemd v233 i wcześniejsze wersje nieprawidłowo parsują nazwy użytkowników rozpoczynające się od cyfry (np. '0day'), co skutkuje uruchomieniem usługi z uprawnieniami root zamiast z uprawnieniami wskazanego użytkownika. Błąd umożliwia niezamierzone przyznanie najwyższych uprawnień systemowych procesom, które powinny działać w ograniczonym kontekście.
▸ Pokaż oryginał (EN)
systemd v233 and earlier fails to safely parse usernames starting with a numeric digit (e.g. "0day"), running the service in question with root privileges rather than the user intended.
Podatność wynika z błędnej logiki parsowania nazw użytkowników w systemd (CWE-269 — improper privilege management). Gdy nazwa użytkownika w konfiguracji usługi zaczyna się od cyfry, systemd nieprawidłowo interpretuje tę wartość i zamiast uruchomić usługę w kontekście wskazanego konta, uruchamia ją z uprawnieniami root. Atakujący lub nieodpowiednio skonfigurowana aplikacja może celowo korzystać z takich nazw użytkowników, aby uzyskać eskalację uprawnień. Błąd jest możliwy do wykorzystania zdalnie, bez uwierzytelnienia i bez interakcji użytkownika, co znacznie zwiększa jego krytyczność.
Atakujący może doprowadzić do uruchomienia usługi systemowej z pełnymi uprawnieniami root, co umożliwia pełne przejęcie kontroli nad systemem, w tym odczyt i modyfikację danych oraz zaburzenie dostępności usług.
Należy zaktualizować systemd do wersji nowszej niż v233. Należy zastosować patche dostępne u producenta zgodnie z referencjami (m.in. zgłoszenie GitHub issue #6237 w repozytorium systemd). Dodatkowo zaleca się przegląd konfiguracji jednostek systemd pod kątem nazw użytkowników rozpoczynających się od cyfry.
systemd w wersji v233 i starszych (Systemd Project Systemd)
Podatność została publicznie ujawniona 2 lipca 2017 r. na liście oss-security (openwall.com). Dotyczy specyficznego wzorca nazw użytkowników zaczynających się od cyfry, co w praktyce ogranicza zasięg problemu do systemów posiadających takie konta.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HSystemd Project Systemd
APPSystemd Project229 – 234 (bez)
Powiązane podatności
Use-after-free w systemd resolved-dns-stream.c (CVE-2022-2526)
Systemd — brak walidacji SNI i nazwy hosta w DNS over TLS (DoT)
Stack-based buffer overflow w module nss-mymachines systemu systemd
systemd before 247 does not adequately block local privilege escalation for some Sudo configurations, e.g., pl...
A heap use-after-free vulnerability was found in systemd before version v245-rc1, where asynchronous Polkit qu...