On 03/13/2012 11:06 PM, Dave Platt wrote:
Ouch.  That isn't going to be so easy to spot, then!  You would have to guess
a bunch of likely passwords, fake up a challenge with some known nonce, and
compare the response against those you would expect with each of the various
possible passwords.  (You've already got the Source Code to do all this, of
course.)

You'll have to try the selective unplugging method instead .....
There may be a way to do this, even in the face of the nonce-and-hash
security system.

As I understand it:  when a system (re)registers with a good
password, what you'll typically see is:

-  A registration request from the client (with the client's ID
    in the SIP parameters)

-  A response from Asterisk, saying something on the order of
    "Stale authentication.  Try again.  Here's a new nonce for you."

-  Another registration request from the same client, specifying
    the newly-issued nonce, and having a hash based on that nonce and
    the shared secret.

-  An "OK" response from Asterisk.

When a system (re)registers, and has the wrong password/secret,
the exchange will be different.

-  A registration request from the client (with the client's ID
    in the SIP parameters)

-  A response from Asterisk, saying something on the order of
    "Stale authentication.  Try again.  Here's a new nonce for you."

-  Another registration request from the same client, specifying
    the newly-issued nonce, and having a hash based on that nonce and
    the shared secret.

-  A response from Asterisk, rejecting the second registration request
    with something like a "bad digest" error.

So, if you examine all of the SIP protocol exchanges taking place,
you should see a whole bunch of successful four-way handshakes (from
clients that have the correct secrets), and an occasional four-way
handshake failure (from the one client that has the wrong password in
its configuration).

You won't be able to tell what password the client is actually trying
to use - that's the whole point of the nonce-and-hash approach -
but you'll be able to identify its client name, and (unless the
far end is using a NAT or proxy) its IP address.

To pin down the actual location of the client, you'll either have
to go there, or have someone at the remote site do some investigation
and (possibly) packet tracing on the LAN.

this will be of little use in this situation, the location is a shared office space/building in Vietnam and the local hands i have already checked our computers for soft phones, but quit possible some machines got swapped there or some local admin installed it somewhere for testing purposes... and the local hands i have, not really usefull explaining them to look up the meaning of "packet tracing"


Or, I suppose one could simply use Asterisk to try to phone the
device or softphone in question, at whatever address it called in
from, and ask whoever answers the phone to disable it!

this was my original idea yes, but how can i call it without it being registered?




--
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
                http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
    http://lists.digium.com/mailman/listinfo/asterisk-users


--
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
              http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
  http://lists.digium.com/mailman/listinfo/asterisk-users

Reply via email to