<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Sep 8, 2016 at 2:40 PM, Rick Andrews <span dir="ltr"><<a href="mailto:Rick_Andrews@symantec.com" target="_blank">Rick_Andrews@symantec.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Additionally, I'd like to address this point: 'Ryan pointed out that, at<br>
present, nothing would prevent Neil from stating in his CP/CPS that his CA<br>
will issue certificates if he sees a CAA record for "<a href="http://symantec.com" rel="noreferrer" target="_blank">symantec.com</a>" '. If<br>
Neil adopted that policy, wouldn't it violate RFC 6844, which says "The<br>
issue property entry authorizes the holder of the domain name <Issuer Domain<br>
Name> or a party acting under the explicit authority of the holder of that<br>
domain name to issue certificates for the domain in which the property is<br>
published."?<br></blockquote><div><br></div><div>Rick,</div><div><br></div><div>As you know, the IETF historically shies away from discussions of policy, and instead focuses on the technological side. We can see that certainly with PKIX (RFC 5280 & friends), and it was actually a frequently reiterated point during the discussion of CAA through its standardization.</div><div><br></div><div>As such, we should imagine that CAA defines the structural representation, but it's up to the CA/B Forum to specify the policy that applies here. You can see that the document intentionally shies away from this discussion in Sections 6.1 and 6.2, and that's arguably the right thing.</div><div><br></div><div>The extent of my comments was to make sure that, in developing a policy for CAA (which I'm strongly supportive of, so appreciate you continuing the discussion), we make it clear what is and is not acceptable. If we were to accept that Neil doing so would violate RFC 6844, then we must also accept that the only RFC 6844-compliant method of a CA running into the situation you propose is to Not Issue At All. That is, not even Option 1 is acceptable (since you included the parenthetical escape clause).</div><div><br></div><div>My "ideal" outcome for CAA within the CA/B Forum would be:</div><div>1) A requirement in the CPS to state that the CA respects CAA</div><div>2) A requirement that the CPS documents which domains the CA recognizes in CAA records. As a consequence, if a CA wishes to recognize additional domains in CAA records, this requires a CPS update.</div><div>3) A requirement that the CA honor the CAA record exactly as presented, with no overriding allowed, short of changing the DNS record.</div><div>4) A requirement that the CA maintain audit records regarding their CAA evaluation, such as:</div><div> - The order and sequence of DNS records they attempted to resolve</div><div> - The results of those DNS records and the source of the information.</div><div><br></div><div>Each of these I suspect is controversial in some way, and will no doubt require more discussion, but to briefly justify this:</div><div><br></div><div>#1, without #2-4, is largely toothless. However, my goal is to ensure that auditors have a consistent framework to evaluate a CA's compliance, and for the public at large as well to evaluate. If a CA says it supports CAA, and a misissuance event occurs that contravenes that, it's natural that both auditors and the public should want to understand why and how, and setting this up within the CPS makes it clear that the CA is committed to explaining that.</div><div><br></div><div>#2 is about making it clear for Subscribers and Applicants the "Right Way" to configure things. Each CA naturally is free to manage their customer relations as they wish, but it can be hard to find consistent information (such as where to report misissuance events), and the CPS is the one universal aspect that all CAs must have and abide by, so it naturally makes sense to ensure it's in a consistent and discoverable place.</div><div><br></div><div>#3 is clearly a sticking point. I think we're all pretty aware of CAs' objections to this, but I do feel strongly that, without this, CAA is not an effective security mitigation. As you know, Google holds a variety of domains, and we routinely receive requests from other CAs attempting to confirm that an applicant was duly authorized to make a request, and we routinely have to contact CAs and request revocation for certificates that were not authorized according to our company policy. Allowing escape clauses, even at the EVGL level, significantly weaken our ability to proactively prevent this, which we believe would reduce both ours and CAs' administrative burdens.</div><div><br></div><div>#4 is less obvious. During Bilbao, we discussed how DNS resolution can be unreliable for CAs; for example, network hiccups due to peering interconnects can manifest as a DNS timeout, rather than a successful (negative) response. We also know that CAA policies are only applicable at time of issuance, and may change, so we can't examine post-facto the CAA record of a domain and make a declarative judgement of misissuance. However, unfortunate as it is, CAA is a "fail open" rather than "fail closed" model - any misconfiguration on the CA's part (such as forgetting to configure their DNS clients or firewalls correctly) can result in issuance, even when a domain holder explicitly requests that the CA not issue (via CAA). So we need to have some sort of way to audit this, so that, in the event of claimed conflict, we can better ascertain what happened, and why. This is a rough sketch of an attempt to do so, but the point in particular being to ensure there's enough record to know if the CA had a bug in their system, and to ensure enough information is preserved to understand that bug.</div><div><br></div><div><br></div><div>We know CAA isn't the system we'd hope for - while it presents itself as a whitelist mechanism (listing only authorized CAs) - because it's built atop the unreliable DNS, it's effectively a blacklist mechanism (any failure is interpreted as the status quo - any CA is authorized - rather than the desired state - no CA is authorized). In an ideal world, I would wish for CAA to be required, and present, in order for a CA to issue a certificate, but I know that world is unlikely to ever come about, and so I'd at least be willing to settle on #1 - #4 as an improvement to the status quo.</div></div></div></div>