CVE-2020-12066
📋 TL;DR
CVE-2020-12066 is a denial-of-service vulnerability in Teeworlds game servers where remote attackers can send specially crafted messages to crash the server. This affects Teeworlds 0.7.x servers before version 0.7.5. Anyone running a vulnerable Teeworlds server is at risk of service disruption.
💻 Affected Systems
- Teeworlds
📦 What is this software?
Backports Sle by Opensuse
Fedora by Fedoraproject
Leap by Opensuse
Teeworlds by Teeworlds
Ubuntu Linux by Canonical
⚠️ Risk & Real-World Impact
Worst Case
Server crashes and becomes unavailable to all players, requiring manual restart and causing extended downtime.
Likely Case
Server crashes and requires restart, disrupting gameplay sessions and potentially causing data loss for ongoing games.
If Mitigated
Server remains operational with proper patching or workarounds in place.
🎯 Exploit Status
The vulnerability is in CServer::SendMsg function and requires sending a specific message to trigger the crash. Exploit code has been publicly discussed in security advisories.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 0.7.5
Vendor Advisory: https://github.com/teeworlds/teeworlds/commit/c68402fa7e279d42886d5951d1ea8ac2facc1ea5
Restart Required: Yes
Instructions:
1. Download Teeworlds 0.7.5 or later from official sources. 2. Stop the vulnerable server. 3. Replace the server binary with the patched version. 4. Restart the server.
🔧 Temporary Workarounds
Network Filtering
allBlock or filter malicious messages at network level using firewall rules or IDS/IPS systems.
Server Restart Automation
linuxImplement automatic restart scripts to minimize downtime if server crashes.
#!/bin/bash
while true; do
./teeworlds_srv
sleep 5
done
🧯 If You Can't Patch
- Implement network monitoring to detect and block attack attempts
- Use rate limiting to restrict message frequency from individual clients
🔍 How to Verify
Check if Vulnerable:
Check Teeworlds server version. If version is 0.7.0 through 0.7.4, it is vulnerable.
Check Version:
./teeworlds_srv --version
Verify Fix Applied:
Verify server is running version 0.7.5 or later and test server stability under normal load.
📡 Detection & Monitoring
Log Indicators:
- Server crash logs
- Abnormal termination messages
- Segmentation fault errors
Network Indicators:
- Sudden drop in server connections
- Specific message patterns causing crashes
SIEM Query:
source="teeworlds.log" AND ("crash" OR "segmentation fault" OR "abnormal termination")
🔗 References
- http://lists.opensuse.org/opensuse-security-announce/2020-04/msg00044.html
- http://lists.opensuse.org/opensuse-security-announce/2020-04/msg00045.html
- https://github.com/teeworlds/teeworlds/commit/c68402fa7e279d42886d5951d1ea8ac2facc1ea5
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/AVYG7CCPS5F3OPOQMJKVNXTQ7BXSEX2V/
- https://usn.ubuntu.com/4553-1/
- https://www.debian.org/security/2020/dsa-4763
- https://www.teeworlds.com/forum/viewtopic.php?id=14785
- http://lists.opensuse.org/opensuse-security-announce/2020-04/msg00044.html
- http://lists.opensuse.org/opensuse-security-announce/2020-04/msg00045.html
- https://github.com/teeworlds/teeworlds/commit/c68402fa7e279d42886d5951d1ea8ac2facc1ea5
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/AVYG7CCPS5F3OPOQMJKVNXTQ7BXSEX2V/
- https://usn.ubuntu.com/4553-1/
- https://www.debian.org/security/2020/dsa-4763
- https://www.teeworlds.com/forum/viewtopic.php?id=14785