This may be a bit extreme but how about a V2 115? This would come up as a 
feature with a new namespace (alongside the old one). If the old one would be 
selected the server would transparently intercept it and send the originating 
user a warning ("Your Jabber client is using old and flawed technology which 
could present a security risk. Please update it or contact the developers about 
XEP-115."); at such a point we could kill the standard (not just deprecate it) 
the server could ignore the stanza (and never route it).

This kind of functionality would be great for deprecating standards - not 115 
alone; but any bloopers we could make in the future.

Sent from my Windows® phone.

-----Original Message-----
From: Joe Hildebrand <[email protected]>
Sent: Tuesday, August 18, 2009 2:18 PM
To: XMPP Security <[email protected]>
Subject: Re: [Security] Trivial preimage attack against the entity      
capabilities protocol



On Jul 31, 2009, at 8:59 PM, Peter Saint-Andre wrote:

I haven't yet had time (at least since the XMPP Summit last week) to
think more about this problem. We did a lot of work in the more recent
versions of XEP-0115 to maintain backward compatibility, and it would be
a shame to lose all that work now. But sometimes sunk costs are a fact
of life...

Backward-compatibility is very important to me.  There is a LOT of XEP-115 
deployed out there.  My preferences are:

1) characterize exactly the sorts of strings that lead to attack.  Put wording 
in the XEP that allows detecting those attacks by disallowing certain 
combinations.  I'm not sure if that's possible, but, for example, forbidding 
empty type attributes in identities might mitigate attacks 2 and 3.

2) add a new feature that sorts at the end, or a new extension that sorts at 
the front to signal the shift between features and extensions

3) move extensions to deprecated, and have everyone who sends extensions be 
viewed with suspicion.  This is a distant last for me, since there were valid 
compromises that went into the inclusion of extensions in the first place. The 
last thing I want is for clients to go back to sending iq:version to everyone 
on the roster every time they receive presence.

Reply via email to