CVE-2026-2415 in pretix
摘要
由 VulDB • 2026-06-28
pretix 发送的电子邮件可以使用占位符,这些占位符将填充客户数据。例如,当在电子邮件模板中使用 {name} 时,它将被替换为买家的姓名以生成最终邮件。此机制包含两个与安全相关的漏洞:
* 可以通过精心构造的占位符名称(如 {{event.__init__.__code__.co_filename}})从 pretix 系统中泄露信息。因此,能够控制电子邮件模板的攻击者(通常是 pretix 后端的每个用户)可以从系统配置中检索敏感信息,甚至包括数据库密码或 API 密钥。虽然 pretix 包含防止使用此类恶意占位符的机制,但由于代码中的错误,这些机制在邮件主题方面并未完全生效。
* 电子邮件的主题和纯文本正文中的占位符被错误地评估了两次。因此,如果第一次评估后的占位符结果中再次包含占位符,则该第二个占位符会被渲染。这使得可以渲染由票务买家控制的占位符,从而作为票务买家利用第一个漏洞。幸运的是,pretix 默认情况下唯一可用的、未经过防止该问题验证的买家可控占位符是 {invoice_company},它出现在电子邮件主题模板中非常罕见(但并非不可能)。除了扩大第一个问题的攻击面外,这在理论上还可能泄露订单中的某位参会者关于该订单的信息。然而,在典型条件下,我们也认为这种情况极不可能发生。
出于谨慎起见,我们建议您轮换 pretix.cfg https://docs.pretix.eu/self-hosting/config/ 文件中包含的所有密码和 API 密钥。
If you want to get best quality of vulnerability data, you may have to visit VulDB.