CVE-2021-41531

7.5 HIGH

📋 TL;DR

Routinator versions before 0.10.0 produce invalid RTR payloads when processing ROAs with excessively large max-length values from RPKI CAs. This causes RTR clients like routers to reject RPKI data, disabling Route Origin Validation (ROV) and potentially allowing BGP hijacking. Organizations using Routinator for RPKI validation are affected.

💻 Affected Systems

Products:
  • NLnet Labs Routinator
Versions: All versions prior to 0.10.0
Operating Systems: All platforms running Routinator
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects systems using Routinator for RPKI RTR server functionality.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could inject malicious ROAs with large max-length values to trigger the bug, causing widespread RPKI validation failures and enabling BGP route hijacking across networks that rely on ROV.

🟠

Likely Case

Accidental or misconfigured ROAs from legitimate CAs trigger the bug, causing intermittent RPKI validation failures and degraded ROV protection until Routinator is restarted or patched.

🟢

If Mitigated

With proper monitoring and quick patching, impact is limited to temporary ROV degradation without successful exploitation.

🌐 Internet-Facing: HIGH
🏢 Internal Only: LOW

🎯 Exploit Status

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

Exploitation requires ability to publish ROAs with large max-length values to RPKI repositories, which typically requires CA compromise or misconfiguration.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 0.10.0 and later

Vendor Advisory: https://www.nlnetlabs.nl/downloads/routinator/CVE-2021-41531.txt

Restart Required: Yes

Instructions:

1. Download Routinator 0.10.0 or later from NLnet Labs. 2. Stop the running Routinator service. 3. Install the new version. 4. Restart the Routinator service.

🔧 Temporary Workarounds

Filter problematic ROAs

all

Configure Routinator to filter or ignore ROAs with excessively large max-length values before they trigger the bug.

# Requires custom configuration or filtering scripts
# No direct command available

Monitor and restart

linux

Implement monitoring for RTR payload validation failures and automatically restart Routinator when detected.

# Set up monitoring for Routinator logs and restart service on error detection
systemctl restart routinator

🧯 If You Can't Patch

  • Implement alternative RPKI validation solutions temporarily
  • Increase monitoring of BGP routes and RPKI validation status

🔍 How to Verify

Check if Vulnerable:

Check Routinator version: if version is below 0.10.0, system is vulnerable.

Check Version:

routinator --version

Verify Fix Applied:

Verify Routinator version is 0.10.0 or higher and check that RTR clients are accepting RPKI data without validation errors.

📡 Detection & Monitoring

Log Indicators:

  • Routinator logs showing RTR payload generation errors
  • RTR client logs rejecting RPKI data
  • Increased BGP route changes without RPKI validation

Network Indicators:

  • RTR protocol errors between Routinator and clients
  • Unusual ROA publications with large max-length values

SIEM Query:

source="routinator.log" AND ("error" OR "invalid" OR "reject")

🔗 References

📤 Share & Export