CVE-2025-56527CVE-2025-56527是发现于Kotaemon 0.11.0版本中的高危安全漏洞,该漏洞允许攻击者通过客户端JavaScript访问用户浏览器的localStorage存储,从而获取以明文形式存储的用户凭证。Kotaemon是一个开源的RAG(检索增强生成)聊天UI框架,在0.11.0版本中,用户的登录凭据被直接明文保存在客户端的localStorage中,而非使用加密或哈希方式保护。这一设计缺陷使得任何能够执行JavaScript代码的攻击场景(如XSS攻击、恶意浏览器扩展、共享计算机访问等)都能轻易获取用户的明文密码。由于localStorage数据在同源策略下可被同一域名的所有页面访问,攻击者可以通过多种方式触发恶意脚本执行,进而窃取存储在客户端的敏感凭证,对用户账户安全造成严重威胁。
Kotaemon 0.11.0版本在实现用户认证功能时,将用户输入的密码凭证以明文形式直接存储到浏览器的localStorage对象中。具体问题在于:应用在登录过程中调用了localStorage.setItem()方法,将包含明文密码的用户凭证对象直接持久化存储,而没有进行任何加密处理或哈希转换。localStorage的存储机制基于同源策略,同一域名下的所有页面和脚本都可以访问该域名的localStorage数据。攻击者可以利用以下方式利用此漏洞:1) 通过存储型XSS漏洞注入恶意JavaScript代码,读取localStorage中的敏感数据;2) 通过社会工程学手段诱导用户访问恶意页面,执行脚本窃取凭证;3) 在共享或多用户环境中,直接访问受害者计算机的浏览器开发者工具获取存储数据。由于密码以明文形式存储,攻击者获取后可直接用于账户接管攻击,无需进行任何解密操作。该漏洞的CVSS向量为CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N,表明通过网络即可发起攻击,无需特殊权限和用户交互即可获取高机密性影响的数据。