
sippts v4.2.1
SIP आधारित VoIP सिस्टम का ऑडिट करने के लिए टूल का सेट
Sippts क्या है?
Sippts, SIP प्रोटोकॉल का उपयोग करने वाले VoIP सर्वर और उपकरणों का ऑडिट करने के लिए उपकरणों का एक सेट है। Sippts को Python में प्रोग्राम किया गया है और यह हमें SIP प्रोटोकॉल का उपयोग करके VoIP सर्वर की सुरक्षा की जाँच करने की अनुमति देता है।
क्या यह मुफ़्त है?
हाँ। आप इसे स्वतंत्र रूप से उपयोग, संशोधित और वितरित कर सकते हैं। यदि आप इसे संशोधित करते हैं, तो कृपया इस साइट का संदर्भ शामिल करें।
क्या sippts का उपयोग अवैध उद्देश्यों के लिए किया जा सकता है?
इस उपकरण का उद्देश्य आपके स्वयं के सिस्टम का ऑडिट करना या उन सिस्टम पर पेनिट्रेशन टेस्ट करना है जिनके लिए आपको स्पष्ट अनुमति प्राप्त हुई है। मैं इस उपकरण के दुरुपयोग के लिए ज़िम्मेदार नहीं हूँ।
उपयोग
सहायता दिखाएँ:``` sippts -h usage: sippts [-h] [-up] {video,astami,scan,exten,rcrack,send,wssend,enumerate,leak,ping,invite,dump,dcrack,flood,sniff,spoof,pcapdump,rtpbleed,rtcpbleed,rtpbleedflood,rtpbleedinject} ...
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣀⣀⣀⣤⣤⣤⣤⣤⣤⣤⣤⣤⣤⣄⣀⣀⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣤⠤⠶⠒⠛⠉⠉⠉⠉⠀⠀⢀⣀⣀⣀⣤⣤⣤⣤⣤⣤⣤⣤⣬⣍⣙⣳⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣤⠴⠒⠋⠉⠀⠀⠀⢀⣀⣠⡤⠴⠖⠚⠛⠉⠉⠉⠀⣠⡶⠖⠲⣄⠀⠀⠀⠀⠀⠀⠀⠈⠉⢷⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⡤⠖⠋⠁⠀⠀⠀⣀⣤⠴⠖⣛⣉⣁⠀⠀⠀⠀⠀⠀⠀⣀⣀⣠⡇⢹⡄⠀⠸⡆⠀⠀⠀⠀⠀⠀⠀⠀⠈⢿⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⣀⡤⠞⠋⠀⠀⠀⢀⣠⠴⠚⠋⠁⠀⠀⡿⡏⠀⠈⣧⣤⠴⠖⠚⠛⠉⠉⠳⢄⡀⠀⣧⠀⠀⢷⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣷⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⢠⡞⠧⣄⠀⢀⣠⠴⠚⠉⠀⠀⠀⠀⠀⢀⣴⠇⢹⠀⠀⢸⡆⠀⠀⠀⠀⠀⠀⠀⠀⠉⣲⣿⣀⣠⣼⣦⣤⣀⣀⣀⡀⠀⢀⣀⣠⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⢀⡿⠀⠀⠈⣿⠉⠀⠀⠀⠀⠀⠀⠙⢄⣰⠏⠀⠀⠘⡇⠀⠀⣇⢀⣀⡤⠤⠖⠒⠛⠉⠉⠉⣁⣀⠀⠀⠀⠉⠙⠛⢿⣿⡛⠛⠛⢻⡟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⣸⣧⣄⠀⠀⡇⠀⠀⠀⠀⠀⠀⠀⠀⢈⣿⡄⠀⠀⠀⣷⠴⠚⠋⠉⠀⠀⢀⣠⣴⡖⠛⠉⠿⢻⣿⣉⡉⠙⠓⢲⠦⢤⣈⠙⢶⣶⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⢠⣏⠙⢦⣹⣼⠀⠀⠀⠀⠀⠀⢀⣴⣾⠟⠁⢀⡏⢀⡞⠀⠀⠀⠀⠀⣰⣯⡟⡀⠀⣼⡏⢘⡢⢠⣷⣾⡿⠿⠿⣷⣤⣞⠀⠙⢦⡀⠀⠙⢿⣷⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⣰⡟⠿⡍⢷⢀⡇⠀⠀⠀⠀⠀⠀⠀⣠⣾⠏⣧⠀⢀⡞⠁⠀⠀⠀⠀⢠⡴⠋⠛⠻⣧⣤⡶⢿⡹⡟⠛⢯⣉⣿⢾⣧⣄⡈⠙⠲⢝⣷⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⢠⣏⠙⢦⣹⣼⠀⠀⠀⠀⠀⠀⢀⣴⣾⠟⠁⢀⡏⢀⡞⠀⠀⠀⠀⠀⣰⣯⡟⡀⠀⣼⡏⢘⡢⢠⣷⣾⡿⠿⠿⣷⣤⣞⠀⠙⢦⡀⠀⠙⢿⣷⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ SIPPTS version 4.1.2 (updated) ⣿⣍⡓⣄⣿⣧⣤⣤⣤⣶⣶⠿⠟⠋⠀⠀⣠⣎⣠⠎⠘⢄⠀⠀⠀⢀⡏⠛⠙⠋⢸⠋⠧⠤⠗⣾⢻⠁⠀⠀⠀⠀⠈⠻⡳⡀⠀⠙⢦⠀⣠⡹⡟⣦⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀ CVE version 0.1 (updated) ⣷⣤⣙⢾⣿⣭⡉⠉⠉⠁⠀⠀⣀⣠⠴⠚⠉⠉⠀⠀⠀⠈⠳⡀⠀⠘⣧⣤⢀⠀⢸⡶⣏⠙⣦⠹⡜⢦⡀⠀⠀⠀⠀⢀⡇⣿⣶⣶⣾⣿⣥⡇⠹⡌⠻⣄⠀⠀⠀⠀⠀⠀⠀⠀ https://github.com/Pepelux/sippts ⣿⠤⢬⣿⣇⠈⢹⡟⠛⠛⠛⠉⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⢆⠀⢻⡹⡎⠃⠀⠳⡄⣽⠛⠦⠉⠲⣍⣓⣒⢒⣒⣉⡴⠋⣟⠙⢲⣿⠘⠃⠀⣷⠀⠙⢧⡀⠀⠀⠀⠀⠀⠀by Pepelux - https://twitter.com/pepeluxx ⣿⠶⠒⠺⣿⡀⢸⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢣⡀⠳⡄⢀⡀⠀⠙⠮⣗⠚⢠⡖⠲⣌⣉⡭⣍⡡⣞⠓⣾⠉⣽⠃⢠⡄⣼⣿⠀⠀⠈⠳⡄⠀⠀⠀⠀⠀ ⠸⡟⠉⣉⣻⣧⣼⠿⣦⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⣄⠙⢮⡿⢿⡃⠀⠈⠑⠶⢽⣒⣃⣘⣲⣤⣗⣈⣹⠵⠛⠁⠀⠀⡴⣻⠃⠀⠀⠀⠀⠹⣆⠀⠀⠀⠀ ⠀⠹⣯⣁⣠⠼⠿⣿⡲⠿⠷⣤⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢦⠀⠙⠳⣄⡀⠀⣄⣶⣄⠀⠉⠉⠉⣉⡉⠉⠀⠀⠘⣶⣴⣦⠞⠁⠀⠀⠀⠀⠀⠀⠘⣧⠀⠀⠀ ⠀⠀⠘⣧⡤⠖⢋⣩⠿⣶⣤⣈⣙⣷⣤⣀⣠⣤⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢳⡀⠀⠀⠉⠓⠶⢽⣼⣆⡀⠀⠀⢿⣿⣶⣀⣀⡬⠷⠚⠁⣀⣀⣀⠀⢰⣿⠿⡇⠀⠘⣧⠀⠀ ⠀⠀⠀⠀⠙⠾⣏⣤⠞⢁⡞⠉⣿⠋⣹⠉⢹⠀⣿⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠹⡄⠀⠀⠀⠀⠀⠀⠉⠉⠉⠉⠉⠉⠉⠉⠀⣤⣤⣄⠀⣿⠙⢻⠆⠀⠓⢒⣁⡤⠴⠺⡆⠀ ⠀⠀⠀⠀⠀⠀⠀⠙⠒⠻⠤⣴⣇⣀⣿⣀⣾⡤⠿⢷⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣆⠀⠀⠀⠀⠀⣀⣀⡀⠀⢸⠿⢷⡄⠀⣿⣀⡿⠀⢈⣉⡭⠴⠒⠋⠉⠀⠀⠀⠀⢻⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠻⣦⣀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢆⠀⠀⠀⠰⣟⠛⡇⠀⠘⠧⠞⢁⣀⡤⠴⠒⠋⠉⠀⠀⠀⠀⠀⠀⠀⠀⣀⣠⣼⠃ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⠳⣦⣀⠀⠀⠀⠀⠀⠀⠈⢧⠀⠀⠀⠉⢋⣁⡤⠴⠚⠋⠉⠀⠀⠀⠀⠀⠀⠀⢀⣀⣠⣴⠶⠚⠛⠉⢉⣽⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠙⠷⣤⡀⠀⠀⠀⠀⠘⡆⠴⠒⠋⠉⠀⠀ ⢀⣀⣤⠴⠖⠛⠉⠉⠉⠉⠙⠛⠋⠉⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢛⠷⠦⠀⠀⠀⣿⠀⠀ ⠀⠀⠀⢠⠴⡖⠛⠉⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠙⠷⣤⡀⠀⠘⡆⠴⠒⠋⠉⣤⠴⠖⠛⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢛⢠⠴⡖⠛⠉⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
-= SIPPTS is a set of tools for auditing VoIP systems based on the SIP protocol =-
Commands: {video,astami,scan,exten,rcrack,send,wssend,enumerate,leak,ping,invite,dump,dcrack,flood,sniff,spoof,pcapdump,rtpbleed,rtcpbleed,rtpbleedflood,rtpbleedinject} video Animated help astami Asterisk AMI pentest scan Fast SIP scanner exten Search SIP extensions of a PBX rcrack Remote password cracker send Send a customized message wssend Send a customized message over WS enumerate Enumerate methods of a SIP server leak Exploit SIP Digest Leak vulnerability ping SIP ping invite Try to make calls through a PBX dump Dump SIP digest authentications from a PCAP file dcrack SIP digest authentication cracking flood Flood a SIP server sniff SIP network sniffing spoof ARP Spoofing tool pcapdump Extract data from a PCAP file rtpbleed Detect RTPBleed vulnerability (send RTP streams) rtcpbleed Detect RTPBleed vulnerability (send RTCP streams) rtpbleedflood Exploit RTPBleed vulnerability (flood RTP) rtpbleedinject Exploit RTPBleed vulnerability (inject WAV file)
Options: -h, --help show this help message and exit -up Update scripts
Command help: sippts -h
कमांड scan के लिए सहायता दिखाएँ:```
sippts scan -h
usage: sippts scan [-i IP|HOST] [-f FILE] [-r REMOTE_PORT] [-p PROTOCOL]
[-proxy IP:PORT] [-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] [-ppi PPI] [-pai PAI] [-v]
[-vv] [-nocolor] [-o FILE] [-oi FILE] [-ot FILE] [-oj FILE]
[-ocsv FILE] [-cve] [-th THREADS] [-t TIMEOUT] [-ping]
[-fp] [-random] [-local-ip IP] [-h]
___ ___ ___ ___ _____ ___
/ __|_ _| _ \ _ \_ _/ __| ___ __ __ _ _ _
\__ \| || _/ _/ | | \__ \ (_-</ _/ _` | ' \
|___/___|_| |_| |_| |___/ /__/\__\__,_|_||_|
Module scan is a fast SIP scanner using multithread that can check several IPs and port ranges. It works with UDP, TCP and TLS protocols.
Target:
-i IP|HOST Host/IP address/network (ex: mysipserver.com | 192.168.0.10 | 192.168.0.0/24)
-f FILE File with several IPs or network ranges
-r REMOTE_PORT Ports to scan. Ex: 5060 | 5070,5080 | 5060-5080 | 5060,5062,5070-5080 | ALL for 1-65535 (default: 5060)
-p, --protocol PROTOCOL
Protocol: udp|tcp|tls|all (default: udp)
-proxy IP:PORT Use an outbound proxy (ex: 192.168.1.1 or 192.168.1.1:5070)
Headers:
-m METHOD SIP method: options, invite, register (default: options)
-d, --domain DOMAIN SIP Domain or IP address. Ex: my.sipserver.com (default: target IP address)
-cd CONTACT_DOMAIN Domain or IP address for Contact header. Ex: 10.0.1.2
-fn FROM_NAME From Name. Ex: Bob
-fu FROM_USER From User (default: 100)
-fd FROM_DOMAIN From Domain. Ex: 10.0.0.1
-tn TO_NAME To Name. Ex: Alice
-tu TO_USER To User (default: 100)
-td TO_DOMAIN To Domain. Ex: 10.0.0.1
-ua USER_AGENT User-Agent header (default: pplsip)
-ppi PPI P-Preferred-Identity
-pai PAI P-Asserted-Identity
Log:
-v Increase verbosity
-vv Increase more verbosity
-nocolor Show result without colors
-o FILE Save data into a log file
-oi FILE Save IPs into a log file
-ot FILE Save found hosts as ip:port/proto, ready for -f of exten, rcrack and leak
-oj FILE Save results into a JSON file
-ocsv FILE Save results into a CSV file
-cve Show possible CVEs
Other options:
-th THREADS Number of threads (default: 200)
-t, --timeout TIMEOUT
Sockets timeout (default: 5)
-ping Ping host before scan
-fp Try to fingerprinting
-random Randomize target hosts
-local-ip IP Set local IP address (by default try to get it)
-h, --help Show this help
Usage examples:
Searching for SIP services and devices with default ports (5060/udp) on the local network
sippts scan -i 192.168.0.0/24
Extend the port range from 5060 to 5080 and look for UDP, TCP and TLS services
sippts scan -i 192.168.0.0/24 -r 5060-5080 -p all
Load several target IP addresses from a file
sippts scan -f targets.txt
Random scanning for non-sequential scanning of IP ranges
sippts scan -f targets.txt -random
Disguise the tool behind another User-Agent
sippts scan -i 192.168.0.0/24 -ua Grandstream
Scan all ports and protocols of an address range using 500 threads (slow)
sippts scan -f targets.txt -r all -p all -th 500 -ua Grandstream
Typical scanning for large ranges
sippts scan -f targets.txt -r 5060-5080 -p all -th 500 -ua Grandstream -v -fp -o output.txt
Save the hosts found as ip:port/proto, to chain with exten, rcrack or leak
sippts scan -i 192.168.0.0/24 -r 5060-5080 -p all -ot targets.txt
sippts exten -f targets.txt -e 100-200 -oe extens.txt
sippts rcrack -f targets.txt -ef extens.txt -w wordlist.txt
Save the results as JSON or CSV, to process them with another tool
sippts scan -i 192.168.0.0/24 -oj result.json -ocsv result.csv
स्क्रिप्ट अपडेट करें:``` sippts -up
# SIP प्रोटोकॉल पर पेनिट्रेशन टेस्ट के लिए टूल्स का सेट #
इस टूल का उपयोग कैसे करें, इस पर आप https://sippts.seguridadvoip.com पर और GitHub विकी पेजों पर भी सहायता प्राप्त कर सकते हैं:
Sippts, SIP प्रोटोकॉल का उपयोग करने वाले VoIP सर्वरों और उपकरणों के ऑडिटिंग के लिए टूल्स का एक सेट है। Sippts को Python में प्रोग्राम किया गया है और इसमें निम्नलिखित कमांड या मॉड्यूल शामिल हैं:
* _**scan**_ SIP सेवाओं के लिए एक तेज़ मल्टीथ्रेडेड स्कैनर है। यह कई IP पतों और पोर्ट रेंजों की जाँच कर सकता है, और यह UDP, TCP और TLS पर काम करता है। [scan कमांड के बारे में अधिक पढ़ने के लिए यहाँ क्लिक करें](https://github.com/Pepelux/sippts/wiki/Command-scan)
* _**exten**_ एक SIP सर्वर पर एक्सटेंशनों की पहचान करता है। यह आपको यह भी बताता है कि एक्सटेंशन के लिए प्रमाणीकरण (authentication) आवश्यक है या नहीं। यह कई IP पतों की जाँच कर सकता है, और -f के साथ यह लक्ष्यों को एक फ़ाइल से पढ़ता है। [exten कमांड के बारे में अधिक पढ़ने के लिए यहाँ क्लिक करें](https://github.com/Pepelux/sippts/wiki/Command-exten)
* _**rcrack**_ एक रिमोट पासवर्ड क्रैकर है। यह कई IP पतों पर कई उपयोगकर्ताओं के पासवर्ड परीक्षण कर सकता है, और -f के साथ यह लक्ष्यों को एक फ़ाइल से पढ़ता है। [rcrack कमांड के बारे में अधिक पढ़ने के लिए यहाँ क्लिक करें](https://github.com/Pepelux/sippts/wiki/Command-rcrack)
* _**invite**_ जाँचता है कि कोई सर्वर हमें बिना प्रमाणीकरण के कॉल करने की अनुमति देता है या नहीं। यदि SIP सर्वर में खराब कॉन्फ़िगरेशन है, तो यह हमें बाहरी नंबरों पर कॉल करने की अनुमति देगा। यह कॉल को दूसरे बाहरी नंबर पर भी ट्रांसफर कर सकता है। [invite कमांड के बारे में अधिक पढ़ने के लिए यहाँ क्लिक करें](https://github.com/Pepelux/sippts/wiki/Command-invite)
* _**leak**_ Sandro Gauci द्वारा खोजी गई SIP Digest Leak भेद्यता का फायदा उठाता है, जो बड़ी संख्या में हार्डवेयर और सॉफ्टवेयर उपकरणों को प्रभावित करती है। [leak कमांड के बारे में अधिक पढ़ने के लिए यहाँ क्लिक करें](https://github.com/Pepelux/sippts/wiki/Command-leak)
* _**flood**_ लक्ष्य पर असीमित संदेश भेजता है। [flood कमांड के बारे में अधिक पढ़ने के लिए यहाँ क्लिक करें](https://github.com/Pepelux/sippts/wiki/Command-flood)
* _**send**_ एक अनुकूलित SIP संदेश भेजता है और प्रतिक्रिया का विश्लेषण करता है। [send कमांड के बारे में अधिक पढ़ने के लिए यहाँ क्लिक करें](https://github.com/Pepelux/sippts/wiki/Command-send)
* _**wssend**_ WebSockets के माध्यम से एक अनुकूलित SIP संदेश भेजता है और प्रतिक्रिया का विश्लेषण करता है। [wssend कमांड के बारे में अधिक पढ़ने के लिए यहाँ क्लिक करें](https://github.com/Pepelux/sippts/wiki/Command-wssend)
* _**enumerate**_ एक SIP सेवा या सर्वर की उपलब्ध विधियों की गणना करता है। [enumerate कमांड के बारे में अधिक पढ़ने के लिए यहाँ क्लिक करें](https://github.com/Pepelux/sippts/wiki/Command-enumerate)
* _**dump**_ एक PCAP फ़ाइल से SIP Digest प्रमाणीकरण निकालता है। [dump कमांड के बारे में अधिक पढ़ने के लिए यहाँ क्लिक करें](https://github.com/Pepelux/sippts/wiki/Command-dump)
* _**dcrack**_ SIP प्रोटोकॉल के digest प्रमाणीकरणों को क्रैक करता है। [dcrack कमांड के बारे में अधिक पढ़ने के लिए यहाँ क्लिक करें](https://github.com/Pepelux/sippts/wiki/Command-dcrack)
* _**pcapdump**_ एक PCAP फ़ाइल से SIP और RTP डेटा निकालता है, और ऑडियो स्ट्रीम को WAV फ़ाइलों के रूप में सहेज सकता है। [pcapdump कमांड के बारे में अधिक पढ़ने के लिए यहाँ क्लिक करें](https://github.com/Pepelux/sippts/wiki/Command-pcapdump)
* _**ping**_ यह जाँचने के लिए एक SIP ping भेजता है कि कोई सर्वर या उपकरण जीवित है या नहीं। [ping कमांड के बारे में अधिक पढ़ने के लिए यहाँ क्लिक करें](https://github.com/Pepelux/sippts/wiki/Command-ping)
* _**astami**_ Asterisk Manager Interface (AMI) को स्कैन और ऑडिट करता है, और जिन पर क्रेडेंशियल काम करते हैं उन पर एक कमांड चला सकता है। [astami कमांड के बारे में अधिक पढ़ने के लिए यहाँ क्लिक करें](https://github.com/Pepelux/sippts/wiki/Command-astami)
* _**sniff**_ SIP ट्रैफ़िक को लाइव कैप्चर करता है और जो संदेश, उपकरण और digest प्रमाणीकरण देखता है उन्हें दिखाता है। [sniff कमांड के बारे में अधिक पढ़ने के लिए यहाँ क्लिक करें](https://github.com/Pepelux/sippts/wiki/Command-sniff)
* _**spoof**_ एक ARP spoofing टूल है, जो आपको दो उपकरणों के बीच रखता है और उनके ट्रैफ़िक को कैप्चर करता है। [spoof कमांड के बारे में अधिक पढ़ने के लिए यहाँ क्लिक करें](https://github.com/Pepelux/sippts/wiki/Command-spoof)
* _**video**_ सामान्य वर्कफ़्लो का एक एनिमेटेड डेमो चलाता है: scan से exten तक rcrack, dump से dcrack, leak से dcrack, और spoof से sniff।
* _**rtpbleed**_ RTP पोर्टों पर डेटा भेजकर RTP Bleed भेद्यता का फायदा उठाने के लिए। [rtpbleed कमांड के बारे में अधिक पढ़ने के लिए यहाँ क्लिक करें](https://github.com/Pepelux/sippts/wiki/Command-rtpbleed)
* _**rtcpbleed**_ RTCP पोर्टों पर डेटा भेजकर RTP bleed भेद्यता का फायदा उठाने के लिए। [rtcpbleed कमांड के बारे में अधिक पढ़ने के लिए यहाँ क्लिक करें](https://github.com/Pepelux/sippts/wiki/Command-rtcpbleed)
* _**rtpbleedflood**_ एक सक्रिय डायलॉग के साथ RTP पोर्ट को फ्लड करके RTP Bleed भेद्यता का फायदा उठाने के लिए। [rtpbleedflood कमांड के बारे में अधिक पढ़ने के लिए यहाँ क्लिक करें](https://github.com/Pepelux/sippts/wiki/Command-rtpbleedflood)
* _**rtpbleedinject**_ RTP ट्रैफ़िक इंजेक्ट करके RTP Bleed भेद्यता का फायदा उठाने के लिए। [rtpbleedinject कमांड के बारे में अधिक पढ़ने के लिए यहाँ क्लिक करें](https://github.com/Pepelux/sippts/wiki/Command-rtpbleedinject)
## TLS प्रमाणपत्र ##
sippts TLS बोलता है, और अब तक यह प्रमाणपत्र को फेंक देता था। `-tlsinfo` के साथ `scan` मॉड्यूल पढ़ता है कि सर्वर क्या प्रस्तुत करता है:```
sippts scan -i 192.168.0.1 -r 5061 -p tls -tlsinfo
इसमें कोई अतिरिक्त कनेक्शन खर्च नहीं होता, क्योंकि handshake वैसे भी होता है। सामान्य वाले के बाद दो tables आती हैं: certificate क्या कहता है (TLS version, cipher, key, expiry, और -v के साथ subject, issuer, SAN और SHA-256 भी), और इसके बारे में रिपोर्ट करने योग्य क्या है — expired, self signed, 2048 bits से कम की key, SHA-1 या MD5 signature, ऐसा नाम जो मेल नहीं खाता, पुराना TLS version या कमज़ोर cipher।
VoIP में सबसे अहम CERT_DEFAULT_VENDOR है: किसी PBX या फ़ोन का factory certificate, जिसकी private key firmware image के अंदर ही भेजी जाती है। जो भी उस image को डाउनलोड करता है, वह SIP-TLS के बीच में बैठ सकता है।
-tlsversions के साथ यह TLS 1.0, 1.1, 1.2 और 1.3 को एक-एक करके भी आज़माता है, जिसमें प्रति version एक handshake खर्च होता है और यह प्रति host और port एक बार किया जाता है:```
sippts scan -i 192.168.0.1 -r 5061 -p tls -tlsversions
हर संस्करण `accepted`, `refused` या `untested` के रूप में वापस आता है। अंतिम का
मतलब है कि *यह* OpenSSL उस संस्करण को प्रदान नहीं कर सकता, जो कि सर्वर द्वारा
उसे बंद किए जाने के समान नहीं है, और जब परिणाम किसी रिपोर्ट में जाता है तो यह
अंतर मायने रखता है।
दो ईमानदार सीमाएँ, जिन्हें टूल छिपाने के बजाय प्रिंट करता है:
* **SSLv2 और SSLv3 का परीक्षण नहीं किया जा सकता।** OpenSSL 3 इनके बिना बनाया
गया है, इसलिए sippts इन्हें प्रदान नहीं कर सकता। इन्हें `untested` के रूप में
रिपोर्ट किया जाता है, कभी `disabled` के रूप में नहीं।
* किसी आंतरिक SIP ट्रंक पर स्व-हस्ताक्षरित प्रमाणपत्र अपने आप में कोई
निष्कर्ष नहीं है। इसे संदर्भ में आँकें।
मुख्य तालिका, `-o` की फ़ाइल और `-ocsv` की CSV नहीं बदलती। `-oj` का JSON
`tls` और `tls_findings` प्राप्त करता है।
## कॉल हाइजैकिंग ##
`Replaces` (RFC 3891) किसी ऐसी कॉल की ओर इशारा करता है जो पहले से सक्रिय है,
उसके Call-ID और उसके दो टैग के माध्यम से। `sippts dump` और `sippts sniff` ही
वे हैं जो आपको किसी कैप्चर से ये तीन मान देते हैं; वहाँ से:```
sippts send -i 192.168.0.1 -m REFER -refer-to 200 -replaces "CALLID;to-tag=X;from-tag=Y"
sippts send -i 192.168.0.1 -m INVITE -replaces "CALLID;to-tag=X;from-tag=Y"
REFER पर यह एक attended transfer होता है, और INVITE पर यह कॉल को अपने ऊपर ले लेता है। sippts invite -replaces भी लेता है, ताकि इसे उस REFER में जोड़ा जा सके जिसे -t पहले से भेजता है, इस प्रकार ट्रांसफर उसी कॉल के अंदर हो जाता है जिसे अभी-अभी सेट किया गया है।
सर्वर क्या सपोर्ट करता है
enumerate 14 SIP methods को एक-एक करके आज़माता है और उन्हें जवाब से अलग-अलग पहचानता है, लेकिन सर्वर यह भी बताता है कि वह Allow, Supported और Allow-Events headers में क्या स्वीकार करता है। इन्हें भी पढ़ा जाता है और दूसरी table में प्रिंट किया जाता है, जो उन दो विरोधाभासों की भी ओर इशारा करती है जिन पर ध्यान देने योग्य है: Allow में विज्ञापित कोई method जो फिर 405 का जवाब देता है, और कोई method जो बिना विज्ञापित किए ठीक जवाब देता है। Allow-Events वह है जो बताता है कि dialog, message-summary या presence को subscribe किया जा सकता है या नहीं, जहाँ send -m subscribe आगे जाता है।```
sippts enumerate -i 192.168.0.1
पहली तालिका वही आकार बनाए रखती है जो उसके पास हमेशा थी, और `-ocsv` की CSV भी। नया डेटा केवल `-oj` के JSON में, `capabilities` के अंतर्गत जोड़ा जाता है।
## ज्ञात भेद्यताएँ ##
`-cve` के साथ, `scan` मॉड्यूल जो फिंगरप्रिंट करता है उसकी तुलना ज्ञात भेद्यताओं की सूची से करता है जो पैकेज के अंदर यात्रा करती है
(`src/sippts/data/cve.csv`)। इसमें 54 विक्रेताओं के लगभग 1400 CVE हैं, जो
[NVD of NIST](https://nvd.nist.gov) से बनाए गए हैं, और संस्करण श्रेणियाँ प्रत्येक CVE के CPE से आती हैं:```bash
sippts scan -i 192.168.0.0/24 -fp -cve
जिन परिणामों का संस्करण वास्तव में प्रभावित सीमा के भीतर आता है, उन्हें पहले सूचीबद्ध किया जाता है। बाकी को उनके पीछे केवल संभावित के रूप में दिखाया जाता है, क्योंकि स्कैनर में एक CVE जो मौजूद है और रिपोर्ट नहीं किया गया है, वह अधिक रिपोर्ट किए गए से बुरा है। बिना किसी सीमा वाली पंक्ति का अर्थ है कि उस डिवाइस के हर संस्करण प्रभावित हैं।
जानने योग्य दो सीमाएँ हैं। पहचान User-Agent पर निर्भर करती है, इसलिए जो सर्वर
इसे छिपाता है उसकी किसी भी चीज़ से तुलना नहीं की जा सकती। और कुछ उत्पादों का
संस्करण अक्षरों के साथ होता है (Asterisk Business Edition के A, B और C, या
beta_5), जिन्हें कोई भी संख्यात्मक तुलना क्रमबद्ध नहीं कर सकती: उन्हें केवल
पाठ द्वारा मिलाया जाता है, और हमेशा पुष्टि के बजाय संभावित के रूप में सामने आते हैं।
सूची को अद्यतन करने के लिए:```bash sippts -up
जिसे यह github से अन्य मॉड्यूल्स के साथ डाउनलोड करता है।
### गंभीरता ###
प्रत्येक CVE अपने CVSS के साथ आता है, जिसे गंभीरता के अनुसार रंगा गया है: क्रिटिकल के लिए बैंगनी, हाई के लिए लाल, मीडियम के लिए पीला और लो के लिए सियान। सबसे गंभीर वाले पहले सूचीबद्ध हैं।
NVD के पास हर CVE के लिए CVSS v3 नहीं है: सूची का लगभग एक तिहाई 2016 से पुराना है और केवल v2 रखता है, और Asterisk के लिए यह उनमें से अधिकांश है। जब केवल v2 मौजूद होता है तो उसका उपयोग किया जाता है और **`v2` के साथ चिह्नित किया जाता है**, क्योंकि दोनों स्केल समतुल्य नहीं हैं और v2 में CRITICAL स्तर नहीं है: CVE-2017-16563 v2 में 6.0 MEDIUM है और v3 में 8.0 HIGH है।
4.2.1 से पुराना sippts इस कॉलम को नहीं पढ़ सकता। `sippts -up` से अपडेट करें।
### सूची का पुनर्निर्माण (मेंटेनर्स) ###
`tools/cve_update.py` NVD से `cve.csv` का पुनर्निर्माण करता है। यह ऐसा कुछ नहीं है जिसे sippts का उपयोगकर्ता चलाता है: विचार यह है कि इसे पुनर्जनित करें, diff देखें, इसे commit करें, और बाकी सभी इसे `sippts -up` के साथ प्राप्त करें। यह API key और NVD की rate limits को ऑडिट के बीच से बाहर रखता है।```bash
./tools/cve_update.py --dry-run # what would change, writing nothing
./tools/cve_update.py # rebuild it
./tools/cve_update.py --vendor yealink # only one vendor
NVD_API_KEY=xxxx ./tools/cve_update.py # ten times faster
API key के बिना NVD हर 30 सेकंड में 5 अनुरोधों की अनुमति देता है और एक पूर्ण रन में लगभग पंद्रह मिनट लगते हैं। ये nvd.nist.gov पर मुफ़्त हैं।
स्क्रिप्ट के शीर्ष पर दो सूचियाँ नियंत्रित करती हैं कि क्या खोजा जाता है। VENDORS में विक्रेता होते हैं, और प्रत्येक पूरा विक्रेता, उत्पादों की एक सूची, या टैग द्वारा फ़िल्टर किया गया हो सकता है। TAGS_VOIP में टैग (voip, sip, ip_phone, ata, pbx, ip_office, mivoice...) होते हैं। फ़िल्टर उन विक्रेताओं के लिए मायने रखता है जो राउटर और फ़ायरवॉल भी बनाते हैं: NVD से पूरे Zyxel के लिए पूछने पर WiFi और DSL किट की 3223 पंक्तियाँ आती हैं जिन्हें sippts कभी SIP पर नहीं देखेगा।
ऑपरेटिंग सिस्टम
Sippts का परीक्षण इन पर किया गया है:
- Linux
- MacOS
आवश्यकताएँ
- Python 3
- requirements.txt में सूचीबद्ध निर्भरताएँ, जो pip द्वारा स्वचालित रूप से इंस्टॉल की जाती हैं
- sniff, dump और pcapdump के लिए: tshark (Wireshark का हिस्सा)
- pcapdump के साथ ऑडियो निकालने के लिए: sox और ffmpeg
इंस्टॉलेशन
git के माध्यम से इंस्टॉल करना: ```bash git clone https://github.com/Pepelux/sippts.git
```bash
cd sippts
pip3 install .