CVE-2026-33474Vikunja是一个开源自托管任务管理平台。在1.0.0-rc0至2.2.0之前的版本中,由于在生成预览时未对图像解码和调整大小进行限制,攻击者可以通过上传高压缩率但尺寸极大的图像文件来耗尽服务器的CPU和内存资源,导致服务拒绝响应。该问题已在Vikunja 2.2.0版本中修复。
该漏洞属于资源耗尽型拒绝服务漏洞。漏洞原理在于Vikunja在处理用户上传的附件(特别是图片)生成缩略图或预览图时,使用了未加限制的图像解码逻辑。攻击者可以构造“解压炸弹”,即创建一个文件体积很小(通过高压缩率实现)但解压后像素尺寸极大(例如宽高各数万像素)的图片。当服务器端组件尝试将该图像加载到内存中进行解码和缩放操作时,会瞬间申请巨大的内存空间,并长时间占用CPU进行计算。由于缺乏对最大分辨率或内存占用的检查,这会导致服务器内存溢出(OOM)或CPU满载,从而使合法用户的请求无法得到处理,造成服务中断。