CVE-2025-61255CVE-2025-61255是PHPGurukul开发的银行保险柜管理系统(Bank Locker Management System)中存在的一个跨站脚本(XSS)漏洞。该漏洞于2025年10月21日由MITRE组织披露,CVSS 3.1评分为6.1分,属于中危级别漏洞。该系统是一款基于PHP和MySQL的Web应用程序,主要用于银行保险柜业务的管理,包括客户信息管理、保险柜分配、存取记录等功能。
该漏洞存在于系统的/search搜索参数中,由于应用程序未对用户输入进行充分的过滤和转义处理,攻击者可以通过构造恶意的HTML和JavaScript代码注入到搜索请求中。当其他用户或管理员访问包含恶意代码的搜索结果页面时,恶意脚本将在受害者的浏览器上下文中执行,可能导致敏感信息泄露、会话劫持、账户被盗用等安全问题。此外,攻击者还可以利用此漏洞实施钓鱼攻击,将受害者重定向到恶意网站,从而进一步窃取用户凭证或传播恶意软件。
根据CVSS向量分析,该漏洞具有网络攻击向量(AV:N)、低攻击复杂度(AC:L)、无需特权(PR:N)、需要用户交互(UI:R)、作用域改变(S:C)等特征,表明这是一个可远程利用但需要用户交互才能触发危害的反射型XSS漏洞。虽然该漏洞不会直接对系统可用性造成影响,但可能对用户数据的机密性和完整性造成损害。
该XSS漏洞的根本原因在于PHPGurukul银行保险柜管理系统在处理搜索功能时,未对/search参数中的用户输入进行适当的HTML实体编码或过滤。具体而言,当用户提交搜索请求时,系统直接将用户输入的搜索关键词回显到响应页面中,而没有使用htmlspecialchars()、htmlentities()等PHP函数进行转义处理,也没有实施内容安全策略(CSP)来限制脚本执行。
攻击者可以利用此漏洞构造包含恶意JavaScript代码的URL,例如:
http://target/search?search=<script>alert(document.cookie)</script>
或者使用更隐蔽的载荷,如通过<img>标签的onerror事件、<svg>标签的onload事件等方式绕过简单的过滤:
http://target/search?search=<svg/onload=alert(1)>
当受害者点击此类恶意链接时,浏览器会向目标服务器发送搜索请求,服务器将恶意代码作为搜索结果的一部分返回,并在受害者浏览器中执行。由于该漏洞具有作用域改变(S:C)的特性,攻击者注入的脚本可以访问和操作目标站点的DOM对象、Cookie、会话令牌等敏感信息。
此外,攻击者还可以利用此漏洞进行以下攻击:1)窃取用户会话Cookie实现账户劫持;2)通过AJAX请求模拟用户操作;3)修改页面内容进行钓鱼攻击;4)将用户重定向到恶意网站;5)利用浏览器漏洞下载恶意软件。