From 620354232070dc912ac091079da39004d5bec5b8 Mon Sep 17 00:00:00 2001 From: Translator Date: Tue, 8 Jul 2025 16:59:00 +0000 Subject: [PATCH] Translated ['src/network-services-pentesting/554-8554-pentesting-rtsp.md --- .../554-8554-pentesting-rtsp.md | 39 ++++++++++++------- 1 file changed, 24 insertions(+), 15 deletions(-) diff --git a/src/network-services-pentesting/554-8554-pentesting-rtsp.md b/src/network-services-pentesting/554-8554-pentesting-rtsp.md index 7987e5961..d6800bb60 100644 --- a/src/network-services-pentesting/554-8554-pentesting-rtsp.md +++ b/src/network-services-pentesting/554-8554-pentesting-rtsp.md @@ -17,21 +17,21 @@ PORT STATE SERVICE ``` ## Ana Detaylar -**RTSP**, HTTP'ye benzer ancak medya akışı için özel olarak tasarlanmıştır. Burada bulunabilen basit bir spesifikasyonda tanımlanmıştır: +**RTSP**, HTTP'ye benzer ancak özellikle medya akışı için tasarlanmıştır. Burada bulunabilen basit bir spesifikasyonda tanımlanmıştır: [RTSP – RFC2326](https://tools.ietf.org/html/rfc2326) -Cihazlar **kimlik doğrulamasız** veya **kimlik doğrulamalı** erişime izin verebilir. Kontrol etmek için bir "DESCRIBE" isteği gönderilir. Aşağıda basit bir örnek gösterilmektedir: +Cihazlar **kimlik doğrulaması yapılmamış** veya **kimlik doğrulaması yapılmış** erişime izin verebilir. Kontrol etmek için bir "DESCRIBE" isteği gönderilir. Aşağıda basit bir örnek gösterilmektedir: `DESCRIBE rtsp://: RTSP/1.0\r\nCSeq: 2` -Doğru formatlamanın, tutarlı bir yanıt için çift "\r\n" içerdiğini unutmayın. "200 OK" yanıtı **kimlik doğrulamasız erişimi** gösterirken, "401 Unauthorized" kimlik doğrulamasının gerekli olduğunu belirtir ve **Basic** veya **Digest authentication** gerekip gerekmediğini ortaya çıkarır. +Doğru formatlamanın, tutarlı bir yanıt için çift "\r\n" içerdiğini unutmayın. "200 OK" yanıtı **kimlik doğrulaması yapılmamış erişimi** gösterirken, "401 Unauthorized" kimlik doğrulaması gerektiğini belirtir ve **Basic** veya **Digest authentication** gerekip gerekmediğini ortaya çıkarır. -**Basic authentication** için, kullanıcı adı ve şifreyi base64 ile kodlayarak isteğe dahil edersiniz: +**Basic authentication** için, kullanıcı adı ve şifreyi base64 formatında kodlayarak isteğe dahil edersiniz: `DESCRIBE rtsp://: RTSP/1.0\r\nCSeq: 2\r\nAuthorization: Basic YWRtaW46MTIzNA==` -Bu örnek, kimlik bilgileri için "admin" ve "1234" kullanmaktadır. İşte böyle bir isteği göndermek için bir **Python scripti**: +Bu örnek, kimlik bilgileri olarak "admin" ve "1234" kullanmaktadır. İşte böyle bir isteği göndermek için bir **Python scripti**: ```python import socket req = "DESCRIBE rtsp://: RTSP/1.0\r\nCSeq: 2\r\nAuthorization: Basic YWRtaW46MTIzNA==\r\n\r\n" @@ -41,7 +41,7 @@ s.sendall(req) data = s.recv(1024) print(data) ``` -**Temel kimlik doğrulama** daha basit ve tercih edilen bir yöntemdir. **Özet kimlik doğrulama**, "401 Yetkisiz" yanıtında sağlanan kimlik doğrulama ayrıntılarının dikkatli bir şekilde işlenmesini gerektirir. +**Temel kimlik doğrulama** daha basit ve tercih edilen bir yöntemdir. **Özet kimlik doğrulama** "401 Yetkisiz" yanıtında sağlanan kimlik doğrulama detaylarının dikkatli bir şekilde ele alınmasını gerektirir. Bu genel bakış, RTSP akışlarına erişim sürecini basitleştirir ve ilk denemelerdeki basitliği ve pratikliği nedeniyle **Temel kimlik doğrulama** üzerine odaklanır. @@ -51,23 +51,32 @@ Geçerli yöntemler ve desteklenen URL'ler hakkında bilgi alalım ve içeriğe ```bash nmap -sV --script "rtsp-*" -p ``` +#### RTSP Akışını [ffplay](https://ffmpeg.org/ffplay.html) ile Görüntüleme +Geçerli bir RTSP yolu (örneğin, `/mpeg4`, `/live.sdp`) keşfettikten ve erişimi doğruladıktan (kimlik doğrulamasız veya kimlik bilgileri ile) sonra, akışı yayınlamak için `ffplay` kullanabilirsiniz: +```bash +ffplay -rtsp_transport tcp rtsp:///mpeg4 -x 2560 -y 1440 +``` +- `-rtsp_transport tcp`: Daha güvenilir akış için UDP yerine TCP kullanın +- `-x`, `-y`: Video çözünürlüğünü kontrol etmek için isteğe bağlı bayraklar +- Gerekli yerlerde `` ve yolu değiştirin + ### [Brute Force](../generic-hacking/brute-force.md#rtsp) -### **Diğer faydalı programlar** +### **Diğer yararlı programlar** Bruteforce için: [https://github.com/Tek-Security-Group/rtsp_authgrinder](https://github.com/Tek-Security-Group/rtsp_authgrinder) [**Cameradar**](https://github.com/Ullaakut/cameradar) -- Erişilebilir herhangi bir hedefte açık RTSP sunucularını tespit et -- Kamuya açık bilgilerini al (hostname, port, kamera modeli, vb.) -- Akış yolunu elde etmek için otomatik sözlük saldırıları başlat (örneğin /live.sdp) -- Kameraların kullanıcı adı ve şifresini elde etmek 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 kodlanıp kodlanmadıklarını kontrol etmek için bir Gstreamer boru hattı oluşturmaya çalış -- Cameradar'ın elde edebildiği tüm bilgilerin bir özetini yazdır +- Erişilebilir herhangi bir hedefte açık RTSP sunucularını tespit edin +- Kamu bilgilerini (hostname, port, kamera modeli vb.) alın +- Akış yolunu elde etmek için otomatik sözlük saldırıları başlatın (örneğin /live.sdp) +- Kameraların kullanıcı adı ve şifresini elde etmek için otomatik sözlük saldırıları başlatın +- 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şturun +- Doğru bir şekilde kodlanıp kodlanmadıklarını kontrol etmek için bir Gstreamer boru hattı oluşturmaya çalışın +- Cameradar'ın elde edebildiği tüm bilgilerin bir özetini yazdırın -## Referanslar +## References - [https://en.wikipedia.org/wiki/Real_Time_Streaming_Protocol](https://en.wikipedia.org/wiki/Real_Time_Streaming_Protocol) - [http://badguyfu.net/rtsp-brute-forcing-for-fun-and-naked-pictures/](http://badguyfu.net/rtsp-brute-forcing-for-fun-and-naked-pictures/)