CVE-2020-11981

Apache Airflow Celery 消息中间件命令执行(CVE-2020-11981)

Apache Airflow是一款开源的,分布式任务调度框架。在其1.10.10版本及以前,如果攻击者控制了Celery的消息中间件(如Redis/RabbitMQ),将可以通过控制消息,在Worker进程中执行任意命令。

漏洞环境

依次执行如下命令启动airflow 1.10.10

cd vulhub/airflow/CVE-2020-11981
docker-compose run airflow-init
docker-compose up -d

漏洞利用

利用这个漏洞需要控制消息中间件,Vulhub环境中Redis存在未授权访问。通过未授权访问,攻击者可以下发自带的任务airflow.executors.celery_executor.execute_command来执行任意命令,参数为命令执行中所需要的数组。

可以使用exploit_airflow_celery.py这个小脚本来执行命令touch /tmp/airflow_celery_success:

pip install redis
python exploit_airflow_celery.py [your-ip]

查看结果:

docker-compose logs airflow-worker
docker compose exec airflow-worker ls -l /tmp

可以看到成功创建了文件airflow_celery_success:
img

posted @   kalixcn  阅读(100)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
历史上的今天:
2023-05-23 Linux启动过程
点击右上角即可分享
微信分享提示