CVE-2026-49235
Rust vulnerability analysis and mitigation

Overview

CVE-2026-49235 is a denial-of-service vulnerability in NLnet Labs Routinator, an RPKI (Resource Public Key Infrastructure) validator, caused by improper handling of maliciously crafted Document Type Definitions (DTDs) encountered via RRDP (RPKI Repository Delta Protocol). When Routinator processes an XML file containing a specifically crafted DTD over RRDP, it crashes, disrupting route origin validation services. All versions up to and including 0.15.1 are affected; version 0.15.2 contains the fix. The vulnerability carries a CVSS v3.1 score of 7.5 (High) and a CVSS v4.0 score of 8.7 (High) (GitHub Advisory, NLnet Labs).

Technical details

The root cause is classified under CWE-755 (Improper Handling of Exceptional Conditions), CWE-400 (Uncontrolled Resource Consumption), and CWE-776 (Improper Restriction of Recursive Entity References in DTDs — 'XML Entity Expansion'), indicating that Routinator fails to properly restrict or handle recursive entity definitions within XML DTDs fetched via RRDP (GitHub Advisory). An attacker can serve a specially crafted XML file containing a malicious DTD through an RRDP repository endpoint; when Routinator fetches and parses this file during its normal RPKI validation cycle, the malformed DTD triggers an unhandled exceptional condition that causes the process to crash. No authentication or user interaction is required, and the attack complexity is low, making this straightforward to trigger remotely (GitHub Advisory).

Impact

Successful exploitation results in a crash of the Routinator process, causing a complete loss of availability for the RPKI route origin validation service. Since Routinator is used by network operators to validate BGP route origins, its disruption could degrade or disable route origin validation, potentially leaving networks more susceptible to BGP hijacking attacks during the outage window. There is no confidentiality or integrity impact on the vulnerable system itself, though downstream systems relying on Routinator's validation output may experience reduced availability (GitHub Advisory, NLnet Labs).

Exploitation steps

  1. Set up a malicious RRDP repository: Configure a web server to host a malicious RRDP notification XML file that references a snapshot or delta file containing a specially crafted DTD with recursive entity definitions (XML Entity Expansion / 'Billion Laughs'-style payload).
  2. Position the malicious repository: Either compromise a legitimate RRDP repository, perform a man-in-the-middle attack on an existing RRDP connection, or register a malicious RPKI repository that a target Routinator instance is configured to fetch from.
  3. Trigger Routinator's RRDP fetch cycle: Wait for or trigger Routinator's scheduled RRDP synchronization, during which it fetches and parses the malicious XML file containing the crafted DTD.
  4. Crash Routinator: The malformed DTD causes an unhandled exceptional condition during XML parsing, crashing the Routinator process and disabling RPKI route origin validation for the affected operator (GitHub Advisory, NLnet Labs).

Indicators of compromise

  • Logs: Routinator process logs showing unexpected termination or panic messages during RRDP synchronization; error messages referencing XML parsing failures or DTD processing.
  • Process: Routinator process absent from the process list after an RRDP sync cycle; repeated process restarts if supervised by a service manager (e.g., systemd restart loops).
  • Network: Outbound RRDP (HTTPS) connections to unfamiliar or newly registered RPKI repository URIs; unexpected changes in RRDP notification file sources fetched by Routinator.
  • File System: Cached RRDP files containing unusual or deeply nested DTD entity definitions in Routinator's local data directory.

Mitigation and workarounds

NLnet Labs has released Routinator version 0.15.2, which addresses this vulnerability; operators should upgrade immediately (GitHub Advisory, NLnet Labs Release). As a temporary workaround prior to patching, operators should restrict Routinator's RRDP connections to known-trusted repository sources at the network level and monitor Routinator logs for crash events. Implementing network-level filtering to block connections to untrusted or unexpected RRDP endpoints can reduce exposure (NLnet Labs).

Community reactions

NLnet Labs published a security advisory and released the patched version 0.15.2 on June 8, 2026, alongside a dedicated CVE advisory document (NLnet Labs). The vulnerability was detected by Qualys scanners and tracked by multiple vulnerability intelligence platforms including VulDB, OSV, and Tenable (Nessus plugin 321616). No significant broader community or social media discussion has been identified beyond standard vulnerability tracking.

Additional resources


SourceThis report was generated using AI

Related Rust vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

GHSA-qqc3-94qv-7fw3MEDIUM6.3
  • Rust logoRust
  • hubuum_client
NoYesJul 24, 2026
GHSA-f45q-w629-wr25MEDIUM6.3
  • Rust logoRust
  • hubuum_client
NoYesJul 24, 2026
GHSA-g9hv-x236-4qp3MEDIUM5.3
  • Rust logoRust
  • russh
NoYesJul 24, 2026
GHSA-cqjc-rmpq-xprqMEDIUM4.3
  • Rust logoRust
  • russh
NoYesJul 24, 2026
GHSA-2625-rw7m-5q5xLOW2.3
  • Rust logoRust
  • hubuum_client
NoYesJul 24, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management