CVE-2024-51956
📋 TL;DR
A stored cross-site scripting vulnerability in ArcGIS Server versions 11.3 and below allows authenticated users with publisher privileges to inject malicious JavaScript links. When victims click these links, arbitrary code executes in their browsers. This affects organizations using vulnerable ArcGIS Server deployments.
💻 Affected Systems
- ArcGIS Server
📦 What is this software?
⚠️ Risk & Real-World Impact
Worst Case
An authenticated attacker with publisher privileges could steal session cookies, perform actions as authenticated users, or redirect to malicious sites, potentially leading to account compromise or data theft.
Likely Case
Limited impact due to requiring publisher-level authentication; most likely used for session hijacking or defacement within the application context.
If Mitigated
With proper access controls and input validation, impact is minimal as only trusted publishers could exploit, and modern browsers' XSS protections would reduce effectiveness.
🎯 Exploit Status
Exploitation requires publisher-level authentication, which significantly reduces attack surface. No public exploit code is known at this time.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Apply Security 2025 Update 1 Patch
Vendor Advisory: https://www.esri.com/arcgis-blog/products/trust-arcgis/administration/arcgis-server-security-2025-update-1-patch/
Restart Required: Yes
Instructions:
1. Download Security 2025 Update 1 patch from Esri. 2. Stop ArcGIS Server services. 3. Apply the patch according to Esri's documentation. 4. Restart ArcGIS Server services. 5. Verify successful installation.
🔧 Temporary Workarounds
Input Validation Enhancement
allImplement additional input validation for user-generated content to sanitize HTML/JavaScript inputs
Content Security Policy
allImplement strict Content Security Policy headers to restrict script execution sources
🧯 If You Can't Patch
- Restrict publisher privileges to only essential, trusted personnel
- Implement web application firewall rules to detect and block XSS payloads
🔍 How to Verify
Check if Vulnerable:
Check ArcGIS Server version via Administrator Directory at https://<server>:6443/arcgis/admin or using the version REST endpoint
Check Version:
curl -k https://<server>:6443/arcgis/rest/info?f=json | grep version
Verify Fix Applied:
Verify version is updated post-patch and test that user inputs are properly sanitized
📡 Detection & Monitoring
Log Indicators:
- Unusual content creation/modification by publisher users
- Suspicious JavaScript payloads in request logs
Network Indicators:
- Unusual outbound connections from ArcGIS Server to external domains
- Suspicious script tags in HTTP requests
SIEM Query:
source="arcgis-server" AND (event="content_creation" OR event="content_modification") AND user_role="publisher" AND suspicious_patterns