diff --git a/server/pom.xml b/server/pom.xml index e35e959a..d9862b49 100644 --- a/server/pom.xml +++ b/server/pom.xml @@ -62,11 +62,6 @@ commons-lang3 3.7 - - org.apache.commons - commons-text - 1.9 - org.redisson diff --git a/server/src/main/java/cn/keking/web/controller/FileController.java b/server/src/main/java/cn/keking/web/controller/FileController.java index 33f06f8c..94b98c4a 100644 --- a/server/src/main/java/cn/keking/web/controller/FileController.java +++ b/server/src/main/java/cn/keking/web/controller/FileController.java @@ -15,8 +15,9 @@ import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile; import java.io.*; +import java.nio.charset.StandardCharsets; import java.util.*; -import org.apache.commons.text.StringEscapeUtils; +import org.springframework.web.util.HtmlUtils; /** * @@ -39,7 +40,8 @@ public class FileController { //判断是否为IE浏览器的文件名,IE浏览器下文件名会带有盘符信息 // escaping dangerous characters to prevent XSS - fileName = StringEscapeUtils.escapeHtml4(fileName); + fileName = HtmlUtils.htmlEscape(fileName, StandardCharsets.UTF_8.name()); + // Check for Unix-style path int unixSep = fileName.lastIndexOf('/'); // Check for Windows-style path