Hi Nathalie,

Thank you for addressing this RIPE NCC infra issue.

It looks like the RIPE NCC RPKI infra for rsync is updating the ROA’s in the 
same directory while the RPKI clients that use rsync, are still fetching the 
files.

This is common knowledge on using rsync  .. but with the use of MD5 of crypto 
checks on the files, that becomes an issue.

It is best practise to dump the files in a specific (timestamp)directory .. 
symlink the download link to the timestamp directory ..  and keep things 
read-only once the stuff is written on disk.. so there are no improper updates 
that would cause crypto or MD5 hash issues.
Once there is new RPKI data, create a new timestamp dir, move the symlink to 
the new location and be done with it.

As a RPKI-client user that is happy with the security within the software, that 
starts to barf over improper RPKI data .. as one should hope it would ..  I 
would like to ask the NCC to update their rsync method quicker than ‘perhaps in 
6 months … ‘

This looks to be a 3 line bash script fix on a cronjob …  So why isn’t this 
just tested on a testbed and updated before the end of the week ?

Regards,
Erik Bais

From: routing-wg <[email protected]> on behalf of Nathalie Trenaman 
<[email protected]>
Date: Monday 12 April 2021 at 12:04
To: "[email protected]" <[email protected]>
Subject: [routing-wg] Issue affecting rsync RPKI repository fetching

Dear colleagues,

We have been made aware of an issue that may affect some users who use RPKI 
relying party (RP) software that uses rsync. Please note that by default, only 
rpki-client reads from rsync; the rest of the RPs prefer the RPKI Repository 
Delta Protocol (RRDP).

The issue appears to create some inconsistency between the RPKI repository and 
rsync clients. In more detail, an RRDP client reads a complete state for a 
specific “serial” from the repository. In contrast, an rsync client syncs the 
state in multiple steps. First, a list of files is copied, followed by updates 
for files that have been copied. In an affected scenario, a certificate is 
added and one of the other files (the manifest) is modified after the file list 
has been sent. By reading the new manifest, but not copying the new file (it is 
not on the rsync file list), the repository copied by the rsync client contains 
an invalid manifest (a file is missing) and the RP software rejects it.

We are planning on changing our publication infrastructure and using the same 
"revisions" RRDP uses for the content of the rsync repository. Rsync is an 
officially supported distribution protocol for RPKI repository data, and it is 
one of our highest priorities that the data published is atomic and consistent. 
We plan to release the new publication infrastructure in Q2/Q3 2021. Part of 
this work will mitigate these non-repeatable-reads for clients using rsync.

We will update you on our progress during RIPE 82, taking place online from 
17-21 May 2021.

Kind regards,

Nathalie Trenaman
RIPE NCC


Reply via email to