El Protocolo Simple de Descubrimiento de Servicios ( SSDP ) es un protocolo de red , asociado al conjunto de protocolos de Internet , para la publicación y el descubrimiento de servicios de red e información de presencia. Lo logra sin la ayuda de mecanismos de configuración basados en servidores, como el Protocolo de Configuración Dinámica de Host (DHCP) o el Sistema de Nombres de Dominio (DNS), y sin una configuración estática especial de un host de red. SSDP es la base del protocolo de descubrimiento de Universal Plug and Play (UPnP) y está diseñado para su uso en entornos residenciales o de pequeñas oficinas. Fue descrito formalmente en un borrador de Internet de la IETF por Microsoft y Hewlett-Packard en 1999. Aunque la propuesta de la IETF ya no está vigente (abril de 2000), [ 1 ] SSDP se incorporó a la pila de protocolos UPnP, y una descripción de la implementación final se incluye en los documentos de estándares UPnP. [ 2 ] [ 3 ] [ 4 ]
Protocolo de transporte y direccionamiento
SSDP es un protocolo basado en texto que utiliza HTTPU como protocolo de transporte subyacente. Los servicios son anunciados por el sistema anfitrión mediante direccionamiento multicast a una dirección IP multicast específicamente designada en el puerto UDP número 1900. En IPv4 , la dirección multicast es 239.255.255.250 [ 5 ] y SSDP sobre IPv6 utiliza el conjunto de direcciones ff0x::c para todos los rangos de alcance indicados por x . [ 6 ]
Esto da como resultado las siguientes direcciones de multidifusión prácticas y bien conocidas para SSDP:
- 239.255.255.250 (dirección IPv4 local del sitio)
- ff02::c (enlace local)
- ff05::c (sitio local IPv6)
Además, las aplicaciones pueden utilizar las direcciones de multidifusión específicas de la fuente derivadas del prefijo de enrutamiento IPv6 local, con ID de grupo c (decimal 12).
SSDP utiliza el método HTTP NOTIFY para anunciar la activación o desactivación de servicios (presencia) al grupo de multidifusión. Un cliente que desea descubrir los servicios disponibles en una red utiliza el método M-SEARCH . Las respuestas a estas solicitudes de búsqueda se envían mediante direccionamiento unicast a la dirección y puerto de origen de la solicitud de multidifusión.
Las implementaciones de SSDP para IPv6 de Microsoft en Windows Media Player y Server utilizan la dirección de ámbito link-local. Microsoft utiliza el puerto 2869 para la notificación de eventos y las suscripciones a eventos. Sin embargo, las primeras implementaciones de SSDP también utilizaban el puerto 5000 para este servicio. [ 7 ]
ataque DDoS
En 2014 se descubrió que el SSDP se estaba utilizando en ataques DDoS conocidos como ataques de reflexión SSDP con amplificación . Muchos dispositivos, incluidos algunos routers residenciales, tienen una vulnerabilidad en el software UPnP que permite a un atacante obtener respuestas del puerto 1900 a una dirección de destino de su elección. Con una botnet de miles de dispositivos, los atacantes pueden generar tasas de paquetes suficientes y ocupar ancho de banda para saturar los enlaces, causando la denegación de servicio. [ 8 ] [ 9 ] [ 10 ] La empresa de redes Cloudflare ha descrito este ataque como el "Protocolo DDoS Estúpidamente Simple". [ 10 ]
Vulnerabilidad de Firefox
Firefox para Android, en versiones anteriores a la 79, no validaba correctamente el esquema de la URL recibida en SSDP y era vulnerable a la ejecución remota de código. Un atacante en la misma red podía crear un servidor malicioso que simulara ser un dispositivo compatible con la transmisión, pero en lugar de un archivo de configuración, devolvía una intent://URL. Firefox ejecutaba la intención (si el dispositivo la admitía) y, por lo tanto, ejecutaba código arbitrario. Esto no es un error de SSDP, sino una validación incorrecta realizada por el servicio de transmisión de Firefox. [ 11 ]
Véase también
Referencias
- ↑ Borrador de la revisión 3 del IETF (obsoleto y caducado)
- ↑ "Arquitectura de dispositivos UPnP v1.0" (PDF) . upnp.org . Foro UPnP. 15 de octubre de 2008.
- ↑ "Arquitectura de dispositivos UPnP v1.1" (PDF) . openconnectivity.org . Foro UPnP. 15 de octubre de 2008.
- ↑ "Arquitectura de dispositivos UPnP v2.0" (PDF) . openconnectivity.org . OCF . 17-04-2020.
- ↑ "Direcciones de multidifusión de Internet" . IANA. 22 de junio de 2010.
- ↑ "Direcciones de multidifusión del protocolo de Internet versión 6" . IANA . Consultado el 10 de agosto de 2010 .
- ↑ Artículo 832017 de la Base de Conocimientos de Microsoft
- ↑ Guía de ataques DDoS, pág. 8
- ↑ "Ataques de amplificación basados en UDP" . 18 de diciembre de 2019.
- 1 2 "El protocolo DDoS estúpidamente simple (SSDP) genera un DDoS de 100 Gbps" . El blog de Cloudflare . 28 de junio de 2017. Consultado el 13 de octubre de 2019 .
- ↑ Cimpanu, Catalin. "Un fallo de Firefox permite secuestrar navegadores móviles cercanos a través de WiFi" . ZDNet . Consultado el 19 de septiembre de 2020 .
- Comunicación y servicios de Windows
- protocolos de la capa de aplicación
- protocolos de descubrimiento de servicios
