Re: [babel] Minor clarification to HMAC

Juliusz Chroboczek <jch@irif.fr> Sat, 29 June 2019 10:37 UTC

Return-Path: <jch@irif.fr>
X-Original-To: babel@ietfa.amsl.com
Delivered-To: babel@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A33701200DB for <babel@ietfa.amsl.com>; Sat, 29 Jun 2019 03:37:39 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
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 jPWBEmbORCku for <babel@ietfa.amsl.com>; Sat, 29 Jun 2019 03:37:37 -0700 (PDT)
Received: from korolev.univ-paris7.fr (korolev.univ-paris7.fr [IPv6:2001:660:3301:8000::1:2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id CBC88120108 for <babel@ietf.org>; Sat, 29 Jun 2019 03:37:36 -0700 (PDT)
Received: from mailhub.math.univ-paris-diderot.fr (mailhub.math.univ-paris-diderot.fr [81.194.30.253]) by korolev.univ-paris7.fr (8.14.4/8.14.4/relay1/82085) with ESMTP id x5TAbWGJ020316; Sat, 29 Jun 2019 12:37:32 +0200
Received: from mailhub.math.univ-paris-diderot.fr (localhost [127.0.0.1]) by mailhub.math.univ-paris-diderot.fr (Postfix) with ESMTP id 2382F4C9E9; Sat, 29 Jun 2019 12:37:35 +0200 (CEST)
X-Virus-Scanned: amavisd-new at math.univ-paris-diderot.fr
Received: from mailhub.math.univ-paris-diderot.fr ([127.0.0.1]) by mailhub.math.univ-paris-diderot.fr (mailhub.math.univ-paris-diderot.fr [127.0.0.1]) (amavisd-new, port 10023) with ESMTP id 91IoBY5Uw6ut; Sat, 29 Jun 2019 12:37:34 +0200 (CEST)
Received: from pirx.irif.fr (unknown [78.194.40.74]) (Authenticated sender: jch) by mailhub.math.univ-paris-diderot.fr (Postfix) with ESMTPSA id 1943A4C9E3; Sat, 29 Jun 2019 12:37:34 +0200 (CEST)
Date: Sat, 29 Jun 2019 12:37:34 +0200
Message-ID: <877e941xu9.wl-jch@irif.fr>
From: Juliusz Chroboczek <jch@irif.fr>
To: Markus Stenberg <markus.stenberg@iki.fi>
Cc: babel@ietf.org
In-Reply-To: <5154BFF0-4BE3-4F72-AAA4-AC65DEDF2A97@iki.fi>
References: <874l49j158.wl-jch@irif.fr> <6C3AA518-8EF8-493A-835D-DE096E75D07B@iki.fi> <87ef3c20fh.wl-jch@irif.fr> <3CFB1069-5307-40F2-89DD-CA82CE2976A1@iki.fi> <87a7e01yxe.wl-jch@irif.fr> <5154BFF0-4BE3-4F72-AAA4-AC65DEDF2A97@iki.fi>
User-Agent: Wanderlust/2.15.9
MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue")
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.2.7 (korolev.univ-paris7.fr [194.254.61.138]); Sat, 29 Jun 2019 12:37:32 +0200 (CEST)
X-Miltered: at korolev with ID 5D173F6C.001 by Joe's j-chkmail (http : // j-chkmail dot ensmp dot fr)!
X-j-chkmail-Enveloppe: 5D173F6C.001 from mailhub.math.univ-paris-diderot.fr/mailhub.math.univ-paris-diderot.fr/null/mailhub.math.univ-paris-diderot.fr/<jch@irif.fr>
X-j-chkmail-Score: MSGID : 5D173F6C.001 on korolev.univ-paris7.fr : j-chkmail score : . : R=. U=. O=. B=0.000 -> S=0.000
X-j-chkmail-Status: Ham
Archived-At: <https://mailarchive.ietf.org/arch/msg/babel/fooVCfSlXBKx7UJoSTKGulZFyIU>
Subject: Re: [babel] Minor clarification to HMAC
X-BeenThere: babel@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "A list for discussion of the Babel Routing Protocol." <babel.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/babel>, <mailto:babel-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/babel/>
List-Post: <mailto:babel@ietf.org>
List-Help: <mailto:babel-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/babel>, <mailto:babel-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 29 Jun 2019 10:37:40 -0000

> I think I am being dense (I haven’t looked at the protocol in awhile),

Perhaps we're not undestanding each other.  Let's work it out.

> a) babel-hmac does not have even reference to link-local address, and

Section 4.1:

   First, the node builds a pseudo-header that will participate in HMAC
   computation but will not be sent.
   [...]
   Src address   The source IP address of the packet.

RFC 6126bis Section 4:

   A Babel packet MUST be silently ignored unless its source address is
   either a link-local IPv6 address or an IPv4 address belonging to the
   local network, and its source port is the well-known Babel port.

> Doesn’t this mean that by forging the link-local addresses (which are
> not included in HMAC)

They are included in HMAC computation, see citation from 4.1 above.

> and then replaying valid HMAC packets you can fill table as you want if
> this consideration is relaxed?

I don't think that's the case.  (And if you're right, then it's a serious
flaw indeed.)

-- Juliusz