Re: [kitten] RFC2743 errata 4251

mrex@sap.com (Martin Rex) Mon, 15 December 2014 21:59 UTC

Return-Path: <mrex@sap.com>
X-Original-To: kitten@ietfa.amsl.com
Delivered-To: kitten@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id F2A311A013B for <kitten@ietfa.amsl.com>; Mon, 15 Dec 2014 13:59:41 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.551
X-Spam-Level:
X-Spam-Status: No, score=-6.551 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HELO_EQ_DE=0.35, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001] autolearn=ham
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 xSXS7V3eYzwz for <kitten@ietfa.amsl.com>; Mon, 15 Dec 2014 13:59:40 -0800 (PST)
Received: from smtpde01.smtp.sap-ag.de (smtpde01.smtp.sap-ag.de [155.56.68.170]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 79D631A0137 for <kitten@ietf.org>; Mon, 15 Dec 2014 13:59:40 -0800 (PST)
Received: from mail05.wdf.sap.corp (mail05.sap.corp [194.39.131.55]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtpde01.smtp.sap-ag.de (Postfix) with ESMTPS id 4F9E93A2FC; Mon, 15 Dec 2014 22:59:39 +0100 (CET)
Received: from ld9781.wdf.sap.corp (ld9781.wdf.sap.corp [10.21.82.193]) by mail05.wdf.sap.corp (Postfix) with ESMTP id 470E544E8B; Mon, 15 Dec 2014 22:59:39 +0100 (CET)
Received: by ld9781.wdf.sap.corp (Postfix, from userid 10159) id 3D0AD1B085; Mon, 15 Dec 2014 22:59:39 +0100 (CET)
In-Reply-To: <20141215215231.EF6F31B085@ld9781.wdf.sap.corp>
To: mrex@sap.com
Date: Mon, 15 Dec 2014 22:59:39 +0100
X-Mailer: ELM [version 2.4ME+ PL125 (25)]
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="US-ASCII"
Message-Id: <20141215215939.3D0AD1B085@ld9781.wdf.sap.corp>
From: mrex@sap.com
Archived-At: http://mailarchive.ietf.org/arch/msg/kitten/jEBz0YfyOev6tGlVdfIQaaH0W_8
Cc: kitten@ietf.org
Subject: Re: [kitten] RFC2743 errata 4251
X-BeenThere: kitten@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
Reply-To: mrex@sap.com
List-Id: Common Authentication Technologies - Next Generation <kitten.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/kitten>, <mailto:kitten-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/kitten/>
List-Post: <mailto:kitten@ietf.org>
List-Help: <mailto:kitten-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/kitten>, <mailto:kitten-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 15 Dec 2014 21:59:42 -0000

Sorry, fixing a typo and clarifying.

The "early message protection" facilities will only ever succeed
for early message protection (gss_wrap(), gss_getmic()), but will _never_
succeed for early message un-protection (gss_unwrap(), gss_verifymic()).

-Martin


I wrote:
>
> Nico Williams wrote:
>> On Mon, Dec 15, 2014 at 12:20:30PM -0500, Greg Hudson wrote:
>>> On 12/10/2014 01:57 PM, Benjamin Kaduk wrote:
>>>>      Though future GSS-API extensions may add new uses of asynchronous
>>>>      security context tokens and ways to process them, applications
>>>>      using the GSS-API version 2, update 1, should generally call
>>>>      GSS_Delete_sec_context() after calling GSS_Process_context_token(),
>>>>      when the latter returns GSS_S_COMPLETE or GSS_S_FAILURE.
>>> 
>>> I don't like the wording of this part.  Encouraging applications to
>>> assume that context tokens destroy the context essentially closes the
>>> door to specifying context tokens which don't.
> 
> GSS_Process_context_token() will typically mark a security context
> as "no longer usable" (but leave the context handle itself intact).
> It is a "local matter" (read: implementation defined) whether
> a gssapi mechanism destroys cryptographic keying material associated
> with the security context handle already within GSS_Process_context_token()
> or only upon cleanup when GSS_Delete_sec_context() is called.
> 
> 
> 
>>> 
>>> (To be clear: saying that applications must eventually call
>>> GSS_Delete_sec_context() is fine; saying that they should do so
>>> immediately after a GSS_S_COMPLETE from GSS_Process_context_token() is
>>> not fine.)
>> 
>> GSS-APIv2u1 callers can still call GSS_Unwrap(), GSS_VerifyMIC(), and
>> GSS_Pseudo_random()[*], and even GSS_Wrap() and GSS_GetMIC() before
>> calling GSS_Delete_sec_context(), however,
> 
> You mean calling GSS_Unwrap(), GSS_VerifyMIC(), GSS_Wrap()
> GSS_GetMIC() _after_ calling GSS_Delete_sec_context() ?
> 
> Nope.
> 
> That GSS_Unwrap() or GSS_VerifyMIC() still works is at least somewhat
> unlikely for "regular" context deletion tokens, but guaranteed
++ to fail for
> context error tokens that report a context establishment failure.
> 
> A gssapi mechanism that would have GSS_Wrap() or GSS_GetMIC() work after
> processing a context deletion token would be somewhat silly, because
> the mechanism knows _reliably_ that there exists noone that could
> process the results.