Temel VoIP Protokolleri
Reading time: 9 minutes
tip
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
Azure Hacking'i öğrenin ve pratik yapın:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks'i Destekleyin
- abonelik planlarını kontrol edin!
- 💬 Discord grubuna veya telegram grubuna katılın ya da Twitter'da bizi takip edin 🐦 @hacktricks_live.**
- Hacking ipuçlarını paylaşmak için HackTricks ve HackTricks Cloud github reposuna PR gönderin.
Sinyal Protokolleri
SIP (Oturum Başlatma Protokolü)
Bu, endüstri standardıdır, daha fazla bilgi için kontrol edin:
SIP (Session Initiation Protocol)
MGCP (Medya Geçidi Kontrol Protokolü)
MGCP (Medya Geçidi Kontrol Protokolü), RFC 3435'te belirtilen bir sinyal ve arama kontrol protokolüdür. Merkezi bir mimaride çalışır ve üç ana bileşenden oluşur:
- Arama Ajanı veya Medya Geçidi Kontrolörü (MGC): MGCP mimarisindeki ana geçit, medya geçitlerini yönetmek ve kontrol etmekten sorumludur. Arama kurulum, değiştirme ve sonlandırma süreçlerini yönetir. MGC, medya geçitleri ile MGCP protokolü kullanarak iletişim kurar.
- Medya Geçitleri (MG'ler) veya Köle Geçitler: Bu cihazlar, farklı ağlar arasında dijital medya akışlarını dönüştürür, örneğin geleneksel devre anahtarlamalı telefon ile paket anahtarlamalı IP ağları. MGC tarafından yönetilirler ve ondan aldıkları komutları yerine getirirler. Medya geçitleri, transkodlama, paketleme ve yankı iptali gibi işlevleri içerebilir.
- Sinyal Geçitleri (SG'ler): Bu geçitler, farklı ağlar arasında sinyal mesajlarını dönüştürmekten sorumludur ve geleneksel telefon sistemleri (örneğin, SS7) ile IP tabanlı ağlar (örneğin, SIP veya H.323) arasında kesintisiz iletişimi sağlar. Sinyal geçitleri, birlikte çalışabilirlik için kritik öneme sahiptir ve arama kontrol bilgilerini farklı ağlar arasında doğru bir şekilde iletmeyi sağlar.
Özetle, MGCP, arama kontrol mantığını arama ajanında merkezileştirir, bu da medya ve sinyal geçitlerinin yönetimini basitleştirir ve telekomünikasyon ağlarında daha iyi ölçeklenebilirlik, güvenilirlik ve verimlilik sağlar.
SCCP (Skinny İstemci Kontrol Protokolü)
Skinny İstemci Kontrol Protokolü (SCCP), Cisco Systems'a ait bir mülkiyet sinyal ve arama kontrol protokolüdür. Temelde Cisco Unified Communications Manager (eski adıyla CallManager) ile Cisco IP telefonları veya diğer Cisco ses ve video uç noktaları arasında iletişim için kullanılır.
SCCP, arama kontrol sunucusu ile uç nokta cihazları arasındaki iletişimi basitleştiren hafif bir protokoldür. "Skinny" olarak adlandırılmasının nedeni, diğer VoIP protokollerine (örneğin H.323 veya SIP) kıyasla minimal tasarımı ve azaltılmış bant genişliği gereksinimleridir.
SCCP tabanlı bir sistemin ana bileşenleri şunlardır:
- Arama Kontrol Sunucusu: Genellikle bir Cisco Unified Communications Manager olan bu sunucu, arama kurulum, değiştirme ve sonlandırma süreçlerini yönetir ve arama yönlendirme, arama transferi ve arama bekletme gibi diğer telefon özelliklerini de içerir.
- SCCP Uç Noktaları: Bu, arama kontrol sunucusu ile iletişim kurmak için SCCP'yi kullanan IP telefonları, video konferans birimleri veya diğer Cisco ses ve video uç noktaları gibi cihazlardır. Sunucuya kaydolurlar, sinyal mesajları gönderir ve alır ve arama kontrol sunucusunun sağladığı talimatlara uyarlar.
- Geçitler: Bu cihazlar, geleneksel devre anahtarlamalı telefon ile paket anahtarlamalı IP ağları gibi farklı ağlar arasında medya akışlarını dönüştürmekten sorumludur. Ayrıca transkodlama veya yankı iptali gibi ek işlevsellik de içerebilirler.
SCCP, Cisco arama kontrol sunucuları ile uç nokta cihazları arasında basit ve verimli bir iletişim yöntemi sunar. Ancak, SCCP bir mülkiyet protokolüdür, bu da Cisco dışı sistemlerle birlikte çalışabilirliği sınırlayabilir. Bu tür durumlarda, SIP gibi diğer standart VoIP protokolleri daha uygun olabilir.
H.323
H.323, ses, video ve veri konferansı gibi çoklu ortam iletişimi için bir protokol setidir, paket anahtarlamalı ağlar, örneğin IP tabanlı ağlar üzerinde. Uluslararası Telekomünikasyon Birliği (ITU-T) tarafından geliştirilmiştir ve çoklu ortam iletişim oturumlarını yönetmek için kapsamlı bir çerçeve sağlar.
H.323 setinin bazı ana bileşenleri şunlardır:
- Terminaller: H.323'ü destekleyen ve çoklu ortam iletişim oturumlarına katılabilen IP telefonları, video konferans sistemleri veya yazılım uygulamaları gibi uç nokta cihazlarıdır.
- Geçitler: Bu cihazlar, geleneksel devre anahtarlamalı telefon ile paket anahtarlamalı IP ağları gibi farklı ağlar arasında medya akışlarını dönüştürerek H.323 ile diğer iletişim sistemleri arasında birlikte çalışabilirliği sağlar. Ayrıca transkodlama veya yankı iptali gibi ek işlevsellik de içerebilirler.
- Geçit Kontrolörleri: H.323 ağında arama kontrolü ve yönetim hizmetleri sağlayan isteğe bağlı bileşenlerdir. Adres çevirisi, bant genişliği yönetimi ve kabul kontrolü gibi işlevleri yerine getirir, ağ kaynaklarını yönetmeye ve optimize etmeye yardımcı olur.
- Çok Noktalı Kontrol Birimleri (MCU'lar): Bu cihazlar, birden fazla uç noktadan gelen medya akışlarını yöneterek ve karıştırarak çok noktalı konferansları kolaylaştırır. MCU'lar, video düzeni kontrolü, sesle etkinleştirilmiş geçiş ve sürekli varlık gibi özellikleri mümkün kılarak çok sayıda katılımcıyla büyük ölçekli konferanslar düzenlemeyi sağlar.
H.323, ses ve video kodekleri ile arama yönlendirme, arama transferi, arama bekletme ve arama bekleme gibi diğer ek hizmetleri destekler. VoIP'in ilk günlerinde yaygın olarak benimsenmesine rağmen, H.323, daha iyi birlikte çalışabilirlik ve daha kolay uygulama sunan Oturum Başlatma Protokolü (SIP) gibi daha modern ve esnek protokollerle kademeli olarak yer değiştirmiştir. Ancak, H.323 birçok eski sistemde kullanılmaya devam etmekte ve çeşitli ekipman satıcıları tarafından desteklenmektedir.
IAX (Inter Asterisk eXchange)
IAX (Inter-Asterisk eXchange), esasen Asterisk PBX (Özel Santral) sunucuları ile diğer VoIP cihazları arasında iletişim için kullanılan bir sinyal ve arama kontrol protokolüdür. Asterisk açık kaynaklı PBX yazılımının yaratıcısı Mark Spencer tarafından, SIP ve H.323 gibi diğer VoIP protokollerine alternatif olarak geliştirilmiştir.
IAX, basitliği, verimliliği ve uygulanabilirliği ile bilinir. IAX'ın bazı ana özellikleri şunlardır:
- Tek UDP Portu: IAX, hem sinyal hem de medya trafiği için tek bir UDP portu (4569) kullanır, bu da güvenlik duvarı ve NAT geçişini basitleştirir ve çeşitli ağ ortamlarında dağıtımını kolaylaştırır.
- İkili Protokol: IAX, SIP gibi metin tabanlı protokollerin aksine, ikili bir protokoldür, bu da bant genişliği tüketimini azaltır ve sinyal ve medya verilerini iletmek için daha verimli hale getirir.
- Trunking: IAX, birden fazla aramanın tek bir ağ bağlantısında birleştirilmesine olanak tanıyan trunking'i destekler, bu da yükü azaltır ve bant genişliği kullanımını iyileştirir.
- Yerel Şifreleme: IAX, uç noktalar arasında güvenli iletişim sağlamak için RSA gibi anahtar değişim yöntemleri ve AES gibi medya şifreleme yöntemleri kullanarak yerleşik şifreleme desteğine sahiptir.
- Eşler Arası İletişim: IAX, merkezi bir sunucuya ihtiyaç duymadan uç noktalar arasında doğrudan iletişim için kullanılabilir, bu da daha basit ve verimli arama yönlendirmeyi sağlar.
Faydalarına rağmen, IAX'ın bazı sınırlamaları vardır; bunlar arasında Asterisk ekosistemine odaklanması ve SIP gibi daha yerleşik protokollere kıyasla daha az yaygın benimsenmesi bulunmaktadır. Bu nedenle, IAX, Asterisk dışı sistemler veya cihazlarla birlikte çalışabilirlik için en iyi seçim olmayabilir. Ancak, Asterisk ortamında çalışanlar için, IAX VoIP iletişimi için sağlam ve verimli bir çözüm sunar.
İletim ve Taşıma Protokolleri
SDP (Oturum Tanım Protokolü)
SDP (Oturum Tanım Protokolü), IP ağları üzerinden ses, video veya veri konferansı gibi çoklu ortam oturumlarının özelliklerini tanımlamak için kullanılan bir metin tabanlı formattır. İnternet Mühendisliği Görev Gücü (IETF) tarafından geliştirilmiş ve RFC 4566'da tanımlanmıştır. SDP, gerçek medya iletimini veya oturum kurulumu işlemlerini yönetmez, ancak SIP (Oturum Başlatma Protokolü) gibi diğer sinyal protokolleri ile birlikte medya akışları ve özellikleri hakkında bilgi müzakere etmek ve değiştirmek için kullanılır.
SDP'nın bazı ana bileşenleri şunlardır:
- Oturum Bilgileri: SDP, bir çoklu ortam oturumunun ayrıntılarını, oturum adı, oturum açıklaması, başlangıç zamanı ve bitiş zamanı gibi bilgileri tanımlar.
- Medya Akışları: SDP, medya akışlarının özelliklerini tanımlar, örneğin medya türü (ses, video veya metin), taşıma protokolü (örneğin RTP veya SRTP) ve medya formatı (örneğin kodek bilgisi).
- Bağlantı Bilgileri: SDP, medyanın gönderileceği veya alınacağı ağ adresi (IP adresi) ve port numarası hakkında bilgi sağlar.
- Özellikler: SDP, bir oturum veya medya akışı hakkında ek, isteğe bağlı bilgi sağlamak için özelliklerin kullanılmasını destekler. Özellikler, şifreleme anahtarları, bant genişliği gereksinimleri veya medya kontrol mekanizmaları gibi çeşitli özellikleri belirtmek için kullanılabilir.
SDP genellikle aşağıdaki süreçte kullanılır:
- Başlatan taraf, önerilen çoklu ortam oturumunun SDP tanımını oluşturur ve medya akışlarının ayrıntılarını ve özelliklerini içerir.
- SDP tanımı, genellikle SIP veya RTSP gibi bir sinyal protokolü mesajı içinde alıcı tarafa gönderilir.
- Alıcı taraf, SDP tanımını işler ve yeteneklerine bağlı olarak önerilen oturumu kabul edebilir, reddedebilir veya değiştirebilir.
- Nihai SDP tanımı, müzakere sürecini tamamlamak için sinyal protokolü mesajının bir parçası olarak başlatan tarafa geri gönderilir.
SDP'nın basitliği ve esnekliği, onu çeşitli iletişim sistemlerinde çoklu ortam oturumlarını tanımlamak için yaygın olarak benimsenen bir standart haline getirir ve IP ağları üzerinden gerçek zamanlı çoklu ortam oturumlarını kurma ve yönetmede kritik bir rol oynar.
RTP / RTCP / SRTP / ZRTP
- RTP (Gerçek Zamanlı Taşıma Protokolü): RTP, IP ağları üzerinden ses ve video verileri veya diğer gerçek zamanlı medyaların iletimi için tasarlanmış bir ağ protokolüdür. IETF tarafından geliştirilmiş ve RFC 3550'de tanımlanmıştır, RTP genellikle SIP ve H.323 gibi sinyal protokolleri ile birlikte çoklu ortam iletişimini sağlamak için kullanılır. RTP, medya akışlarının senkronizasyonu, sıralaması ve zaman damgalaması için mekanizmalar sağlar ve medya oynatımının düzgün ve zamanında olmasına yardımcı olur.
- RTCP (Gerçek Zamanlı Taşıma Kontrol Protokolü): RTCP, RTP'nin bir tamamlayıcı protokolüdür ve hizmet kalitesini (QoS) izlemek ve medya akışlarının iletimi hakkında geri bildirim sağlamak için kullanılır. RTP ile aynı RFC 3550'de tanımlanmıştır, RTCP RTP oturumundaki katılımcılar arasında kontrol paketlerini periyodik olarak değiştirir. Paket kaybı, jitter ve gidiş-dönüş süresi gibi bilgileri paylaşarak ağ koşullarına uyum sağlamaya ve genel medya kalitesini iyileştirmeye yardımcı olur.
- SRTP (Güvenli Gerçek Zamanlı Taşıma Protokolü): SRTP, medya akışları için şifreleme, mesaj kimlik doğrulaması ve tekrar koruması sağlayan RTP'nin bir uzantısıdır ve hassas ses ve video verilerinin güvenli iletimini sağlar. RFC 3711'de tanımlanmıştır, SRTP şifreleme için AES gibi kriptografik algoritmalar ve mesaj kimlik doğrulaması için HMAC-SHA1 kullanır. SRTP, çoklu ortam iletişiminde uçtan uca güvenlik sağlamak için genellikle TLS üzerinden SIP gibi güvenli sinyal protokolleri ile birlikte kullanılır.
- ZRTP (Zimmermann Gerçek Zamanlı Taşıma Protokolü): ZRTP, RTP medya akışları için uçtan uca şifreleme sağlayan bir kriptografik anahtar anlaşma protokolüdür. PGP'nin yaratıcısı Phil Zimmermann tarafından geliştirilmiştir ve RFC 6189'da tanımlanmıştır. SRTP'nın anahtar değişimi için sinyal protokollerine bağımlı olmasının aksine, ZRTP, sinyal protokolünden bağımsız çalışacak şekilde tasarlanmıştır. İletişim tarafları arasında paylaşılan bir gizli anahtar oluşturmak için Diffie-Hellman anahtar değişimi kullanır ve önceden güven veya bir kamu anahtar altyapısı (PKI) gerektirmez. ZRTP ayrıca, man-in-the-middle saldırılarına karşı koruma sağlamak için Kısa Kimlik Doğrulama Dizeleri (SAS) gibi özellikler içerir.
Bu protokoller, IP ağları üzerinden gerçek zamanlı çoklu ortam iletişimini iletme ve güvence altına alma konusunda önemli roller oynar. RTP ve RTCP, gerçek medya iletimini ve kalite izlemeyi sağlarken, SRTP ve ZRTP, iletilen medyanın dinleme, değiştirme ve tekrar saldırılarına karşı korunmasını sağlar.
tip
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
Azure Hacking'i öğrenin ve pratik yapın:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks'i Destekleyin
- abonelik planlarını kontrol edin!
- 💬 Discord grubuna veya telegram grubuna katılın ya da Twitter'da bizi takip edin 🐦 @hacktricks_live.**
- Hacking ipuçlarını paylaşmak için HackTricks ve HackTricks Cloud github reposuna PR gönderin.