Re: [xmpp] IQ Handling vulnerabilities

Alexander Holler <holler@ahsoftware.de> Tue, 11 February 2014 15:15 UTC

Return-Path: <holler@ahsoftware.de>
X-Original-To: xmpp@ietfa.amsl.com
Delivered-To: xmpp@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 95B911A01A8 for <xmpp@ietfa.amsl.com>; Tue, 11 Feb 2014 07:15:06 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.208
X-Spam-Level:
X-Spam-Status: No, score=0.208 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HELO_EQ_DE=0.35, HELO_MISMATCH_DE=1.448, HOST_MISMATCH_NET=0.311, SPF_PASS=-0.001] autolearn=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 BE5HIA-pl16Q for <xmpp@ietfa.amsl.com>; Tue, 11 Feb 2014 07:15:05 -0800 (PST)
Received: from mail.ahsoftware.de (h1446028.stratoserver.net [85.214.92.142]) by ietfa.amsl.com (Postfix) with ESMTP id DC4A91A0376 for <xmpp@ietf.org>; Tue, 11 Feb 2014 07:15:03 -0800 (PST)
Received: by mail.ahsoftware.de (Postfix, from userid 65534) id B2036423C2E3; Tue, 11 Feb 2014 16:15:02 +0100 (CET)
Received: from eiche.ahsoftware (p57B23CD3.dip0.t-ipconnect.de [87.178.60.211]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.ahsoftware.de (Postfix) with ESMTPSA id 7A81D423C2E2 for <xmpp@ietf.org>; Tue, 11 Feb 2014 16:14:57 +0100 (CET)
Received: by eiche.ahsoftware (Postfix, from userid 65534) id 2B4417FA1B; Tue, 11 Feb 2014 16:14:56 +0100 (CET)
Received: from [IPv6:feeb::c685:8ff:fe12:175d] (unknown [IPv6:feeb::c685:8ff:fe12:175d]) (using TLSv1 with cipher ECDHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by eiche.ahsoftware (Postfix) with ESMTPS id C23DC7F829; Tue, 11 Feb 2014 15:14:37 +0000 (UTC)
Message-ID: <52FA3E53.3060009@ahsoftware.de>
Date: Tue, 11 Feb 2014 16:14:27 +0100
From: Alexander Holler <holler@ahsoftware.de>
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.2.0
MIME-Version: 1.0
To: Dave Cridland <dave@cridland.net>
References: <CAOb_FnxS-dMT85N7LHj5M9JWk3pL85=ugrDqaT7j5d28HBr0Cw@mail.gmail.com> <CF194491.38AD3%jhildebr@cisco.com> <2F5E925F-021D-408E-91D9-3CC5BEB6BEC6@nostrum.com> <48F4D361-4403-47E6-862D-FBDDDEBCC642@xnyhps.nl> <CF1A369C.38BE2%jhildebr@cisco.com> <CAKHUCzyCwKbmnUoXLHW=XzYbiFrcg-dQsDojGUnA-_r3qK+_Vg@mail.gmail.com> <CF1A4928-54B5-4A95-9A4B-0EC572A3CDBD@cisco.com> <CF1E56C5.38F45%jhildebr@cisco.com> <B671D7DA-CE9A-4A2C-8EDE-BF94F5F6FE82@xnyhps.nl> <52FA165B.8050901@ahsoftware.de> <CAKHUCzzhxKLbkNE=WjtP9S6XWm14-5e7Ut150x4k1akegm+1Qw@mail.gmail.com>
In-Reply-To: <CAKHUCzzhxKLbkNE=WjtP9S6XWm14-5e7Ut150x4k1akegm+1Qw@mail.gmail.com>
Content-Type: text/plain; charset=ISO-8859-15
Content-Transfer-Encoding: 7bit
Cc: XMPP Working Group <xmpp@ietf.org>, Ben Campbell <ben@nostrum.com>
Subject: Re: [xmpp] IQ Handling vulnerabilities
X-BeenThere: xmpp@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: XMPP Working Group <xmpp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/xmpp>, <mailto:xmpp-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/xmpp/>
List-Post: <mailto:xmpp@ietf.org>
List-Help: <mailto:xmpp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/xmpp>, <mailto:xmpp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 11 Feb 2014 15:15:06 -0000

Am 11.02.2014 13:29, schrieb Dave Cridland:
> On Tue, Feb 11, 2014 at 12:23 PM, Alexander Holler <holler@ahsoftware.de>wrote;wrote:
> 
>> Hmm, in all these mails it was never be mentioned that IDs still have to
>> be unique over some time for one session. I'm not sure if such is given
>> with the above constructs. It might be very unlikely that the same ID will
>> appear twice, but someone has to take a deeper look at it when using such
>> constructs like above. Of course, in reality the window in time IDs must be
>> unique is rather small, but ...
>>
> 
> You'd need random collisions amongst cryptographically secure hashes.
> You're pretty safe.

I don't aggree. You are safe if you use the hash as intendend, but not
if you just use some part of the hash(-number) or hashes of hashes. I'm
not sure about how safe it is (in regard to collisions) if you look at
consequent hashes of hashes. I would assume that is not what
cryptographers do look for (primarily).

At least I can't remember to have seen some discussion if the series of
hash(hash(hash(...))) is collision free (that is imho quiet different
than hash(random); hash(random)). Of course, I'm not looking that often
at cryptographic papers, I usually prefer if cryptographers do such. ;)

> In practise, ids do not have to be unique anyway, even over a small window.
> Most MUC implementations preserve ids on broadcast, for instance, to no
> ill-effect.

How do you track responses if you don't have unique IDs? Unique IDs
might not be necessary for everything, but usually you are unable to
match a response to a request without having unique IDs in consequent
requests (of the same session).

Regards,

Alexander Holler