0

我有一个用户可以上传文件的系统。如果文件名包含“../”等敏感字符,我想抛出异常(以避免路径遍历漏洞:“file/../../file.txt”)。
我有代码String originalFilename = multipartFile.getOriginalFilename();
有一个选项可以使用StringUtils.cleanPath(originalFilename),但这不是我所需要的(我想验证文件,而不是标准化它)。
我看到的唯一选择是将标准化文件名(StringUtils.cleanPath(...)方法的结果)与原始字符串进行比较,但我想知道是否有更简单的方法。例如类似的东西:StringUtils.isPathValid(originalFilename)
此外,我更喜欢使用已经开发(开源)和常用的方法,而不是使用正则表达式创建自己的解决方案。

4

0 回答 0