[Servercert-wg] SCXX Ballot - Debian Weak Keys (and related vulnerabilities)

Tim Hollebeek tim.hollebeek at digicert.com
Wed Jul 13 20:51:41 UTC 2022

I agree with the strategy of stating the requirements and then using requirements-free language to reference the ancillary resources, but a lowercased 2119 word is still a 2119 word (“These words are *often* capitalized” – RFC 2119, emphasis mine).

It’s best to rephrase non-requirements to avoid MUST, SHALL, SHOULD, and MAY entirely.  As well as required, recommended, and optional 😊

Something like: “CAs might find these tools useful”, or even something like: “Additional information is available from these resources.”

Referencing something does not in any way imply it is free from errors or even that it can be used in a BR-compliant way.  I give you the BR reference to the original RFC 6844 as an example.  The original RFC 6844 had multiple errors and was rather incompatible with the BRs, but got added to the BRs anyway.  Oops.

We should make sure the resources we reference are high enough quality to be useful, but I think the standard ballot / discussion process can handle that.


From: Servercert-wg <servercert-wg-bounces at cabforum.org> On Behalf Of Aaron Gable via Servercert-wg
Sent: Friday, July 8, 2022 12:44 PM
To: Chris Kemmerer <chris at ssl.com>; CA/B Forum Server Certificate WG Public Discussion List <servercert-wg at cabforum.org>
Cc: Hanno Böck <hanno at hboeck.de>
Subject: Re: [Servercert-wg] SCXX Ballot - Debian Weak Keys (and related vulnerabilities)

It seems to me like the appropriate line to walk would be:
First, state the requirements (such as blocking debian weak keys, or blocking ROCA keys) in plain language, much as the current ballot does. This makes the requirement that CAs must abide by clear.
Second, provide links to tools that may be helpful. Do not preface these links with any normative language, i.e. say "CAs may find these tools useful: ...", not "CAs MAY use these tools: ...". This serves the purpose of providing easy access to the helpful external resources, but without stating that their contents have been vetted and fully approved.

Does that makes sense?

On Fri, Jul 1, 2022 at 12:13 PM Chris Kemmerer via Servercert-wg <servercert-wg at cabforum.org<mailto:servercert-wg at cabforum.org>> wrote:

Thanks to all who participated in the very useful discussion regarding this proposed ballot in our June 23 2022 call.

An important point was raised about how to handle external links to recommended (but not required) resources. In "Section Subscriber Key Pair Generation" of the proposed language, we require CAs to reject requests for certificates with "industry demonstrated weak Private Keys" (as "SHALL" and "MUST" directives), then provide links to "Suggested tools that CAs MAY use" to judge requests.


The questions here are:

  *   If we direct issuers to external resources in CABF documents, what level of CABF-level vetting should be required or expected for those links?
  *   And is the ballot process itself sufficient vetting for such links?

We are assuming that for, weak key detection, we DO want to provide useful links to help guide certificate issuers (see sidebar below). Note that the current BR language already includes one such link, to a page maintained by Debian (https://wiki.debian.org/SSLkeys), though with a vetted status unknown to us.

Our proposed ballot language also adds a requirement to reject keys "identified by the tools available at https://github.com/crocs-muni/roca or equivalent". As we recall it, this resource was suggested by a CABF participant now departed, and again the status of vetting for this link is unknown.

For what it's worth, a quick scan of the BRs shows that, apart from weak key guidance, we do include links to other external resources which are presumably foundational enough to not require vetting. These include:

  *   IETF (various RFCs, ex. http://tools.ietf.org/html/rfc5890)
  *   IANA (registry information, ex. https://www.iana.org/assignments/iana-ipv4-special-registry/iana-ipv4-special-registry.xhtml)
  *   NIST (publications, ex. http://csrc.nist.gov/publications/nistpubs/800-89/SP-800-89_November2006.pdf)
  *   and the Mozilla Foundation (the Public Suffix List, https://publicsuffix.org/).

As Dimitris stated in the call, the two other links included as resources which MAY be utilized:

  *   https://github.com/CVE-2008-0166
  *   https://github.com/HARICA-official/debian-weak-keys
... have been "cross-vetted" by their respective providers (HARICA and Sectigo).

This discussion was spurred by a suggestion from Adriano Santoni to consider adding a third resource (Hanno Böck's badkeys tool):

  *   https://github.com/badkeys/badkeys (web version: https://badkeys.info/)
...for which no such CABF-level "cross-vetting" has been performed (as far as we know).
We ourselves very much appreciate the effort that went into creating these tools and intend to utilize them. However:

  *   Is the ballot process itself considered adequate vetting for external links in CABF documents?
  *   If not, what vetting would we consider adequate?

  *   In the June 23 call, an external, CABF-supported resource (i.e. a separate web page with appropriate links) was considered, discussed, and rejected as likely to increase overhead and decrease reliability. Based on this, our sense is that any links deemed useful should indeed be included in the actual ballot language itself.
  *   And finally, as raised in previous discussions: Would some sort of disclaimer be appropriate for external links, and if so should it extend beyond the links to cover external resources more generally?

From: Servercert-wg <servercert-wg-bounces at cabforum.org<mailto:servercert-wg-bounces at cabforum.org>> on behalf of Adriano Santoni via Servercert-wg <servercert-wg at cabforum.org<mailto:servercert-wg at cabforum.org>>
Sent: Sunday, June 12, 2022 7:11 PM
To: servercert-wg at cabforum.org<mailto:servercert-wg at cabforum.org> <servercert-wg at cabforum.org<mailto:servercert-wg at cabforum.org>>
Cc: Hanno Böck <hanno at hboeck.de<mailto:hanno at hboeck.de>>
Subject: Re: [Servercert-wg] SCXX Ballot - Debian Weak Keys (and related vulnerabilities)

Might a third option be the tool developed by Hanno Boeck?


From our point of view it's an effective tool.


Il 09/06/2022 15:18, Chris Kemmerer via Servercert-wg ha scritto:
Suggested tools that CAs MAY use to obtain lists of Debian weak keys include:

  - https://github.com/CVE-2008-0166<https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FCVE-2008-0166&data=05%7C01%7Cchris%40ssl.com%7C8641292420c44f04613b08da4cd14ed0%7C7741372af1ae4cc7b93ce6c2c138b2bb%7C0%7C0%7C637906759104963939%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=zfjpsiplLaqFzwkKzciu7cQTRzDeeqBP0XFs3zn5OJg%3D&reserved=0> provides a generator, for the complete set of parameters listed above, that runs on any modern 64-bit Linux system; it also provides complete sets of pregenerated keys for the most common RSA key sizes.
  - https://github.com/HARICA-official/debian-weak-keys<https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FHARICA-official%2Fdebian-weak-keys&data=05%7C01%7Cchris%40ssl.com%7C8641292420c44f04613b08da4cd14ed0%7C7741372af1ae4cc7b93ce6c2c138b2bb%7C0%7C0%7C637906759104963939%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=JAHix0XFgxltAzN0FGh58bZkHVRLacTP8rUK35Ymn0c%3D&reserved=0> provides a generator, for a subset of the parameters listed above, that can take advantage of a computer cluster.
Servercert-wg mailing list
Servercert-wg at cabforum.org<mailto:Servercert-wg at cabforum.org>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cabforum.org/pipermail/servercert-wg/attachments/20220713/5fb709b2/attachment-0001.html>

More information about the Servercert-wg mailing list