Re: [DNSOP] SIG(0) useful (and used?)

Ted Lemon <mellon@fugue.com> Thu, 21 June 2018 22:27 UTC

Return-Path: <mellon@fugue.com>
X-Original-To: dnsop@ietfa.amsl.com
Delivered-To: dnsop@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id AE60B13110B for <dnsop@ietfa.amsl.com>; Thu, 21 Jun 2018 15:27:52 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.909
X-Spam-Level:
X-Spam-Status: No, score=-1.909 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, T_DKIMWL_WL_MED=-0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=fugue-com.20150623.gappssmtp.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id PMw-sKMZgHn6 for <dnsop@ietfa.amsl.com>; Thu, 21 Jun 2018 15:27:50 -0700 (PDT)
Received: from mail-io0-x22e.google.com (mail-io0-x22e.google.com [IPv6:2607:f8b0:4001:c06::22e]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id F1F8C1310D3 for <dnsop@ietf.org>; Thu, 21 Jun 2018 15:27:49 -0700 (PDT)
Received: by mail-io0-x22e.google.com with SMTP id r24-v6so4427037ioh.9 for <dnsop@ietf.org>; Thu, 21 Jun 2018 15:27:49 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fugue-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=hxPP3VdhzQDcBjmTp3yRlUIoHzTMiBj/F+MEf+KMK0Y=; b=oGJ4k3qSC0fhA2f/kVnrJLUszMDJr9kWPjMg8vKoGk5EkOBxfV2M68erIpaKaser+r N9jIuXwZriWcJlVPzFEZ6t3ZCGTaMZ9kCNOJDvTDJScOghcslpKCTDTrKI5wyg2HVkQi QDfnXoiLO86itAYtNFd6tjWCdxJriKTplneIgd2pFAIslAP8dfQNYZWVrOa1P4GBoaKp r+BIU/ErWvkhww99hgluLp30rTjuSoNTp5DpeR7rKY4MG+2yJpN/Nyu4wLi6dQYqnCRo dGV0+9kQ7DGcDmDt8ekCAmHcXptR1M7LXTnybN/u5QHw5ICqRr6WprG+A1Tjx6RB7lTP R6PA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=hxPP3VdhzQDcBjmTp3yRlUIoHzTMiBj/F+MEf+KMK0Y=; b=LXOhZpR5/TEMoeHFFS3RfQMxb9ylS9fI0xLN5gPRBSgrPWskFGEh37fzamtFFK7g7c HWv2dH/WdIfmPaOK4soChkBZWiKbgn1pZOIlMzi5libhab8J1qKNpGkBX5cUCqPWevOj DckOCm8cL8X5UloTBpDxDm6eK7+39FsSPSOXGjN/2+F9zopfL4QPozixY3LHBDm9JCan kybK8/jwa3fMC6/wrXiAK5ATaUW2ly5g4QlAT/6upV76KXeXi4cCfhzWHdsHwRet5Rdf h66D9d71WDi+WXuQBbWNAaEwx96TQUBAAQ0mpF2OguZxnCHFxwVKhLkQqEo9cHVfLObH 6AqQ==
X-Gm-Message-State: APt69E05gbJ4fvgqCvHatCegPBLu2zFdiaM1xOzfqofcawe+8W/BXd4J 9oKGDces+7ZIUsvLKgODAyhexc5mO8My4KyiojFNsQ==
X-Google-Smtp-Source: ADUXVKKMfcLk4Q6Fc6usTRo1EMD5TNegFBG27Qh7LqstG94GFpMmsEvc5W0sOyhvUTNfJTKnCKNKoEI55V7NLcMAuzk=
X-Received: by 2002:a6b:be05:: with SMTP id o5-v6mr22136953iof.45.1529620069325; Thu, 21 Jun 2018 15:27:49 -0700 (PDT)
MIME-Version: 1.0
References: <6C8533C2-6510-4A0E-A7EA-50EB83E43A7D@isc.org> <6B764CF2-FC1F-4B55-B4A3-F49729847DCF@bangj.com> <b85eb6ec-8d4c-221a-35ac-4c4efb9bd5c4@nic.cz> <56702D15-B557-4A9E-BD18-5379105CCB30@bangj.com> <CAHPuVdWnm8nCHD4DbC=LnPoJgch7ZO7NuitHECnMxsrVLZExqA@mail.gmail.com> <ECDE3B3C-A865-41B9-B188-F6C6DED2467A@bangj.com>
In-Reply-To: <ECDE3B3C-A865-41B9-B188-F6C6DED2467A@bangj.com>
From: Ted Lemon <mellon@fugue.com>
Date: Thu, 21 Jun 2018 18:27:37 -0400
Message-ID: <CAPt1N1m+qx78K+2K80adA+nyOtjyyHkc2Ah2duq89a8L6kwjqA@mail.gmail.com>
To: Tom Pusateri <pusateri@bangj.com>
Cc: Shumon Huque <shuque@gmail.com>, "dnsop@ietf.org WG" <dnsop@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000dfd310056f2e6c1d"
Archived-At: <https://mailarchive.ietf.org/arch/msg/dnsop/b3xs6aCcxHnowrxtjQCJnwJtOR4>
Subject: Re: [DNSOP] SIG(0) useful (and used?)
X-BeenThere: dnsop@ietf.org
X-Mailman-Version: 2.1.26
Precedence: list
List-Id: IETF DNSOP WG mailing list <dnsop.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dnsop>, <mailto:dnsop-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dnsop/>
List-Post: <mailto:dnsop@ietf.org>
List-Help: <mailto:dnsop-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dnsop>, <mailto:dnsop-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 21 Jun 2018 22:27:53 -0000

Why would that make a difference?

On Thu, Jun 21, 2018 at 3:34 PM Tom Pusateri <pusateri@bangj.com> wrote:

>
>
> On Jun 21, 2018, at 1:40 PM, Shumon Huque <shuque@gmail.com> wrote:
>
> On Thu, Jun 21, 2018 at 8:05 AM Tom Pusateri <pusateri@bangj.com> wrote:
>
>> On Jun 21, 2018, at 12:19 AM, Vladimír Čunát <vladimir.cunat+ietf@nic.cz>
>> wrote:
>>
>> On 06/20/2018 04:59 PM, Tom Pusateri wrote:
>>
>> DNSSEC will tell you the answer you get is correct but it could be a > to
>> a different question or be incomplete.
>>
>> Can you elaborate on that point.  I believe in signed zones you are able
>> to verify almost everything, in particular existence of the queried-for
>> RRset and its exact value, except for details like current TTL.
>>
>> --Vladimir
>>
>>
>> I’ve been thinking about the case when you are given a DNS recursive
>> resolver over DHCP and you don’t necessarily trust it.
>>
>
> SIG(0) can't really protect you from an untrustworthy resolver. It can
> ensure that the question you sent and the answer you got back from the
> recursive server was not tampered with in-flight. But it can't detect
> whether the recursive server modified any data in its response before it
> signed it with SIG(0). If the response contained DNSSEC signed data and the
> stub was validating, then those pieces of the response could be
> authenticated. But not anything in the header, question etc - all of that
> could have been modified by the recursive server without detection.
>
>
>> If you send a query with the DO bit set to a recursive resolver for the A
>> record for foo.example.com and the recursive resolver modifies this
>> query to foo.exampl.com, you can get back a validated DNSSEC response
>> with the A record answer, RRSIG, NSEC(3) records all for the wrong
>> question. The resolver code in the OS or application would get back the
>> matching DNS header identifier and if it lazily just grabbed the A record
>> answer without comparing the RR name, it could be misled. You can detect
>> this without SIG(0) so maybe that was a bad example. But if you always sent
>> a SIG(0) signed question and got a signed answer, you could detect this and
>> possibly other future attacks and drop it before even parsing the answers.
>>
>
> Most competent resolvers will check that the response that they got back
> was for the question they asked. So I don't think they would "lazily just
> grab the A record answer without comparing the RR name".
>
> I don't think SIG(0) really helps much here. The response signature has to
> include the entire query message, but the actual response can contain
> anything the recursive server puts in there.
>
>
>> In the case of missing answers, I was thinking that if there were
>> multiple A records in the response and some were filtered, you could not
>> detect this without a SIG(0) signed response from the authoritative server.
>> This would be important if one server was compromised and the recursive
>> resolver filtered the response to exclude the other A records pointing to
>> servers that weren’t compromised directing you to the compromised server.
>>
>
> DNSSEC is really the solution to this problem. DNSSEC signatures cover the
> entire RRset, so authoritative (or recursive) servers cannot strip away
> some of the RRs without detection by a downstream validator.
>
> Shumon.
>
>
> Thanks. In the case where a zone isn’t signed but the authoritative server
> supports SIG(0), the response could be verified that it includes exactly
> what the server sent. But the KEY would need to be DNSSEC validated or it
> probably can’t be trusted to verify the SIG(0) response.
>
> Tom
>
>
> _______________________________________________
> DNSOP mailing list
> DNSOP@ietf.org
> https://www.ietf.org/mailman/listinfo/dnsop
>