CVE-2025-68944Gitea 1.22.2之前版本存在访问控制漏洞,该漏洞源于Gitea对其自身包注册表(package registry)中的访问控制令牌(token)作用域(scope)传播处理不当。攻击者可以利用此漏洞通过低权限账户获取超出其正常权限范围的包注册表访问权限。具体而言,当用户在包注册表中创建访问令牌时,系统未能正确限制该令牌的作用域范围,导致持有该令牌的用户可能访问、修改或删除其未被授权的包资源。此漏洞影响Gitea的内部包管理功能,可能导致敏感数据泄露或包完整性破坏。由于CVSS评分为5.0(中等严重程度),且攻击复杂度低、无需用户交互,因此该漏洞在实际环境中具有一定威胁性。建议受影响的Gitea用户尽快升级至1.22.2或更高版本以修复此安全问题。
该漏洞的根本原因在于Gitea包注册表模块中访问控制令牌的权限验证逻辑存在缺陷。在正常情况下,当用户创建包注册表访问令牌时,系统应根据用户的角色和权限级别设置令牌的作用域(scope),确保令牌只能访问其被授权的资源。然而,在受影响版本中,Gitea在处理令牌作用域传播时存在错误,可能导致以下问题:1)令牌作用域被过度授予,允许低权限用户访问高权限资源;2)令牌权限在特定API调用中未被正确验证;3)包注册表的访问控制列表(ACL)检查被绕过。攻击者可以通过以下方式利用此漏洞:首先,使用低权限账户登录Gitea并创建包注册表访问令牌;然后,使用该令牌访问本应无权访问的包资源;最后,执行包的上传、下载或删除操作。修复后的版本1.22.2通过修正令牌作用域传播逻辑和增强权限验证机制解决了这一安全问题。相关修复可通过GitHub Pull Request #31967查看具体代码变更。