You are on page 1of 8

Storming SIP Security

Attack

Sandro Gauci

Difficulty

VoIP is a hot and steadily gaining market share in the phone business.
As people constantly seek to make long distance calls cheaper, they are
moving away from relying on the traditional telephone companies and
heading more towards Voice over IP (VoIP). Phone calls between two
VoIP users are usually free and do not carry any additional costs, other
than that of the Internet connection and possibly the bandwidth are sed.

C
onnecting to Public Switched Telephone attacks, all of the described methods can be
Network (PSTN) phone numbers from very effective offensive tools for a malicious
VoIP will usually carry a fee however that user, and make use of freely available software.
typically gets paid by the VoIP user. In fact, a lot We will be describing attacks that target:
of Internet Service Providers around the globe
are now advertising VoIP as part of their services • Information gathering: identifying SIP de-
on offer. Apart from this, corporations are moving vices on the network and extensions on a
away from the traditional PBX systems to an IP Private Branch Exchange (PBX)
based phone system. While there are a number • Availability issues: denial of service on the
of proprietary and non-proprietary protocols in phone system
existence, SIP looks like the one that is emerg- • Toll fraud and identity theft: stolen ac-
ing as the standard. Many of the VoIP phones counts
currently deployed now support the SIP protocol
even if they might not fully implement it.
What you will learn...
As SIP starts to make a difference in the
ways we communicate, it will become yet anoth- • Why IP phone systems are the new target
er target for malicious attackers looking to make • In depth examples of attacks on IP phone sys-
a quick buck, or maybe just have some fun at the tems
expense of others. As security professionals and • How to mitigate security issues related to SIP-
system administrators who might deploy a VoIP based phones
system relient on SIP, we have the responsibility
of understanding what security challenges exist,
Important Note: in order to be able to fix or avoid these issues. What you should know...
All code listings for this ar- In this article, we shall be describing attacks • Basics of security terms such as denial of serv-
ticle can be found on the CD that can be used to compromise VoIP systems ice and availability
attached to this magazine. which use the SIP protocol, and protocols that • Basics of networking as the UDP and VPN
rely on it. Although we do not present any new

22 hakin9 2/2008 www.hakin9.org/en


Storming SIP Security

The attack coverage is not extensive The Session Initiation Protocol for multimedia distribution, multimedia
but we will attempt to describe the (SIP) is an application layer protocol conferences, instant messaging and
attacks in detail, rather than just give that takes care of connecting two or online games. While SIP is often taken
a brief introduction to each attack. In more participants via a session. SIP as synonymous with VoIP, the protocol
this article, we will not be going into also takes care of any modifications itself does not handle everything that
confidentiality or integrity issues to do to this session and session termina- has to do with VoIP. For the delivery
with SIP. This means that we will not tion. Since it is independent of the of voice, SIP relies on other protocols
be talking about phone taps or man in transport layer, SIP can make use of such as the Real-time Transport Pro-
the middle attacks, which are already UDP and TCP (usually on port 5060), tocol (RTP), and the Session Descrip-
thoroughly discussed in other articles, as well as TLS over TCP (typically on tion Protocol (SDP) for initializing the
books and the popular media. We will, port 5061). SIP is not limited to just RTP stream. The job of SIP is to act
instead, be covering attacks that can telephone calls, but can also be used as an intermediary protocol to help two
be launched remotely over the Inter-
net, without having access to the Local
Area Network. Throughout this article,
we will be making use of traces of SIP
packets to easily illustrate how the
protocol works, and how SIP network
entities behave. These packet dumps
can be easily reproduced by making
use of Wireshark and tcpdump, both
of which are network protocol analyz-
ers. More importantly, we will give
multiple layers of security solutions to
counter these security concerns.
The reader is expected to be
familiar with basic security concepts
such as denial of service and avail-
ability, as well as technologies such
as the Virtual Private Network (VPN)
or challenge response mechanisms. Figure 1. An INVITE message
On the other hand, the reader does
not need to have experience with
the Session Initiation Protocol (SIP), sip:user2@there.com
since we will start by introducing
SIP and describe how it makes up
200 OK

a Voice over IP system.


INVITE (2)

ACK (2)

What You Need INVITE (2)


to Know About SIP
SIP Stateless Proxy 200 OK SIP Stateless Proxy 2
As with many other protocols, the
Session Initiation Protocol is defined LL
CA H
200 OK

in a Request for Comments (RFC) IN- PAT


INVITE (2)

A L G
N
FI ALL I N
document, developed and designed N
within the Internet Engineering Task SIG )
2
K(
Force (IETF). The main RFC that AC
defines SIP is RFC 3261, which is INV
ITE
SIP Stateful Proxy 1 MO (1)
269 pages long and takes a lot of VED
TEM
variables into consideration. In this 302
ACK
POR
ARI
200 OK

(1) LY
section, we shall be giving a basic in- SIP Redirect Server
INVITE (1)

ACK (2)

troduction to SIP, so that if you are not


familiar with the protocol, then you will
have enough knowledge to follow the
rest of the article. If you are already sip:user1@here.com
MEDIA (RTP) PATH
familiar with the protocol, you might
wish to skip the next section and go
straight to the attacks section. Figure 2. A high level view of various SIP network elements

www.hakin9.org/en hakin9 2/2008 23


Attack

devices to find a way to contact each It is important to note that the differ- call via SIP will probably look like the
other and establish a session. While ence between different SIP servers is Figure 2.
the traditional PSTN (Public Switched logical and not physical, which means There are various SIP network
Telephone Network) relied heavily on that a server can be both a proxy and elements in the diagram. User1 is
the network, SIP depends more and a registrar. For example, Asterisk a SIP phone trying to call user2 and
more on the end device, which does its PBX will act as both a Registrar and both phones are behind a Stateful
own state and logic book keeping. This a Stateful Proxy Server. Proxy. The RTP media (which car-
means that SIP shifts the intelligence ries the voice data) in the diagram is
from the network to the end devices What Does established directly between user1
(telephones). SIP Look Like? and user2. In reality, if user1 and user2
A SIP network element is called SIP resembles HTTP. Similar to are behind a NAT (Network Address
a User Agent or UA. User agents can HTTP, it has a header and a body, Translation), then both user-agents
be clients or servers; SIP Phones are consists of printable characters (not will not be able to stream RTP directly.
typically User Agent Clients, while a binary protocol) and supports vari- For that, many SIP phones nowadays
a Proxy or Registrar is convention- ous methods. While in HTTP we are support a protocol called Simple
ally called a User Agent Server used to GET and POST requests, SIP Traversal of UDP over NAT or STUN.
(UAS). Three types of UAS are SIP supports a number of methods such This protocol allows both SIP phones
Proxies, Registrars and Redirect as INVITE , REGISTER , OPTIONS, BYE and to punch holes in a NAT to allow both
Servers. Proxies can be Stateful and CANCEL . If you are familiar with proto- devices to contact each other directly.
Stateless. The difference between cols related to email, you will also at
a Stateful proxy and a Stateless one least notice that SIP borrows the To A Typical Phone Call
is that the Stateless just forwards SIP and From headers from SMTP and When a SIP phone calls another
messages, while the Stateful Proxy Message format. phone, it starts by sending an INVITE
creates a state and keeps it until the Figure 1 shows an INVITE request message to the proxy which usually
session finishes. A Registrar is a UAS which is typically used to establish contains an SDP body. The proxy will
that can handle and process a REG- a session. The request is coming from then send back a 100 Trying response,
ISTER request. Such a Server keeps Jiri sip:jiri@iptel.org and destined to which means that the proxy has
a database of addresses mapped to sip:jiri@bat.iptel.org, and contains an received the message and is trying
a specific User Agent Client or Clients. SDP body. On a higher level, a phone to contact the destination. Once the
proxy has managed to route the INVITE
request to the destination, it sends the
user agent a 180 Ringing or 183 Ses-
sion Progress response. The phone at
the other end starts ringing as soon as
it receives the original INVITE. If the re-
ceiver of the call picks up the phone, it
����������� ���������� �����������
sends a 200 OK response to the proxy,
��������������
which is then relayed to the originator
of the call. This response typically con-
�����������������
� �������������� tains an SDP body which allows the
phones to negotiate the codec used
�����������
������ ����������������� for RTP and other variables. The SIP
�����
�����������������
��������������
phone that originated the call then con-
�������������� firms the receipt of the OK with an ACK
request. At this point both phones start
������� the voice stream and communicate via
�������
RTP. When one of the parties decides
to hangup, the phone sends a BYE re-
���������������
quest which should be responded with
a 200 OK message. Figure 3 illustrates
�������� this typical situation.
��������
�������������� Authentication
For SIP Phones
��������������

To receive phone calls, a SIP phone


needs to tell a SIP User Agent
Figure 3. Phone A rings Phone B through a SIP proxy Server that it is ready to receive the

24 hakin9 2/2008 www.hakin9.org/en


Storming SIP Security

phone calls that are destined to a has been identified on the network, also by svwar, which is part of the
given extension. This is achieved by an attacker can attempt to find out SIPVicious tool suite. Let us look at
sending a REGISTER request to a reg- which extensions can be registered how svwar works. Initially we shall
istrar server. Although not required, on the PBX. Knowledge of these be targeting an Asterisk box on a
REGISTER messages are usually au- valid extensions will be useful for an preconFigured test VM (Virtual Ma-
thenticated. As presented in Figure attacker attempting to strategically chine) running Trixbox, which is an
4, the first REGISTER message sent exploit the phone system further. easy to use Linux distribution that
by the user agent to the registrar Traditionally, phone Phreaks (phone comes with Asterisk installed. We
does not contain any credentials. As system hackers) made use of war made use of the web interface on
a response, if authentication is re- dialing, which is the act of calling Trixbox to conFigure Asterisk with
quired, the registrar then sends back each possible number or extension four SIP extensions (can be seen
a 401 WWW-Authenticate message, on a phone system in an attempt to in Figure 5). Thus, for this test we
which contains an authentication identify interesting devices behind created a few extensions which will
challenge. The SIP phone computes that number. With SIP, this is not show up later on during the scan.
the challenge response and sends required since most of the times Since we are running a default scan,
a second REGISTER request which there are more efficient methods svwar will be scanning a range of
contains the authorization header which allow you to achieve the same extensions between 100 and 999
and the challenge response. If the results. and making use of the REGISTER SIP
challenge response is the same as To identify an extension, the at- method. As you can see in Listing 1,
the one expected by the registrar, tacker needs to differentiate between svwar identified the four extensions
then the registrar sends a 200 OK an existing one and a non-existent on the PBX. These extensions are
response indicating that the user extension. By existing extension we conFigured to allow registration of
agent has been authenticated. From mean an extension that can be regis- SIP phones when supplied with the
now on, any calls destined to the tered. Following some research, we right credentials.
registered SIP address will be routed found that the best method to iden- In the background, svwar first sent
to the authenticated User Agent. For tify existing extensions is to record a request to a non-existing extension
authentication, SIP typically relies on the response for a request to a non- on the PBX and recorded the SIP
digest authentication, which makes existent extension, and then look out message response. Based on this
use of md5 hashing algorithm. for requests that produce a different test, svwar learns that when an un-
SIP response code. known extension is getting registered,
Other SIP Messages This method was implemented in Asterisk will reply with a SIP/2.0 404
Other methods of interest are: a security tool called SIPScan (part Not found message, as seen in Listing
of the Hacking VoIP book) and later 2. This same response is seen when
• OPTIONS is used to query the user
agents for their capabilities
• CANCEL is used to cancel a previ-
SIP User Agent
ous request issued by the client
• BYE is used to terminate a dialog/
media session initiated by an Registrar (Asterisk)
INVITE
• ACK is used to acknowledge final
responses to INVITE requests

Attacking SIP Devices 1 - REGISTER


Identifying Valid Extensions on a
PBX. An attacker targeting a phone
system will first need to identify the 2 - 401 + WWW-Authenticate
IP address and port of the PBX.
There are various tools which can
do this, including typical port scan-
3 - REGISTER + Authorization
ners such as nmap. One may also
make use of tools dedicated to SIP
such as smap – which is described
4 - 200 OK
as a mixture of nmap and sipsak
– and svmap, which is part of the
SIPVicious tool suite (written by
yours truly). Once the PBX server Figure 4. Authentication with a SIP registrar

www.hakin9.org/en hakin9 2/2008 25


Attack

svwar then starts to send REGISTER Making Direct with the SIP provider. In order to find
requests for the extension range. List- Phone Calls and out the IP and port of the SIP phone,
ing 3 shows a SIP message response Causing Havoc we should make use of svmap. It usu-
which is different from the responses Various network elements are in- ally helps to know either the port or
generated previously. For svwar this volved in a phone call which uses the the IP. Most of the times, SIP phones
indicates a valid working extension. SIP protocol. A SIP phone will typical- will listen on the default port 5060. In
While this works for Asterisk, many ly be registered with a VoIP provider Listing 12 we scan for SIP devices by
PBX servers out there exhibit differ- or PBX, and to call another SIP phone making use of svmap and identify an
ent behaviors. Let us look at Java it will need to find out the location of SJphone softphone.
based PBX named Brekeke. Listing the destination by asking a SIP proxy. If we send an INVITE request to
4 shows a register request sent to a This system has the benefit of allow- the softphone at 192.168.1.137:5060
non-existent extension, while Listing ing the systems administrators to cen- running SJphone, the soft phone
5 shows one that was sent to an exist- trally manage the voice infrastructure, starts ringing (see Figure 6). To make
ing extension. As you will notice, the enabling the possibility of preventing a phone call like this, one would typi-
responses for both requests emit the abuse. For example, VoIP spam cally make use of a soft phone that
same kind of response, which is a 403 (better known as SPIT – Spam over supports direct calling. In this case,
Forbidden message. Svwar version Internet Telephony) can be controlled we make use of X-lite and conFigure
0.2.1 will detect this and will inform better by disallowing unauthenticated it to bypass the proxy and contact the
the end user about the problem (see calls coming from the Internet. target domain directly. The configura-
Listing 6). Let us illustrate this behavior by tion is illustrated in Figure 7. Once
However, there are other methods looking at a softphone which is mak- X-lite is set up, all one has to do is
that can be used to detect exist- ing a call through a fictitious VoIP dial the SIP address, which in this ex-
ing extensions on Brekeke PBX and provider (called Sip Provider) that ample is sip:1234@192.168.1.137:5060.
other servers. By making use of the the user does not have access to. Depending on the SIP phone, the SIP
OPTIONS request (Listing 9) instead of Listing 11 shows a soft phone trying user part of the address (which is 1234
a REGISTER , we are able to emit a dif- to call sip:4717081@sipprovider.com in this case) may be omitted, or it may
ferent response. In the case of an OP- by sending the INVITE request directly even be anything. Therefore, in the
TIONS SIP request, Brekeke acts as to the VoIP provider. As can be seen case of SJPhone and various other
a proxy and sends the OPTIONS request from the response, the phone call is phones, it is simply a matter of find-
to the SIP phone, which happens to not successful unless the caller has ing out the IP address where the SIP
be an X-lite client. This means that the access (valid credentials) to the net- service is listening in order to make
extension is currently being used by a work. However, as we shall see, such a phone call without passing through
softphone. If we were to try the same restrictions can be bypassed easily by the VoIP infrastructure.
request on an Asterisk, we would no- making use of freely available tools. However, in the case of some
tice a very different behavior. Asterisk The truth is that (by design) most phones, the address may need to
always replies with a 200 OK and un- SIP phones will ring upon receiving an have the exact user with which the
like Brekeke, does not forward these INVITE request. This behavior applies SIP phone is registered to the regis-
requests to the registered SIP Phone. to both soft phones and hard phones. trar server (PBX or VoIP provider);
When neither the REGISTER method Therefore, if the caller knows the IP otherwise the phone would not ring.
nor the OPTIONS method work, one and port of the destination SIP phone, A softphone called WengoPhone
can try other valid methods such as he or she can initiate a phone call to also shows similar behavior. To identi-
INVITE . It is also possible to make use the SIP phone without having contact fy the valid user on WengoPhone, we
of invalid request methods (see List-
ing 10), which might give out some
interesting results.

Figure 5. Trixbox configuration Figure 6. SJphone rings when it receives an INVITE message

26 hakin9 2/2008 www.hakin9.org/en


Storming SIP Security

can make use of svwar. The process until someone manually goes ahead needs to assume the identity of a
is very similar to identifying existing and hangs up the phones. A malicious valid user on the system by obtaining
extensions on a PBX, with the dif- attacker could very well launch a script someone else's username and pass-
ference being that we are targeting which sends these INVITE requests un- word. It does not only give access to
the user agent client rather than the til someone stops the script. The sim- long distance calls, but also allows
server this time. But first, let us find plicity and practicality of this attack is the attacker to receive phone calls
out the port (which is not the default) impressive. Such an attack can have a destined to the victim.
on which WengoPhone is serving SIP. disastrous effect for companies (such In 2006, the police arrested
In Listing 13, we run the command to as call centers) that rely on IP phones. Edwin Andres Pena, who made
send its probes to the port, range Listing 15 shows how svmap can be over a million dollars through their
between 1024 and 65535. As soon as used to send an INVITE to a subnet. company named Fortes Telecom
we identify the port we can stop the Why would anyone run such at- Inc. selling VoIP access to smaller
scan by pressing Control^C. Once we tacks? Here are some reasons: service providers. The catch was
know the port on which the phone that instead of buying minutes from
is listening, we then make use of • A disgruntled employee might larger carriers, Edwin (together with
svwar to identify the softphone's user. want to launch a denial of service Robert Moore) devised a scheme to
Since SIP phones do not process the on the most basic communication route phone calls through illegally
REGISTER message (which is the de- service – the phone system obtained user accounts on various
fault scan method in svwar), we need • Malicious users can pull off social VoIP providers. As the story goes,
to make use of the INVITE method to engineering attacks with less Robert Moore made this possible by
identify the correct user (see Listing paper trail by directly calling the scanning for H.323 (another VoIP
14). One should be aware that this IP phone rather than passing protocol) devices and trying default
method is not exactly stealthy, and will through the PBX. Outsiders as or easily guessable passwords on
get WengoPhone to ring when a valid well as employees from different these devices.
user is found. Once a valid extension departments are known to make Although the criminal duo made
is found, one can now make a direct use of social engineering tech- use of H.323, similar attacks also
call by making use of the extension niques. apply to SIP. Whatever the protocol,
as the user in the SIP address. In this • Some people might want to one of the most straightforward ways
case, the sip address to call would be pull off the ghost phone call as to obtain the identity of a victim is to
sip:100@192.168.1.112:1169. a practical joke. However, in guess the password. If the attacker
The same concept can be ap- many environments this prank has access to the victim's or provider's
plied to cause a Denial of Service can lead to disruption of service. traffic, then he or she can make use
attack which I like to call ghost phone of tools such as Cain and Abel and
call. The objective is to cause a large Toll Fraud and sipcrack to launch an offline password
number of phones on a network to Password Cracking cracking attack. This is especially true
ring at the same time. How is this pos- Voice over IP service providers if no encryption is used. Since SIP
sible? In most cases, an INVITE scan typically offer a paid service which makes use of digest authentication
using svmap on an internal network allows its clients to make worldwide which relies on md5, offline password
will cause all phones to start ringing. phone calls at cheaper rates than cracking can be very fast, and with
These phones may keep on ringing the traditional phone system. Many tools such as Cain – also very easy
VoIP service providers will also give (see Figure 8). However, many times
you a phone number reachable from the attacker does not have access
PSTN, thus allowing you to receive to the traffic and therefore an offline
calls from the normal telephone password attack is not feasible.
network. These services are what In that case, it is still possible to
makes IP telephony attractive for perform a password attack. Instead
most customers, and also attackers of making use of an offline password
looking for a cheap way to make long attack, one can use svcrack (which
distance calls. Traditionally, phreaks is part of SIPVicious tool suite) to
or phone hackers have targeted launch an online password attack.
PBX, access codes, and made use Svcrack currently allows up to 80
of hardware such as the bluebox (or password guesses per second against
a simple whistle) to make long dis- a SIP based PBX. This amounts to
tance calls for free. The widespread 6,912,000 passwords a day. It is able
use of VoIP creates yet another ven- to do this by continually sending au-
Figure 7. Configuration of X-Lite for ue for toll fraud. To be able to make thentication requests to a SIP registrar
direct calls fraudulent calls, an attacker typically server (a PBX such as Asterisk) until

www.hakin9.org/en hakin9 2/2008 27


Attack

a 200 OK message is received. If we Detection as TLS and SRTP. Unfortunately,


were to look back at Figure 4, we see and Protection the encryption for SIP and RTP
how a normal registration works when The Basics. When implementing is not yet widely supported.
the SIP user agent client (IP Phone) a VoIP infrastructure or any kind of net- Zfone by the creator of PGP is
has the correct credentials. In the work technology, it is best to try reduce particularly interesting. We shall
case of svcrack, the number of 401 the exposure to attack. The fact that the not be going through this subject
WWW-Authenticate messages usu- VoIP infrastructure is typically sitting in depth since it is not within the
ally indicates the number of passwords next to other network entities makes scope of the attacks described
guesses until the correct password is the SIP network elements reachable within this article, but it definitely
supplied. and possibly vulnerable to an attack deserves a mention.
Let us look at how SIP password coming from the other network serv- • The importance of good pass-
cracking typically works. In Listing ers. The number of VoIP phones and words for IP Phones should
16, we have a normal REGISTER au- PBXs on the Internet is constantly not be underestimated. If the
thentication session. The highlighted growing, and if the infrastructure does system does not require that
parts are the sections that we are not require exposure to the Internet, end users set their own pass-
interested in. Digest authentication then avoid it. To help you separate the word, then do not allow this
makes use of a nonce, which is a VoIP network from the rest, various functionality. Instead, make use
unique string generated each time a network switch vendors allow you to of some kind of password man-
401 response is made. This value is set up a VLAN specifically for VoIP. agement and set their password
used as part of a challenge to com- However, be aware that VLANs are to one that is unique and hard
pute a challenge response which is not a panacea, and tools like VoIPhop- to guess. Applications such as
unique. The way that svcrack works per make it easy to demonstrate the KeePass, which is open-source
is very simple. Instead of making fact that VLAN is not enough. Cisco and free, allow you to generate
just one REGISTER request, it makes published a white paper called VLAN strong random passwords for
various requests which generate Security, where they describe how to you, as well as manage such
different nonce values. For each of protect against a number of attacks passwords in a relatively secure
these nonce values, it then sends aimed at VLAN technology. Segregat- manner.
a REGISTER request with a challenge ing the VoIP network can also be done • OpenSER, which is an open-
response computed using the nonce through the use of firewalls or physical source SIP server, has a module
and a possible password. separation. VPN tunneling has also named pike. This module is able
Since the digest authentica- been previously suggested because it to block requests that exceed
tion RFC does not enforce single provides both encryption and can also a given limit. This can allow
usage of the nonce in a challenge be used to separate the VoIP traffic for blocking of both extension
response, many SIP registrars are from the normal traffic. guessing and password cracking.
known to allow attackers to reuse However, these solutions might not However one has to be cautious
the same nonce to generate different always be feasible – especially since with such solutions. Attackers
challenge responses. This is actu- one major advantage of VoIP is that it can make use of IP spoofing to
ally an optimization implemented in integrates with other network elements intentionally block legitimate traf-
svcrack and can double the speed on the Internet. In fact, various VoIP fic. It might also unintentionally
at which passwords are checked vendors market the fact that you can block legitimate traffic if its not
on certain registrar servers. Listing use your existing network infrastruc- properly conFigured.
17 shows the authorization header ture without having to lay new cables. • SIP allows extension lines
when making use of the same nonce Whether or not this is a good idea which do not require authentica-
and a different password, generated depends on a large number of factors. tion. If there is no justification
by running svcrack with the optimiza- When designing a VoIP infrastructure, it for unauthenticated extensions,
tion enabled (see Listing 18). is therefore important to understand the then make sure NOT to use this
requirements and mitigate depending feature.
on the case. For example, a hotel VoIP • Hardphones will get security fixes
network will have different require- in the form of a firmware update,
ments than a corporate IP phone net- while softphones will get a new
work, and therefore a systems designer software release. Keeping up to
can apply different security precautions date with the latest versions can
during the planning stage. Some other be a pain, but it is certainly one
suggestions and observations: way of making sure your system
does not fall victim to attackers
• It is of course good to make use exploiting a security vulnerability
Figure 8. Cain and Abel SIP cracking of encryption mechanisms such in your SIP phone.

28 hakin9 2/2008 www.hakin9.org/en


Storming SIP Security

Knowing That sages. The INVITE and REGISTER flood a Brekeke PBX when using svwar
You Are Under Attack attacks catch svwar and svcrack be- with the OPTIONS method. Of course, it
Detection is a very important step in ing run with default options against will not catch a network scan for SIP
a security solution. A network IDS a SIP proxy. To be able to catch a devices on one which does not have
such as Snort, when placed at the default svmap scan, we need to be a lot of devices, simply because the
right location, can be of great help looking out for SIP messages with number of responses would be low.
when trying to detect that an attack an OPTIONS request, spanned over The ghost phone call can also be
is underway. Snocer, which describes different hosts in a short time. Listing easily detected since it generates a
themselves as providing Low Cost 20 shows one such rule that triggers large number of ringing messages.
Tools for Secure and Highly Available an alert if the rule is infringed 30 times Of course a payload of this attack is
VoIP Communication Services, has in 3 seconds. One should probably audible, and therefore the benefits of
previously published some Snort rules adjust this rule depending on the ad- adding this rule might not be immedi-
for public consumption. These rules dress space being watched by Snort. ately apparent since it makes itself so
are also available in the latest Snort If Snort is watching a /29 mask, i.e. obvious. However, a Snort rule at this
community rules. In this section we only 6 hosts, then one should change stage might be very useful during in-
will describe some of them and explain the count to 6 and number of seconds cident response, when trying to deter-
how they can be effective in catching to 1 or less. On larger networks, in- mine things such as the source of the
the attacks mentioned previously. crease the count number to decrease attack. The rule should be modified
We will also provide some new Snort the chance of a false positive. depending on the network. For exam-
rules which can also detect activity de- The rule on excessive number ple, it does not make sense to deploy
scribed in this article and not caught by of SIP 4xx Responses attempts to this Snort rule on a calling center that
the current Snort community rules. catch the majority of attacks outlined takes 50 calls every minute.
The Snort rules by Snocer are in this article. What it effectively does Snort is not the only tool to monitor
quite easy to understand, and are able is match responses which contain your VoIP infrastructure for attacks.
to provide generic detection. Each of a client error. This may be a 404 not In fact, Snort would very likely NOT
the rules looks out for an excessive found response like the one given by detect any attacks passing through
number of SIP messages coming an Asterisk box when running svwar encrypted traffic. On the other hand,
from a single IP address over a short to identify SIP extensions or users. monitoring the logs on your IP PBX
period of time. The different SIP It will also match a password crack- might be a good way of detecting
messages are INVITE and REGISTER ing attempt on an Axon PBX, or an some attacks destined to the SIP
requests, and 401 Unauthorized mes- extension enumerating attack on gateway. J. Oquendo posted a BASH
script called astrap which monitors
the Asterisk log entries for exces-
About the Author sive number of failed authentication
Sandro Gauci has over 7 years experience in the security industry and is focused on
attempts. This small tool will list the
analysis of security challenges and providing solutions to such threats. His passion is
offender's IP address, the number of
vulnerability research (a.k.a. breaking things) and has previously worked together with
various vendors such as Microsoft and Sun to fix security holes. The latest interest is password failures, and the extensions
VoIP and he is currently working on a suite of free security tools to audit SIP network that were targeted on the Asterisk.
entities called SIPVicious. The tools can be downloaded from http://sipvicious.org/ A host intrusion detection system
Sandro can be reached at sandro@enablesecurity.com such as OSSEC can be equally useful
in detecting and automatically mitigat-
ing attacks. At the time of writing, OS-
SEC does not come preconFigured
On the 'Net to support Asterisk log files, but this
• http://www.ietf.org/rfc/rfc3261.txt – RFC 3261 functionality can be easily added.
• http://www.iptel.org/sip/intro/purpose – Purpose of SIP Listing 21 includes a sample rule file
• http://www.wormulon.net/ – smap for OSSEC to show how it can be
• http://sipvicious.org/ – SIPVicious tool suite conFigured to detect username enu-
• http://tinyurl.com/rtjl8 – SIP peers external authentication in Asterisk/OpenPBX meration and password attacks on an
• http://www.hackingvoip.com/ – SIPSCAN Asterisk system such as Trixbox. List-
• http://www.oxid.it – Cain and Abel ing 22 shows the changes required to
• http://tinyurl.com/yph6jy – Interview with Robert Moore
enable this new Asterisk rule. We in-
• http://tinyurl.com/56bwd – VLAN Security White Paper
clude a decoder entry so that OSSEC
• http://www.snocer.org/Paper/sip-rules.zip – Snocer, snort rules
• http://www.infiltrated.net/scripts/astrap – astrap
will be able to extract the attacker's
• http://www.ossec.org/ – OSSEC IP address and then use that to au-
• http://www.trixbox.org/ – Trixbox tomatically block the attack by adding
the appropriate firewall rule. l

www.hakin9.org/en hakin9 2/2008 29

You might also like