关键信息 漏洞标题 IDOR in Notion OAuth Flow Enables Index Poisoning 严重性 Severity: Moderate (5.4 / 10) Attack Vector: Network Attack Complexity: Low Privileges Required: None User Interaction: Required Scope: Unchanged Confidentiality: None Integrity: Low Availability: Low 影响范围 影响版本:latest 修复版本:None 摘要 该漏洞允许攻击者通过操纵 Notion OAuth 回调中的 参数,劫持任何用户的 Notion 集成。不验证 OAuth 流是由该用户发起的,导致攻击者可以替换受害者的 Notion 配置,导致数据中毒和未经授权访问受害者的 Khoj 搜索索引。攻击者需要知道用户的 UUID,这可以通过共享包含 AI 生成图像的对话泄漏。 细节 当用户共享包含 AI 生成图像的对话时,图像的文件路径使用用户的 UUID 构造。知道这个 UUID 后,攻击者可以拦截 Notion 的 OAuth 回调,并将 参数替换为其他用户的 UUID,同步 Notion 到其帐户。 漏洞代码位置 漏洞代码位于 中的回调端点。 PoC 代码示例: 利用方法 一旦知道受害者的 UUID,攻击者可以在自己的帐户上发起 Notion 同步过程,并拦截回调,将 参数替换为受害者的 UUID。 影响 删除用户的现有 Notion 同步并将其替换为攻击者控制的 Notion。可能导致索引中毒。不确定 Khoj 在使用同步文件时的情况,但如果是作为上下文传递给 LLM,则可能存在潜在影响。