WebRTC DoS
Last updated
Last updated
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)
Bu sorun bu blog yazısında bulundu: https://www.rtcsec.com/article/novel-dos-vulnerability-affecting-webrtc-media-servers/
WebRTC medya sunucularındaki tanımlanan zafiyet, medya oturumlarının başlatılması sırasında, özellikle ICE medya onay doğrulaması ile DTLS trafik başlatma arasında bir yarış durumu nedeniyle ortaya çıkmaktadır. İşte detaylı bir inceleme:
UDP Port Tahsisi: Bir kullanıcı WebRTC araması başlattığında, medya sunucusu medya akışlarını yönetmek için UDP portları tahsis eder, IP ve port sinyalizasyon aracılığıyla iletilir.
ICE ve STUN Süreçleri: Kullanıcının tarayıcısı, medya onay doğrulaması için ICE kullanır ve medya sunucusuna bağlantı yolunu belirlemek için STUN kullanır.
DTLS Oturumu: Başarılı STUN doğrulamasının ardından, SRTP anahtarlarını oluşturmak için bir DTLS oturumu başlar ve medya akışı için SRTP'ye geçilir.
Yarış Durumu Sömürüsü: Bir saldırgan, meşru kullanıcıdan önce bir DTLS ClientHello mesajı göndererek bir yarış durumunu sömürebilir, potansiyel olarak TLS_NULL_WITH_NULL_NULL
gibi geçersiz bir şifreleme kümesi kullanarak. Bu, sunucuda bir DTLS hatasına neden olur ve SRTP oturumunun kurulmasını engeller.
Port Taraması: Saldırgan, hangi UDP portlarının gelen medya oturumlarını yönettiğini tahmin etmelidir, bu portlara null şifreleme kümesi ile ClientHello mesajları göndererek zafiyeti tetikler.
Saldırı Diyagramı: Sıralama, saldırgan tarafından sunucuya gönderilen birden fazla ClientHello mesajını, meşru sinyalizasyon ve DTLS mesajları ile iç içe geçirerek, hatalı şifreleme kümesi nedeniyle bir el sıkışma hatasına yol açar.
Güvenli Test: Saldırganlar, belirli medya portlarını hedef alarak DTLS ClientHello mesajlarını tekrar oynatmak için Scapy gibi araçlar kullanır. Etik testler için, kurban davranışını güvenli bir şekilde taklit etmek amacıyla Chromium'da (örneğin, JsepTransport::AddRemoteCandidates
) değişiklikler yapılmıştır.
Azaltma Önlemleri: Çözümler, doğrulanmamış adreslerden gelen paketlerin düşürülmesini içerir; bu, libnice gibi kütüphanelerin daha yeni sürümlerinde uygulanmıştır. Temel çözüm, ICE doğrulama sürecine güvenmeyi ve yalnızca doğrulanmış IP ve port kombinasyonlarından gelen paketleri işlemeyi vurgular.
DTLS Sunucu Yapılandırmaları: Tarayıcının bir DTLS sunucusu olarak davrandığı veya medya sunucusunun medya oturumları için geçici portlar kullanmadığı durumlar bu zafiyete karşı duyarsızdır.
Bu zafiyet, medya oturumu başlatma süreçlerindeki hassas dengeyi ve sömürüyü önlemek için kesin zamanlama ve doğrulama mekanizmalarının gerekliliğini vurgulamaktadır. Geliştiricilerin önerilen güvenlik düzeltmelerini uygulamaları ve bu tür zafiyetleri azaltmak için sağlam doğrulama süreçlerini sağlamaları tavsiye edilmektedir.
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)