Puede aún ser "peor": si el UA no tiene configurado outbound proxy y utiliza directamente IPs, la llamada se cursará sin que tu proxy vea un sólo paquete...así es cómo funciona SIP. Para evitarlo debes proporcionar a tus usuarios una razón para que pasen por tu proxy, generalmente solventando problemas de NAT, servicios extras,...
El "tema" aquí es que los usuarios raramente saben qué IP tienen los dispositivos y aunque lo sepan es más cómodo no indicar nombre de dominio. Aparte que si tus usuarios utilizan conversores PAP raramente podrán especificar dominio en el Req-URI...
Qué problema hay que los usuarios se llamen entre sí????
Samuel
2007/10/23, Iñaki Baz Castillo ibc@aliax.net:
Hola, estoy terriblemente preocupado:
Estaba yo feliz con mi supuesta seguridad entre distintos dominios alojados en mi OpenSer cuando he caído en la cuenta de que dicha seguridad es muy fácilmente rebasable sin más que llamar al "Contact" final de cualquier usuario de cualquiera de estos dominios.
Es decir, supongamos dos dominios locales: dom_A y dom_B.
- Si un usuario_A@dom_A llama al AOR sip:usuario_B@dom_B entonces mi
OpenSer aplica las reglas entre-dominios para ver quién puede llamar a quién y tal. Ok.
- Pero si por alguna llamada anterior se conoce el "Contact" final del
usuario_B@dom_B (ej: sip:usuario_B@80.80.80.80:5061) entonces el usuario_A@dom_A puede llamar **directamente** a usuario_B@dom_B sin pasar por la política de seguridad de mi OpenSer sólo con tener predefinido su OpenSer como Outbound proxy y llamar directamente a sip:usuario_B@80.80.80.80:5061
Entonces la llamada es Outbound y se ruta directamente (t_relay). Además la llamada llega al destino desde su propio proxy por lo que no serviría ni una supuesta política de seguridad de firewall (impedir entrantes SIP desde IP's distintas a mi proxy).
Por supuesto que sólo permito outbound para dominios locales, pero el problema está en la seguridad entre ellos.
¿Y ahora qué hago? Sólo se me ocurre:
- Drástico: Eliminar la posibilidad de outbound proxy en mi OpenSer, así
al menos doy pie a soluciones de firewall o NAT (la IP origen no sería el proxy así que NAT no lo deja pasar).
- Separar el outbound proxy a otro OpenSer en otra IP (para conseguir lo
mismo que antes sin eliminar las llamadas Outbound).
En fin, me va a dar algo, ¿alguna otra alternativa más limpia y segura? ¿es realmente un proxy SIP que gestiona dominios separados? ¿o hay que poner necesariamente un B2BUA delante de cada entorno SIP?
Gracias por cualquier sugerencia.
-- Iñaki Baz Castillo
Users-es mailing list Users-es@openser.org http://openser.org/cgi-bin/mailman/listinfo/users-es