Hola, Saúl me ha comentado un fallo de seguridad en SIP bastante terrible y lo
comento aquí junto con alguna posible solución que se me ha ocurrido:
El problema es éste:
http://voipsa.org/pipermail/voipsec_voipsa.org/2007-November/002475.html
La clave está en que el atacante envía un INVITE a la víctima con un "Contact:
num_PSNT@proxy_victima" y luego solicita auth a la víctima cuando ésta le
envía un re-INVITE. Entonces finalmente el atacante dispone de un digest
válido para hacer la llamada a ese número.
Vale, y en dicha lista de correo están bastante alarmados con esto por lo que
supongo que en las soluciones que se me han ocurrido falla algo
estrepitosamente:
1) Meter un "consume_credentials()" dentro de "loose_route()" para
borrar la
autenticación justo antes de enviar el paquete al destino. Es decir, entiendo
que si un usuario(a)proxy.org es usuario de dicho
proxy.org sólo tiene sentido
que se autentique en ese proxy (a pesar de los divertidos esquemas del país
de la piruleta que se ven en
tech-invite.com con autenticaciones secuenciales
y demás fricadas que luego sencillamente no existen).
2) Mirar el Contact y denegar el paquete si la URI en dicho Contact está
prohibida (se corresponde con el proxy). El módulo "permissiones" permite
esto para REGISTER pero no lo encuentro para otros mensajes, ¿no se puede
hacer así? sería elegante.
En fin, ¿es grave doctor?
Saludos.
--
Iñaki Baz Castillo