关键信息 1. 漏洞概述 产品: 学生成绩管理系统,使用PHP和MySQL。 漏洞类型: 存储型跨站脚本(XSS)。 漏洞位置: 管理员面板 - “添加新用户”功能。 影响: 高。认证的管理员可以将恶意JavaScript代码注入应用程序中。此代码在任何其他管理员查看用户列表时会在其浏览器中执行,可能导致会话劫持、数据窃取或以受害者身份执行管理操作。 CWE编号: CWE-79: 在Web页面生成期间对输入进行不当中和(跨站脚本)。 2. 漏洞描述 “添加新用户”功能中的 和 参数在存储到数据库之前未正确清理。 当管理员创建新用户时,他们可以在这些字段中输入恶意JavaScript有效载荷。该有效载荷随后直接保存到 表中,并在显示用户信息的页面上(如“管理用户”表和主仪表板上的“最近用户”列表)被检索和渲染,而没有适当的输出编码。这导致恶意脚本在查看管理员的浏览器上下文中执行。 3. 易受攻击的代码分析 漏洞存在于 文件中。 在 逻辑( 第10-26行)中, 和 直接从 请求中获取并存储在数据库中,没有任何清理或编码。 4. 复现步骤(概念验证) 登录: 以管理员身份登录应用程序(例如,admin/admin123)。 导航: 转到侧边栏中的“管理用户”选项卡。 注入有效载荷: 在“添加新用户”表单中,在“名”和“姓”字段中输入以下有效载荷。用任何有效数据填写其他字段。 - 有效载荷: 触发有效载荷: 导航回仪表板。“最近用户”表将呈现恶意有效载荷。浏览器将执行脚本,并出现带有文本“XSS”的警报框。