CVE-2024-38036

5.4 MEDIUM

📋 TL;DR

A reflected cross-site scripting (XSS) vulnerability in Esri Portal for ArcGIS allows attackers to craft malicious links that execute arbitrary JavaScript in victims' browsers when clicked. This affects all unauthenticated users who click such links in versions 10.9.1 and below. The vulnerability enables client-side code execution but requires user interaction.

💻 Affected Systems

Products:
  • Esri Portal for ArcGIS
Versions: 10.9.1 and below
Operating Systems: Windows Server, Linux
Default Config Vulnerable: ⚠️ Yes
Notes: Affects all deployments with default configurations; requires user interaction via crafted link.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could steal session cookies, perform actions as authenticated users, redirect to phishing sites, or install malware via browser exploits.

🟠

Likely Case

Session hijacking, credential theft, or defacement of portal content through injected scripts.

🟢

If Mitigated

Limited impact with proper input validation, output encoding, and Content Security Policy (CSP) headers.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

Reflected XSS typically requires social engineering to trick users into clicking malicious links.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Apply Security 2024 Update 2 or upgrade to version 11.2 or later

Vendor Advisory: https://www.esri.com/arcgis-blog/products/trust-arcgis/administration/portal-for-arcgis-security-2024-update-2-released/

Restart Required: Yes

Instructions:

1. Download Security 2024 Update 2 from Esri's official site. 2. Apply the patch following Esri's installation guide. 3. Restart the Portal for ArcGIS service. 4. Verify the fix by testing for XSS.

🔧 Temporary Workarounds

Implement Content Security Policy (CSP)

all

Add CSP headers to restrict script execution sources and mitigate XSS impact.

Add 'Content-Security-Policy' header in web server configuration with appropriate directives.

Input Validation and Output Encoding

all

Enforce strict input validation and encode all user-controlled output in the application.

Implement server-side validation and use encoding libraries for HTML, JavaScript, and URL contexts.

🧯 If You Can't Patch

  • Deploy a Web Application Firewall (WAF) with XSS protection rules to block malicious requests.
  • Educate users to avoid clicking untrusted links and monitor for suspicious activity in logs.

🔍 How to Verify

Check if Vulnerable:

Test by injecting a simple XSS payload (e.g., <script>alert('test')</script>) into URL parameters and check if it executes in the browser.

Check Version:

Check the portal version via the ArcGIS Portal Administrator Directory or web interface.

Verify Fix Applied:

After patching, retest with XSS payloads; they should be properly encoded or blocked. Check the portal version to confirm it's 11.2 or later or has Security 2024 Update 2 applied.

📡 Detection & Monitoring

Log Indicators:

  • Log entries showing malicious script tags or unusual parameters in HTTP requests.
  • Increased errors from input validation failures.

Network Indicators:

  • HTTP requests with suspicious parameters containing script tags or JavaScript code.
  • Unusual redirects or outbound connections from the portal.

SIEM Query:

source="portal_logs" AND (http_request CONTAINS "<script>" OR http_request CONTAINS "javascript:")

🔗 References

📤 Share & Export