Trust anchors, validators and peer sessions¶
Attack pattern¶
BGPsec answers the question of whose signature counts with a certificate chain rooted in the RPKI, and the RPKI answers it with a Trust Anchor Locator: a short file naming a public key and a URL to fetch the rest from. Five of them, one per regional registry, retrieved over the network on a schedule by software most operators installed from a package mirror. The whole trust decision therefore sits behind a file, a fetch and a build pipeline. Below that sits the validator, which is ordinary software parsing untrusted repository data at scale and feeding a router over RTR, a router that does not re-derive the conclusion it is handed. Below that again is the BGP session itself, still carried over TCP and protected by TCP-AO wherever somebody configured it and by MD5 wherever they did not.
1. Attack BGPsec Infrastructure [OR]
1.1 Trust Anchor Compromise [OR]
1.1.1 Trust Distribution Attacks [OR]
1.1.1.1 Malicious TAL (Trust Anchor Locator) distribution
1.1.1.2 Package mirror compromise for validator software
1.1.1.3 DNS poisoning for trust anchor retrieval
1.1.2 Anchor Maintenance Exploits [OR]
1.1.2.1 Delayed anchor revocation propagation
1.1.2.2 Weak anchor rotation procedures
1.1.2.3 Historical anchor abuse
1.1.3 Cross-Protocol Trust Collisions [OR]
1.1.3.1 RPKI-BGPsec trust chain conflicts
1.1.3.2 Shared HSM compromise across protocols
1.2 Validator Infrastructure Attacks [OR]
1.2.1 Software Vulnerabilities [OR]
1.2.1.1 Memory safety issues in validators (Rust/C++)
1.2.1.2 Logic flaws in path validation
1.2.1.3 Denial-of-service through resource exhaustion
1.2.2 Cache Poisoning [OR]
1.2.2.1 Stale data attacks during sync intervals
1.2.2.2 MITM attacks on validator-to-repository communication
1.2.2.3 Repository compromise with malicious data
1.2.3 Configuration Manipulation [OR]
1.2.3.1 Admin interface compromises
1.2.3.2 Misconfigured trust boundaries
1.2.3.3 Weak access controls on validator systems
1.3 Network Infrastructure Targeting [OR]
1.3.1 Routing Table Poisoning [OR]
1.3.1.1 Injection of malicious BGPsec paths
1.3.1.2 Withdrawal of valid BGPsec routes
1.3.1.3 Route flap attacks with signed updates
1.3.2 Peer Session Compromise [OR]
1.3.2.1 TCP-AO/MD5 bypass for BGP sessions
1.3.2.2 Session reset attacks during key rotation
1.3.2.3 MITM on BGPsec peer connections
1.3.3 Resource Exhaustion [OR]
1.3.3.1 CPU exhaustion through complex signature validation
1.3.3.2 Memory exhaustion via large BGPsec updates
1.3.3.3 Storage exhaustion from key history retention
A short file and a scheduled fetch¶
A Trust Anchor Locator is a public key and a URL. Whoever controls the fetch decides what the validator believes from that point on.
Validators are ordinary software parsing untrusted repository data at volume, which is the standard shape for both memory safety flaws and resource exhaustion.
Synchronisation is periodic, so a validator’s view is stale for part of every interval, including its view of what has been revoked.
Revocation travels at the speed of the slowest fetch. A withdrawn certificate stays good for anyone still serving the previous cache.
The router accepts the validator’s verdict over RTR without re-deriving it, so compromising the validator is equivalent to compromising every decision downstream of it.
Under the cryptography the session is still TCP. TCP-AO protects it where it was configured, and MD5 where nobody revisited the decision.