Explorar o código

fix 修复 有某些无聊人士 对一个demo案例提漏洞 CVE-2025-6925

疯狂的狮子Li hai 1 ano
pai
achega
c846fad872

+ 9 - 8
ruoyi-example/ruoyi-demo/src/main/java/org/dromara/demo/controller/MailController.java

@@ -39,14 +39,14 @@ public class MailController {
     /**
     /**
      * 发送邮件(带附件)
      * 发送邮件(带附件)
      *
      *
-     * @param to 接收人
-     * @param subject 标题
-     * @param text 内容
-     * @param filePath 附件路径
+     * @param to       接收人
+     * @param subject  标题
+     * @param text     内容
      */
      */
     @GetMapping("/sendMessageWithAttachment")
     @GetMapping("/sendMessageWithAttachment")
-    public R<Void> sendMessageWithAttachment(String to, String subject, String text, String filePath) {
-        MailUtils.sendText(to, subject, text, new File(filePath));
+    public R<Void> sendMessageWithAttachment(String to, String subject, String text) {
+        // 附件路径 禁止前端传递 有任意读取系统文件风险
+        MailUtils.sendText(to, subject, text, new File("/xxx/xxx"));
         return R.ok();
         return R.ok();
     }
     }
 
 
@@ -56,10 +56,11 @@ public class MailController {
      * @param to       接收人
      * @param to       接收人
      * @param subject  标题
      * @param subject  标题
      * @param text     内容
      * @param text     内容
-     * @param paths    附件路径
      */
      */
     @GetMapping("/sendMessageWithAttachments")
     @GetMapping("/sendMessageWithAttachments")
-    public R<Void> sendMessageWithAttachments(String to, String subject, String text, String[] paths) {
+    public R<Void> sendMessageWithAttachments(String to, String subject, String text) {
+        // 附件路径 禁止前端传递 有任意读取系统文件风险
+        String[] paths = new String[]{"/xxx/xxx", "/xxx/xxx"};
         File[] array = Arrays.stream(paths).map(File::new).toArray(File[]::new);
         File[] array = Arrays.stream(paths).map(File::new).toArray(File[]::new);
         MailUtils.sendText(to, subject, text, array);
         MailUtils.sendText(to, subject, text, array);
         return R.ok();
         return R.ok();