[VOIPSEC] Analysis of a VoIP Attack
Klaus Darilion
klaus.mailinglists at pernau.at
Fri Oct 24 03:53:35 CDT 2008
Iñaki Baz Castillo schrieb:
> El Jueves, 23 de Octubre de 2008, Klaus Darilion escribió:
>> Hi there!
>>
>> Recently, several IT news websites reported VoIP attacks against home
>> users containing lots of myths and incorrect statements. Unfortunately,
>> they also give wrong security advices.
>>
>> Thus, I decided to write an article about this attack and give some
>> advices for protection. Maybe you find it interesting too - at least I
>> do ;-)
>>
>> http://www.ipcom.at/index.php?id=565
>
> Hi, good document, but there is an error when you say:
>
> -----------------------
> Source IP address 213.130.74.70 and source port 3808: Although the IP address
> could be easily spoofed, in this case it may be the real address of the
> attacker as the IP address is also present in the Via: header (used for
> sending back responses). Further, if the attacker wants to know the result of
> the attack, he has to receive the SIP responses meaning that he has to
> provide his real IP address.
> ----------------
>
> That's incorrect: in SIP responses are *always* sent to the source IP, in UDP
> or TCP, and not to the IP indicated in Via "sent-by" field.
> It's explained "clearly" in RFC 3261 Section 18.2.2:
>
> ------------
> o Otherwise (for unreliable unicast transports), if the top Via
> has a "received" parameter, the response MUST be sent to the
> address in the "received" parameter, using the port indicated
> in the "sent-by" value, or using port 5060 if none is specified
> explicitly. If this fails, for example, elicits an ICMP "port
> unreachable" response, the procedures of Section 5 of [4]
> SHOULD be used to determine where to send the response.
> ------------
>
> And note that a UAS MUST add a "received" parameter to received Via header
> when:
>
> --------------------
> 18.2.1 Receiving Requests
> When the server transport receives a request over any transport, it
> MUST examine the value of the "sent-by" parameter in the top Via
> header field value. If the host portion of the "sent-by" parameter
> contains a domain name, or if it contains an IP address that differs
> from the packet source address, the server MUST add a "received"
> parameter to that Via header field value. This parameter MUST
> contain the source address from which the packet was received. This
> is to assist the server transport layer in sending the response,
> since it must be sent to the source IP address from which the request
> came.
> ----------------------
>
>
> This is, the attacker will receive the responses always, since they will be
> always sent to the real source address, regardless of the Via "sent-by"
> value.
>
> However, this is a typical confusion, I think the problem is the SIP design,
> in which the application level data (pure SIP) contains lower layers data
> (network and transport protocol).
Hi Inaki!
Yes, you are right - as long as all SIP client are standard conform and
read the RFC as precise as you ;-)
thanks
klaus
More information about the Voipsec
mailing list