GHSA-W48J-PP7J-FJ55
Vulnerability from github – Published: 2025-08-28 16:46 – Updated: 2025-08-28 18:52Impact
Any admin that can create or modify and execute process-definitions could gain access to sensitive data or resources.
This includes but is not limited to: - Running executables on the application host - Inspecting and extracting data from the host environment or application properties - Spring beans (application context, database pooling)
Attack requirements
The following conditions have to be met in order to perform this attack: - The user must be logged in - The user must have the admin role (ROLE_ADMIN), which is required to change process definitions - The user must have some knowledge about running scripts via a the Camunda/Operator engine
Patches
Version 12.16.0 and 13.1.2 have been patched. It is strongly advised to upgrade.
Workarounds
If no scripting is needed in any of the processes, it could be possible to disable it altogether via the ProcessEngineConfiguration:
@Component
class NoScriptEnginePlugin : ProcessEnginePlugin {
override fun preInit(processEngineConfiguration: ProcessEngineConfigurationImpl) {}
override fun postInit(processEngineConfiguration: ProcessEngineConfigurationImpl) {
processEngineConfiguration.scriptEngineResolver = null
}
override fun postProcessEngineBuild(processEngine: ProcessEngine) {}
}
Warning: this workaround could lead to unexpected side-effects. Please test thoroughly.
References
- Valtimo 12 and lower: Camunda Scripting
- Valtimo 13 and higher: Operaton Scripting
{
"affected": [
{
"package": {
"ecosystem": "Maven",
"name": "com.ritense.valtimo:core"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "12.16.0.RELEASE"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"package": {
"ecosystem": "Maven",
"name": "com.ritense.valtimo:core"
},
"ranges": [
{
"events": [
{
"introduced": "13.0.0.RELEASE"
},
{
"fixed": "13.1.2.RELEASE"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2025-58059"
],
"database_specific": {
"cwe_ids": [
"CWE-200",
"CWE-78"
],
"github_reviewed": true,
"github_reviewed_at": "2025-08-28T16:46:10Z",
"nvd_published_at": "2025-08-28T18:15:33Z",
"severity": "CRITICAL"
},
"details": "### Impact\nAny admin that can create or modify and execute process-definitions could gain access to sensitive data or resources.\n\nThis includes but is not limited to:\n- Running executables on the application host\n- Inspecting and extracting data from the host environment or application properties\n- Spring beans (application context, database pooling)\n\n### Attack requirements\nThe following conditions have to be met in order to perform this attack:\n- The user must be logged in\n- The user must have the admin role (ROLE_ADMIN), which is required to change process definitions\n- The user must have some knowledge about running scripts via a the Camunda/Operator engine\n\n### Patches\nVersion 12.16.0 and 13.1.2 have been patched. It is strongly advised to upgrade.\n\n### Workarounds\nIf no scripting is needed in any of the processes, it could be possible to disable it altogether via the `ProcessEngineConfiguration`:\n```\n@Component\nclass NoScriptEnginePlugin : ProcessEnginePlugin {\n override fun preInit(processEngineConfiguration: ProcessEngineConfigurationImpl) {}\n\n override fun postInit(processEngineConfiguration: ProcessEngineConfigurationImpl) {\n processEngineConfiguration.scriptEngineResolver = null\n }\n\n override fun postProcessEngineBuild(processEngine: ProcessEngine) {}\n}\n```\nWarning: this workaround could lead to unexpected side-effects. Please test thoroughly.\n\n### References\n- Valtimo 12 and lower: [Camunda Scripting](https://docs.camunda.org/manual/latest/user-guide/process-engine/scripting/#custom-scriptengineresolver)\n- Valtimo 13 and higher: [Operaton Scripting](https://docs.operaton.org/docs/documentation/user-guide/process-engine/scripting)",
"id": "GHSA-w48j-pp7j-fj55",
"modified": "2025-08-28T18:52:30Z",
"published": "2025-08-28T16:46:10Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/valtimo-platform/valtimo-backend-libraries/security/advisories/GHSA-w48j-pp7j-fj55"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2025-58059"
},
{
"type": "WEB",
"url": "https://github.com/valtimo-platform/valtimo-backend-libraries/commit/45eb60b0b2df5964fb9917295d0dceb1fff8dd85"
},
{
"type": "PACKAGE",
"url": "https://github.com/valtimo-platform/valtimo-backend-libraries"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H",
"type": "CVSS_V3"
}
],
"summary": "Valtimo scripting engine can be used to gain access to sensitive data or resources"
}
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.