Re: [Ace] Adoption of Low Latency Group Communication Security Work in ACE

Robert Cragie <robert.cragie@gmail.com> Wed, 27 July 2016 18:42 UTC

Return-Path: <robert.cragie@gmail.com>
X-Original-To: ace@ietfa.amsl.com
Delivered-To: ace@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8705512D873 for <ace@ietfa.amsl.com>; Wed, 27 Jul 2016 11:42:41 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.699
X-Spam-Level:
X-Spam-Status: No, score=-2.699 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.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 58xqu2k1N5F9 for <ace@ietfa.amsl.com>; Wed, 27 Jul 2016 11:42:39 -0700 (PDT)
Received: from mail-io0-x233.google.com (mail-io0-x233.google.com [IPv6:2607:f8b0:4001:c06::233]) (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 DDAAC12D815 for <ace@ietf.org>; Wed, 27 Jul 2016 11:42:38 -0700 (PDT)
Received: by mail-io0-x233.google.com with SMTP id m101so78504396ioi.2 for <ace@ietf.org>; Wed, 27 Jul 2016 11:42:38 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=K6N2rqH2MfqxFEJmMZPh4bWllWv4h1nCOEPGiAFVHCk=; b=WGntyo7mNEN5LdedmUQFykFWJDGowqMfV9qurtYkrpDlIThmmjtDyx+KNagNVtqogI DQN+iymdvas5I+o+doLupKC/ZEZ4pdTY/ZEtf5zPaSqv59TpZLN9PrjZLz+DFO7Y4w7W FpdrKQ+G7n+pIpkqtZh+P1M993XF7KkMoxIReQWiSB6mGuRAm3HtJhKWJNANH3yoMQdZ u34lu0mGPpP4iDmfM4M1z6ow2tfJqzJ/g5bRAxqgaHTqMzQyxYZGNmXyPxiECD0cmhNs s3imSJXlYA7PYvU1GY7KeR9Aamjq9GR7cK9JLJpb6VbqGBFxxtAOKaV554AuaNUXuUCR 9Fdg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=K6N2rqH2MfqxFEJmMZPh4bWllWv4h1nCOEPGiAFVHCk=; b=PAOQwlZ1+q4Z67ndQbSkU1t/bpbM2j8vxRRPgtrPHYWIYGn51t4+sDVpuMEbAkCZuG uULckS1ylzts9TAfHqY2XF+PsPux9NlVYhQwQP3mcVoi/nO5k4rd/9wv6IV2pti4kF3l rSyMD6IRYtWRtmA3MpE34MBJjDfhEVZUmFC2rijjLKhaRKThI2ockCTMVUTMaEOAdcxf JW+jtlT4b+9ZY+eAfMfSyhTWjChqw+Jwd7cObXZJA8PY5l1s6ABvx0RyTflWPNmGV6xp 9xqUVS7AN/+2Rng84JXQd2rNCP2IM+7yukgq7oFYzHZHmtQbOfcqznl+Hqm6waCPM5A6 fzOA==
X-Gm-Message-State: AEkoouuUqcC6Qg/Zfw6X2iIc0tHGM6MINjA9jqcZpDlactaZX+UjV6x2XtdzN+mf55tagOY8PaumCsDuvG3dvw==
X-Received: by 10.107.191.132 with SMTP id p126mr32624386iof.189.1469644958177; Wed, 27 Jul 2016 11:42:38 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.79.128.149 with HTTP; Wed, 27 Jul 2016 11:42:37 -0700 (PDT)
In-Reply-To: <691e0edb-ad66-932b-56f9-c6af763611e4@comcast.net>
References: <578F4D59.8050005@gmx.net> <8ca27108-a8b9-7b07-e752-656247716708@comcast.net> <HE1PR0601MB22030003D2913DA6096CB3E4FC0D0@HE1PR0601MB2203.eurprd06.prod.outlook.com> <a318cda7-ebf2-5a5c-d86a-9d67fb41a82f@comcast.net> <HE1PR0601MB2203D1C2C96278B23D71AD31FC0D0@HE1PR0601MB2203.eurprd06.prod.outlook.com> <f293e325-bea2-5c27-c677-563f05c60da0@cs.tcd.ie> <bf8531981ecd4a0db3607f9ef5328d38@VI1PR9003MB0237.MGDPHG.emi.philips.com> <8bbc028d-0960-3f93-ccc2-e8746fd98ca6@gmail.com> <579d47e5f90a43e194135e8c46c82159@VI1PR9003MB0237.MGDPHG.emi.philips.com> <CAHbuEH4Z071rdTf=x0bUKd3tkt_r-0k5-vXsYYeoHQrgH1AnTg@mail.gmail.com> <CAHbuEH6CnhHPoJ+pSsYxuUur-AQscLeHsJmEBs4je_cGAeLGsA@mail.gmail.com> <de53e908-9b1f-fe74-46fa-a78a07b8ea76@comcast.net> <CAHbuEH4oQyYi2MT8wN6gHbyGg6wWUFfbV8oJ6MKRempVetY4yw@mail.gmail.com> <f582bf5a1daf4f25af17f62592c284ce@HE1PR9003MB0234.MGDPHG.emi.philips.com> <CADrU+dLu7NyjOw0hMUavA_BBu=HJoWuSX6brHjQhYz=ZBxLJkA@mail.gmail.com> <691e0edb-ad66-932b-56f9-c6af763611e4@comcast.net>
From: Robert Cragie <robert.cragie@gmail.com>
Date: Wed, 27 Jul 2016 19:42:37 +0100
Message-ID: <CADrU+dJVpthdX-q0_8pEPaov4N7BcF=TpBqCAt-e6SBMXqXofg@mail.gmail.com>
To: Michael StJohns <mstjohns@comcast.net>
Content-Type: multipart/alternative; boundary="001a114f325eadb34a0538a2615b"
Archived-At: <https://mailarchive.ietf.org/arch/msg/ace/e6gvakppKAXwAb6WxDToecqXx0Y>
X-Mailman-Approved-At: Wed, 27 Jul 2016 17:53:11 -0700
Cc: Kathleen Moriarty <kathleen.moriarty.ietf@gmail.com>, "Garcia Morchon O, Oscar" <oscar.garcia@philips.com>, "ace@ietf.org" <ace@ietf.org>
Subject: Re: [Ace] Adoption of Low Latency Group Communication Security Work in ACE
X-BeenThere: ace@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: "Authentication and Authorization for Constrained Environments \(ace\)" <ace.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ace>, <mailto:ace-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ace/>
List-Post: <mailto:ace@ietf.org>
List-Help: <mailto:ace-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ace>, <mailto:ace-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 27 Jul 2016 18:42:41 -0000

Mike,

Apart from the black/white aspect, I think we are actually in agreement,
i.e. I agree that using a public key-based signature is easily the most
practical and secure mechanism from a crypto perspective. If it is
practical for the application, it should be what is recommended, However,
Markus has concisely summed up different security levels. In other words,
there are alternatives to "use public key-based signatures or the sky will
fall on your head".

Robert

On 27 July 2016 at 17:06, Michael StJohns <mstjohns@comcast.net> wrote:

> On 7/26/2016 7:55 PM, Robert Cragie wrote:
>
>> Mike,
>>
>> My concern with this thread is that you seem to have a very black/white
>> assumption regarding the use of a symmetric group key. Defining a protocol
>> which allows use of a symmetric group key does not in itself imply that it
>> will be misused. It's a bit like saying we can't design an automobile
>> because the driver may be inept and cause a serious accident.
>>
>
> Hi Robert -
>
> I tend to have a very black/white assumption with most of the laws of
> physics.
>
>
>> However, I do agree with almost all the statements you have made
>> regarding the use of a symmetric group key apart from this one:
>>
>> MSJ >The receiver has no guaranteed way of knowing whether or not ANY
>> group member is compromised so the authentication is pretty much
>> meaningless.
>>
>> It is not meaningless, it still applies to the holder of the group key.
>> Sure, one of the group could be compromised and as you say purport to be
>> any member of the group (and there are still probably mitigations against
>> this) but an entity outside of the group will not be able to purport to be
>> in the group.
>>
>
> I remain confused as to how you think that is.
>
> I'm not a member of the group, but I convinced a member of the group to
> give me his copy of the group key (e.g. I broke in and stole it and he was
> none the wiser).  How do you differentiate between me and him?  In a
> message, what cryptographic evidence proves that a message came from a
> member of the group?  If you say group key, I say "stolen".
>
> I'm a member of the group but a bad actor - I'm masquerading as a
> controller instead of an actuator.  How do you prove I'm not a controller?
> In a message, what cryptographic evidence proves that the message came from
> a controller?  If you say group key, I say "hacked".
>
> Forget for a moment about the process of getting keys to the various
> devices (e.g. let's leave off the key management topic for a moment) and
> consider this case::
>
> A device builder builds 1000 devices, of which 900 are lightbulbs and 100
> are lightswitches and installs within all of them a single group key.  That
> group key is used - as is being described here - as the key for the
> switches to control all of the light bulbs.
>
> Note that at this point we're effectively at the same place a mesh with a
> key management protocol that is distributing a group key would be.  We just
> got there manually.
>
> An attacker manages to get his hands on one of the lightbulbs and extracts
> the group key.  He places his own device in the system which has the
> lighting network  interface on one side, a more general IP network
> interface on the other (complete with HTTP or Telnet or somesuch), and
> contains a copy of the group key and all the relevant protocols. Whenever
> the attacker wants,  he may use that group key to send out a control
> message to any of the lightbulbs.
>
> The addition of a key management protocol to distribute symmetric group
> keys does not improve this much if at all -- UNLESS you have wickedly good
> compromise detection mechanisms that allow you to identify and eject bad
> actors quickly.  But I can't actually think of a scenario where depending
> on good compromise detection without a human in the loop works well.
>
> Continuing - the addition of the key management protocol allows you to
> update the group key and hopefully send it to only good actors. But, even
> that provides little or no mitigation as an attacker can a) steal the
> identity keys for a device and passively tap the over the air negotiations.
> b) if that doesn't work, can steal the identity keys and replace a
> legitimate device with his own clone and use that to fake control messages,
> c) re-purpose an existing device to tell him the keys, etc.   There are
> mitigations for most of these, but they require secure elements.  Once you
> have secure elements, then the argument for not doing public key pretty
> much goes away.
>
> So it is not meaningless. There are many cases where groups can be small
>> and therefore (as you explain) the impact of compromise decreases.
>>
>
> It really is meaningless when N > 2.  And becomes even more meaningless
> (true, hard to go down from zero...) as N increases.
>
>
>
>
>
>> This leads to the points Abhinav and Kathleen have made. Security
>> policies can be put in place to limit the scope and distribution of group
>> keys. If the potential number in a group for a particular use case (taking
>> into account all the properties of that use case which may provide
>> additional mitigation) exceeds a certain amount then we can recommend that
>> symmetric group keys are not used.
>>
>
> You and I agree here.  My number is 3.  (It's actually 2, but Kerberos
> like systems are actually somewhat useful so its 3 with caveats).   I
> haven't heard an argument that makes sense for anything larger.
>
>
>
>
>> You mentioned secure element in an earlier e-mail; these facilities are
>> becoming more widely available and cheaper and are starting to appear in
>> low-cost microcontrollers today. As indeed are crypto elements, which would
>> then suggest the use of signing+verifying would be more appropriate as you
>> suggest.
>>
>> In a nutshell, I agree with your assessment regarding symmetric group
>> keys but there are always tradeoffs and I don't see how we can ban
>> something simply because it might be problematic if misused.
>>
>
> Hmm... the IETF seems poised to ban clear-text transmissions of any kind
> because they might be problematic if misused...
>
> Never mind.  In any case, Cyber-Physical is a different beast. We've
> started to see an upswing of attacks on poorly secured physical systems
> (power, military drones, etc).  I'm not sanguine about introducing a known
> bad solution that CANNOT be made secure without other assumptions (e.g. the
> secure element stuff).
>
>
> I've sketched out a few symmetric key multicast protocols that might work
> with secure elements, but they all require an interesting thing to provide
> any guarantees - that the secure element be able to prove (during the key
> exchange/update protocol) that it is a secure element by the definition of
> the protocol.  Think of it this way - it doesn't help to build a protocol
> that depends on secure elements for guarantees, if you can trivially defeat
> those guarantees by introducing a device that implements the protocols, but
> doesn't actually keep the keys in a secure element.
>
> So, I fall back on public key systems as being a lot less complex, a lot
> more flexible and a lot easier to understand than the nuances of symmetric
> key multicast.
>
> Later, Mike
>
>
>
>
>
>> Robert
>>
>>
>