CVE-2020-7158
📋 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
- HPE Intelligent Management Center (iMC)
📦 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.
🎯 Exploit Status
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
allRestrict 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
allDisable 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")