On Mon Oct 13 22:22:02 2008, Andrew Plotkin wrote:
On Mon, 13 Oct 2008, Peter Saint-Andre wrote:

c) Attacker knows full jid, and can determine if it is online.

In principle, this is the simplest case. Aside from the above <message/> attack - messages to offline full jids are processed just like those to bare jids - there is also the <iq/> case - send an <iq/> and you will receive either a result (user online), or an error, and by sending the same <iq/> to the server, one might distinguish between online and offline.

There are two possible branches here:

1. Does the attacker receive different responses (e.g., a completely
different error condition)?

2. Can the attacker differentiate between the same response from the
server and from the client (e.g., the client includes an old 'code'
attribute but the server does not)?

Or the round-trip time for a server-generated error is shorter than that for a client-generated error. (Or a client error rewritten by the server.)


Timing attacks are tricky in many cases, unless you happen to be on the same server.


Between timing attacks and low-level formatting details (whitespace, order of attributes), getting a server to imitate a client is a scary minefield.

Ah, no, I'm not suggesting that, I'm suggesting that servers intercept client errors and coerce them into the form, at least mitigating branch 2.

If a client is giving an entirely different error, the client is at fault, or else is (apparently) intentionally revealing presence.

Dave.
--
Dave Cridland - mailto:[EMAIL PROTECTED] - xmpp:[EMAIL PROTECTED]
 - acap://acap.dave.cridland.net/byowner/user/dwd/bookmarks/
 - http://dave.cridland.net/
Infotrope Polymer - ACAP, IMAP, ESMTP, and Lemonade

Reply via email to