CVE-2020-27638

7.5 HIGH

📋 TL;DR

This vulnerability in fastd (a VPN daemon) allows denial of service through an assertion failure when receiving packets with invalid type codes. Attackers can crash fastd instances by sending specially crafted packets. Systems running fastd versions before v21 are affected.

💻 Affected Systems

Products:
  • fastd
Versions: All versions before v21
Operating Systems: Linux, Unix-like systems
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects systems where fastd is running and receiving network traffic.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete service disruption of VPN connectivity, potentially affecting all traffic routed through fastd.

🟠

Likely Case

Service crash requiring manual restart, causing temporary VPN connectivity loss.

🟢

If Mitigated

Minimal impact if fastd is behind firewalls or not internet-facing.

🌐 Internet-Facing: HIGH - Attackers can remotely trigger the crash without authentication.
🏢 Internal Only: MEDIUM - Internal attackers or compromised systems could still exploit it.

🎯 Exploit Status

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

Simple packet crafting required. No authentication needed.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: v21

Vendor Advisory: https://fastd.readthedocs.io/en/stable/releases/v21.html

Restart Required: Yes

Instructions:

1. Stop fastd service. 2. Update to fastd v21 or later via package manager. 3. Restart fastd service.

🔧 Temporary Workarounds

Network filtering

linux

Block or filter packets to fastd from untrusted sources

iptables -A INPUT -p udp --dport [fastd_port] -s ! [trusted_networks] -j DROP

🧯 If You Can't Patch

  • Implement strict network access controls to limit who can send packets to fastd
  • Monitor fastd process health and implement automatic restart mechanisms

🔍 How to Verify

Check if Vulnerable:

Check fastd version with 'fastd --version' and verify it's older than v21

Check Version:

fastd --version

Verify Fix Applied:

Confirm version is v21 or newer with 'fastd --version'

📡 Detection & Monitoring

Log Indicators:

  • fastd crash logs
  • assertion failure messages in system logs

Network Indicators:

  • Unexpected packets to fastd port with invalid type codes

SIEM Query:

process:fastd AND (event:crash OR log_message:"assertion failure")

🔗 References

📤 Share & Export