Re: [kitten] rpcsec-gssv3 multi-principal authentication
Benjamin Kaduk <kaduk@mit.edu> Wed, 03 September 2014 20:52 UTC
Return-Path: <kaduk@mit.edu>
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 1F3C61A6FD4; Wed, 3 Sep 2014 13:52:48 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.869
X-Spam-Level:
X-Spam-Status: No, score=-4.869 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-0.668, 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 s6RdKV-hvGEv; Wed, 3 Sep 2014 13:52:46 -0700 (PDT)
Received: from dmz-mailsec-scanner-7.mit.edu (dmz-mailsec-scanner-7.mit.edu [18.7.68.36]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 978B01A06E0; Wed, 3 Sep 2014 13:51:57 -0700 (PDT)
X-AuditID: 12074424-f79346d000004923-87-54077f6bd381
Received: from mailhub-auth-4.mit.edu ( [18.7.62.39]) (using TLS with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) by dmz-mailsec-scanner-7.mit.edu (Symantec Messaging Gateway) with SMTP id 49.D9.18723.B6F77045; Wed, 3 Sep 2014 16:51:55 -0400 (EDT)
Received: from outgoing.mit.edu (outgoing-auth-1.mit.edu [18.9.28.11]) by mailhub-auth-4.mit.edu (8.13.8/8.9.2) with ESMTP id s83Kpsdb004731; Wed, 3 Sep 2014 16:51:55 -0400
Received: from multics.mit.edu (system-low-sipb.mit.edu [18.187.2.37]) (authenticated bits=56) (User authenticated as kaduk@ATHENA.MIT.EDU) by outgoing.mit.edu (8.13.8/8.12.4) with ESMTP id s83Kpq0O001912 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Wed, 3 Sep 2014 16:51:54 -0400
Received: (from kaduk@localhost) by multics.mit.edu (8.12.9.20060308) id s83Kpqme026440; Wed, 3 Sep 2014 16:51:52 -0400 (EDT)
Date: Wed, 03 Sep 2014 16:51:51 -0400
From: Benjamin Kaduk <kaduk@mit.edu>
To: "Adamson, Andy" <William.Adamson@netapp.com>
In-Reply-To: <7F59B011-C2A7-4222-80A9-5FDC49901145@netapp.com>
Message-ID: <alpine.GSO.1.10.1409031642540.21571@multics.mit.edu>
References: <DC941FEB-725A-49E1-8C38-FF765454827C@netapp.com> <20140730163006.GG26316@fieldses.org> <alpine.GSO.1.10.1407311902230.21571@multics.mit.edu> <9BF7E3EA-59DB-4B91-A27A-659790AED727@netapp.com> <alpine.GSO.1.10.1408030153400.21571@multics.mit.edu> <alpine.GSO.1.10.1408201123060.21571@multics.mit.edu> <alpine.GSO.1.10.1409021306240.21571@multics.mit.edu> <7F59B011-C2A7-4222-80A9-5FDC49901145@netapp.com>
User-Agent: Alpine 1.10 (GSO 962 2008-03-14)
MIME-Version: 1.0
Content-Type: MULTIPART/MIXED; BOUNDARY="-559023410-102982122-1409777512=:21571"
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprMKsWRmVeSWpSXmKPExsUixG6nrptdzx5i0PNS3eLo5lUsFrPfP2K1 mL7IyoHZY8mSn0weMz59YQtgiuKySUnNySxLLdK3S+DKmLs2omCKTMWkWU/ZGxi3inUxcnJI CJhIHOl5yAZhi0lcuLceyObiEBKYzSSxZMIUZpCEkMAGRomJfUUQiYNMEm/mfWOHSNRLfH63 BKybRUBLov/DfBYQm01ARaKh+zJQMweHiICBxMalqiBhZgF7iZ5dr8DKhQUsJB5OWwQ2n1PA TuLd37dgI3kFHCUu7/nEDLFrIbPEj+kXWEESogI6Eqv3T2GBKBKUODnzCQvE0ACJCd8nM09g FJyFJDULSQrC1pO4NbsTytaWuH+zjW0BI8sqRtmU3Crd3MTMnOLUZN3i5MS8vNQiXXO93MwS vdSU0k2M4PB2UdnB2HxI6RCjAAejEg+vhx9biBBrYllxZe4hRkkOJiVR3qZa9hAhvqT8lMqM xOKM+KLSnNTiQ4wSHMxKIrw1IDnelMTKqtSifJiUNAeLkjjvW2urYCGB9MSS1OzU1ILUIpis DAeHkgSvYx1Qo2BRanpqRVpmTglCmomDE2Q4D9BwsBre4oLE3OLMdIj8KUZdjnWd3/qZhFjy 8vNSpcR5hUGKBECKMkrz4ObA0tIrRnGgt4R57UCqeIApDW7SK6AlTEBL3HJYQZaUJCKkpBoY J5g9ZIp2N/3Bc+L7s+brZZN/2Bqm7yrdlGfeL2Fvy1xwcekEy93lBb7mi/5vKsvKD9kpdoTl 0QVG/cNPK/xDwiOWTin/+XXR7QlLYnVUr53ivloedTJAwtLthk3vvtNek4Lvrpzzsa6qWotB geuEfWvQmw3zORk/xR9cfu6Vd0HbyxR2TyVJJZbijERDLeai4kQAnXoxLyYDAAA=
Archived-At: http://mailarchive.ietf.org/arch/msg/kitten/ZhHk-y45v71epjEMW-rhtaZZUog
Cc: "kitten@ietf.org" <kitten@ietf.org>, NFSv4 <nfsv4@ietf.org>
Subject: Re: [kitten] rpcsec-gssv3 multi-principal authentication
X-BeenThere: kitten@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
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: Wed, 03 Sep 2014 20:52:48 -0000
On Wed, 3 Sep 2014, Adamson, Andy wrote: > > On Sep 2, 2014, at 1:13 PM, Benjamin Kaduk <kaduk@MIT.EDU> wrote: > > Hi Ben > > Vacation. Thanks for the review. Comments inline... Ah, understood. Hope it was relaxing :) > > draft-08 section 2.6.1.1. Multi-principal Authentication > > RPCSEC_GSSv3 clients MAY assert a multi-principal authentication of > the client host principal and a user principal. This feature is > needed, for example, when a client wishes to use authority assertions > that the server may only grant if a user and a client are > authenticated together to the server. Thus a server may refuse to > grant requested authority to a user acting alone (e.g., via an > unprivileged user-space program), or to a client acting alone (e.g. > when a client is acting on behalf of a user) but may grant requested > authority to a client acting on behalf of a user if the server > identifies the user and trusts the client. > > It is assumed that an unprivileged user-space program would not have > access to client host credentials needed to establish a GSS-API > security context authenticating the client to the server, therefore > an unprivileged user-space program could not create an RPCSEC_GSSv3 > RPCSEC_GSS_CREATE message that successfully binds a client and a user > security context. > > I believe the above last paragraph addresses this issue. Do we need to > make this section stronger, or perhaps clarify? > > Indeed, an attacker that has it’s own parent RPCSEC context ( e.g. a > proveable client machine-credential context ) can have her way. > > This is nothing new as an attacker with such a context has ‘root’ for > that machine in the RPCSEC world and can do a whole bunch of mischief :) I'm not considering the same machine; I'm thinking about a different machine. Maybe I can be more clear with an explicit example using NFS, instead of talking about rpcsec-gss in the abstract. Alice is a mortal user on machine A, and machine A runs an NFS client. Machine A has its secure host-specific credentials (nfs/A@REALM or host/A@REALM or whatever), and Alice has credentials for alice@REALM. Eve doesn't even have an account on machine A, but has root on machine B, which also has host-specific credentials (host/B@REALM), and Eve can spy on the NFS traffic between A and the NFS server (call it S). A's NFS client has to do an RPCSEC_GSS_CREATE RPC to be able to act as Alice. My claim is that Eve can see the network traffic from that RPC (just the request; the reply should not be needed), and use an evil NFS client on her machine B, to make her own RPCSEC_GSS_CREATE request, that contains the same rca_mp_auth field as the RPC from A, and with the result of that RPC, Eve's NFS client has an rpcsec-gss context handle that lets Eve read and write files as alice@REALM. > That said, I suppose we could replace the nonce with the > RPCSEC_GSS_CREATE reply verifier data and prevent such an attacker from > acting on behalf of a user. Hmm, if the verifier is signed using the outer context's GSS context, that might be enough to produce the required binding. I would need to think about it more. -Ben
- [kitten] draft-ietf-nfsv4-rpcsec-gssv3: request f… Adamson, Andy
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… J. Bruce Fields
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Benjamin Kaduk
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Benjamin Kaduk
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Nico Williams
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… J. Bruce Fields
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Adamson, Andy
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Adamson, Andy
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Adamson, Andy
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Nico Williams
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Nico Williams
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Benjamin Kaduk
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Benjamin Kaduk
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Benjamin Kaduk
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Benjamin Kaduk
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Nico Williams
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Nico Williams
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Nico Williams
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… J. Bruce Fields
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Adamson, Andy
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Nico Williams
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Nico Williams
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Adamson, Andy
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Benjamin Kaduk
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Nico Williams
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Nico Williams
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Benjamin Kaduk
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Nico Williams
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Adamson, Andy
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Nico Williams
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Nico Williams
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Benjamin Kaduk
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Benjamin Kaduk
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Adamson, Andy
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Benjamin Kaduk
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Nico Williams
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Adamson, Andy
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Nico Williams
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Adamson, Andy
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Nico Williams
- [kitten] rpcsec-gssv3 multi-principal authenticat… Benjamin Kaduk
- Re: [kitten] rpcsec-gssv3 multi-principal authent… Benjamin Kaduk
- Re: [kitten] [nfsv4] rpcsec-gssv3 multi-principal… Nico Williams
- Re: [kitten] rpcsec-gssv3 multi-principal authent… Adamson, Andy
- Re: [kitten] [nfsv4] rpcsec-gssv3 multi-principal… J. Bruce Fields
- Re: [kitten] [nfsv4] rpcsec-gssv3 multi-principal… Nico Williams
- Re: [kitten] [nfsv4] rpcsec-gssv3 multi-principal… J. Bruce Fields
- Re: [kitten] [nfsv4] rpcsec-gssv3 multi-principal… Benjamin Kaduk
- Re: [kitten] [nfsv4] rpcsec-gssv3 multi-principal… Nico Williams
- Re: [kitten] [nfsv4] rpcsec-gssv3 multi-principal… J. Bruce Fields
- Re: [kitten] rpcsec-gssv3 multi-principal authent… Benjamin Kaduk
- Re: [kitten] [nfsv4] rpcsec-gssv3 multi-principal… Benjamin Kaduk
- Re: [kitten] [nfsv4] rpcsec-gssv3 multi-principal… Nico Williams
- Re: [kitten] [nfsv4] rpcsec-gssv3 multi-principal… Adamson, Andy
- Re: [kitten] [nfsv4] rpcsec-gssv3 multi-principal… Nico Williams
- Re: [kitten] [nfsv4] rpcsec-gssv3 multi-principal… Adamson, Andy
- Re: [kitten] [nfsv4] draft-ietf-nfsv4-rpcsec-gssv… Benjamin Kaduk