问题描述
在我们对定制的 Discourse 论坛进行安全评估期间,我们发现了一个潜在的身份验证问题,该问题影响了在私信中上传的图片附件。
详细信息
-
上传 API:/uploads.json
-
访问 URL:/uploads/default/original/1X/{file_name}
-
复现步骤:
-
用户在私信中上传图片(设置 for_private_message=true)。
-
生成的图片可以通过直接链接被任何第三方访问(包括未登录用户或隐身模式下的用户)。
-
安全顾虑
-
私信中上传的图片应被视为机密信息,仅供对话参与者访问。
-
然而,根据目前的实现方式,任何拥有直接 URL 的人都可以下载这些文件,而无需进行身份验证或授权。
问题
-
这是当前 Discourse 实现的预期行为吗?
-
是否有推荐的设置或插件来确保私信附件得到妥善保护,并且只能由授权用户查看?
-
此问题是否已在上游 Discourse 项目中讨论或解决?
-
在 Discourse 部署中保护私密上传的最佳实践是什么?
感谢您对此重要安全问题的帮助和建议!