WebRTC DoS

Reading time: 4 minutes

tip

AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)

HackTricks का समर्थन करें

यह समस्या इस ब्लॉग पोस्ट में पाई गई थी: https://www.rtcsec.com/article/novel-dos-vulnerability-affecting-webrtc-media-servers/

WebRTC मीडिया सर्वरों में वर्णित कमजोरियां मीडिया सत्रों के आरंभ के दौरान रेस कंडीशन से उत्पन्न होती हैं, विशेष रूप से ICE मीडिया सहमति सत्यापन और DTLS ट्रैफ़िक आरंभ के बीच। यहाँ एक विस्तृत विश्लेषण है:

Vulnerability Origin

  1. UDP पोर्ट आवंटन: जब एक उपयोगकर्ता WebRTC कॉल शुरू करता है, तो मीडिया सर्वर मीडिया स्ट्रीम को संभालने के लिए UDP पोर्ट आवंटित करता है, जिसमें IP और पोर्ट सिग्नलिंग के माध्यम से संप्रेषित होते हैं।
  2. ICE और STUN प्रक्रियाएँ: उपयोगकर्ता का ब्राउज़र मीडिया सहमति सत्यापन के लिए ICE का उपयोग करता है, STUN का उपयोग करके मीडिया सर्वर के लिए कनेक्शन पथ निर्धारित करता है।
  3. DTLS सत्र: सफल STUN सत्यापन के बाद, SRTP मास्टर कुंजी स्थापित करने के लिए एक DTLS सत्र शुरू होता है, जो मीडिया स्ट्रीम के लिए SRTP पर स्विच करता है।

Exploitation Mechanism

  • रेस कंडीशन शोषण: एक हमलावर एक रेस कंडीशन का शोषण कर सकता है, वैध उपयोगकर्ता से पहले DTLS ClientHello संदेश भेजकर, संभावित रूप से TLS_NULL_WITH_NULL_NULL जैसे अमान्य सिफर सूट का उपयोग करके। इससे सर्वर पर DTLS त्रुटि होती है, SRTP सत्र स्थापित होने से रोकती है।

Attack Process

  • पोर्ट स्कैनिंग: हमलावर को अनुमान लगाना होगा कि कौन से UDP पोर्ट आने वाले मीडिया सत्रों को संभाल रहे हैं, इन पोर्टों पर null सिफर सूट के साथ ClientHello संदेश भेजकर इस कमजोरी को सक्रिय करना होगा।
  • हमले का आरेख: अनुक्रम में हमलावर द्वारा सर्वर को भेजे गए कई ClientHello संदेश शामिल होते हैं, जो वैध सिग्नलिंग और DTLS संदेशों के साथ इंटरलीव्ड होते हैं, जिससे त्रुटिपूर्ण सिफर सूट के कारण हैंडशेक विफलता होती है।

Testing and Mitigation

  • सुरक्षित परीक्षण: Scapy जैसे उपकरणों का उपयोग करते हुए, हमलावर विशिष्ट मीडिया पोर्टों को लक्षित करते हुए DTLS ClientHello संदेशों को फिर से भेजते हैं। नैतिक परीक्षण के लिए, Chromium में संशोधन (जैसे, JsepTransport::AddRemoteCandidates) का उपयोग किया गया था ताकि पीड़ित के व्यवहार को सुरक्षित रूप से अनुकरण किया जा सके।
  • निवारण उपाय: समाधान में अविश्वसनीय पते से पैकेट गिराना शामिल है, जैसा कि libnice जैसी नई संस्करणों में लागू किया गया है। प्राथमिक समाधान ICE सत्यापन प्रक्रिया पर भरोसा करने और केवल मान्य IP और पोर्ट संयोजनों से पैकेट संसाधित करने पर जोर देता है।

Non-Vulnerable Scenarios

  • DTLS सर्वर कॉन्फ़िगरेशन: वे उदाहरण जहाँ ब्राउज़र DTLS सर्वर के रूप में कार्य करता है या जब मीडिया सर्वर मीडिया सत्रों के लिए अस्थायी पोर्ट का उपयोग नहीं करता है, इस कमजोरी के प्रति संवेदनशील नहीं होते हैं।

Conclusion

यह कमजोरी मीडिया सत्रों के आरंभ प्रक्रियाओं में नाजुक संतुलन को उजागर करती है और शोषण को रोकने के लिए सटीक समय और सत्यापन तंत्र की आवश्यकता को दर्शाती है। डेवलपर्स को अनुशंसित सुरक्षा सुधार लागू करने और ऐसी कमजोरियों को कम करने के लिए मजबूत सत्यापन प्रक्रियाओं को सुनिश्चित करने की सलाह दी जाती है।

tip

AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)

HackTricks का समर्थन करें