Hace más o menos una semana que Brian Rakowski y Garrett Casto, de los grupos Anti-Phishing y Anti-Malware de Google, anunciaron la disponibilidad de el primer API de Safe Browsing. El ejemplo típico del uso de la tecnología Safebrowsing es Mozilla Firefox, para el que existe una recomendable extensión con denominación homónima.
Este API es de índole experimental, y permite que las aplicaciones cliente que lo utilicen hagan consultas contra las listas negras de sitios de phishing y malware que Google mantiene actualizadas. El resultado es añadir una capa de seguridad, dictaminando si las URLs a visitar o de las cuales la aplicación cliente captura datos son fuentes de distribución de malware o sitios de phishing.
Que nadie piense que Safebrowsing es la solución definitiva al problema del phishing, porque no lo es. Es, como se ha comentado, una capa más de seguridad que ayuda a mitigar el problema, pero que ni de lejos resuelve el terrible problema que representan los sitios Web ilegítimos y/o destinados a la distribución de malware.
Los métodos de listas negras tienen muchas limitaciones y son muchos los que lo critican. Son soluciones toscas, pero útiles. La principal problemática de las listas negras y blancas es la actualización de las mismas. Hasta que una entrada no es clasificada como buena o mala, el producto no dictaminará la bondad ni la benignidad, con lo que la ventana de tiempo puede ser suficientemente amplia como para anular el efecto beneficioso de operar con la lista.
No obstante, la seguridad se construye capa a capa, y cualquier capa que ayude es siempre buena. Y este API no es una excepción :)
Saludos,
Me pregunto cómo habrá implementado Google dicha API desde el punto de vista del rendimiento. No quiero pensar qué ocurriría si los más de 200 millones de usuarios de Firefox habilitan el soporte para esta API y empiezan e enviar peticiones a los servidores de Google.
Imagino que Google habrá tenido ésto en cuenta y utilizarán sistema de «caché» para amortiguar la carga. Probablemente el caché del navegador sea de poca utilidad (debido a su tamaño limitado y al thrashing motivado por ello), pero es posible que las llamadas a la API puedan ser servidas de manera más eficiente usando «caché» o sistemas P2P.
Por otro lado, recordar que es conveniente utilizar varios proveedores para este tipo de servicios. Utilizar varios proveedores puede evitar que si uno de ellos es comprometido se convierta en algo totalmente inútil y, a su vez, permite evitar el «biasing» — básicamente que un proveedor comience a ofrecer información potencialmente más a favor de unos terceros que de otros.