Re: [Ace] Security of the Communication Between C and RS

Stefanie Gerdes <gerdes@tzi.de> Tue, 18 December 2018 14:47 UTC

Return-Path: <gerdes@tzi.de>
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 04C9A126CC7 for <ace@ietfa.amsl.com>; Tue, 18 Dec 2018 06:47:56 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.2
X-Spam-Level:
X-Spam-Status: No, score=-4.2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3] 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 ZyY5OP2bgU4K for <ace@ietfa.amsl.com>; Tue, 18 Dec 2018 06:47:54 -0800 (PST)
Received: from smtp.uni-bremen.de (gabriel-vm-2.zfn.uni-bremen.de [134.102.50.17]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 4896A124B0C for <ace@ietf.org>; Tue, 18 Dec 2018 06:47:54 -0800 (PST)
Received: from [192.168.1.109] (p508A4EFC.dip0.t-ipconnect.de [80.138.78.252]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.uni-bremen.de (Postfix) with ESMTPSA id A67A3209F0; Tue, 18 Dec 2018 15:47:52 +0100 (CET)
To: Hannes Tschofenig <Hannes.Tschofenig@arm.com>, Ludwig Seitz <ludwig.seitz@ri.se>, Jim Schaad <ietf@augustcellars.com>, "ace@ietf.org" <ace@ietf.org>
References: <154322421294.8323.8505315870685563404.idtracker@ietfa.amsl.com> <cbd083d1-cb95-0732-aa8b-7c7de3f480d1@ri.se> <a0cdd836-7fe3-339e-0c48-961503857447@tzi.de> <03b601d49191$7d1bb400$77531c00$@augustcellars.com> <945fbebe-659f-ac72-3ab6-8e05447e7c92@ri.se> <1c5b81f3-50ce-be68-bec3-68ce2ff15b43@tzi.de> <4ae4eccd-68bf-18ef-f909-142f8172eca1@ri.se> <81ba3ab4-a9ce-a6fd-fbe6-c36a6fbbd9a5@tzi.de> <VI1PR0801MB2112E04F9FD7412350995417FAA20@VI1PR0801MB2112.eurprd08.prod.outlook.com>
From: Stefanie Gerdes <gerdes@tzi.de>
Message-ID: <b3aa33a9-9a04-f741-35f1-9037b58bb636@tzi.de>
Date: Tue, 18 Dec 2018 15:47:52 +0100
User-Agent: Mozilla/5.0 (X11; Linux i686 on x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0
MIME-Version: 1.0
In-Reply-To: <VI1PR0801MB2112E04F9FD7412350995417FAA20@VI1PR0801MB2112.eurprd08.prod.outlook.com>
Content-Type: text/plain; charset=windows-1252
Content-Transfer-Encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/ace/qwKce93bFDTNCDpXRnnOf0GTTLY>
Subject: Re: [Ace] Security of the Communication Between C and RS
X-BeenThere: ace@ietf.org
X-Mailman-Version: 2.1.29
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: Tue, 18 Dec 2018 14:47:56 -0000

Hi Hannes,

On 12/15/2018 04:04 PM, Hannes Tschofenig wrote:
> Hi Steffi,
> 
> ~snip~
> 
> 
>> I also think that the client must be able to assume that RS' RPK that C receives from AS is also valid as long as the token, unless C has additional information.
> 
> I would think that it is rather unlikely that the RS will change its public/private key pair so quickly. Right?

I don't really know what you mean with "quickly". Access tokens may be
valid for a long time, depending on the application scenario. Also, RS
may already have its RPK for a while at the time when AS generates the
access token. RPKs do not contain semantic information and C may not
have additional information about the RPK. Therefore, C must be able to
assume that the RS' RPK is valid as long as the access token.

> 
>> The access information optionally can contain an expires_in field. It would help to prevent security breaches under the following conditions:
> 1. the keying material is valid as long as the ticket, 2. the expires_in field is present in the access information that AS sends to C, 3. the client checks the expires_in field when it gets the access information from the AS, and 4. the client checks if the keying material is still valid each time before it sends a request to RS.
> 
> These checks make sense to me.
> 
> 
>> Without these steps, the confidentiality of the request data that C sends to RS may be breached, and C may communicate with the wrong RS using outdated keying material.
> 
> Not sure how you came to this conclusion. Why is the request sent by the C to the RS revealed to an attacker when the token expires?

I did not refer to the token, but to the keying material for RS that AS
provides to C. If it is outdated, it may have been compromised.

Viele Grüße
Steffi