漏洞概述 漏洞类型: 反射型跨站脚本攻击 (Reflected Cross-Site Scripting, XSS) 受影响产品: gpt-researcher 受影响版本: <= 3.4.3 漏洞描述: 当用户提交包含 HTML/JavaScript 的研究任务名称(Task Name)时,后端未对输入进行转义(Sanitization),直接将其嵌入到 WebSocket 日志消息中。前端在接收这些日志消息时,直接使用 进行渲染,导致恶意脚本在用户浏览器中执行。 CWE: CWE-79 (Improper Neutralization of Input During Web Page Generation) CVSS Score: 6.1 (Medium) 影响范围 1. 自我XSS与社会工程: 攻击者可诱导受害者输入包含恶意载荷的特定“研究查询”,脚本随即执行。 2. 会话劫持: 注入的脚本在应用上下文中运行,可访问 cookies、localStorage 和 DOM。 3. 多个注入点: 单个恶意任务名会在至少 4 个独立的日志消息中触发 XSS。 修复方案 1. 前端修复 (Frontend Fix): 在 的 函数中,避免直接使用 。建议使用 替代,或者使用 DOMPurify 库进行净化。 建议代码: 或 2. 后端修复 (Backend Fix): 在 和 中,生成日志消息时,对 变量进行 HTML 转义。 建议代码: POC 代码与利用示例 Payload: 后端漏洞代码 (Backend Vulnerable Code): 前端漏洞代码 (Frontend Vulnerable Code):