Daniel 2025-06-17 17:00:29 +08:00
parent 3a991f8075
commit 526e436fbc
No known key found for this signature in database
GPG key ID: 86211BA83DF03017
3 changed files with 18 additions and 1 deletions

View file

@ -654,7 +654,12 @@ func setEmoji(c *gin.Context) {
argEmoji := arg["emoji"].([]interface{}) argEmoji := arg["emoji"].([]interface{})
var emoji []string var emoji []string
for _, ae := range argEmoji { for _, ae := range argEmoji {
emoji = append(emoji, ae.(string)) e := ae.(string)
if strings.Contains(e, ".") {
// XSS through emoji name https://github.com/siyuan-note/siyuan/issues/15034
e = util.FilterUploadFileName(e)
}
emoji = append(emoji, e)
} }
model.Conf.Editor.Emoji = emoji model.Conf.Editor.Emoji = emoji

View file

@ -699,6 +699,11 @@ func ChangeBoxSort(boxIDs []string) {
} }
func SetBoxIcon(boxID, icon string) { func SetBoxIcon(boxID, icon string) {
if strings.Contains(icon, ".") {
// XSS through emoji name https://github.com/siyuan-note/siyuan/issues/15034
icon = util.FilterUploadFileName(icon)
}
box := &Box{ID: boxID} box := &Box{ID: boxID}
boxConf := box.GetConf() boxConf := box.GetConf()
boxConf.Icon = icon boxConf.Icon = icon

View file

@ -231,6 +231,13 @@ func InitConf() {
if 1 > len(Conf.Editor.Emoji) { if 1 > len(Conf.Editor.Emoji) {
Conf.Editor.Emoji = []string{} Conf.Editor.Emoji = []string{}
} }
for i, emoji := range Conf.Editor.Emoji {
if strings.Contains(emoji, ".") {
// XSS through emoji name https://github.com/siyuan-note/siyuan/issues/15034
emoji = util.FilterUploadFileName(emoji)
Conf.Editor.Emoji[i] = emoji
}
}
if 9 > Conf.Editor.FontSize || 72 < Conf.Editor.FontSize { if 9 > Conf.Editor.FontSize || 72 < Conf.Editor.FontSize {
Conf.Editor.FontSize = 16 Conf.Editor.FontSize = 16
} }