CVE-2023-36419

8.8 HIGH
XXE

📋 TL;DR

This vulnerability in Azure HDInsight's Apache Oozie workflow scheduler allows attackers to perform XML External Entity (XXE) attacks, potentially leading to privilege escalation. Attackers could read arbitrary files from the server or perform server-side request forgery. Organizations using vulnerable Azure HDInsight clusters with Apache Oozie are affected.

💻 Affected Systems

Products:
  • Azure HDInsight
Versions: Specific versions not publicly detailed; check Microsoft advisory for affected versions
Operating Systems: Linux (HDInsight cluster nodes)
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects Azure HDInsight clusters using Apache Oozie workflow scheduler. Other Azure services or standalone Apache Oozie installations are not affected.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Full cluster compromise allowing data exfiltration, lateral movement to other Azure resources, and potential denial of service through file system manipulation.

🟠

Likely Case

Unauthorized file access leading to credential theft, configuration disclosure, and limited privilege escalation within the HDInsight cluster.

🟢

If Mitigated

Minimal impact with proper network segmentation, restricted file permissions, and XML parsing configurations that disable external entity processing.

🌐 Internet-Facing: MEDIUM - While Azure HDInsight clusters are typically behind Azure networking controls, misconfigured endpoints could expose the vulnerability.
🏢 Internal Only: HIGH - Internal attackers or compromised internal systems could exploit this to escalate privileges within the cluster environment.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: MEDIUM

Requires access to Oozie workflow submission or configuration capabilities. Typically requires some level of access to the HDInsight cluster.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Check Azure HDInsight release notes for specific patched versions

Vendor Advisory: https://msrc.microsoft.com/update-guide/vulnerability/CVE-2023-36419

Restart Required: Yes

Instructions:

1. Review Microsoft Security Advisory. 2. Update Azure HDInsight cluster to latest version. 3. Restart affected services. 4. Verify patch application through Azure portal or CLI.

🔧 Temporary Workarounds

Disable external entity processing in XML parsers

linux

Configure XML parsers used by Oozie to disable external entity resolution

# Modify Oozie configuration to set XML parser properties
# Set javax.xml.parsers.SAXParserFactory to secure implementation
# Configure FEATURE_SECURE_PROCESSING=true

Network segmentation and access controls

all

Restrict access to Oozie endpoints and implement network segmentation

# Use Azure NSG rules to restrict access to Oozie ports
# az network nsg rule create --resource-group <RG> --nsg-name <NSG> --name DenyOozieExternal --priority 100 --direction Inbound --access Deny --protocol Tcp --destination-port-ranges 11000

🧯 If You Can't Patch

  • Implement strict network access controls to limit who can submit Oozie workflows
  • Monitor for unusual XML parsing activities and file access patterns in Oozie logs

🔍 How to Verify

Check if Vulnerable:

Check Azure HDInsight cluster version against Microsoft's patched versions list. Review Oozie configuration for XML parser settings.

Check Version:

az hdinsight show --name <cluster-name> --resource-group <resource-group> --query "properties.clusterVersion"

Verify Fix Applied:

Verify cluster is updated to patched version via Azure portal (Cluster properties -> Version) or CLI command: az hdinsight show --name <cluster-name> --resource-group <resource-group>

📡 Detection & Monitoring

Log Indicators:

  • Unusual XML parsing errors in Oozie logs
  • File access attempts outside normal workflow directories
  • Multiple failed workflow submissions with malformed XML

Network Indicators:

  • Unusual outbound connections from Oozie service to internal file servers
  • HTTP requests to internal resources from Oozie workflow execution

SIEM Query:

source="oozie.log" AND ("XML parsing error" OR "External entity" OR "DOCTYPE" OR "SYSTEM")

🔗 References

📤 Share & Export