6.8 KiB
554,8554 - RTSP Pentesting
Sıfırdan kahraman olmaya kadar AWS hackleme öğrenin htARTE (HackTricks AWS Red Team Expert)!
HackTricks'ı desteklemenin diğer yolları:
- Şirketinizi HackTricks'te reklamını görmek istiyorsanız veya HackTricks'i PDF olarak indirmek istiyorsanız [ABONELİK PLANLARI]'na(https://github.com/sponsors/carlospolop) göz atın!
- Resmi PEASS & HackTricks ürünlerini edinin
- The PEASS Family'yi keşfedin, özel NFT'lerimiz koleksiyonumuz
- Katılın 💬 Discord grubuna veya telegram grubuna veya bizi Twitter 🐦 @carlospolopm'da takip edin.
- Hacking püf noktalarınızı paylaşarak PR'lar göndererek HackTricks ve HackTricks Cloud github depolarına katkıda bulunun.
Temel Bilgiler
wikipedia'dan:
Gerçek Zamanlı Akış Protokolü (RTSP), eğlence ve iletişim sistemlerinde kullanılmak üzere tasarlanmış bir ağ kontrol protokolüdür. Protokol, uç noktalar arasında medya oturumlarını kurmak ve kontrol etmek için kullanılır. Medya sunucularının istemcileri, gerçek zamanlı olarak sunucudan istemciye (Video On Demand) veya istemciden sunucuya (Ses Kaydı) medya akışını kontrol etmek için oynat, kaydet ve duraklat gibi VHS tarzı komutlar verir.
Akış verilerinin iletimi RTSP'nin bir görevidir. Çoğu RTSP sunucusu, medya akışı teslimatı için Gerçek Zamanlı Taşıma Protokolü (RTP) ile Gerçek Zamanlı Kontrol Protokolü (RTCP) kullanır. Bununla birlikte, bazı satıcılar özel taşıma protokolleri uygular. Örneğin, RealNetworks'in RTSP sunucu yazılımı ayrıca RealNetworks'in özel Real Data Transport (RDT) protokolünü de kullanır.
Varsayılan portlar: 554,8554
PORT STATE SERVICE
554/tcp open rtsp
Ana Detaylar
RTSP, medya akışı için özel olarak tasarlanmış olan HTTP'ye benzer bir protokoldür. Basit bir spesifikasyonda tanımlanmıştır ve şurada bulunabilir:
Cihazlar kimlik doğrulamasız veya kimlik doğrulamalı erişime izin verebilir. Kontrol etmek için bir "DESCRIBE" isteği gönderilir. Temel bir örnek aşağıda gösterilmiştir:
DESCRIBE rtsp://<ip>:<port> RTSP/1.0\r\nCSeq: 2\r
Doğru biçimlendirme, tutarlı bir yanıt için çift "\r\n" içermelidir. "200 OK" yanıtı kimlik doğrulamasız erişimi gösterirken, "401 Unauthorized" kimlik doğrulaması gerektiğini belirtir ve Temel veya Digest kimlik doğrulamasının gerekip gerekmediğini ortaya çıkarır.
Temel kimlik doğrulaması için, kullanıcı adını ve şifreyi base64'e kodlarsınız ve isteğe şunları dahil edersiniz:
DESCRIBE rtsp://<ip>:<port> RTSP/1.0\r\nCSeq: 2\r\nAuthorization: Basic YWRtaW46MTIzNA==\r
Bu örnek, kimlik bilgileri için "admin" ve "1234" kullanmaktadır. İşte böyle bir istek göndermek için bir Python betiği:
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)
Temel kimlik doğrulama daha basit ve tercih edilir. Özet kimlik doğrulama ise "401 Yetkisiz" yanıtında sağlanan kimlik doğrulama ayrıntılarının dikkatli bir şekilde ele alınmasını gerektirir.
Bu genel bakış, RTSP akışlarına erişim sürecini basitleştirir ve başlangıç denemelerindeki basitlik ve pratiklik nedeniyle Temel kimlik doğrulamasına odaklanır.
Numaralandırma
Geçerli yöntemler ve URL'ler hakkında bilgi edinelim ve içeriğe erişmek için gerekirse erişimi zorlamak için erişim (gerekiyorsa) hakkında bilgi edinelim.
nmap -sV --script "rtsp-*" -p <PORT> <IP>
Kaba Kuvvet
Diğer faydalı programlar
Kaba kuvvet saldırısı için: https://github.com/Tek-Security-Group/rtsp_authgrinder
- Erişilebilir hedeflerde açık RTSP ana bilgisayarlarını tespit et
- Genel bilgilerini al (ana bilgisayar adı, port, kamera modeli, vb.)
- Akış rotasını almak için otomatik sözlük saldırıları başlat (örneğin /live.sdp)
- Kameraların kullanıcı adı ve şifresini almak için otomatik sözlük saldırıları başlat
- Akışların geçerli olup olmadığını kontrol etmek ve içeriklerinin hızlı bir önizlemesini almak için onlardan küçük resimler oluştur
- Doğru bir şekilde kodlandığını kontrol etmek için bir Gstreamer boru hattı oluştur
- Cameradar'ın alabileceği tüm bilgilerin özetini yazdır
Referanslar
- 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
Sıfırdan kahraman olmak için AWS hackleme öğrenin htARTE (HackTricks AWS Red Team Expert)!
HackTricks'ı desteklemenin diğer yolları:
- Şirketinizi HackTricks'te reklamını görmek istiyorsanız veya HackTricks'i PDF olarak indirmek istiyorsanız ABONELİK PLANLARINI kontrol edin!
- Resmi PEASS & HackTricks ürünlerini alın
- The PEASS Family'yi keşfedin, özel NFT'lerimiz koleksiyonumuz
- 💬 Discord grubuna veya telegram grubuna katılın veya bizi Twitter 🐦 @carlospolopm** takip edin.**
- Hacking püf noktalarınızı paylaşarak PR'lar göndererek HackTricks ve HackTricks Cloud github depolarına katkıda bulunun.