关键漏洞信息 漏洞标题 CSP passby via js file in usememos/memos 报告时间 Dec 23rd 2022 漏洞类型 CWE-79: Cross-site Scripting (XSS) - Stored 严重程度 High (7.1) 影响的版本 0.9.0 状态 Fixed 发现者 Christy__ (@christynorl) - 中级 修复者 STEVEN (@boojack) - 未验证 描述 Hello, Maintainer. You submitted a fix in the latest version 0.9.0 with commit c07b4a. But after many tests, I found that this is still not 100% safe. You have set a very simple csp, which can be bypassed. 步骤 1. 创建一个名为 '123.js' 的 js 文件,内容如下: 2. 点击资源部分上传 js 文件,并需要复制 js 文件的路径。例如,路径是: 3. 创建一个名为 'hello.html' 的 html 文件,内容如下: 4. 最后,预览 hello.html。 建议 我的建议是使用更安全的 CSP。或你有更好的方法。希望我们能让这个项目变得更好。以下是我的建议: 影响 1. 盗取管理员账户或 cookie,入侵者可以以管理员身份登录后台,篡改后台数据。 2. 盗取用户个人信息或登录账户,对网站用户的安全造成巨大威胁。 3. 网站挂马,使用户电脑感染木马。 4. 发送广告或垃圾信息,影响用户正常使用。 发生情况 resource.go L268 处理进度 3年前,报告已提交并联系usememos/memos团队。 3年前,STEVEN验证了该漏洞。 3年前,STEVEN标记漏洞已修复在 0.10.0 版本中。 3年前,漏洞已发布。