Skip to content

crypto/x509: certificate validation issues #67024

Description

@joyantaDebnath

Go version

Go-Crypto v1.21rc2

Output of go env in your module/workspace:

Go-Crypto v1.21rc2

What did you do?

  1. The library allows empty DirectoryString (e.g., " ") in Distinguished name structures of Issuer and Subject name. (RFC 5280 non-compliant)
  2. You should not allow 0 (zero) as certificate serial number. RFC 5280 says, "The serial number MUST be a positive integer assigned by the CA to each cer- tificate...CAs MUST force the serial Number to be a non-negative integer...Non- conforming CAs may issue certificates with serial numbers that are negative or zero. Certificate users SHOULD be prepared to gracefully handle such certificates."
  3. Crypto allows presence of (version 3) extensions even if the certificate version is 1 or 2.

What did you see happen?

All certificates were accepted

What did you expect to see?

The library should reject such noncompliant certificates

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    FrozenDueToAgeWaitingForInfoIssue is not actionable because of missing required information, which needs to be provided.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions