V nových verzích systému centralizovaného řízení konfigurace SaltStack 3002.5, 3001.6 a 3000.8 byla odstraněna zranitelnost (CVE-2020-28243), která umožňovala nepřihlášenému místnímu uživateli hostitele zvýšit své oprávnění v systému. Problém byl způsoben chybou v obslužném modulu salt-minion, používaném k přijímání příkazů z centrálního serveru. Zranitelnost byla objevena v listopadu, ale opravena až nyní.
Při provádění operace "restartcheck" existuje možnost provádět substituci libovolných příkazů manipulací se jménem procesu. Zejména se dotaz na přítomnost balíčku prováděl spuštěním správce balíčků s předáním argumentu, který byl získán na základě názvu procesu. Správce balíčků se spouští voláním funkce popen v režimu shell, ale bez escapeování speciálních znaků. Změnou názvu procesu a použitím symbolů jako ";" a "|" lze provést spuštění vlastního kódu.
Kromě zmíněného problému bylo v SaltStack 3002.5 odstraněno dalších 9 zranitelností:
- CVE-2021-25281 — kvůli nedostatečné kontrole oprávnění může vzdálený útočník prostřednictvím přístupu k SaltAPI spustit libovolný wheel modul na straně řídícího master serveru a ohrozit celou infrastrukturu.
- CVE-2021-3197 — problém v SSH modulu pro minion, který umožňuje provedení libovolných shell příkazů prostřednictvím substituce argumentu s nastavením "ProxyCommand" nebo předáním ssh_options prostřednictvím API.
- CVE-2021-25282 — neoprávněný přístup k wheel_async umožňuje prostřednictvím přístupu k SaltAPI přepsat soubor mimo základní adresář a provést libovolný kód v systému.
- CVE-2021-25283 — únik mimo základní adresář v obsluze wheel.pillar_roots.write v SaltAPI umožňuje přidat libovolnou šablonu k jinja rendereru.
- CVE-2021-25284 — hesla zadaná prostřednictvím webutils se uchovávala v otevřené podobě v logu /var/log/salt/minion.
- CVE-2021-3148 — možnost substituce příkazů prostřednictvím SaltAPI volání salt.utils.thin.gen_thin().
- CVE-2020-35662 — absence kontroly. SSL- certifikátu v konfiguraci podle výchozího nastavení.
- CVE-2021-3144 — možnost používání autentizačních tokenů eauth po vypršení jejich platnosti.
- CVE-2020-28972 — v kódu se nekontroloval SSL/TLS certifikát serveru, což umožnilo provádět MITM útoky.
Zdroj: opennet.ru
