[Freeswitch-users] SIP invalid call attempts from unknown dialer

D M debianmailz at gmail.com
Mon Nov 21 14:00:30 MSK 2011


Hello,
I have noticed quite a few different attempts on accessing my freeswitch 
machine via SIP that does not come from the company. I have attached 
part of a log with such an attempt.

My main concern is ensuring that similar attempts will not be able to 
make external calls. I realize that any number made available externally 
will also be accessable via this method so my secondary concern is 
throttling or preventing these type of attempts to avoid autodialer spam.

This log repeats with around 12 call attempts per second for almost a 
minute times with different attempts on seemingly random numbers. There 
has been multiple different attempts to spam random numbers via SIP but 
so far none has been successful. This log is the most relevant since it 
made a single login attempt on an nonexistent user after which it has 
either successfully spoofed the ip of the freeswitch machine or used an 
vulnerability in either my config or freeswitch.

My config is the default freeswitch+fusionpbx installation on Ubuntu 
10.04.3 LTS with instructions from here 
(http://wiki.fusionpbx.com/index.php?title=Easy_Ubuntu_10.04&oldid=1574).
With a few minor configuration changes:
* Registering is done via external domain pointing to the freeswitch 
machine, NOT using the default port 5060
* Port 5060 is generally used for traffic with SIP provider that 
connects us to phone network but the port not firewalled/restricted in 
any other way

This is an example log of a single login attempt and single call 
attempt, the following modifications have been made:
* Freeswitch public ip has been changed to xx.xx.xx.xx
* 2 regexps have been changed from public telephone number to 
/^publicnumber$/ and /^publicnumber2$/
* A large list of regexps have been replaced with <!-- Cut out 
additional regex checks-->

Please let me know if you need any more details or longer logs

Thanks,
Daniel

##### LOG BEGIN #####

2011-11-18 15:27:33.293146 [WARNING] sofia_reg.c:2283 Can't find user 
[1010 at xx.xx.xx.xx]
You must define a domain called 'xx.xx.xx.xx' in your directory and add 
a user with the id="1010" attribute
and you must configure your device to use the proper domain in it's 
authentication credentials.
2011-11-18 15:27:36.633145 [NOTICE] switch_channel.c:897 New Channel 
sofia/external/1010 at xx.xx.xx.xx:5060 [75cf1808-11f1-11e1-9c95-494fea388543]
2011-11-18 15:27:36.633145 [DEBUG] sofia.c:5084 Channel 
sofia/external/1010 at xx.xx.xx.xx:5060 entering state [received][100]
2011-11-18 15:27:36.633145 [DEBUG] switch_core_state_machine.c:325 
(sofia/external/1010 at xx.xx.xx.xx:5060) Running State Change CS_NEW
2011-11-18 15:27:36.633145 [DEBUG] sofia.c:5095 Remote SDP:
v=0^M
o=1010 13216264671138 13216264671138 IN IP4 192.168.1.3^M
s=VaxSoft^M
c=IN IP4 192.168.1.3^M
t=0 0^M
m=audio 7000 RTP/AVP 0 8 3 98 101^M
a=rtpmap:0 PCMU/8000^M
a=rtpmap:8 PCMA/8000^M
a=rtpmap:3 GSM/8000^M
a=rtpmap:98 iLBC/8000^M
a=rtpmap:101 telephone-event/8000^M
a=fmtp:101 0-16^M

2011-11-18 15:27:36.633145 [DEBUG] switch_core_state_machine.c:343 
(sofia/external/1010 at xx.xx.xx.xx:5060) State NEW
2011-11-18 15:27:36.633145 [DEBUG] sofia_glue.c:4711 Audio Codec Compare 
[PCMU:0:8000:20:64000]/[PCMA:8:8000:20:64000]
2011-11-18 15:27:36.633145 [DEBUG] sofia_glue.c:4711 Audio Codec Compare 
[PCMA:8:8000:20:64000]/[PCMA:8:8000:20:64000]
2011-11-18 15:27:36.633145 [DEBUG] sofia_glue.c:2819 Set Codec 
sofia/external/1010 at xx.xx.xx.xx:5060 PCMA/8000 20 ms 160 samples 64000 bits
2011-11-18 15:27:36.633145 [DEBUG] sofia_glue.c:4825 Set 2833 dtmf 
send/recv payload to 101
2011-11-18 15:27:36.633145 [DEBUG] sofia.c:5284 
(sofia/external/1010 at xx.xx.xx.xx:5060) State Change CS_NEW -> CS_INIT
2011-11-18 15:27:36.633145 [DEBUG] switch_core_session.c:1154 Send 
signal sofia/external/1010 at xx.xx.xx.xx:5060 [BREAK]
2011-11-18 15:27:36.633145 [DEBUG] switch_core_state_machine.c:325 
(sofia/external/1010 at xx.xx.xx.xx:5060) Running State Change CS_INIT
2011-11-18 15:27:36.633145 [DEBUG] switch_core_state_machine.c:364 
(sofia/external/1010 at xx.xx.xx.xx:5060) State INIT
2011-11-18 15:27:36.633145 [DEBUG] mod_sofia.c:85 
sofia/external/1010 at xx.xx.xx.xx:5060 SOFIA INIT
2011-11-18 15:27:36.633145 [DEBUG] mod_sofia.c:125 
(sofia/external/1010 at xx.xx.xx.xx:5060) State Change CS_INIT -> CS_ROUTING
2011-11-18 15:27:36.633145 [DEBUG] switch_core_session.c:1154 Send 
signal sofia/external/1010 at xx.xx.xx.xx:5060 [BREAK]
2011-11-18 15:27:36.633145 [DEBUG] switch_core_state_machine.c:364 
(sofia/external/1010 at xx.xx.xx.xx:5060) State INIT going to sleep
2011-11-18 15:27:36.633145 [DEBUG] switch_core_state_machine.c:325 
(sofia/external/1010 at xx.xx.xx.xx:5060) Running State Change CS_ROUTING
2011-11-18 15:27:36.633145 [DEBUG] switch_channel.c:1821 
(sofia/external/1010 at xx.xx.xx.xx:5060) Callstate Change DOWN -> RINGING
2011-11-18 15:27:36.633145 [DEBUG] switch_core_state_machine.c:373 
(sofia/external/1010 at xx.xx.xx.xx:5060) State ROUTING
2011-11-18 15:27:36.633145 [DEBUG] mod_sofia.c:148 
sofia/external/1010 at xx.xx.xx.xx:5060 SOFIA ROUTING
2011-11-18 15:27:36.633145 [DEBUG] switch_core_state_machine.c:77 
sofia/external/1010 at xx.xx.xx.xx:5060 Standard ROUTING
2011-11-18 15:27:36.633145 [INFO] mod_dialplan_xml.c:336 Processing 
MyName <1010>->972592182076 in context public
Dialplan: sofia/external/1010 at xx.xx.xx.xx:5060 parsing [public->unloop] 
continue=false
Dialplan: sofia/external/1010 at xx.xx.xx.xx:5060 Regex (PASS) [unloop] 
${unroll_loops}(true) =~ /^true$/ break=on-false
Dialplan: sofia/external/1010 at xx.xx.xx.xx:5060 Regex (FAIL) [unloop] 
${sip_looped_call}() =~ /^true$/ break=on-false
Dialplan: sofia/external/1010 at xx.xx.xx.xx:5060 parsing 
[public->outside_call] continue=true
Dialplan: sofia/external/1010 at xx.xx.xx.xx:5060 Absolute Condition 
[outside_call]
Dialplan: sofia/external/1010 at xx.xx.xx.xx:5060 Action set(outside_call=true)
Dialplan: sofia/external/1010 at xx.xx.xx.xx:5060 Action 
set(RFC2822_DATE=${strftime(%a, %d %b %Y %T %z)})
Dialplan: sofia/external/1010 at xx.xx.xx.xx:5060 parsing 
[public->call_debug] continue=true
Dialplan: sofia/external/1010 at xx.xx.xx.xx:5060 Regex (FAIL) [call_debug] 
${call_debug}(false) =~ /^true$/ break=never
Dialplan: sofia/external/1010 at xx.xx.xx.xx:5060 parsing 
[public->public_extensions] continue=false
Dialplan: sofia/external/1010 at xx.xx.xx.xx:5060 Regex (FAIL) 
[public_extensions] destination_number(972592182076) =~ 
/^(10[01][0-9])$/ break=on-false
Dialplan: sofia/external/1010 at xx.xx.xx.xx:5060 parsing [public->TEMP] 
continue=false
Dialplan: sofia/external/1010 at xx.xx.xx.xx:5060 Regex (PASS) [TEMP] 
context(public) =~ /public/ break=on-false
Dialplan: sofia/external/1010 at xx.xx.xx.xx:5060 Regex (FAIL) [TEMP] 
destination_number(972592182076) =~ /^publicnumber$/ break=on-false
Dialplan: sofia/external/1010 at xx.xx.xx.xx:5060 parsing 
[public->Misc_Number] continue=false
Dialplan: sofia/external/1010 at xx.xx.xx.xx:5060 Regex (PASS) 
[Misc_Number] context(public) =~ /public/ break=on-false
Dialplan: sofia/external/1010 at xx.xx.xx.xx:5060 Regex (FAIL) 
[Misc_Number] destination_number(972592182076) =~ /^publicnumber2$/ 
break=on-false
<!-- Cut out additional regex checks-->
2011-11-18 15:27:36.633145 [DEBUG] switch_core_state_machine.c:119 
(sofia/external/1010 at xx.xx.xx.xx:5060) State Change CS_ROUTING -> CS_EXECUTE
2011-11-18 15:27:36.633145 [DEBUG] switch_core_session.c:1154 Send 
signal sofia/external/1010 at xx.xx.xx.xx:5060 [BREAK]
2011-11-18 15:27:36.633145 [DEBUG] switch_core_state_machine.c:373 
(sofia/external/1010 at xx.xx.xx.xx:5060) State ROUTING going to sleep
2011-11-18 15:27:36.633145 [DEBUG] switch_core_state_machine.c:325 
(sofia/external/1010 at xx.xx.xx.xx:5060) Running State Change CS_EXECUTE
2011-11-18 15:27:36.633145 [DEBUG] switch_core_state_machine.c:380 
(sofia/external/1010 at xx.xx.xx.xx:5060) State EXECUTE
2011-11-18 15:27:36.633145 [DEBUG] mod_sofia.c:241 
sofia/external/1010 at xx.xx.xx.xx:5060 SOFIA EXECUTE
2011-11-18 15:27:36.633145 [DEBUG] switch_core_state_machine.c:157 
sofia/external/1010 at xx.xx.xx.xx:5060 Standard EXECUTE
EXECUTE sofia/external/1010 at xx.xx.xx.xx:5060 set(outside_call=true)
2011-11-18 15:27:36.633145 [DEBUG] mod_dptools.c:1063 
sofia/external/1010 at xx.xx.xx.xx:5060 SET [outside_call]=[true]
EXECUTE sofia/external/1010 at xx.xx.xx.xx:5060 set(RFC2822_DATE=Fri, 18 
Nov 2011 15:27:36 +0100)
2011-11-18 15:27:36.633145 [DEBUG] mod_dptools.c:1063 
sofia/external/1010 at xx.xx.xx.xx:5060 SET [RFC2822_DATE]=[Fri, 18 Nov 
2011 15:27:36 +0100]
2011-11-18 15:27:36.633145 [NOTICE] switch_core_state_machine.c:189 
sofia/external/1010 at xx.xx.xx.xx:5060 has executed the last dialplan 
instruction, hanging up.
2011-11-18 15:27:36.633145 [DEBUG] switch_channel.c:2739 
(sofia/external/1010 at xx.xx.xx.xx:5060) Callstate Change RINGING -> HANGUP
2011-11-18 15:27:36.633145 [NOTICE] switch_core_state_machine.c:191 
Hangup sofia/external/1010 at xx.xx.xx.xx:5060 [CS_EXECUTE] [NORMAL_CLEARING]
2011-11-18 15:27:36.633145 [DEBUG] switch_channel.c:2755 Send signal 
sofia/external/1010 at xx.xx.xx.xx:5060 [KILL]
2011-11-18 15:27:36.633145 [DEBUG] switch_core_session.c:1154 Send 
signal sofia/external/1010 at xx.xx.xx.xx:5060 [BREAK]
2011-11-18 15:27:36.633145 [DEBUG] switch_core_state_machine.c:380 
(sofia/external/1010 at xx.xx.xx.xx:5060) State EXECUTE going to sleep
2011-11-18 15:27:36.633145 [DEBUG] switch_core_state_machine.c:325 
(sofia/external/1010 at xx.xx.xx.xx:5060) Running State Change CS_HANGUP
2011-11-18 15:27:36.633145 [DEBUG] switch_core_state_machine.c:575 
(sofia/external/1010 at xx.xx.xx.xx:5060) State HANGUP
2011-11-18 15:27:36.633145 [DEBUG] mod_sofia.c:458 Channel 
sofia/external/1010 at xx.xx.xx.xx:5060 hanging up, cause: NORMAL_CLEARING
2011-11-18 15:27:36.633145 [DEBUG] mod_sofia.c:522 Responding to INVITE 
with: 480
2011-11-18 15:27:36.633145 [DEBUG] switch_core_state_machine.c:46 
sofia/external/1010 at xx.xx.xx.xx:5060 Standard HANGUP, cause: NORMAL_CLEARING
2011-11-18 15:27:36.633145 [DEBUG] switch_core_state_machine.c:575 
(sofia/external/1010 at xx.xx.xx.xx:5060) State HANGUP going to sleep
2011-11-18 15:27:36.633145 [DEBUG] switch_core_state_machine.c:356 
(sofia/external/1010 at xx.xx.xx.xx:5060) State Change CS_HANGUP -> 
CS_REPORTING
2011-11-18 15:27:36.633145 [DEBUG] switch_core_session.c:1154 Send 
signal sofia/external/1010 at xx.xx.xx.xx:5060 [BREAK]
2011-11-18 15:27:36.633145 [DEBUG] switch_core_state_machine.c:325 
(sofia/external/1010 at xx.xx.xx.xx:5060) Running State Change CS_REPORTING
2011-11-18 15:27:36.633145 [DEBUG] switch_core_state_machine.c:635 
(sofia/external/1010 at xx.xx.xx.xx:5060) State REPORTING



Join us at ClueCon 2011 Aug 9-11, 2011
More information about the FreeSWITCH-users mailing list