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

CABF SMIME BR 7.1.2.3.m - Adobe Extensions #763

Merged

Conversation

mara-soldan
Copy link
Contributor

Adding lints to check the presence and criticality of the Adobe x509 Extensions to cover SMIME BR 7.1.2.3.m:

Generation Adobe Extensions
Strict Prohibited
Multipurpose andLegacy MAY be present and SHALL NOT be marked critical. May include the Adobe Time‐stampX509 extension (1.2.840.113583.1.1.9.1) or the Adobe ArchiveRevInfo extension(1.2.840.113583.1.1.9.2)

Copy link
Contributor

@robplee robplee left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is fine and the only real change needed should be no trouble.

)

func init() {
lint.RegisterLint(&lint.Lint{
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So, the lint.Lint type is actually deprecated so this should be creating a lint.CertificateLint which is fairly similar but packages most of the fields that aren't the Lint into a LintMetadata struct. Same comment applies on the other lint too.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

addressed

v3/util/oid.go Outdated
@@ -24,6 +24,8 @@ import (

var (
//extension OIDs
AdobeTimestampOID = asn1.ObjectIdentifier{1, 2, 840, 113583, 1, 1, 9, 1} // Adobe Timestamp x509 extension
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is the correct formatting "timestamp" or "time-stamp". RFC3161 has it as "Time-stamp" and most online references I can find follow this trend although I've not found any record of Adobe actually defining what their OID should be called.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

addressed

Copy link
Contributor

@robplee robplee left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Really, only a couple of minor nits to address in this one.

return &adobeExtensionsLegacyMultipurposeCriticality{}
}

// CheckApplies returns true if the certificate's policies assert that it conforms to the multipurpose or legacy policy requirements defined in the SMIME BRs
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This comment doesn't mention the extra requirement that the certificate must be a subscriber certificate

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

addressed

mara-soldan and others added 4 commits November 14, 2023 09:18
…se_criticality.go

Co-authored-by: Rob <3725956+robplee@users.noreply.github.com>
Co-authored-by: Rob <3725956+robplee@users.noreply.github.com>
…se_criticality.go

Co-authored-by: Rob <3725956+robplee@users.noreply.github.com>
@christopher-henderson christopher-henderson merged commit a08efa8 into zmap:master Nov 19, 2023
4 checks passed
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 this pull request may close these issues.

3 participants