
Эксплойт, подтверждающий концепцию для CVE-2020-11981, нацеленный на внедрение команд Apache Airflow через брокер Redis, позволяющий удалённое выполнение кода на уязвимых рабочих узлах.
docker-compose up -d
VM (docker-container): 172.18.0.2
docker build -t scan11981 .
docker run -v /tmp/:/output --network exploit -t scan11981 --targets 172.18.0.2:6379 --output /output/result.txt
cat /tmp/result.txt
Описание уязвимости: уязвимость связана с инъекцией команд в Apache Airflow (версии 1.10.10 и ниже) при использовании CeleryExecutor и Redis в качестве брокера. Злоумышленник, имеющий доступ к Redis, может отправлять специально сформированные задачи, которые рабочие процессы (workers) Airflow выполняют как команды. Это может привести к выполнению произвольного кода с правами пользователя, под которым запущен Airflow.
Риски: RCE - контроль на машиной.
Рекомендации по устранению: обновить Apache Airflow, актуальная версия на данный момент 3.0.1; также рекомендуется ограничить доступ к брокеру (Redis или RabbitMQ).