Podatność argument injection w Ansible przed wersją 1.6.7 pozwala zdalnemu atakującemu na wykonanie dowolnego kodu na systemie zarządzającym. Zagrożenie jest krytyczne, ponieważ nie wymaga uwierzytelnienia ani interakcji użytkownika.
▸ Pokaż oryginał (EN)
Multiple argument injection vulnerabilities in Ansible before 1.6.7 allow remote attackers to execute arbitrary code by leveraging access to an Ansible managed host and providing a crafted fact, as demonstrated by a fact with (1) a trailing " src=" clause, (2) a trailing " temp=" clause, or (3) a trailing " validate=" clause accompanied by a shell command.
Atakujący, który ma dostęp do hosta zarządzanego przez Ansible (tzw. managed host), może dostarczyć spreparowany 'fact' zawierający dodatkowe argumenty wiersza poleceń. Przykładowe techniki obejmują dołączenie do faktu ciągów takich jak ' src=', ' temp=' lub ' validate=' wraz z osadzonym poleceniem powłoki. Ansible przetwarza te fakty bez odpowiedniego oczyszczenia danych wejściowych, co prowadzi do wstrzyknięcia dodatkowych argumentów do wywoływanych poleceń systemowych. W efekcie osadzony payload jest wykonywany z uprawnieniami procesu Ansible na hoście sterującym.
Atakujący może wykonać dowolny kod na hoście sterującym Ansible (controller), co w praktyce oznacza pełne przejęcie kontroli nad systemem zarządzającym infrastrukturą – w tym potencjalne uzyskanie dostępu do wszystkich zarządzanych hostów.
Należy zaktualizować Ansible do wersji 1.6.7 lub nowszej. Poprawka dostępna jest w oficjalnym repozytorium projektu (commit 62a1295a3e08cb6c3e9f1b2a1e6e5dcaeab32527). Dodatkowo należy ograniczyć zaufanie do faktów dostarczanych przez zarządzane hosty i stosować zasadę minimalnych uprawnień dla kont używanych przez Ansible.
Ansible w wersjach wcześniejszych niż 1.6.7
Podatność została opisana w poradniku oCERT-2014-004 opublikowanym przez organizację oCERT. Mimo że CVE zostało przypisane w 2014 roku, formalna publikacja w NVD nastąpiła 2020-02-18.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HRed Hat Ansible
APPRedhat< 1.6.7
Powiązane podatności
RCE w funkcji safe_eval w Ansible — niepełna poprawka CVE-2014-4657
RCE w funkcji safe_eval w Ansible przed wersją 1.5.4
RCE w Ansible poprzez wstrzyknięcie szablonów Jinja2
Ansible jenkins_plugin ujawnia hasła w logach zdalnych hostów
A template injection flaw was found in Ansible where a user's controller internal templating operations may re...