Incorrect authorization in dotCMS core
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- High · High · Low
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA. Impact type from CWE-863.
Summary
In the System → Maintenance tool, the Logged Users tab surfaces sessionId data for all users via the Direct Web Remoting API (UserSessionAjax.getSessionList.dwr) calls. While this is information that would and should be available to admins who possess "Sign In As" powers, admins who otherwise lack this privilege would still be able to utilize the session IDs to imitate other users. While this is a very small attack vector that requires very high permissions to execute, its danger lies principally in obfuscating attribution; all Sign In As operations are attributed appropriately in the log files, and a malicious administrator could use this information to render their dealings untraceable — including those admins who have not been granted this ability — such as by using a session ID to generate an API token. Fixed in: 24.07.12 / 23.01.20 LTS / 23.10.24v13 LTS / 24.04.24v5 LTS This was the original found by researcher Zakaria Agharghar. 2. Later, on October 20, 2025, another researcher (Chris O’Neill) found additional affected DWR Endpoints that are vulnerable to Information Disclosure, namely and in addition to the original found of "UserSessionAjax.getSessionList.dwr - Session ID exposure": * UserAjax.getUsersList.dwr - Enumerate all users with IDs, names, emails * RoleAjax.getUserRole.dwr - Get user role information * RoleAjax.getRole.dwr - Get role details * RoleAjax.getRolePermissions.dwr - View role permissions * RoleAjax.isPermissionableInheriting.dwr - Check permission inheritance * RoleAjax.getCurrentCascadePermissionsJobs.dwr - View permission cascade jobs * ThreadMonitorTool.getThreads.dwr - Monitor system threads; and, * CRITICAL - Privilege Escalation: RoleAjax.saveRolePermission.dwr - Modify role permissions Overall CVSS for the above findings: * CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:L https://www.first.org/cvss/calculator/3.1#CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:L * Score: 9.1 (Critical)
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
Remediation
No fixed version listed by the sources yet.
Timeline
- 2026-10-02 Threatist record created from CVE-2024-4447
- 2026-10-03 Alias added: GHSA-whhx-238v-wr87
References
More dotCMS vulnerabilities
- TI-2022-09726 An issue was discovered in the ContentResource API in dotCMS 3.0 through 22.02. KEVCVSS 3.1CRITICAL 9.8
- TI-2020-05479 dotCMS before 5.2.4 is vulnerable to directory traversal, leading to incorrect access… CVSS 3.1CRITICAL 9.8
- TI-2026-07099 Unauthenticated SQL Injection in dotCMS Publish Audit API CVSS 4.0CRITICAL 10.0
- TI-2020-13533 Unrestricted Upload of File with Dangerous Type in DotCMS v5.2.3 and earlier allow remote… CVSS 3.1CRITICAL 9.8
- TI-2017-03385 An issue was discovered in dotCMS through 3.6.1. CVSS 3.0CRITICAL 9.8
- TI-2016-07300 SQL injection vulnerability in the categoriesServlet servlet in dotCMS before 3.3.1… CVSS 3.0CRITICAL 9.8
Sources
- CVE-2024-4447 · CVE Program
- CVE-2024-4447 · NVD
- FIRST EPSS
- GHSA-whhx-238v-wr87 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences