CVE-2026-84860: Scada-LTS DWR Authorization Bypass - Systemic
ScadaLTS 2.8.1-release-candidate build 0 is affected by an Authorization Bypass
Spring Security gates DWR endpoints by URL path pattern, but DWR itself dispatches method calls based on the POST body parameters c0-scriptName and c0-methodName. The crossDomainSessionSecurity setting in web.xml is set to false, which disables DWR's built-in origin validation. This means any authenticated user can invoke any DWR method (regardless of the URL-based access control) by sending their request to a URL they are permitted to access (e.g. MiscDwr.initializeLongPoll.dwr) while targeting a restricted class in the POST body.
This is the systemic root cause that enables multiple other findings to be exploited as a low privilege user.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
Scada-LTSto a version that resolves this vulnerability.Fixed in 2.8.1-release-candidate build 0 - Configuration
In web.xml, set crossDomainSessionSecurity to true to re-enable DWR's built-in origin validation (it is currently set to false, which disables it).
Scada-LTS DWR (web.xml) crossDomainSessionSecurity = true
Event History
Frequently Asked Questions
Who can exploit this issue?
An attacker needs an authenticated ScadaLTS account, including a low-privilege account, and the ability to send requests to a DWR endpoint they are permitted to access. No user interaction is required.
Which deployments should be prioritized for review?
Prioritize deployments running ScadaLTS 2.8.1-release-candidate build 0, especially where lower-privileged authenticated users can access DWR endpoints.
Can URL-based Spring Security restrictions prevent access to restricted DWR methods?
No. An authenticated user can submit a request to an allowed DWR URL while specifying a restricted DWR class and method through the POST body parameters c0-scriptName and c0-methodName.
What configuration condition is associated with the bypass?
The affected configuration has crossDomainSessionSecurity set to false in web.xml. This disables DWR's built-in origin validation.