CVE-2020-7158

9.8 CRITICAL

📋 TL;DR

This vulnerability allows remote attackers to execute arbitrary code on HPE Intelligent Management Center (iMC) servers through expression language injection in the perfselecttask component. Attackers can achieve full system compromise without authentication. All organizations running affected iMC versions are at risk.

💻 Affected Systems

Products:
  • HPE Intelligent Management Center (iMC)
Versions: All versions prior to iMC PLAT 7.3 (E0705P07)
Operating Systems: Windows, Linux (iMC supported platforms)
Default Config Vulnerable: ⚠️ Yes
Notes: All default installations of affected iMC versions are vulnerable. No special configuration required for exploitation.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete system takeover with administrative privileges, data exfiltration, lateral movement to other systems, and persistent backdoor installation.

🟠

Likely Case

Unauthenticated remote code execution leading to service disruption, credential theft, and deployment of ransomware or other malware.

🟢

If Mitigated

Limited impact if proper network segmentation, strict firewall rules, and updated versions are in place.

🌐 Internet-Facing: HIGH - Unauthenticated remote code execution with CVSS 9.8 score makes internet-facing instances extremely vulnerable to widespread exploitation.
🏢 Internal Only: HIGH - Even internally, this vulnerability allows attackers with network access to compromise the iMC server and potentially pivot to other systems.

🎯 Exploit Status

Public PoC: ⚠️ Yes
Weaponized: LIKELY
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

The vulnerability is in expression language processing, making exploitation relatively straightforward. Public proof-of-concept code exists.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: iMC PLAT 7.3 (E0705P07) or later

Vendor Advisory: https://support.hpe.com/hpsc/doc/public/display?docLocale=en_US&docId=emr_na-hpesbnw04036en_us

Restart Required: Yes

Instructions:

1. Download iMC PLAT 7.3 (E0705P07) or later from HPE support portal. 2. Backup current iMC configuration and data. 3. Stop all iMC services. 4. Apply the patch/upgrade following HPE documentation. 5. Restart iMC services and verify functionality.

🔧 Temporary Workarounds

Network Access Restriction

all

Restrict network access to iMC servers to only trusted administrative networks

# Configure firewall rules to limit access
# Example: iptables -A INPUT -p tcp --dport 8080 -s trusted_network -j ACCEPT
# Example: iptables -A INPUT -p tcp --dport 8080 -j DROP

Disable Unnecessary Services

all

Disable or restrict access to the perfselecttask component if not required

# Modify iMC configuration to disable vulnerable endpoint
# Consult HPE documentation for specific component disabling procedures

🧯 If You Can't Patch

  • Implement strict network segmentation and firewall rules to isolate iMC servers from untrusted networks
  • Deploy web application firewall (WAF) with expression language injection protection rules

🔍 How to Verify

Check if Vulnerable:

Check iMC version via web interface (Help → About) or command line. Vulnerable if version is prior to PLAT 7.3 (E0705P07).

Check Version:

On Windows: Check iMC installation directory for version files. On Linux: Check /opt/iMC/ or installation directory. Web interface: Navigate to Help → About.

Verify Fix Applied:

Verify version is iMC PLAT 7.3 (E0705P07) or later. Test that perfselecttask functionality works without allowing expression injection.

📡 Detection & Monitoring

Log Indicators:

  • Unusual expression language patterns in iMC logs
  • Multiple failed expression evaluation attempts
  • Unexpected process execution from iMC services

Network Indicators:

  • Unusual HTTP POST requests to perfselecttask endpoints
  • Expression language payloads in HTTP traffic
  • Outbound connections from iMC server to unexpected destinations

SIEM Query:

source="iMC_logs" AND ("perfselecttask" OR "expression" OR "EL") AND ("error" OR "exception" OR "injection")

🔗 References

📤 Share & Export