rfc-9674

Same-Origin Policy for the RPKI Repository Delta Protocol (RRDP)

J. Snijders
date2024-12 streamIETF areaops wgsidrops statusPROPOSED STANDARD pages5 canonicalhttps://www.rfc-editor.org/rfc/rfc9674 doi10.17487/RFC9674
This document describes a Same-Origin Policy (SOP) requirement for Resource Public Key Infrastructure (RPKI) Repository Delta Protocol (RRDP) servers and clients. Application of a SOP in RRDP client/server communication isolates resources such as Delta and Snapshot files from different Repository Servers, reducing possible attack vectors. This document updates RFC 8182.

updates

Extracted elements (12)

design-rationale §1

An alternative to the SOP requirement would be for a future version of RRDP to use relative URIs instead of absolute URIs, which would inherently prevent cross-origin references. The SOP approach was chosen as an update to the existing RFC 8182 rather than requiring a new RRDP version.

routing, security

design-rationale §2

The original RRDP specification (RFC 8182) did not explicitly disallow cross-origin URI references from the Update Notification file towards Delta and Snapshot files, and was silent on HTTP Redirection. This oversight allowed one Repository Server to reference RRDP resources on another, inappropriately increasing resource consumption for both RRDP clients and the referenced server.

security, routing

interoperability-note §4

Analysis of rpkiviews archives from April to September 2024 found only one RRDP server (among the five RIR TALs) that employed a same-origin HTTP redirect, and no RRDP Repository Servers observed to employ cross-origin URIs in Update Notification Files during October 2021–October 2024. Imposing the SOP requirement therefore does not cause any commonly used RRDP Repository Server operations to become non-compliant.

routing, measurement, security

normative-requirement §3.2 SHOULD

Implementations SHOULD log a message when cross-origin redirects are detected during RRDP session processing.

security, routing

normative-requirement §3 MUST

RRDP Repository Servers and Clients MUST apply a Same-Origin Policy to both the URIs referenced in an Update Notification File and any HTTP Redirects.

security, routing

normative-requirement §3.2 MUST NOT

The Relying Party MUST NOT follow HTTP Redirection that results from attempts to download Update Notification, Delta, and Snapshot files if the target origin differs from the origin of the Update Notification File. If this verification fails, the RRDP session MUST be rejected.

security, routing, http

normative-requirement §3.2 MUST

The Relying Party MUST verify whether the 'uri' attributes in the Update Notification File are of the same origin as the Update Notification File itself. If verification fails, the file MUST be rejected and RRDP cannot be used.

security, routing

normative-requirement §3.1 MUST NOT

The Repository Server MUST NOT respond with HTTP Redirects towards locations with an origin different from the origin of the Update Notification File specified in the referring RRDP SIA AccessDescription.

security, routing, http

normative-requirement §3.1 MUST

The 'uri' attribute in the snapshot element and optional delta elements MUST be part of the same origin as the Update Notification File, meaning referenced URIs MUST have the same scheme, host, and port as the URI for the Update Notification File specified in the referring RRDP SIA AccessDescription.

security, routing

protocol-element §3.1

Same-origin is defined as URIs sharing the same scheme, host, and port — following the Web Origin Concept of RFC 6454. This definition applies to the Update Notification File URI and all referenced Delta and Snapshot URIs.

security, routing, http

protocol-element §3.1

The RRDP Update Notification File contains 'uri' attributes in snapshot and optional delta elements. These URIs are now required to be same-origin with the Update Notification File's own URI as specified in the RRDP SIA AccessDescription.

routing, security

security-consideration §5

Cross-origin requests in RRDP are detrimental because they allow one repository operator to increase resource consumption for other repository operators and RRDP clients. An adversary could also employ cross-origin HTTP Redirects towards other Repository Servers to cause similar undesirable behavior.

security, routing