GithubHelp home page GithubHelp logo

pepelux / sippts Goto Github PK

View Code? Open in Web Editor NEW
375.0 16.0 77.0 903 KB

Set of tools to audit SIP based VoIP Systems

License: GNU General Public License v3.0

Python 100.00%
voip hacking pentesting secutiry asterisk freepbx elastix pentest pentest-tool hacking-tool

sippts's Introduction

logo

What is Sippts?

Sippts is a set of tools to audit VoIP servers and devices using SIP protocol. Sippts is programmed in Python and it allows us to check the security of a VoIP server using SIP protocol.

Is it free?

Yes. You can freely use, modify and distribute. If modified, please put a reference to this site.

Can be use sippts for illegal purposes?

Most security tools can be used for illegal purposes, but the purpose of this tool is to check the security of your own servers and not to use to do bad things. I am not responsible for the misuse of this tool.

Set of tools for penetration test over SIP protocol

Sippts is a set of tools to audit VoIP servers and devices using SIP protocol. Sippts is programmed in Perl script and the tools are:

  • Sipscan is a fast scanner for SIP services that uses multithread. Sipscan can check several IPs and port ranges and it can work over UDP or TCP.

Click here to read more about SIPscan

  • Sipexten identifies extensions on a SIP server. Also tells you if the extension line requires authentication or not. Sipexten can check several IPs and port ranges.

Click here to read more about SIPexten

  • Siprcrack is a remote password cracker. Siprcrack can test passwords for several users in different IPs and port ranges.

Click here to read more about SIPRcrack

  • Sipinvite checks if a server allow us to make calls without authentication. If the SIP server has a bad configuration, it will allow us to make calls to external numbers. Also it can allow us to transfer the call to a second external number.

Click here to read more about SIPinvite

  • SipDigestLeak Exploits the SIP digest leak vulnerability discovered by Sandro Gauci that affects a large number of hardware and software devices.

Click here to read more about SIPDigestLeak

  • SipFlood Send unlimited messages to the target.

Click here to read more about SIPFlood

  • SipSend Allow us to send a customized SIP message and analyze the response.

Click here to read more about SIPSend

  • WsSend Allow us to send a customized SIP message over WebSockets and analyze the response.

Click here to read more about WsSend

  • SipEnumerate Enumerate available methods of a SIP service/server.

Click here to read more about SIPEnumerate

  • SipPCAPDump Extracts SIP Digest authentications from a PCAP file.

Click here to read more about SIPPCAPDump

  • SipDigestCrack Cracking tool to crack the digest authentications within the SIP protocol.

Click here to read more about SIPDigestCrack

  • SipTshark Extract data of SIP protocol from a PCAP file.

Click here to read more about SIPTshark

  • RTPBleed to exploit RTPBleed vulnerability sending data to RTP ports.

Click here to read more about RTPBleed

  • RTCPBleed to exploit RTPBleed vulnerability sending data to RTCP ports.

Click here to read more about RTCPBleed

  • RTPBleedFlood to exploit RTPBleed vulnerability flooding a RTP port with an active dialog.

Click here to read more about RTPBleedFlood

  • RTPBleedInject to exploit RTPBleed vulnerability injecting RTP traffic.

Click here to read more about RTPBleedInject

Operating System

Sippts has been tested on:

  • Linux
  • MacOS
  • Windows

Requirements

  • Python 3

Instalation

Installing via git:

MacOS

Edit requirements.txt and comment next line before install:

# pyradamsa

sippts's People

Contributors

igorolhovskiy avatar linuxmaniac avatar pepelux avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

sippts's Issues

SIP register lack of authentication using sipsend.py

Hello,
First of all,thanks for the great work here!

Target: FreePBX server

I was trying to send a register request using

python3 sipsend.py -i 192.168.235.140 -r 5060 -m register --user 100 --pass xxx

output

REGISTER sip:192.168.235.140 SIP/2.0
Via: SIP/2.0/UDP 192.168.1.112:48617;branch=tqabdqwqky8h2sqbysaxndqaqteeh33bfa5s15qqsaof3zfzxtu32gdto1w6u0p39qtx3d8
From:  <sip:[email protected]>;tag=dedcedd4
To:  <sip:[email protected]>
Contact: <sip:[email protected]:48617;transport=UDP>
Call-ID: c4db093cfefecf76ce41504c057dbaea
CSeq: 1 REGISTER
Max-Forwards: 70
User-Agent: pplsip
Allow: INVITE,REGISTER,ACK,CANCEL,BYE,NOTIFY,REFER,OPTIONS,INFO,SUBSCRIBE,UPDATE,PRACK,MESSAGE
Expires: 10
Content-Length: 0

It should be something like this

REGISTER sip:192.168.235.140 SIP/2.0
Via: SIP/2.0/UDP 192.168.235.136:59550;rport;branch=z9hG4bKPje98bd1d2ce874495a34804a9fe0ae868
Max-Forwards: 70
From: <sip:[email protected]>;tag=db59db57b8a948559b7a5273075e2007
To: <sip:[email protected]>
Call-ID: b717c340934244bc9e0a2c995f0d11f3
CSeq: 29154 REGISTER
User-Agent: MicroSIP/3.19.30
Contact: <sip:[email protected]:59550;ob>
Expires: 300
Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, INFO, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS
Authorization: Digest username="100", realm="asterisk", nonce="1668091363/ddf4099f6194d8b4ac230cc29b592a9d", uri="sip:192.168.235.140", response="fe613118d46b561eda759ae9cc08eafa", algorithm=md5, cnonce="bca6134cc2d34fc6863bd40a4efc45b1", opaque="66db59972a4067c4", qop=auth, nc=00000001

It seems that sipsend.py don't do the authentication when doing a Register request,hence you will always get a SIP/2.0 401 Unauthorized response.
as you can see ,the Authorization header is missing.

Thanks.

ModuleNotFoundError: No module named '__main__.lib'; '__main__' is not a package

Hello Pepelux,

We've just installed sippts in Almalinux 8.
When we try to test it, we get this error:

[root@sippts sippts]# /usr/src/sippts/src/sippts/src/sippts/sipscan.py -h
Traceback (most recent call last):
  File "/usr/src/sippts/src/sippts/src/sippts/sipscan.py", line 18, in <module>
    from .lib.functions import create_message, parse_message, get_machine_default_ip, ip2long, long2ip, get_free_port, ping, fingerprinting, format_time
ModuleNotFoundError: No module named '__main__.lib'; '__main__' is not a package

Can you help us with that?

Thanks
Ricardo

Option : Add custom header to sipsend

Hello,
First of all,thanks for the great work here!

As a suggestion of a new option to SIPSEND script :
Allowing the user to add a custom header to test for injection attacks .

For example it can be something like this python3 sipsend.py -i 192.168.235.140 -r 5060 -m register --user 100 --pass xxx --header test:injection here

the request will be something like this:

Via: SIP/2.0/UDP 192.168.1.112:48617;branch=tqabdqwqky8h2sqbysaxndqaqteeh33bfa5s15qqsaof3zfzxtu32gdto1w6u0p39qtx3d8
From:  <sip:[email protected]>;tag=dedcedd4
To:  <sip:[email protected]>
Contact: <sip:[email protected]:48617;transport=UDP>
Call-ID: c4db093cfefecf76ce41504c057dbaea
test: injection here
CSeq: 1 REGISTER
Max-Forwards: 70
User-Agent: pplsip
Allow: INVITE,REGISTER,ACK,CANCEL,BYE,NOTIFY,REFER,OPTIONS,INFO,SUBSCRIBE,UPDATE,PRACK,MESSAGE
Expires: 10
Content-Length: 0

Thanks.

sipsniff is not working?

Hello, can I ask.
After running sudo perl sipsniff.pl -i eth0 nothing happend, just blank page. Even with options.
I tried make call before, after but same results.
I am not sure if I do something wrong or is there any problem.
Thank you for respond :)

sniff sip passwords with sipspy

Can sipspy be used to emulate a sip server and provide real authentication emulation, so that when a sip client connects, his password can be revealed?

my ISP has a sip client running on the router and I want to replace this router for another one. The ISP will not reveal the password but I can change the registar and proxy on the router configuration. This way I can point it to a fake server that accepts anything

Hard time packaging sippts

We have a hard time packaging sippts for BlackArch. See #2336.

The right packaging standard is to put the app data under /usr/share/sippts/ and then create a wrapper in /usr/bin/sipscan to have the tool available. We packaged it like this in the first place.

As you can see in #2336 the problem is that the script is looking for the database in the working directory. It would be cleaner and easier to package if sippts was using a configuration file (that could stay in /usr/share/sippts/ or in ~/.config/sippts) where the database path is specified. Also system("cp $database_empty $database") if (! -e $database); should be removed so this would be done by the package that would copy the empty db to ~/.config/sippts at installation (users that want to git clone and use the tool independently can still copy the db manually wherever they want).

ImportError: attempted relative import with no known parent package

Hello. Just cloned the repo to test your tool, but it seems that python3 does not recognize the location for /lib functions.
I simply did
$ git clone https://github.com/Pepelux/sippts.git
$ cd sippts
$ pip3 install -r requirements.txt
$ cd src/sippts
$ python3 sipenumerate.py -h
Traceback (most recent call last):
File "/home/kali/milcom/sippts/src/sippts/sipenumerate.py", line 14, in
from .lib.functions import create_message, get_free_port, parse_message, fingerprinting, format_time
ImportError: attempted relative import with no known parent package

$ python3 sipfuzzer.py
Traceback (most recent call last):
File "/home/kali/milcom/sippts/src/sippts/sipfuzzer.py", line 20, in
from .lib.functions import create_message, get_free_port
ImportError: attempted relative import with no known parent package

how to allow ENoNATIP

how to allow ENoNATIP in sip invite
the sip account not get response need allow ENoNATIP

CSeq: INVITE

why we have CSeq: 1 INVITE and CSeq: 2 INVITE
what is for request
Who will give me the correct response
some servers like cisco
can invite just CSeq: 1 not need 2
and some servers need 1 and need 2

why i ass this . is that mean
u need auth to create CSeq: 2 INVITE to call
if self.auth_user != '' and self.auth_pwd != '' and (headers['response_code'] == '401' or headers['response_code'] == '407'):

but why if headers['response_code'] == '407')?

Prefix hardcoded to `/usr` (bindir to `/usr/bin`)

Currently, the prefix cannot be changed, as the path is hardcoded.

sippts/Makefile

Lines 9 to 17 in 3da2878

$(INSTALL_DIR) $(DESTDIR)/usr/bin
$(INSTALL_PROGRAM) sipcracker.pl $(DESTDIR)/usr/bin/sipcracker
$(INSTALL_PROGRAM) sipdigestleak.pl $(DESTDIR)/usr/bin/sipdigestleak
$(INSTALL_PROGRAM) sipexten.pl $(DESTDIR)/usr/bin/sipexten
$(INSTALL_PROGRAM) sipinvite.pl $(DESTDIR)/usr/bin/sipinvite
$(INSTALL_PROGRAM) sipreport.pl $(DESTDIR)/usr/bin/sipreport
$(INSTALL_PROGRAM) sipscan.pl $(DESTDIR)/usr/bin/sipscan
$(INSTALL_PROGRAM) sipsniff.pl $(DESTDIR)/usr/bin/sipsniff
$(INSTALL_PROGRAM) sipspy.pl $(DESTDIR)/usr/bin/sipspy

setup.py or other way to build debian package installer

Trying to build package for debian/ubuntu

Would it be possible to add a setup.py file? Can't use pip - airgapped environment

I was able to package up the project into a .deb, but running into "ModuleNotFoundError" on modules and lib directories.

Strange as it is in the normal Ubuntu python path:
all executables in /usr/bin
lib and modules directory in /usr/lib/python3/dist-packages/sippts

Default configuration:

import sys
sys.path
['', '/usr/lib/python38.zip', '/usr/lib/python3.8', '/usr/lib/python3.8/lib-dynload', '/usr/local/lib/python3.8/dist-packages', '/usr/lib/python3/dist-packages']

So it looks like it is a custom path

Works when the directory of lib and modules are added to PYTHONPATH:
$ export PYTHONPATH=/usr/lib/python3/dist-packages/sippts

import sys
sys.path
['', '/usr/lib/python3/dist-packages/sippts', '/usr/lib/python38.zip', '/usr/lib/python3.8', '/usr/lib/python3.8/lib-dynload', '/usr/local/lib/python3.8/dist-packages', '/usr/lib/python3/dist-packages']

$ sipscan -h
usage: sipscan [-h] [-i IPADDR] [-proxy PROXY] [-r REMOTE_PORT] [-p PROTO] [-m METHOD] [-d DOMAIN]
[-cd CONTACT_DOMAIN] [-fn FROM_NAME] [-fu FROM_USER] [-fd FROM_DOMAIN] [-tn TO_NAME] [-tu TO_USER]
[-td TO_DOMAIN] [-ua USER_AGENT] [-th THREADS] [-ping] [-v] [-vv] [-f FILE] [-nocolor] [-o OFILE]
[-fp] [-random]

☎️ SIPPTS BY πŸ…Ώ πŸ…΄ πŸ…Ώ πŸ…΄ πŸ…» πŸ†„ πŸ†‡

β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ
β–ˆβ”€β–„β–„β–„β–„β–ˆβ–„β”€β–„β–ˆβ–„β”€β–„β–„β”€β–ˆβ–ˆβ–ˆβ”€β–„β–„β–„β–„β–ˆβ”€β–„β–„β–„β”€β–ˆβ–ˆβ–€β–„β”€β–ˆβ–ˆβ–„β”€β–€β–ˆβ–„β”€β–„β–ˆ
β–ˆβ–„β–„β–„β–„β”€β–ˆβ–ˆβ”€β–ˆβ–ˆβ–ˆβ”€β–„β–„β–„β–ˆβ–ˆβ–ˆβ–„β–„β–„β–„β”€β–ˆβ”€β–ˆβ–ˆβ–ˆβ–€β–ˆβ–ˆβ”€β–€β”€β–ˆβ–ˆβ–ˆβ”€β–ˆβ–„β–€β”€β–ˆβ–ˆ
β–€β–„β–„β–„β–„β–„β–€β–„β–„β–„β–€β–„β–„β–„β–€β–€β–€β–€β–€β–„β–„β–„β–„β–„β–€β–„β–„β–„β–„β–„β–€β–„β–„β–€β–„β–„β–€β–„β–„β–„β–€β–€β–„β–„β–€

πŸ’Ύ https://github.com/Pepelux/sippts
🐦 https://twitter.com/pepeluxx

-= Fast SIP scanner =-

It is common for modules and libraries to be packaged in a directory with the name of the project (sippts).

tool Working with TLS and UDP but no TCP

This tool is awesome when it comes to handling TLS and UDP, but I'm kinda stuck when it comes to TCP. I've been trying it out on my test IP, which I can scan with Nmap, but for some reason, this tool isn't giving me any results with TCP.
my ip has tls on and tcp


3128/tcp closed squid-http
5060/tcp open   sip
5061/tcp open   sip-tls

get response timeout

use this to add a timeout to while get response
timeout = time.time() + int(defualtConnectionTimeout)
while rescode[:1] == '1' and time.time() < timeout:

No DEB release fot v3.0.0

Hi,

Will be there a .deb package for the new release ?

I know that someone has requested sippts to be added into kali repos, but nothing yet...

Any ideas ?

Cannot sipscan using UDP?

Cannot sip scan with udp protocol, it returns nothing, works fine with tcp. I think it's a pcap issue where i tested it on windows.

Sip registration hijacking

Would be really really nice a tool which performs the sip registration hijacking ( deregistration + registration option and registration standalone option ), with all the customizations of the others one you already made

i have got nothing

perl sipcrack.pl -h 192.168.0.0/24 -e 780XXX-780XXX -w pp -r 5060 -v -proto tcp -nodb
i have got nothing

I am having an error

β”Œβ”€β”€(rootγ‰ΏMSI)-[/opt/sippts]
└─# source env/bin/activate

β”Œβ”€β”€(env)(rootγ‰ΏMSI)-[/opt/sippts]
└─# pip install sippts
ERROR: Could not find a version that satisfies the requirement sippts (from versions: none)
ERROR: No matching distribution found for sippts

β”Œβ”€β”€(env)(rootγ‰ΏMSI)-[/opt/sippts]
└─# pip install -r requirements.txt
Collecting netifaces (from -r requirements.txt (line 1))
Using cached netifaces-0.11.0-cp311-cp311-linux_x86_64.whl
Collecting IPy (from -r requirements.txt (line 2))
Using cached IPy-1.1-py3-none-any.whl
Collecting pyshark (from -r requirements.txt (line 3))
Using cached pyshark-0.6-py3-none-any.whl (41 kB)
Collecting scapy (from -r requirements.txt (line 4))
Using cached scapy-2.5.0-py2.py3-none-any.whl
Collecting ArpSpoof (from -r requirements.txt (line 5))
Using cached ArpSpoof-1.1.2-py3-none-any.whl
Collecting websocket-client (from -r requirements.txt (line 6))
Using cached websocket_client-1.6.4-py3-none-any.whl (57 kB)
Collecting rel (from -r requirements.txt (line 7))
Using cached rel-0.4.9-py2.py3-none-any.whl (12 kB)
Collecting pyradamsa (from -r requirements.txt (line 8))
Using cached pyradamsa-0.1.1-cp32-abi3-manylinux1_x86_64.whl (545 kB)
Collecting lxml (from pyshark->-r requirements.txt (line 3))
Using cached lxml-4.9.3-cp311-cp311-manylinux_2_28_x86_64.whl (7.9 MB)
Collecting termcolor (from pyshark->-r requirements.txt (line 3))
Using cached termcolor-2.3.0-py3-none-any.whl (6.9 kB)
Collecting packaging (from pyshark->-r requirements.txt (line 3))
Using cached packaging-23.2-py3-none-any.whl (53 kB)
Collecting appdirs (from pyshark->-r requirements.txt (line 3))
Using cached appdirs-1.4.4-py2.py3-none-any.whl (9.6 kB)
Collecting PythonToolsKit (from ArpSpoof->-r requirements.txt (line 5))
Using cached PythonToolsKit-1.2.6-py3-none-any.whl
Installing collected packages: rel, pyradamsa, netifaces, IPy, appdirs, websocket-client, termcolor, scapy, PythonToolsKit, packaging, lxml, pyshark, ArpSpoof
Successfully installed ArpSpoof-1.1.2 IPy-1.1 PythonToolsKit-1.2.6 appdirs-1.4.4 lxml-4.9.3 netifaces-0.11.0 packaging-23.2 pyradamsa-0.1.1 pyshark-0.6 rel-0.4.9 scapy-2.5.0 termcolor-2.3.0 websocket-client-1.6.4

β”Œβ”€β”€(env)(rootγ‰ΏMSI)-[/opt/sippts]
└─# python setup.py install
/opt/sippts/env/lib/python3.11/site-packages/setuptools/config/pyprojecttoml.py:108: _BetaConfiguration: Support for [tool.setuptools] in pyproject.toml is still beta.
warnings.warn(msg, _BetaConfiguration)
running install
/opt/sippts/env/lib/python3.11/site-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
warnings.warn(
/opt/sippts/env/lib/python3.11/site-packages/setuptools/command/easy_install.py:146: EasyInstallDeprecationWarning: easy_install command is deprecated. Use build and pip and other standards-based tools.
warnings.warn(
running bdist_egg
running egg_info
writing src/sippts.egg-info/PKG-INFO
writing dependency_links to src/sippts.egg-info/dependency_links.txt
writing requirements to src/sippts.egg-info/requires.txt
writing top-level names to src/sippts.egg-info/top_level.txt
reading manifest file 'src/sippts.egg-info/SOURCES.txt'
adding license file 'LICENSE.txt'
writing manifest file 'src/sippts.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-x86_64/egg
running install_lib
running build_py
creating build/bdist.linux-x86_64/egg
creating build/bdist.linux-x86_64/egg/sippts
copying build/lib/sippts/sipsniff.py -> build/bdist.linux-x86_64/egg/sippts
creating build/bdist.linux-x86_64/egg/sippts/lib
copying build/lib/sippts/lib/functions.py -> build/bdist.linux-x86_64/egg/sippts/lib
copying build/lib/sippts/lib/params.py -> build/bdist.linux-x86_64/egg/sippts/lib
copying build/lib/sippts/lib/functions_fuzz.py -> build/bdist.linux-x86_64/egg/sippts/lib
copying build/lib/sippts/lib/init.py -> build/bdist.linux-x86_64/egg/sippts/lib
copying build/lib/sippts/lib/logos.py -> build/bdist.linux-x86_64/egg/sippts/lib
copying build/lib/sippts/lib/color.py -> build/bdist.linux-x86_64/egg/sippts/lib
copying build/lib/sippts/sipflood.py -> build/bdist.linux-x86_64/egg/sippts
copying build/lib/sippts/sipinvite.py -> build/bdist.linux-x86_64/egg/sippts
copying build/lib/sippts/rtcpbleed.py -> build/bdist.linux-x86_64/egg/sippts
copying build/lib/sippts/sipping.py -> build/bdist.linux-x86_64/egg/sippts
copying build/lib/sippts/arpspoof.py -> build/bdist.linux-x86_64/egg/sippts
copying build/lib/sippts/sipenumerate.py -> build/bdist.linux-x86_64/egg/sippts
copying build/lib/sippts/sipcrack.py -> build/bdist.linux-x86_64/egg/sippts
copying build/lib/sippts/siprcrack.py -> build/bdist.linux-x86_64/egg/sippts
copying build/lib/sippts/wssend.py -> build/bdist.linux-x86_64/egg/sippts
copying build/lib/sippts/sipsend.py -> build/bdist.linux-x86_64/egg/sippts
copying build/lib/sippts/rtpbleedinject.py -> build/bdist.linux-x86_64/egg/sippts
copying build/lib/sippts/sipexten.py -> build/bdist.linux-x86_64/egg/sippts
copying build/lib/sippts/sipdigestleak.py -> build/bdist.linux-x86_64/egg/sippts
copying build/lib/sippts/sipscan.py -> build/bdist.linux-x86_64/egg/sippts
copying build/lib/sippts/siptshark.py -> build/bdist.linux-x86_64/egg/sippts
copying build/lib/sippts/rtpbleedflood.py -> build/bdist.linux-x86_64/egg/sippts
copying build/lib/sippts/rtpbleed.py -> build/bdist.linux-x86_64/egg/sippts
copying build/lib/sippts/sipfuzzer.py -> build/bdist.linux-x86_64/egg/sippts
copying build/lib/sippts/sipdump.py -> build/bdist.linux-x86_64/egg/sippts
byte-compiling build/bdist.linux-x86_64/egg/sippts/sipsniff.py to sipsniff.cpython-311.pyc
byte-compiling build/bdist.linux-x86_64/egg/sippts/lib/functions.py to functions.cpython-311.pyc
byte-compiling build/bdist.linux-x86_64/egg/sippts/lib/params.py to params.cpython-311.pyc
byte-compiling build/bdist.linux-x86_64/egg/sippts/lib/functions_fuzz.py to functions_fuzz.cpython-311.pyc
byte-compiling build/bdist.linux-x86_64/egg/sippts/lib/init.py to init.cpython-311.pyc
byte-compiling build/bdist.linux-x86_64/egg/sippts/lib/logos.py to logos.cpython-311.pyc
byte-compiling build/bdist.linux-x86_64/egg/sippts/lib/color.py to color.cpython-311.pyc
byte-compiling build/bdist.linux-x86_64/egg/sippts/sipflood.py to sipflood.cpython-311.pyc
byte-compiling build/bdist.linux-x86_64/egg/sippts/sipinvite.py to sipinvite.cpython-311.pyc
byte-compiling build/bdist.linux-x86_64/egg/sippts/rtcpbleed.py to rtcpbleed.cpython-311.pyc
byte-compiling build/bdist.linux-x86_64/egg/sippts/sipping.py to sipping.cpython-311.pyc
byte-compiling build/bdist.linux-x86_64/egg/sippts/arpspoof.py to arpspoof.cpython-311.pyc
byte-compiling build/bdist.linux-x86_64/egg/sippts/sipenumerate.py to sipenumerate.cpython-311.pyc
byte-compiling build/bdist.linux-x86_64/egg/sippts/sipcrack.py to sipcrack.cpython-311.pyc
byte-compiling build/bdist.linux-x86_64/egg/sippts/siprcrack.py to siprcrack.cpython-311.pyc
byte-compiling build/bdist.linux-x86_64/egg/sippts/wssend.py to wssend.cpython-311.pyc
byte-compiling build/bdist.linux-x86_64/egg/sippts/sipsend.py to sipsend.cpython-311.pyc
byte-compiling build/bdist.linux-x86_64/egg/sippts/rtpbleedinject.py to rtpbleedinject.cpython-311.pyc
byte-compiling build/bdist.linux-x86_64/egg/sippts/sipexten.py to sipexten.cpython-311.pyc
byte-compiling build/bdist.linux-x86_64/egg/sippts/sipdigestleak.py to sipdigestleak.cpython-311.pyc
byte-compiling build/bdist.linux-x86_64/egg/sippts/sipscan.py to sipscan.cpython-311.pyc
byte-compiling build/bdist.linux-x86_64/egg/sippts/siptshark.py to siptshark.cpython-311.pyc
byte-compiling build/bdist.linux-x86_64/egg/sippts/rtpbleedflood.py to rtpbleedflood.cpython-311.pyc
byte-compiling build/bdist.linux-x86_64/egg/sippts/rtpbleed.py to rtpbleed.cpython-311.pyc
byte-compiling build/bdist.linux-x86_64/egg/sippts/sipfuzzer.py to sipfuzzer.cpython-311.pyc
byte-compiling build/bdist.linux-x86_64/egg/sippts/sipdump.py to sipdump.cpython-311.pyc
creating build/bdist.linux-x86_64/egg/EGG-INFO
installing scripts to build/bdist.linux-x86_64/egg/EGG-INFO/scripts
running install_scripts
running build_scripts
creating build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.11/rtpbleedflood -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.11/rtpbleedinject -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.11/sipdigestleak -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.11/sipscan -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.11/sipsniff -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.11/sipping -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.11/sipinvite -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.11/sipflood -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.11/sipexten -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.11/rtcpbleed -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.11/sipdump -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.11/rtpbleed -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.11/arpspoof -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.11/sipsend -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.11/siptshark -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.11/wssend -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.11/siprcrack -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.11/sipfuzzer -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.11/sipcrack -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.11/sipenumerate -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/rtpbleedflood to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/rtpbleedinject to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/sipdigestleak to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/sipscan to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/sipsniff to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/sipping to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/sipinvite to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/sipflood to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/sipexten to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/rtcpbleed to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/sipdump to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/rtpbleed to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/arpspoof to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/sipsend to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/siptshark to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/wssend to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/siprcrack to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/sipfuzzer to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/sipcrack to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/sipenumerate to 755
copying src/sippts.egg-info/PKG-INFO -> build/bdist.linux-x86_64/egg/EGG-INFO
copying src/sippts.egg-info/SOURCES.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
copying src/sippts.egg-info/dependency_links.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
copying src/sippts.egg-info/requires.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
copying src/sippts.egg-info/top_level.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
zip_safe flag not set; analyzing archive contents...
creating 'dist/sippts-3.4.dev0-py3.11.egg' and adding 'build/bdist.linux-x86_64/egg' to it
removing 'build/bdist.linux-x86_64/egg' (and everything under it)
Processing sippts-3.4.dev0-py3.11.egg
Copying sippts-3.4.dev0-py3.11.egg to /opt/sippts/env/lib/python3.11/site-packages
Adding sippts 3.4.dev0 to easy-install.pth file
Installing arpspoof script to /opt/sippts/env/bin
Installing rtcpbleed script to /opt/sippts/env/bin
Installing rtpbleed script to /opt/sippts/env/bin
Installing rtpbleedflood script to /opt/sippts/env/bin
Installing rtpbleedinject script to /opt/sippts/env/bin
Installing sipcrack script to /opt/sippts/env/bin
Installing sipdigestleak script to /opt/sippts/env/bin
Installing sipdump script to /opt/sippts/env/bin
Installing sipenumerate script to /opt/sippts/env/bin
Installing sipexten script to /opt/sippts/env/bin
Installing sipflood script to /opt/sippts/env/bin
Installing sipfuzzer script to /opt/sippts/env/bin
Installing sipinvite script to /opt/sippts/env/bin
Installing sipping script to /opt/sippts/env/bin
Installing siprcrack script to /opt/sippts/env/bin
Installing sipscan script to /opt/sippts/env/bin
Installing sipsend script to /opt/sippts/env/bin
Installing sipsniff script to /opt/sippts/env/bin
Installing siptshark script to /opt/sippts/env/bin
Installing wssend script to /opt/sippts/env/bin

Installed /opt/sippts/env/lib/python3.11/site-packages/sippts-3.4.dev0-py3.11.egg
Processing dependencies for sippts==3.4.dev0
Searching for websocket-client==1.6.4
Best match: websocket-client 1.6.4
Adding websocket-client 1.6.4 to easy-install.pth file
Installing wsdump script to /opt/sippts/env/bin

Using /opt/sippts/env/lib/python3.11/site-packages
Searching for scapy==2.5.0
Best match: scapy 2.5.0
Adding scapy 2.5.0 to easy-install.pth file
Installing scapy script to /opt/sippts/env/bin

Using /opt/sippts/env/lib/python3.11/site-packages
Searching for rel==0.4.9
Best match: rel 0.4.9
Adding rel 0.4.9 to easy-install.pth file
Installing rtimer script to /opt/sippts/env/bin

Using /opt/sippts/env/lib/python3.11/site-packages
Searching for pyshark==0.6
Best match: pyshark 0.6
Adding pyshark 0.6 to easy-install.pth file

Using /opt/sippts/env/lib/python3.11/site-packages
Searching for pyradamsa==0.1.1
Best match: pyradamsa 0.1.1
Adding pyradamsa 0.1.1 to easy-install.pth file

Using /opt/sippts/env/lib/python3.11/site-packages
Searching for netifaces==0.11.0
Best match: netifaces 0.11.0
Adding netifaces 0.11.0 to easy-install.pth file

Using /opt/sippts/env/lib/python3.11/site-packages
Searching for IPy==1.1
Best match: IPy 1.1
Adding IPy 1.1 to easy-install.pth file

Using /opt/sippts/env/lib/python3.11/site-packages
Searching for ArpSpoof==1.1.2
Best match: ArpSpoof 1.1.2
Adding ArpSpoof 1.1.2 to easy-install.pth file
Installing ArpSpoof script to /opt/sippts/env/bin

Using /opt/sippts/env/lib/python3.11/site-packages
Searching for appdirs==1.4.4
Best match: appdirs 1.4.4
Adding appdirs 1.4.4 to easy-install.pth file

Using /opt/sippts/env/lib/python3.11/site-packages
Searching for packaging==23.2
Best match: packaging 23.2
Adding packaging 23.2 to easy-install.pth file

Using /opt/sippts/env/lib/python3.11/site-packages
Searching for termcolor==2.3.0
Best match: termcolor 2.3.0
Adding termcolor 2.3.0 to easy-install.pth file

Using /opt/sippts/env/lib/python3.11/site-packages
Searching for lxml==4.9.3
Best match: lxml 4.9.3
Adding lxml 4.9.3 to easy-install.pth file

Using /opt/sippts/env/lib/python3.11/site-packages
Searching for PythonToolsKit==1.2.6
Best match: PythonToolsKit 1.2.6
Adding PythonToolsKit 1.2.6 to easy-install.pth file
Installing Characters script to /opt/sippts/env/bin
Installing DebugEncoding script to /opt/sippts/env/bin

Using /opt/sippts/env/lib/python3.11/site-packages
Finished processing dependencies for sippts==3.4.dev0

β”Œβ”€β”€(env)(rootγ‰ΏMSI)-[/opt/sippts]
└─# sipscan -h
Traceback (most recent call last):
File "/opt/sippts/env/bin/sipscan", line 4, in
import('pkg_resources').run_script('sippts==3.4.dev0', 'sipscan')
File "/opt/sippts/env/lib/python3.11/site-packages/pkg_resources/init.py", line 708, in run_script
self.require(requires)[0].run_script(script_name, ns)
File "/opt/sippts/env/lib/python3.11/site-packages/pkg_resources/init.py", line 1528, in run_script
exec(script_code, namespace, namespace)
File "/opt/sippts/env/lib/python3.11/site-packages/sippts-3.4.dev0-py3.11.egg/EGG-INFO/scripts/sipscan", line 10, in
ModuleNotFoundError: No module named 'sippts'

SIP/2.0 423 Interval Too Brief

When using sipcrack.py against a Cisco CUCM server I get a SIP/2.0 423 Interval Too Brief back from the server. If you update expires variable in the create_message function from 60 to 120 it works. It would be nice to have this as an option.

def create_message(method, ip_sdp, contactdomain, fromuser, fromname, fromdomain, touser, toname, todomain, proto, domain, useragent, fromport, branch, callid, tag, cseq, totag, digest, auth_type, referto, withsdp, via, rr, ppi, pai, header, withcontact): expires = '120'

python sip request header srtp and rtp

i have this part of my sip invite request for srtp

        sdp = '\r\n'
        sdp += 'v=0\r\n'
        sdp += 'o=anonymous 1312841870 1312841870 IN IP4 %s\r\n' % contactdomain
        sdp += 's=SIP Call\r\n'
        sdp += 'c=IN IP4 %s\r\n' % contactdomain
        sdp += 't=0 0\r\n'
        sdp += 'm=audio 2362 RTP/AVP 0\r\n'
        sdp += 'a=sendrecv\r\n'
        sdp += 'a=rtpmap:18 G729/8000\r\n'
        sdp += 'a=fmtp:18 annexb=no\r\n'
        sdp += 'a=ptime:20\r\n'
        sdp += 'a=rtpmap:0 PCMU/8000\r\n'
        sdp += 'a=rtpmap:8 PCMA/8000\r\n'
        sdp += 'a=rtpmap:4 G723/8000\r\n'
        sdp += 'a=rtpmap:9 G722/8000\r\n'
        sdp += 'a=rtpmap:97 iLBC/8000\r\n'
        sdp += 'a=rtpmap:3 GSM/8000\r\n'
        sdp += 'a=fmtp:97 mode=30\r\n'
        sdp += 'a=rtpmap:2 G726-32/8000\r\n'
        sdp += 'a=rtpmap:123 opus/48000/2\r\n'
        sdp += 'a=rtpmap:101 telephone-event/8000\r\n'
        sdp += 'a=fmtp:101 0-15\r\n'
        sdp += 'a=crypto:1 AES_CM_128_HMAC_SHA1_80 inline:4EvYRd22P8n36wRrlWCMZIWegovyv7iWm464D4Pt\r\n'
        sdp += 'a=crypto:2 AES_CM_128_HMAC_SHA1_32 inline:mWQ4cakWKOnfH9Tji2pEF87JtVFUqBAMPqub9roe\r\n'

i was add

    sdp += 'a=rtpmap:3 GSM/8000\r\n'
    sdp += 'a=rtpmap:0 PCMU/8000\r\n'
    sdp += 'a=rtpmap:8 PCMA/8000\r\n'

and this is part of my rtp

        sdp = '\r\n'
        sdp += 'v=0\r\n'
        sdp += 'o=anonymous 1312841870 1312841870 IN IP4 %s\r\n' % contactdomain
        sdp += 's=session\r\n'
        sdp += 'c=IN IP4 %s\r\n' % contactdomain
        sdp += 't=0 0\r\n'
        sdp += 'm=audio 2362 RTP/AVP 0\r\n'
        sdp += 'a=rtpmap:18 G729/8000\r\n'
        sdp += 'a=rtpmap:0 PCMU/8000\r\n'
        sdp += 'a=rtpmap:8 PCMA/8000\r\n'
        sdp += 'a=rtpmap:97 iLBC/8000\r\n'
        sdp += 'a=rtpmap:3 GSM/8000\r\n'
        sdp += 'a=rtpmap:101 telephone-event/8000\r\n'

i was add

    sdp += 'a=rtpmap:3 GSM/8000\r\n'
    sdp += 'a=rtpmap:101 telephone-event/8000\r\n'

1 - what is AES_CM_128_HMAC_SHA1_32 and AES_CM_128_HMAC_SHA1_80 encription type to encrypt it in python or how i encrypt it in python

2- If i set my program settings to work on srtp . Will this be more comprehensive? meaning. Are all sip accounts working on rtp Will it work on srtp ?

-3 on srtp or rtp i was support many of codecs . Could this conflict occur? Meaning a connection error occurred. If it is multiple. I want my program to work with all kinds of codecs automatically

4- What modifications do I need from your point of view to make my request better

after the experiment. My connection was very successful. But my questions are to make the program better

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.