CVE-2026-44298Kimai是一个开源的时间追踪应用。在2.32.0至2.56.0之前的版本中,拥有系统管理员角色及上传发票模板权限的用户,可以利用PDF模板功能读取服务器上的任意文件。该漏洞源于mPDF库处理关联文件时的不当实现,导致敏感信息泄露。CVSS评分4.1,属于中危漏洞。
该漏洞存在于Kimai使用mPDF库生成发票的功能中。具有系统管理员角色及上传发票模板权限的攻击者,可以上传包含恶意Twig代码的PDF模板文件。在渲染阶段,系统允许在沙箱内调用`pdfContext.setOption('associated_files', ...)`。该调用会传递给mPDF库的`SetAssociatedFiles()`方法。当PDF写入器执行时,它会调用`file_get_contents($entry['path'])`读取参数中指定的文件路径,并将读取到的字节流以FlateDecode编码方式嵌入到生成的PDF文件中。由于缺乏路径验证,攻击者可借此读取PHP进程权限下的任意敏感文件(如数据库配置、环境变量等),并通过下载生成的发票获取数据。