La seguridad del navegador es la aplicación de la seguridad de Internet a los navegadores web para proteger los datos y los sistemas informáticos en red contra violaciones de la privacidad o malware . Las vulnerabilidades de seguridad de los navegadores suelen utilizar JavaScript , a veces con secuencias de comandos entre sitios (XSS) [1] con una carga útil secundaria que utiliza Adobe Flash . [2] Los exploits de seguridad también pueden aprovechar las vulnerabilidades (agujeros de seguridad) que se explotan comúnmente en todos los navegadores (incluido Google Chrome , [3] Microsoft Internet Explorer , [4] Mozilla Firefox , [5] Opera , [6] y Safari. [7] ).
Los navegadores web pueden violarse de una o más de las siguientes maneras:
Es posible que el navegador no sea consciente de ninguna de las infracciones anteriores y puede mostrarle al usuario que se ha realizado una conexión segura.
Siempre que un navegador se comunica con un sitio web, el sitio web, como parte de esa comunicación, recopila cierta información sobre el navegador (para procesar el formato de la página que se entregará, al menos). [10] Si se ha insertado código malicioso en el contenido del sitio web, o en el peor de los casos, si ese sitio web ha sido diseñado específicamente para alojar código malicioso, entonces las vulnerabilidades específicas de un navegador en particular pueden permitir que este código malicioso ejecute procesos dentro la aplicación del navegador de manera no deseada (y recuerde, uno de los bits de información que un sitio web recopila de una comunicación con el navegador es la identidad del navegador, lo que permite explotar vulnerabilidades específicas). [11] Una vez que un atacante puede ejecutar procesos en la máquina del visitante, explotar vulnerabilidades de seguridad conocidas puede permitirle obtener acceso privilegiado (si el navegador aún no se está ejecutando con acceso privilegiado) al sistema "infectado" para para realizar una variedad aún mayor de procesos y actividades maliciosos en la máquina o incluso en toda la red de la víctima. [12]
Las infracciones de seguridad del navegador web suelen tener como objetivo eludir las protecciones para mostrar publicidad emergente [13] , recopilar información de identificación personal (PII) para marketing en Internet o robo de identidad , seguimiento de sitios web o análisis web sobre un usuario en contra de su voluntad utilizando herramientas. como errores web , Clickjacking , Likejacking (donde se dirige el botón Me gusta de Facebook ), [14] [15] [16] [17] cookies HTTP , cookies zombie o cookies Flash (objetos locales compartidos o LSO); [2] instalar adware , virus , spyware como caballos de Troya (para obtener acceso a las computadoras personales de los usuarios mediante cracking ) u otro malware, incluido el robo de banca en línea mediante ataques de hombre en el navegador .
Un estudio en profundidad de las vulnerabilidades en el navegador web Chromium indica que la validación de entrada incorrecta (CWE-20) y el control de acceso incorrecto (CWE-284) son las causas fundamentales más frecuentes de las vulnerabilidades de seguridad. [18] Además, entre las vulnerabilidades examinadas en el momento de este estudio, 106 vulnerabilidades ocurrieron en Chromium debido a la reutilización o importación de versiones vulnerables de bibliotecas de terceros.
Las vulnerabilidades en el software del navegador web se pueden minimizar manteniendo actualizado el software del navegador, [19] pero no será suficiente si el sistema operativo subyacente se ve comprometido, por ejemplo, por un rootkit. [20] Algunos subcomponentes de los navegadores, como secuencias de comandos, complementos y cookies [21] [22] [23] son particularmente vulnerables ("el problema adjunto confuso ") y también deben abordarse.
Siguiendo el principio de defensa en profundidad , un navegador completamente parcheado y configurado correctamente puede no ser suficiente para garantizar que no se produzcan problemas de seguridad relacionados con el navegador. Por ejemplo, un rootkit puede capturar las pulsaciones de teclas mientras alguien inicia sesión en el sitio web de un banco, o llevar a cabo un ataque de intermediario modificando el tráfico de red hacia y desde un navegador web. El secuestro de DNS o la suplantación de DNS se pueden utilizar para generar falsos positivos en nombres de sitios web mal escritos o para subvertir los resultados de búsqueda de motores de búsqueda populares. El malware como RSPlug simplemente modifica la configuración de un sistema para apuntar a servidores DNS no autorizados.
Los navegadores pueden utilizar métodos más seguros de comunicación de red para ayudar a prevenir algunos de estos ataques:
Las defensas perimetrales, generalmente a través de firewalls y el uso de servidores proxy de filtrado que bloquean sitios web maliciosos y realizan análisis antivirus de cualquier descarga de archivos, se implementan comúnmente como una mejor práctica en grandes organizaciones para bloquear el tráfico de red malicioso antes de que llegue a un navegador.
El tema de la seguridad del navegador ha crecido hasta el punto de generar la creación de organizaciones enteras, como The Browser Exploitation Framework Project, [24] que crea plataformas para recopilar herramientas para violar la seguridad del navegador, aparentemente con el fin de probar los navegadores y los sistemas de red en busca de vulnerabilidades. .
Aunque no forman parte del navegador per se, los complementos y extensiones del navegador amplían la superficie de ataque , exponiendo vulnerabilidades en Adobe Flash Player , Adobe (Acrobat) Reader , el complemento Java y ActiveX que se explotan comúnmente. Los investigadores [25] han estudiado exhaustivamente la arquitectura de seguridad de varios navegadores web, en particular aquellos que se basan en diseños plug-and-play. Este estudio ha identificado 16 tipos de vulnerabilidad comunes y 19 mitigaciones potenciales. El malware también puede implementarse como una extensión del navegador, como un objeto auxiliar del navegador en el caso de Internet Explorer. [26] En varios otros sitios web de exploits que fueron diseñados para parecer auténticos e incluían ventanas emergentes falsas de 'actualización de Adobe Flash' diseñadas como señales visuales para descargar cargas útiles de malware en su lugar. [27] Algunos navegadores como Google Chrome y Mozilla Firefox pueden bloquear (o advertir a los usuarios) complementos inseguros.
Un estudio de agosto de 2009 realizado por Social Science Research Network encontró que el 50% de los sitios web que usaban Flash también empleaban cookies Flash, pero las políticas de privacidad rara vez las revelaban y faltaban controles de usuario para las preferencias de privacidad. [28] Las funciones de eliminación de historial y caché de la mayoría de los navegadores no afectan la escritura de objetos compartidos locales de Flash Player en su propio caché, y la comunidad de usuarios es mucho menos consciente de la existencia y función de las cookies Flash que las cookies HTTP. [29] Por lo tanto, los usuarios que hayan eliminado las cookies HTTP y purgado los archivos y cachés del historial del navegador pueden creer que han eliminado todos los datos de seguimiento de sus computadoras, mientras que en realidad el historial de navegación Flash permanece. Además de la eliminación manual, el complemento BetterPrivacy para Firefox puede eliminar las cookies Flash. [2] Adblock Plus se puede utilizar para filtrar amenazas específicas [13] y Flashblock se puede utilizar para ofrecer una opción antes de permitir contenido en sitios que de otro modo serían confiables. [30]
Charlie Miller recomendó "no instalar Flash" [31] en la conferencia de seguridad informática CanSecWest. Varios otros expertos en seguridad también recomiendan no instalar Adobe Flash Player o bloquearlo. [32]
El contenido de una página web es arbitrario y está controlado por la entidad propietaria del dominio cuyo nombre se muestra en la barra de direcciones. Si se utiliza HTTPS , entonces se utiliza el cifrado para evitar que los atacantes con acceso a la red cambien el contenido de la página en el camino. Cuando se le presenta un campo de contraseña en una página web, se supone que un usuario debe mirar la barra de direcciones para determinar si el nombre de dominio en la barra de direcciones es el lugar correcto para enviar la contraseña. [33] Por ejemplo, para el sistema de inicio de sesión único de Google (utilizado, por ejemplo, en youtube.com), el usuario siempre debe verificar que la barra de direcciones diga "https://accounts.google.com" antes de ingresar su contraseña.
Un navegador no comprometido garantiza que la barra de direcciones sea correcta. Esta garantía es una de las razones por las que los navegadores generalmente muestran una advertencia al ingresar al modo de pantalla completa, encima de donde normalmente estaría la barra de direcciones, de modo que un sitio web en pantalla completa no puede crear una interfaz de usuario de navegador falsa con una barra de direcciones falsa. [34]
Los LiveCD , que ejecutan un sistema operativo desde una fuente no grabable, normalmente vienen con navegadores web como parte de su imagen predeterminada. Si la imagen original del LiveCD está libre de malware, todo el software utilizado, incluido el navegador web, se cargará sin malware cada vez que se inicie la imagen del LiveCD.
Navegar por Internet como una cuenta de usuario con privilegios mínimos (es decir, sin privilegios de administrador) limita la posibilidad de que un exploit de seguridad en un navegador web comprometa todo el sistema operativo. [35]
Internet Explorer 4 y posteriores permiten la inclusión en listas de bloqueo [36] [37] [38] y en listas de permitidos [39] [40] de controles ActiveX , complementos y extensiones de navegador de varias maneras.
Internet Explorer 7 agregó el "modo protegido", una tecnología que fortalece el navegador mediante la aplicación de una característica de seguridad de Windows Vista llamada Mandatory Integrity Control . [41] Google Chrome proporciona una zona de pruebas para limitar el acceso a las páginas web del sistema operativo. [42]
Los sitios sospechosos de malware reportados a Google, [43] y confirmados por Google, están marcados como alojamiento de malware en ciertos navegadores. [44]
Hay extensiones y complementos de terceros disponibles para reforzar incluso los navegadores más recientes, [45] y algunos para navegadores y sistemas operativos más antiguos. El software basado en listas blancas , como NoScript, puede bloquear JavaScript y Adobe Flash, que se utiliza para la mayoría de los ataques a la privacidad, lo que permite a los usuarios elegir solo los sitios que saben que son seguros. AdBlock Plus también utiliza suscripciones a reglas de filtrado de anuncios de listas blancas , aunque tanto el software en sí como el Los mantenedores de listas de filtrado han sido objeto de controversia por permitir de forma predeterminada que algunos sitios pasen los filtros preestablecidos. [46] El US-CERT recomienda bloquear Flash usando NoScript . [47]
Los navegadores web modernos se someten a extensas modificaciones para descubrir vulnerabilidades. El equipo de seguridad de Chrome con 15.000 núcleos modifica continuamente el código Chromium de Google Chrome . [48] Para Microsoft Edge e Internet Explorer , Microsoft realizó pruebas difusas con 670 años-máquina durante el desarrollo del producto, generando más de 400 mil millones de manipulaciones DOM a partir de mil millones de archivos HTML. [49] [48]