Re: [sasl] draft-ietf-sasl-scram-11: why don't include the authentication identity in the stored key?
Simon Josefsson <simon@josefsson.org> Tue, 22 June 2010 11:25 UTC
Return-Path: <simon@josefsson.org>
X-Original-To: sasl@core3.amsl.com
Delivered-To: sasl@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 9975E3A69A3 for <sasl@core3.amsl.com>; Tue, 22 Jun 2010 04:25:42 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.562
X-Spam-Level:
X-Spam-Status: No, score=-0.562 tagged_above=-999 required=5 tests=[AWL=-0.863, BAYES_50=0.001, MIME_8BIT_HEADER=0.3]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id x6ebi1eD+hUX for <sasl@core3.amsl.com>; Tue, 22 Jun 2010 04:25:41 -0700 (PDT)
Received: from yxa-v.extundo.com (yxa-v.extundo.com [83.241.177.39]) by core3.amsl.com (Postfix) with ESMTP id 6A9813A69B0 for <sasl@ietf.org>; Tue, 22 Jun 2010 04:25:40 -0700 (PDT)
Received: from mocca (c80-216-29-48.bredband.comhem.se [80.216.29.48]) (authenticated bits=0) by yxa-v.extundo.com (8.14.3/8.14.3/Debian-5+lenny1) with ESMTP id o5MBPYvW012866 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT); Tue, 22 Jun 2010 13:25:36 +0200
From: Simon Josefsson <simon@josefsson.org>
To: Jehan Pagès <jehan.marmottard@gmail.com>
References: <AANLkTinl6-npKB1MjYmQIVehy4yqwgnWzipvPr7AaeYd@mail.gmail.com> <4C207D29.4030600@isode.com> <AANLkTimgW8c2T3vuE7Kjp4zWB9BoZXgK1Pzc0zsdIesh@mail.gmail.com>
OpenPGP: id=B565716F; url=http://josefsson.org/key.txt
X-Hashcash: 1:22:100622:alexey.melnikov@isode.com::r18uhThFD6DDuODy:74A
X-Hashcash: 1:22:100622:sasl@ietf.org::0agbLw+jc9g+5zGr:60vZ
X-Hashcash: 1:22:100622:jehan.marmottard@gmail.com::PtttkKcg4W9Joh5O:FocW
Date: Tue, 22 Jun 2010 13:25:27 +0200
In-Reply-To: <AANLkTimgW8c2T3vuE7Kjp4zWB9BoZXgK1Pzc0zsdIesh@mail.gmail.com> ("Jehan Pagès"'s message of "Tue, 22 Jun 2010 20:19:28 +0900")
Message-ID: <87d3vjnwbc.fsf@mocca.josefsson.org>
User-Agent: Gnus/5.110011 (No Gnus v0.11) Emacs/23.1 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: 8bit
X-Virus-Scanned: clamav-milter 0.96.1 at yxa-v
X-Virus-Status: Clean
Cc: Alexey Melnikov <alexey.melnikov@isode.com>, sasl@ietf.org
Subject: Re: [sasl] draft-ietf-sasl-scram-11: why don't include the authentication identity in the stored key?
X-BeenThere: sasl@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: SASL Working Group <sasl.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/sasl>, <mailto:sasl-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/sasl>
List-Post: <mailto:sasl@ietf.org>
List-Help: <mailto:sasl-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/sasl>, <mailto:sasl-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 22 Jun 2010 11:25:42 -0000
Jehan Pagès <jehan.marmottard@gmail.com> writes: > Hi, > > 2010/6/22 Alexey Melnikov <alexey.melnikov@isode.com>: >> Jehan Pagès wrote: >>> But if the username was included in the StoredKey algorithm (for >>> instance instead of salting the password only, you could salt >>> [authentication identity + UTF8NUL + password]), noone having the >>> stored key (whether the server itself or someone having gained access >>> to it on the user's computer for instance) could use it to access any >>> service other than the one it was stored for, EVEN IF this other >>> service has the same salt and iteration count by some extraordinary >>> chance, unless the same authentication identity is also used on both >>> service (which might be improbable, though not impossible, as such >>> identity often include a service domain). >>> >>> Isn't it better for security (though I agree that the chances of >>> having same salt and iteration count are weak, here they would be even >>> weaker)? Moreover in my opinion, associating the >>> username/authentication identity and the password seems a nicer design >>> (by including them both into the Stored key). >>> >> >> I think you are right about security aspect of this. What you suggest was >> done for DIGEST-MD5. The problem with that is that any change to the >> authentication identity invalidates the hash containing it, so sysadmins >> can't rename the user without also resetting the corresponding password. >> Authentication identity changes is a sufficiently important problem for big >> enterprise and university deployments, so it was decided that it was more >> important to make sysadmin job easier than the security aspect. >> > > I understand the argument. So it seems this "issue" has indeed been > already thought of. Is it so common to massively change authentication > identities in a running system? Yes. I've designed a proprietary implementation which also hashed the username in the server-side hashed key, and deployment has been a pain because administrators do want the ability to move "password-hashes" between usernames. I agree with you that allowing this weakens the security somewhat, but practical matters appears to be more important. I don't view it as a significant security problem. > Because considering that many users use the same password everywhere, > here this stored key really makes me think of an universal key which, > once acquired, enter any system whatever the login name or the service > is (no authentication identity, no realm in the stored key), like some > ssh key without a password (so once obtained, such ssh key enables a > malicious user to enter any remote computer the actual user has the > right to enter). > Of course the salt/iteration count makes this issue less problematic, > but it is still a weakness in my opinion. If salt is not chosen randomly by each system, there is definitely a risk. However, this is not how we want things to be deployed, and I don't think it is how it is being deployed either? Time will tell. /Simon
- [sasl] draft-ietf-sasl-scram-11: why don't includ… Jehan Pagès
- Re: [sasl] draft-ietf-sasl-scram-11: why don't in… Alexey Melnikov
- Re: [sasl] draft-ietf-sasl-scram-11: why don't in… Jehan Pagès
- Re: [sasl] draft-ietf-sasl-scram-11: why don't in… Simon Josefsson