Flink 任意文件读取和写入
2021-01-18 02:59:13 Author: xz.aliyun.com(查看原文) 阅读量:173 收藏

一、前言

Apache Flink 两个高危漏洞(CVE-2020-17518&CVE-2020-17519),分别是任意文件写入和任意文件读取.

二、commit 分析

1、任意文件读取

原代码

String filename = handlerRequest.getPathParameter(LogFileNamePathParameter.class);

补丁

String filename = new File(handlerRequest.getPathParameter(LogFileNamePathParameter.class)).getName();

通过补丁代码,粗略知道handlerRequest变量可控, 能够实现任意文件读取.

2、任意文件写入

原代码

final Path dest = currentUploadDir.resolve(new File(fileUpload.getFilename()).getName());
fileUpload.renameTo(dest.toFile());

补丁

final Path dest = currentUploadDir.resolve(new File(fileUpload.getFilename()).getName());                           fileUpload.renameTo(dest.toFile());

通过补丁代码, 粗略知道fileUpload变量可控, 能够实现任意文件写入.


文章来源: http://xz.aliyun.com/t/9023
如有侵权请联系:admin#unsafe.sh