Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CRL revocation dates in the future #788

Closed
botovq opened this issue Feb 22, 2022 · 2 comments
Closed

CRL revocation dates in the future #788

botovq opened this issue Feb 22, 2022 · 2 comments

Comments

@botovq
Copy link
Contributor

botovq commented Feb 22, 2022

I noticed that about 10-15% of revoked certificates in CRLs in my repository have revocation dates in the future (usually between now and some time before end of 2023). This is puzzling since RFC 5280, 5.1.2.6 clearly says: "The date on which the revocation occurred [...]", see also crl.rs in the rpki crate.

I believe this to be a consequence of #62 where the revocation_date member of commons::api::Revocation was renamed to expires. The crl_to_entries() method of Revocations takes the notAfter time of a cert, mft,... and places it as revocationDate in a CRL list. The idea seems to be that a cert has to be revoked as long as it isn't expired - see the purge() method.

@timbru
Copy link
Contributor

timbru commented Feb 22, 2022

Good catch, this is a bug indeed, caused by a misinterpretation on my part. Thank you for reporting this!

Fortunately the RPKI has additional protection by way of the manifests which say which objects are current. But even though this cannot lead to revoked objects being accepted by current RPKI validators, I agree that this needs to be fixed.

A very quick hack would be to use the date of CRL issuance instead. This is not correct but still better than using the expiry date. This is a fix I can do very quickly and include in the coming 0.9.5 release.

The actual revocation data currently isn't tracked - it can be fixed but it will involves changes in logic and a data migration to process historic data to get the real correct dates.

timbru pushed a commit that referenced this issue Jul 7, 2022
@timbru timbru linked a pull request Jul 8, 2022 that will close this issue
timbru pushed a commit that referenced this issue Jul 18, 2022
@timbru
Copy link
Contributor

timbru commented Jul 18, 2022

Will be in release 0.10.0

@timbru timbru closed this as completed Jul 18, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants