
CVE-2023-22884 PoC
PoC для CVE-2023-22884 — это уязвимость RCE в Apache Airflow, затрагивающая версии до 2.4.0.
В официальном отчете говорится:
Неправильная нейтрализация специальных элементов, используемых в команде (уязвимость 'Command Injection') в Apache Software Foundation Apache Airflow, Apache Software Foundation Apache Airflow MySQL Provider. Эта проблема затрагивает Apache Airflow: до версии 2.5.1; Apache Airflow MySQL Provider: до версии 4.0.0. (source)
Затронутые версии этого пакета уязвимы для Command Injection из-за отсутствия санитизации входных данных для оператора LOAD DATA LOCAL INFILE, что может быть использовано злоумышленником для выполнения команд на операционной системе. (source)
Этот репозиторий создан для блога с анализом CVE, доступного в блоге vsociety.
Вы можете клонировать репозиторий:
git clone https://github.com/jakabakos/CVE-2023-22884-Airflow-SQLi.git
cd CVE-2023-22884-Airflow-SQLi/airflow-2.5.0
Запустите его с помощью docker-compose run --build.
В результате вы должны увидеть в логах, что веб-сервер и другие компоненты запущены, и форма входа доступна по адресу localhost:8080. Имя пользователя и пароль по умолчанию — airflow.
Пример DAG находится в папке dags.
Вы можете запустить эксплойт в тестовом режиме и режиме атаки.
cd exploit
# Run exploit in test mode:
python3 exploit.py -u admin -p admin --host http://localhost:8080 --mode test -ci mysql -di bulk_load_from_file
# Run exploit in attack mode:
python3 exploit.py -u admin -p admin --host http://localhost:8080 --mode attack -ci mysql -di bulk_load_from_file -dc dag_config.json
Данное программное обеспечение создано исключительно для целей академических исследований и разработки эффективных методов защиты, и не предназначено для использования для атаки на системы, за исключением случаев явного разрешения. Сопровождающие проекта не несут ответственности за неправомерное использование программного обеспечения. Используйте ответственно.