CVE-2026-23480Blinko是一款AI驱动的卡片笔记项目。在1.8.4版本之前,存在一个严重的权限提升漏洞。该漏洞源于upsertUser端点设计缺陷,包括缺少超级管理员认证中间件、未强制校验原始密码以及缺乏用户ID所有权验证。攻击者利用此漏洞,仅需普通用户权限即可修改任意用户密码,直接提升权限至超级管理员,从而导致账户被完全接管,系统面临极高安全风险。
该漏洞的核心在于Blinko的`upsertUser`接口存在多重逻辑缺陷。首先,该端点未调用`superAdminAuthMiddleware`进行严格鉴权,导致任何已登录的低权限用户均可直接访问本应仅限管理员使用的功能。其次,在修改密码的业务逻辑中,`originalPassword`参数被设计为可选项,若攻击者在请求中不提供该参数,系统将直接跳过对旧密码的验证步骤。最关键的是,代码后端缺乏对`input.id === ctx.id`的严格校验,即未验证当前操作者是否为待修改账户的所有者。结合以上三点,攻击者只需构造特定的HTTP请求包,将目标用户的ID(如管理员ID)和任意新密码填入参数,即可在不提供旧密码的情况下,将任意账户的密码重置为攻击者指定的值,从而实现权限提升和账户接管。