[Asterisk-Dev] Security issue mumblings
Kevin P. Fleming
kpfleming at digium.com
Mon Nov 7 07:43:51 MST 2005
John Todd wrote:
> http://www.accessintel.com/cgi-bin/press/show.cgi?1130972376
>
> Can anyone here speak more clearly on this otherwise un-useful list of
> assertions as to "security flaws with VoIP" specifically referencing
> Asterisk? The lack of a protocol discussion is suspicious - VoIP is not
> homogenous. The other term of "billing code" is also suspicious - I
> can't recall a "billing code" field in my SIP packets. CCM is mentioned
> - is this an SCCP issue?
>
> Perhaps most importantly (and relevant to -dev) is this an issue that
> can be resolved or patched within Asterisk, or is it that Asterisk is
> being used as the toolset to wedge into other platforms?
As one of the two employees of Digium who spent time talking with the
reporter, I'll communicate my understanding of the situation :-)
First, I still take issue with the reporter saying this is 'VOIP
hack'... that's a significant overstatement of the facts as I believe
them to be, but he's got to sell magazines <G>
As far as we are aware, there are two possible methods of exploit here.
One of them, as already mentioned by Tilghman, is that some SIP
softswitches don't begin call billing for outbound calls until they
receive an ACK to their 200 OK. Depending on how long they will allow
the call to stay up without the ACK being received, the call will be
'up' and in two-way audio mode without being billed. Asterisk does not
work this way, and never will (nor should it)... it begins the call
billing when the 200 OK is sent. A similar technique is reportedly
possible on PRI links, by never sending an CONNECT ACKNOWLEDGE for a
CONNECT received from the switch; however, the amount of time the call
can stay up in this condition is much less than in the SIP scenario.
The other possible exploit appears to be a vulnerability in some ISDN
switches; it is not known how widespread it is (if at all), and whether
the vulnerability is dependent on software releases, configuration or
some other combination of variables. The essential point in the story is
correct, though it uses the wrong terminology ('billing code'). Without
going into specifics, it appears that some switches can be convinced to
mark a call as 'not billable', even though it completed and was up for
any amount of time the caller wished. This is not possible using
traditional CPE that connects to PRI circuits, since their Q.931
handling is not modifiable, but Asterisk (obviously) and possibly CCM
can be convinced to take advantage of this vulnerability.
However (and this is an important point), even if a customer finds a way
to take advantage of this vulnerability, any reputable carrier's fraud
detection systems will notice the change quite quickly and raise alarms.
Given this, it's doubtful that anyone will be able to make a significant
amount of calls using this technique, but it's certainly possible that a
poorly-managed carrier network would be susceptible to some losses.
More information about the asterisk-dev
mailing list