CVE-2026-35600Vikunja是一款开源的自托管任务管理平台。在2.3.0版本之前存在安全漏洞,系统在生成逾期任务邮件通知时,未对任务标题中的Markdown特殊字符进行转义,直接将其嵌入Markdown链接语法中。由于邮件渲染器支持Markdown且允许`<a>`和`<img>`标签,攻击者可通过精心构造任务标题,注入恶意的Markdown代码。这会导致合法的通知邮件中包含钓鱼链接或追踪像素,进而威胁用户信息安全。该问题已在2.3.0版本中修复。
该漏洞源于Vikunja在处理逾期任务邮件通知时的输入清理逻辑缺陷。具体而言,当系统生成通知邮件时,将任务标题直接作为变量嵌入到预定义的Markdown链接结构中(例如格式为`[任务标题](任务链接)`),而未对标题内容进行Markdown语法的转义处理。由于Vikunja使用`goldmark`作为Markdown解析器,并配置`bluemonday`作为HTML净化器(默认允许`<a>`和`<img>`标签),攻击者可以在任务标题中插入恶意的Markdown语法。例如,将标题设置为包含闭合括号`]`和新的链接定义,或者直接插入图片链接``。当受害者收到逾期邮件并查看时,邮件客户端渲染Markdown内容,导致恶意链接显示为合法的文本,或者加载攻击者控制的追踪像素。这使得攻击者能够实施钓鱼攻击或验证邮箱的有效性,虽然未直接执行脚本(非传统XSS),但通过HTML注入达到了类似的社工效果。