From d68bd5a79391742b3cb2e14d892bdd9997064927 Mon Sep 17 00:00:00 2001 From: Daniel <845765@qq.com> Date: Wed, 4 Mar 2026 11:48:09 +0800 Subject: [PATCH] :lock: https://github.com/siyuan-note/siyuan/security/advisories/GHSA-6865-qjcf-286f Signed-off-by: Daniel <845765@qq.com> --- kernel/api/icon.go | 2 +- kernel/server/serve.go | 2 +- kernel/util/misc.go | 61 +++++++++++++++++++++++++++++++++++++----- 3 files changed, 56 insertions(+), 9 deletions(-) diff --git a/kernel/api/icon.go b/kernel/api/icon.go index f6f629ebc..f45f20229 100644 --- a/kernel/api/icon.go +++ b/kernel/api/icon.go @@ -165,7 +165,7 @@ func getDynamicIcon(c *gin.Context) { } if !model.Conf.Editor.AllowSVGScript { - svg = util.RemoveScriptsInSVG(svg) + svg = util.SanitizeSVG(svg) } c.Header("Content-Type", "image/svg+xml") diff --git a/kernel/server/serve.go b/kernel/server/serve.go index aabf6f1f8..94897546f 100644 --- a/kernel/server/serve.go +++ b/kernel/server/serve.go @@ -618,7 +618,7 @@ func serveSVG(context *gin.Context, assetAbsPath string) bool { } if !model.Conf.Editor.AllowSVGScript { - data = []byte(util.RemoveScriptsInSVG(string(data))) + data = []byte(util.SanitizeSVG(string(data))) } context.Data(200, "image/svg+xml", data) diff --git a/kernel/util/misc.go b/kernel/util/misc.go index 63151eb15..d097c1621 100644 --- a/kernel/util/misc.go +++ b/kernel/util/misc.go @@ -231,8 +231,7 @@ func ReplaceStr(strs []string, old, new string) (ret []string, changed bool) { return } -// RemoveScriptsInSVG 移除 SVG 中的