CVE-2020-36960CVE-2020-36960是Forma LMS 2.3版本中的一个存储型跨站脚本(Stored XSS)安全漏洞。该漏洞存在于用户个人资料设置模块,攻击者可以在用户档案的姓名(First Name)和姓氏(Last Name)字段中注入恶意JavaScript代码。由于这些字段内容会直接存储在数据库中并在其他用户访问时回显,恶意脚本会在受害者查看用户资料时自动执行,从而实现会话劫持、敏感信息窃取等攻击目的。Forma LMS是一款开源的企业级学习管理系统,广泛应用于企业内部培训、在线教育等场景,因此该漏洞可能影响大量终端用户。攻击者利用此漏洞无需高级权限,普通注册用户即可实施攻击,且利用过程无需用户交互,隐蔽性较高。由于漏洞影响范围广且利用门槛低,建议相关单位尽快采取修复措施。
该存储型XSS漏洞源于Forma LMS 2.3在处理用户输入时未对first_name和last_name字段进行充分的输入验证和输出编码。当用户修改个人资料时,系统直接将这些字段的内容存储到数据库中,并在后续页面渲染时未进行HTML实体转义就直接输出到页面中。攻击流程如下:1) 攻击者注册账号后进入个人资料设置页面;2) 在first_name或last_name字段中注入恶意JavaScript代码,如'<script>alert(document.cookie)</script>';3) 提交保存后,恶意脚本被存储到数据库;4) 当其他用户(如管理员或同事)查看攻击者个人资料时,未转义的脚本被浏览器解析执行;5) 攻击者可借此窃取受害者的Cookie、会话令牌等敏感信息,进一步进行账户接管等后续攻击。由于攻击代码持久化在服务器端,每次有人访问攻击者资料时都会触发,具有持续性和传播性。