CVE-2026-41258OpenMRS Core特定版本存在严重漏洞,其核心组件在解析概念参考范围时,将用户输入的字符串作为Apache Velocity模板执行且未做沙箱限制。拥有“Manage Concepts”权限的攻击者可利用此缺陷植入恶意代码,导致服务器端任意代码执行。
漏洞位于ConceptReferenceRangeUtility.evaluateCriteria()方法中。该方法将数据库存储的字符串作为Apache Velocity模板进行求值。由于VelocityEngine初始化时仅配置了日志属性,未设置安全沙箱,保留了默认的UberspectImpl。这允许模板表达式通过Java反射机制调用任意类和方法。攻击者只需具备“Manage Concepts”权限,即可在概念对象的参考范围标准字段中植入恶意Payload。当任何用户或API调用触发针对该概念的观测验证时,Velocity上下文(包含$patient, $obs, $fn等敏感对象)会自动执行该Payload,从而实现远程代码执行,完全危及系统的机密性、完整性和可用性。