CVE-2025-13742CVE-2025-13742是pretix事件票务系统中一个中危级别的HTML注入漏洞。该漏洞存在于pretix的邮件发送功能中,系统允许在邮件模板中使用占位符(如{name}),这些占位符会在发送邮件时自动替换为客户数据(如购票者姓名)。然而,当参会者的姓名包含HTML或Markdown格式内容时,这些格式会在最终生成的邮件中被直接渲染为HTML。这意味着攻击者可以通过在姓名字段中注入恶意的HTML或Markdown代码来操纵邮件内容。由于pretix对允许的HTML标签实施了严格的允许列表(白名单)策略,传统的XSS攻击无法实现,但攻击者仍然可以利用这一漏洞在邮件中注入链接或格式化文本,使钓鱼内容看起来更加可信和可信,从而实施钓鱼攻击。攻击者无需认证即可利用此漏洞,但需要诱导受害者查看或点击恶意邮件。
该漏洞的根本原因在于pretix的邮件模板系统在处理用户输入时缺乏充分的输出编码。系统允许用户在姓名等字段中输入包含HTML或Markdown的内容,这些内容在填充到邮件模板后会被直接渲染。当用户在邮件模板中使用占位符(如{name}、{attendee_name}等)时,系统会直接将该字段的内容插入到HTML邮件正文中,而没有对特殊字符进行转义或过滤。攻击者可以利用这一特性在邮件中注入任意链接、格式化文本或图片链接,从而创建看起来来自合法来源的钓鱼邮件。虽然系统使用了HTML标签白名单机制来防止危险的HTML标签(如<script>标签),但攻击者仍然可以使用<a>标签创建可信的钓鱼链接,或使用其他视觉欺骗技术。由于邮件的HTML渲染特性,攻击者可以轻易地伪造发件人信息不明显的钓鱼内容,诱导收件人点击恶意链接。