mirror of
https://github.com/siyuan-note/siyuan.git
synced 2026-02-18 13:08:06 +01:00
🎨 XSS through emoji name https://github.com/siyuan-note/siyuan/issues/15034
This commit is contained in:
parent
b804cd2d61
commit
e492b1fa51
9 changed files with 20 additions and 13 deletions
|
|
@ -68,7 +68,7 @@ func GetDocInfo(blockID string) (ret *BlockInfo) {
|
|||
icon := ret.IAL["icon"]
|
||||
if strings.Contains(icon, ".") {
|
||||
// XSS through emoji name https://github.com/siyuan-note/siyuan/issues/15034
|
||||
icon = util.FilterUploadFileName(icon)
|
||||
icon = util.FilterUploadEmojiFileName(icon)
|
||||
ret.IAL["icon"] = icon
|
||||
}
|
||||
|
||||
|
|
@ -141,7 +141,7 @@ func GetDocInfo(blockID string) (ret *BlockInfo) {
|
|||
icon = tree.Root.IALAttr("icon")
|
||||
if strings.Contains(icon, ".") {
|
||||
// XSS through emoji name https://github.com/siyuan-note/siyuan/issues/15034
|
||||
icon = util.FilterUploadFileName(icon)
|
||||
icon = util.FilterUploadEmojiFileName(icon)
|
||||
}
|
||||
ret.Icon = icon
|
||||
return
|
||||
|
|
|
|||
|
|
@ -130,7 +130,7 @@ func ListNotebooks() (ret []*Box, err error) {
|
|||
icon := boxConf.Icon
|
||||
if strings.Contains(icon, ".") { // 说明是自定义图标
|
||||
// XSS through emoji name https://github.com/siyuan-note/siyuan/issues/15034
|
||||
icon = util.FilterUploadFileName(icon)
|
||||
icon = util.FilterUploadEmojiFileName(icon)
|
||||
}
|
||||
|
||||
box := &Box{
|
||||
|
|
@ -200,7 +200,7 @@ func (box *Box) GetConf() (ret *conf.BoxConf) {
|
|||
icon := ret.Icon
|
||||
if strings.Contains(icon, ".") {
|
||||
// XSS through emoji name https://github.com/siyuan-note/siyuan/issues/15034
|
||||
icon = util.FilterUploadFileName(icon)
|
||||
icon = util.FilterUploadEmojiFileName(icon)
|
||||
ret.Icon = icon
|
||||
}
|
||||
return
|
||||
|
|
@ -708,7 +708,7 @@ func ChangeBoxSort(boxIDs []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)
|
||||
icon = util.FilterUploadEmojiFileName(icon)
|
||||
}
|
||||
|
||||
box := &Box{ID: boxID}
|
||||
|
|
|
|||
|
|
@ -234,7 +234,7 @@ func InitConf() {
|
|||
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)
|
||||
emoji = util.FilterUploadEmojiFileName(emoji)
|
||||
Conf.Editor.Emoji[i] = emoji
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -83,7 +83,7 @@ func (box *Box) docFromFileInfo(fileInfo *FileInfo, ial map[string]string) (ret
|
|||
icon := ial["icon"]
|
||||
if strings.Contains(icon, ".") {
|
||||
// XSS through emoji name https://github.com/siyuan-note/siyuan/issues/15034
|
||||
icon = util.FilterUploadFileName(icon)
|
||||
icon = util.FilterUploadEmojiFileName(icon)
|
||||
}
|
||||
ret.Icon = icon
|
||||
ret.ID = ial["id"]
|
||||
|
|
|
|||
|
|
@ -583,7 +583,7 @@ func ImportSY(zipPath, boxID, toPath string) (err error) {
|
|||
}
|
||||
if !util.IsValidUploadFileName(d.Name()) {
|
||||
emojiFullName := path
|
||||
fullPathFilteredName := filepath.Join(filepath.Dir(path), util.FilterUploadFileName(d.Name()))
|
||||
fullPathFilteredName := filepath.Join(filepath.Dir(path), util.FilterUploadEmojiFileName(d.Name()))
|
||||
// XSS through emoji name https://github.com/siyuan-note/siyuan/issues/15034
|
||||
logging.LogWarnf("renaming invalid custom emoji file [%s] to [%s]", d.Name(), fullPathFilteredName)
|
||||
if removeErr := filelock.Rename(emojiFullName, fullPathFilteredName); nil != removeErr {
|
||||
|
|
@ -732,7 +732,7 @@ func ImportData(zipPath string) (err error) {
|
|||
}
|
||||
if !util.IsValidUploadFileName(d.Name()) {
|
||||
emojiFullName := path
|
||||
fullPathFilteredName := filepath.Join(filepath.Dir(path), util.FilterUploadFileName(d.Name()))
|
||||
fullPathFilteredName := filepath.Join(filepath.Dir(path), util.FilterUploadEmojiFileName(d.Name()))
|
||||
// XSS through emoji name https://github.com/siyuan-note/siyuan/issues/15034
|
||||
logging.LogWarnf("renaming invalid custom emoji file [%s] to [%s]", d.Name(), fullPathFilteredName)
|
||||
if removeErr := filelock.Rename(emojiFullName, fullPathFilteredName); nil != removeErr {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue