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

Limit re-use of domain name verification to 398 days #206

Closed
WilsonKathleen opened this issue Mar 17, 2020 · 12 comments
Closed

Limit re-use of domain name verification to 398 days #206

WilsonKathleen opened this issue Mar 17, 2020 · 12 comments
Labels
2.7.1 Mozilla Root Store Policy version 2.7.1

Comments

@WilsonKathleen
Copy link
Contributor

When we update Mozilla's Root Store Policy to limit TLS certificate validity periods to 398 days, we should also update the policy to limit re-use of domain name verification results.

I started discussion about this in m.d.s.p, and consensus appears to support the idea, with the two primary recommendations:

  1. Change the effective date to April 2021 to give CAs time to update their processes.
  2. Provide a Mozilla Security Blog explaining the reasons for making this change. The idea being to provide one place where people can go to read about why it is important to frequently re-verify domain name ownership and why it is important to reduce TLS cert validity periods.
@WilsonKathleen WilsonKathleen added the 2.7.1 Mozilla Root Store Policy version 2.7.1 label Mar 17, 2020
@wthayer
Copy link
Contributor

wthayer commented Mar 20, 2020

I have some concerns about Mozilla enacting this policy without first attempting to change the BRs and EVGLs:

  • Mozilla has no way to enforce this policy. While audits aren't perfect, at least they will (eventually) cover this requirement if in the BRs
  • There has never been a data reuse period specific to domain validation. This creates the potential for some ambiguity that can be best addressed by making the changes in the actual guidelines. E.g. EVGL 11.14.2
  • There are some interesting ideas around allowing longer domain validation reuse periods under certain conditions such as having registered the domain name for a long time, or simply using whois to check for any registration updates prior to reusing the information. (NOTE: these are just ideas; there's no need to debate them here) Many CAs find it less intimidating to participate in CAB Forum discussions and a debate there could result in improvements to the reuse policy.

I realize that this was already voted down in SC22, but that was in the context of limiting certificate lifetime and the reuse of all validated information (including identity). I acknowledge that CAs may shoot down another ballot specific to domain validation reuse, but the potential benefits are worth the effort to take this issue to the CAB Forum first, and I am willing to lead that effort.

@sleevi
Copy link
Contributor

sleevi commented Mar 20, 2020

I have some concerns about Mozilla enacting this policy without first attempting to change the BRs and EVGLs:

Mozilla has routinely updated its policies to be more restrictive than the BRs.

  • Mozilla has no way to enforce this policy.

Mozilla has ample experience in this, such as the requirement for a problem reporting e-mail address. Further, this is very simple to get forced into the scope of the audit, by requiring that the CA disclose in their CP/CPS compliance with this policy.

  • There has never been a data reuse period specific to domain validation.

This is not entirely accurate. The EV Guidelines impose separate limits with respect to domain information, and sections such as the BRs regarding CAA have imposed specific time limited requirements. Similarly, the BRs themselves allow for differing reuses or validation data.

  • There are some interesting ideas around allowing longer domain validation reuse periods under certain conditions such as having registered the domain name for a long time, or simply using whois to check for any registration updates prior to reusing the information. (NOTE: these are just ideas; there's no need to debate them here)

These ideas were debated and their flaws previously pointed out. It doesn’t seem like either of these represent new ideas that were not considered?

I acknowledge that CAs may shoot down another ballot specific to domain validation reuse, but the potential benefits are worth the effort to take this issue to the CAB Forum first, and I am willing to lead that effort.

What are the potential benefits? Or was that what the above bullets were referring to?

@wthayer
Copy link
Contributor

wthayer commented Mar 20, 2020

I have some concerns about Mozilla enacting this policy without first attempting to change the BRs and EVGLs:

Mozilla has routinely updated its policies to be more restrictive than the BRs.

We both know that Mozilla has the ability and right to impose policies unilaterally. Before doing so, Mozilla has always considered if it would be better to work with the CAB Forum to make the change to their guidelines. This is such a case.

  • Mozilla has no way to enforce this policy.

Mozilla has ample experience in this, such as the requirement for a problem reporting e-mail address. Further, this is very simple to get forced into the scope of the audit, by requiring that the CA disclose in their CP/CPS compliance with this policy.

Who will enforce that the CA has added the disclosure to their policy documents?

Adding the requirement to the BRs will result in BR audit criteria specific to this requirement. It's easier for an auditor to overlook or accept a creative interpretation of a requirement the CA places on itself.

  • There has never been a data reuse period specific to domain validation.

This is not entirely accurate. The EV Guidelines impose separate limits with respect to domain information, and sections such as the BRs regarding CAA have imposed specific time limited requirements. Similarly, the BRs themselves allow for differing reuses or validation data.

True. This reinforces my point that these changes will be clearer if made in those guidelines.

  • There are some interesting ideas around allowing longer domain validation reuse periods under certain conditions such as having registered the domain name for a long time, or simply using whois to check for any registration updates prior to reusing the information. (NOTE: these are just ideas; there's no need to debate them here)

These ideas were debated and their flaws previously pointed out. It doesn’t seem like either of these represent new ideas that were not considered?

As noted, these are examples.

I'm finding little evidence in mailing list archives of previous debates on these ideas. There was some discussion around ballot 186, but that was 3 years ago and the focus then, as with SC22, was on the companion ballot 185 that limited cert lifetime.

Your reply appears to have deleted the point I was making:

Many CAs find it less intimidating to participate in CAB Forum discussions and a debate there could result in improvements to the reuse policy.

I acknowledge that CAs may shoot down another ballot specific to domain validation reuse, but the potential benefits are worth the effort to take this issue to the CAB Forum first, and I am willing to lead that effort.

What are the potential benefits? Or was that what the above bullets were referring to?

I'm having difficulty interpreting this as an honest question rather than a snide remark. I support the goal of this proposal and am not attempting to delay it.

@sleevi
Copy link
Contributor

sleevi commented Mar 20, 2020 via email

@ghost
Copy link

ghost commented Jun 29, 2020

Mozilla must have invested heavily in CA's. This will increase businesses costs. Alternatives need to investigated and promoted over Google, Mozilla and Apple.

@BenWilson-Mozilla
Copy link
Collaborator

Section 4.2.1 of the Baseline Requirements (v.1.7.1) still allows data re-use for 825 days -
"The CA MAY use the documents and data provided in Section 3.2 to verify certificate information, or may reuse previous validations themselves, provided that the CA obtained the data or document from a source specified under Section 3.2 or completed the validation itself no more than 825 days prior to issuing the Certificate."

@WilsonKathleen
Copy link
Contributor Author

Section 4.2.1 of the Baseline Requirements (v.1.7.1) still allows data re-use for 825 days -
"The CA MAY use the documents and data provided in Section 3.2 to verify certificate information, or may reuse previous validations themselves, provided that the CA obtained the data or document from a source specified under Section 3.2 or completed the validation itself no more than 825 days prior to issuing the Certificate."

I disagree with the current BRs in this regards, because I think the domain ownership should be re-verified every time a TLS certificate is issued. So I'd like to move the bar closer, by limiting domain verification re-use to match the maximum TLS certificate validity period.

It would be great if the BRs get updated in this regards, but that is not a blocker in regards to updating Mozilla's Root Store Policy.

It is OK to add something to Mozilla's Root Store Policy with a future effective date.

@BenWilson-Mozilla
Copy link
Collaborator

BenWilson-Mozilla commented Sep 24, 2020

Subsection 5 of Section 2.1 should be amended to say, "verify that all of the information that is included in SSL certificates remains current and correct at time intervals of 395 days or less."

BenWilson-Mozilla added a commit to BenWilson-Mozilla/pkipolicy that referenced this issue Sep 24, 2020
@WilsonKathleen
Copy link
Contributor Author

The point of this issue is that prior to TLS certificate issuance, I think that the CA must confirm that the certificate requestor owns/controls each dNSName and iPAddress to be listed in the certificate's subjectAltName. (even for certificate renewals)
So I think we should:

  1. Be specific about what needs to be verified -- not necessarily "all of the information that is included in SSL certificate"
  2. Align with the BRs: 398 days.

@BenWilson-Mozilla
Copy link
Collaborator

Can we still use subsection 5 of Section 2.1 as the vehicle for this change, or does it require a whole new subsection? In other words, could the subsection amendment say something like, "verify that domain validation is performed in accordance with BR section 3.2.2.4 at time intervals of 395 days or less"? The downside of that approach is that it would lose the concept of verifying all information every 825 days. However, currently section 4.2.1 of the BRs already says, "The CA MAY use the documents and data provided in Section 3.2 to verify certificate information, or may reuse previous validations themselves, provided that the CA obtained the data or document from a source specified under Section 3.2 or completed the validation itself no more than 825 days prior to issuing the Certificate."

BenWilson-Mozilla added a commit to BenWilson-Mozilla/pkipolicy that referenced this issue Sep 25, 2020
@WilsonKathleen
Copy link
Contributor Author

Maybe we could add a sub-bullet item?
For example:

  1. verify that all of the information that is included in SSL certificates remains current and correct at time intervals of 825 days or less;
    5.1 additionally, verify ownership/control of each dNSName and iPAddress in the certificate's subjectAltName at time intervals of 398 days or less;

@dougbeattie
Copy link

Is it possible to state the new requirement as:

5.1 Additionally, domain validations for dNSName and IPAddresses in the certificate's subjectAltName done after may only be used for 398 days.

This avoids the cliff of a massive number of domains all needing to be validated on the effective date (or just prior).

BenWilson-Mozilla added a commit to BenWilson-Mozilla/pkipolicy that referenced this issue Nov 30, 2020
This proposed modification is to address Issue mozilla#206.
@BenWilson-Mozilla BenWilson-Mozilla changed the title Limit re-use of domain name verification to 395 days Limit re-use of domain name verification to 398 days Nov 30, 2020
BenWilson-Mozilla added a commit to BenWilson-Mozilla/pkipolicy that referenced this issue Feb 25, 2021
Changed sentence to "for server certificates issued on or after July 1, 2021, verify each dNSName or IPAddress in a SAN or commonName at an interval of 398 days or less;"
BenWilson-Mozilla added a commit to BenWilson-Mozilla/pkipolicy that referenced this issue Mar 2, 2021
For Issue mozilla#206, changed requirement from July 1 to October 1, 2021 (based on discussions at the CABF)
BenWilson-Mozilla added a commit to BenWilson-Mozilla/pkipolicy that referenced this issue Mar 2, 2021
BenWilson-Mozilla added a commit to BenWilson-Mozilla/pkipolicy that referenced this issue Mar 2, 2021
BenWilson-Mozilla added a commit to BenWilson-Mozilla/pkipolicy that referenced this issue Mar 18, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
2.7.1 Mozilla Root Store Policy version 2.7.1
Projects
None yet
Development

No branches or pull requests

5 participants