CVE-2020-36954CVE-2020-36954是Xeroneit Library Management System 3.1中存在的一个存储型跨站脚本(Stored XSS)漏洞。该漏洞位于系统的图书分类(Book Category)功能模块,攻击者通过在分类名称(Category Name)字段中注入恶意JavaScript脚本代码,当其他管理员或用户访问包含该分类的页面时,恶意代码将在受害者浏览器中执行。由于该脚本内容被存储在服务器端,所有访问该页面的用户都会受到攻击影响,因此称为存储型XSS。攻击者可利用此漏洞窃取用户会话Cookie、劫持用户账户、进行钓鱼攻击或在受害者浏览器中执行任意操作。漏洞利用需要较低权限(管理员账户即可),无需用户交互,攻击向量为网络,CVSS评分6.4,属于中等严重程度。
该漏洞的根本原因在于Xeroneit图书馆管理系统在处理用户输入的图书分类名称时,未对输入内容进行充分的输入验证和输出编码。系统在将分类名称存储到数据库时,未对特殊字符进行过滤或转义。当管理员在后台管理界面添加新图书分类时,如果输入的分类名称包含恶意JavaScript代码(如<script>alert(document.cookie)</script>),该代码会被原样存储到数据库中。随后,当其他管理员访问图书分类列表页面或相关功能页面时,存储的恶意代码会被浏览器解析执行。由于漏洞位于管理后台,影响范围主要针对具有管理权限的用户,攻击者可利用窃取的会话Cookie进一步提升权限或获取系统敏感信息。攻击者可通过构造特定的XSS payload绕过简单的过滤机制,实现持久化的恶意脚本执行。