554,8554 - Pentesting RTSP
Reading time: 4 minutes
tip
Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Angalia mpango wa usajili!
- Jiunge na 💬 kikundi cha Discord au kikundi cha telegram au tufuatilie kwenye Twitter 🐦 @hacktricks_live.
- Shiriki mbinu za udukuzi kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud repos za github.
Basic Information
From wikipedia:
The Real Time Streaming Protocol (RTSP) ni itifaki ya udhibiti wa mtandao iliyoundwa kwa matumizi katika mifumo ya burudani na mawasiliano kudhibiti seva za vyombo vya habari. Itifaki hii inatumika kwa kuanzisha na kudhibiti vikao vya vyombo vya habari kati ya sehemu za mwisho. Wateja wa seva za vyombo vya habari wanatoa amri za mtindo wa VHS, kama vile kucheza, kurekodi na kusimamisha, ili kuwezesha udhibiti wa wakati halisi wa vyombo vya habari vinavyotiririka kutoka kwa seva hadi mteja (Video On Demand) au kutoka kwa mteja hadi seva (Voice Recording).
Usafirishaji wa data inayotiririka yenyewe si kazi ya RTSP. Seva nyingi za RTSP hutumia Itifaki ya Usafirishaji wa Wakati Halisi (RTP) pamoja na Itifaki ya Udhibiti wa Wakati Halisi (RTCP) kwa usambazaji wa mtiririko wa vyombo vya habari. Hata hivyo, wauzaji wengine wanafanya utekelezaji wa itifaki za usafirishaji za miliki. Programu ya seva ya RTSP kutoka RealNetworks, kwa mfano, pia ilitumia Usafirishaji wa Data wa Halisi wa RealNetworks (RDT).
Default ports: 554,8554
PORT STATE SERVICE
554/tcp open rtsp
Maelezo Muhimu
RTSP ni sawa na HTTP lakini imeundwa mahsusi kwa ajili ya utiririshaji wa media. Imeelezwa katika spesifikesheni rahisi ambayo inaweza kupatikana hapa:
Vifaa vinaweza kuruhusu ufikiaji usio na uthibitisho au uliothibitishwa. Ili kuangalia, ombi la "DESCRIBE" litatumwa. Mfano wa msingi umeonyeshwa hapa chini:
DESCRIBE rtsp://<ip>:<port> RTSP/1.0\r\nCSeq: 2
Kumbuka, muundo sahihi unajumuisha "\r\n" mara mbili kwa ajili ya majibu ya kawaida. Jibu la "200 OK" linaashiria ufikiaji usio na uthibitisho, wakati "401 Unauthorized" linaashiria hitaji la uthibitisho, likifunua kama Basic au Digest authentication inahitajika.
Kwa Basic authentication, unachakata jina la mtumiaji na nenosiri katika base64 na kuijumuisha katika ombi kama ifuatavyo:
DESCRIBE rtsp://<ip>:<port> RTSP/1.0\r\nCSeq: 2\r\nAuthorization: Basic YWRtaW46MTIzNA==
Mfano huu unatumia "admin" na "1234" kwa ajili ya hati. Hapa kuna Python script ya kutuma ombi kama hilo:
import socket
req = "DESCRIBE rtsp://<ip>:<port> RTSP/1.0\r\nCSeq: 2\r\nAuthorization: Basic YWRtaW46MTIzNA==\r\n\r\n"
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(("192.168.1.1", 554))
s.sendall(req)
data = s.recv(1024)
print(data)
Msingi wa uthibitisho ni rahisi na unapendekezwa. Uthibitisho wa Digest unahitaji kushughulikia kwa makini maelezo ya uthibitisho yaliyotolewa katika jibu la "401 Unauthorized".
Muonekano huu unarahisisha mchakato wa kufikia mitiririko ya RTSP, ukizingatia Msingi wa uthibitisho kwa urahisi na ufanisi wake katika majaribio ya awali.
Uhesabu
Hebu tupate habari kuhusu mbinu halali na URLs zinazoungwa mkono na kujaribu nguvu za kikatili kufikia (ikiwa inahitajika) kupata ufikiaji wa maudhui.
nmap -sV --script "rtsp-*" -p <PORT> <IP>
Brute Force
Programu nyingine muhimu
Ili kufanya bruteforce: https://github.com/Tek-Security-Group/rtsp_authgrinder
- Gundua wenyeji wa RTSP walio wazi kwenye lengo lolote linalopatikana
- Pata taarifa zao za umma (jina la mwenyeji, bandari, mfano wa kamera, nk.)
- Fanya mashambulizi ya kamusi ya kiotomatiki kupata njia yao ya mtiririko (kwa mfano /live.sdp)
- Fanya mashambulizi ya kamusi ya kiotomatiki kupata jina la mtumiaji na nenosiri la kamera
- Tengeneza picha ndogo kutoka kwao ili kuangalia kama mitiririko ni halali na kuwa na muonekano wa haraka wa maudhui yao
- Jaribu kuunda bomba la Gstreamer ili kuangalia kama zimeandikwa vizuri
- Chapisha muhtasari wa taarifa zote Cameradar inaweza kupata
Marejeleo
- https://en.wikipedia.org/wiki/Real_Time_Streaming_Protocol
- http://badguyfu.net/rtsp-brute-forcing-for-fun-and-naked-pictures/
- https://github.com/Ullaakut/cameradar
tip
Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Angalia mpango wa usajili!
- Jiunge na 💬 kikundi cha Discord au kikundi cha telegram au tufuatilie kwenye Twitter 🐦 @hacktricks_live.
- Shiriki mbinu za udukuzi kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud repos za github.