
CVE-2023-22884 PoC
Der PoC für CVE-2023-22884 ist eine Apache Airflow RCE-Schwachstelle, die Versionen vor 2.4.0 betrifft.
Der offizielle Bericht beschreibt die Schwachstelle wie folgt:
Improper Neutralization of Special Elements used in a Command ('Command Injection') vulnerability in Apache Software Foundation Apache Airflow, Apache Software Foundation Apache Airflow MySQL Provider. This issue affects Apache Airflow: before 2.5.1; Apache Airflow MySQL Provider: before 4.0.0. (source)
Affected versions of this package are vulnerable to Command Injection due to lack of sanitization of input to the LOAD DATA LOCAL INFILE statement, which can be used by an attacker to execute commands on the operating system. (source)
Das Repository wurde für einen CVE-Analyse-Blogbeitrag erstellt, der auf dem vsociety Blog verfügbar ist.
Sie können das Repository klonen:
git clone https://github.com/jakabakos/CVE-2023-22884-Airflow-SQLi.git
cd CVE-2023-22884-Airflow-SQLi/airflow-2.5.0
Führen Sie es mit docker-compose run --build aus.
Als Ergebnis sollten Sie in den Logs sehen, dass der Webserver und andere Komponenten gestartet sind und ein Anmeldeformular unter localhost:8080 verfügbar ist. Der Standard-Benutzername und das Standard-Passwort sind airflow.
Siehe das Beispiel-DAG im Ordner dags.
Sie können den Exploit im Test- und Angriffsmodus ausführen.
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
Diese Software wurde ausschließlich für die Zwecke akademischer Forschung und für die Entwicklung effektiver Verteidigungstechniken erstellt und ist nicht dafür vorgesehen, Systeme anzugreifen, es sei denn, dies wurde ausdrücklich autorisiert. Die Projektbetreuer übernehmen keine Verantwortung oder Haftung für die missbräuchliche Verwendung der Software. Nutzen Sie sie verantwortungsbewusst.