CVE-2020-29580
📋 TL;DR
This vulnerability allows remote attackers to gain root access to Storm Docker containers by using a blank password for the root user. Systems using affected Docker images before version 1.2.1 are vulnerable. This affects anyone deploying Storm via the official Docker images.
💻 Affected Systems
- Storm Docker Official Image
📦 What is this software?
⚠️ Risk & Real-World Impact
Worst Case
Complete system compromise with root-level access, allowing attackers to execute arbitrary commands, steal data, install malware, or pivot to other systems.
Likely Case
Unauthorized root access leading to data theft, service disruption, or container takeover for cryptocurrency mining or botnet participation.
If Mitigated
Limited impact if containers run with non-root users, proper network segmentation, and strong access controls preventing external connections.
🎯 Exploit Status
Exploitation is trivial - attackers simply connect to SSH or other services and use blank password for root.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 1.2.1 and later
Vendor Advisory: https://github.com/koharin/koharin2/blob/main/CVE-2020-29580
Restart Required: Yes
Instructions:
1. Pull updated image: docker pull storm:1.2.1
2. Stop and remove old containers
3. Recreate containers using the new image
4. Verify no containers use old vulnerable images
🔧 Temporary Workarounds
Set root password
linuxManually set a strong password for the root user in running containers
docker exec -it <container_name> passwd root
Disable root SSH
linuxPrevent root login via SSH in container configuration
echo 'PermitRootLogin no' >> /etc/ssh/sshd_config
service ssh restart
🧯 If You Can't Patch
- Run containers with non-root users using Docker's --user flag
- Implement strict network controls to limit container exposure
🔍 How to Verify
Check if Vulnerable:
Check Docker image version: docker images | grep storm
If version is earlier than 1.2.1, test SSH with blank root password.
Check Version:
docker images --format '{{.Repository}}:{{.Tag}}' | grep ^storm
Verify Fix Applied:
Confirm running containers use storm:1.2.1 or later: docker ps --format '{{.Image}}' | grep storm
📡 Detection & Monitoring
Log Indicators:
- Failed SSH login attempts with root user
- Successful root logins without authentication
Network Indicators:
- Unexpected SSH connections to container ports
- Traffic from container to suspicious external IPs
SIEM Query:
source="docker" AND (event="ssh_login" AND user="root" AND result="success")