CVE-2020-15641
📋 TL;DR
CVE-2020-15641 is a path traversal vulnerability in Marvell QConvergeConsole that allows unauthenticated remote attackers to read arbitrary files on the server. This can lead to disclosure of sensitive information including stored credentials. Organizations running affected versions of Marvell QConvergeConsole are vulnerable.
💻 Affected Systems
- Marvell QConvergeConsole
📦 What is this software?
⚠️ Risk & Real-World Impact
Worst Case
Complete system compromise through credential theft, lateral movement, and potential ransomware deployment across the network.
Likely Case
Disclosure of administrative credentials, configuration files, and other sensitive data leading to unauthorized access to the management console and connected storage systems.
If Mitigated
Limited to information disclosure only, with no further compromise if strong network segmentation and credential rotation are implemented.
🎯 Exploit Status
The vulnerability is straightforward to exploit as it requires no authentication and involves simple path traversal techniques. While no public PoC exists, the technical details are sufficient for attackers to develop exploits.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 5.5.0.64 with patch or later versions
Vendor Advisory: https://www.marvell.com/content/dam/marvell/en/public-collateral/fibre-channel/marvell-fibre-channel-security-advisory-2020-07.pdf
Restart Required: Yes
Instructions:
1. Download the latest patch from Marvell support portal. 2. Backup current configuration. 3. Apply the patch following vendor instructions. 4. Restart the QConvergeConsole service. 5. Verify the fix by checking the version.
🔧 Temporary Workarounds
Network Access Restriction
allRestrict network access to QConvergeConsole management interface to only trusted IP addresses
# Example firewall rule (Linux iptables): iptables -A INPUT -p tcp --dport [QCC_PORT] -s [TRUSTED_IP] -j ACCEPT
# Example firewall rule (Windows): New-NetFirewallRule -DisplayName "QCC Access" -Direction Inbound -Protocol TCP -LocalPort [QCC_PORT] -RemoteAddress [TRUSTED_IP] -Action Allow
Web Application Firewall
allDeploy WAF rules to block path traversal patterns in HTTP requests
# Example ModSecurity rule: SecRule ARGS "\.\./" "id:1001,phase:2,deny,msg:'Path Traversal Attempt'
🧯 If You Can't Patch
- Isolate the QConvergeConsole server in a dedicated VLAN with strict access controls and no internet connectivity
- Implement credential rotation for all accounts that could be exposed through this vulnerability and monitor for unauthorized access attempts
🔍 How to Verify
Check if Vulnerable:
Check if the getFileUploadBytes method in FlashValidatorServiceImpl class exists and lacks proper path validation. Test with controlled path traversal attempts (e.g., ../../etc/passwd on Linux).
Check Version:
Check the QConvergeConsole web interface or configuration files for version information. On Linux: grep -r "5.5" /opt/marvell/qconvergeconsole/ 2>/dev/null
Verify Fix Applied:
Verify the patch is applied by checking version number and attempting path traversal tests that should now be blocked. Review application logs for successful blocking of traversal attempts.
📡 Detection & Monitoring
Log Indicators:
- HTTP requests containing ../ or ..\ patterns
- Access to sensitive file paths in web server logs
- Failed authentication attempts following file disclosure
Network Indicators:
- Unusual outbound connections from QConvergeConsole server
- Traffic to unexpected ports following potential credential theft
SIEM Query:
source="qconvergeconsole.log" AND ("../" OR "..\\" OR "getFileUploadBytes")
🔗 References
- https://www.marvell.com/content/dam/marvell/en/public-collateral/fibre-channel/marvell-fibre-channel-security-advisory-2020-07.pdf
- https://www.zerodayinitiative.com/advisories/ZDI-20-969/
- https://www.marvell.com/content/dam/marvell/en/public-collateral/fibre-channel/marvell-fibre-channel-security-advisory-2020-07.pdf
- https://www.zerodayinitiative.com/advisories/ZDI-20-969/