> I do not, however, think that we should have a SHOULD for using DNSSEC
as it would be more in the nature of a RFC 6919 "MUST (BUT WE KNOW YOU
WON'T)".

I agree

On Mon, Sep 30, 2024 at 6:43 AM Eric Rescorla <e...@rtfm.com> wrote:

>
>
>
> On Sun, Sep 29, 2024 at 7:34 PM Paul Wouters <paul.wouters=
> 40aiven...@dmarc.ietf.org> wrote:
>
>> Hi,
>>
>> I have done my AD review of draft-ietf-tls-svcb-ech. Some history was
>> well summarized by the Document
>> Shepherd:
>>
>> Please note that the text in this I-D was initially developed in the DNSOP 
>> WG,
>> went through IETF LC, and IESG review. The result of the IESG review was to 
>> take
>> the text in this I-D out of RFC 9460 
>> <https://datatracker.ietf.org/doc/rfc9460/> (was draft-ietf-dnsop-svcb-http) 
>> and run the
>> new I-D through the TLS WG. The text in this I-D is essentially the same text
>> taken from -11 of draft-ietf-dnsop-svcb-http.
>>
>>
>> This is why I sent this review to both the TLS and DNSOP list. I have a
>> few minor issues in the draft that I think
>> need fixing:
>>
>>     These downgrade attacks can prevent a client from being aware that
>> "ech"
>>     is configured which could result in the client sending the ClientHello
>>     in cleartext.
>>
>> However, when DNSSEC is used and the TLS client can see the errors at the
>> DNS layer,
>> it can detect this downgrade attack is happening, and decide whether or
>> not to continue with
>> starting a TLS connection. I think the text should explain the difference
>> in attack scenario in the
>> presence and absence of DNSSEC. It might even be worth it to RECOMMEND
>> DNSSEC, or recommend
>> a DoH / DoT / DoQ connection to a DNSSEC supported DNS service. When
>> referring to "DNSSEC", please
>> use a normative reference to RFC9364.
>>
>
> TBH, this whole section is kind of confusing, but I think it actually
> is noting exactly what you are suggesting:
>
>    An attacker who can prevent SVCB resolution can deny clients any
>    associated security benefits. A hostile recursive resolver can
>    always deny service to SVCB queries, but network intermediaries can
>    often prevent resolution as well, even when the client and
>    recursive resolver validate DNSSEC and use a secure
>    transport. These downgrade attacks can prevent a client from being
>    aware that "ech" is configured which could result in the client
>    sending the ClientHello in cleartext. To prevent downgrades,
>    Section 3.1 of [SVCB] recommends that clients abandon the
>    connection attempt when such an attack is detected.
>
> This section is kind of confusing, but I *think* what it's saying
> is that the attacker permits resolution of the A/AAAA records
> but blocks resolution of SVCB (it's not clear to me how it does
> this in the case where you are using secure transport, is the
> idea that it's an intermediary between the recursive and the
> authoritative? If so, probably say so). As you say, this is
> observable when DNSSEC is in place, and S 3.1 of SVCB recommends
> abandoning the connection, just as you ask.
>
>    If DNS responses are cryptographically protected (e.g., using DNSSEC
>    or TLS [DoT] [DoH]) and SVCB resolution fails due to an
>    authentication error, SERVFAIL response, transport error, or timeout,
>    the client SHOULD abandon its attempt to reach the service, even if
>    the client is SVCB-optional.  Otherwise, an active attacker could
>    mount a downgrade attack by denying the user access to the SvcParams.
>
>    A SERVFAIL error can occur if the domain is DNSSEC-signed, the
>    recursive resolver is DNSSEC-validating, and the attacker is between
>    the recursive resolver and the authoritative DNS server.  A transport
>    error or timeout can occur if an active attacker between the client
>    and the recursive resolver is selectively dropping SVCB queries or
>    responses, based on their size or other observable patterns.
>
>    If the client enforces DNSSEC validation on A/AAAA responses, it
>    SHOULD apply the same validation policy to SVCB.  Otherwise, an
>    attacker could defeat the A/AAAA protection by forging SVCB responses
>    that direct the client to other IP addresses.
>
>    If DNS responses are not cryptographically protected, clients MAY
>    treat SVCB resolution failure as fatal or nonfatal.
>
> I do not, however, think that we should have a SHOULD for using DNSSEC
> as it would be more in the nature of a RFC 6919 "MUST (BUT WE KNOW YOU
> WON'T)".
>
> It's worth noting at this point that ECH is a somewhat special case in
> that if the attacker is able to observe the DNS request (e.g., if they
> are on the local network and secure transport is not used) then much
> of the value of ECH is lost, as the attacker learns the DNS name at
> resolution time, so it would be appropriate to stress that clients
> should use secure transport.
>
> -Ekr
>
>
>
>
>
>> I think referring to DNS as RFC1034 is a mistake. It would be much better
>> to refer to RFC9499
>>
>>      See Section 7.2.2
>> <https://datatracker.ietf.org/doc/html/draft-ietf-tls-esni-20#section-7.2.2>
>> of [ECH <https://datatracker.ietf.org/doc/html/draft-ietf-tls-esni-20>]
>> for more details about the public name.
>>
>> This section does not exist (anymore?). I am not sure what it was trying
>> to point to? The public_name text in Section 4 ?
>>
>> Note that the ECH document defines the public_name as not ending in a
>> dot, which technically prevents the root from ever
>> using SVCB ECH records. This is probably okay, but I'll raise it again as
>> part of the ECH document AD review.
>>
>> Paul
>> _______________________________________________
>> DNSOP mailing list -- dnsop@ietf.org
>> To unsubscribe send an email to dnsop-le...@ietf.org
>>
> _______________________________________________
> TLS mailing list -- t...@ietf.org
> To unsubscribe send an email to tls-le...@ietf.org
>
_______________________________________________
DNSOP mailing list -- dnsop@ietf.org
To unsubscribe send an email to dnsop-le...@ietf.org

Reply via email to