Suscríbete para recibir notificaciones de nuevas publicaciones:

Page Shield: protege los datos del usuario en el navegador

25/03/2021

6 min de lectura

Hoy nos complace anunciar Page Shield, un producto de seguridad que permite a los clientes detectar ataques en los navegadores de los usuarios finales.

En 2015, un grupo de hackers llamado Magecart robó credenciales de pago de tiendas virtuales infectando dependencias de terceros con código malicioso. Los navegadores de los usuarios finales solicitaban el código infectado, donde se ejecutaba y accedía a la información del usuario en la página web. Una vez se conseguía la información, el código infectado la enviaba a los hackers, que la revendían o reutilizaban para lanzar otros ataques, tales como el fraude con tarjetas de crédito y el robo de identidad.

Desde entonces, otros blancos de este tipo de ataques a la cadena de suministro han sido Ticketmaster, Newegg y British Airways, entre otros. El ataque a esta última, se perpetró a través de uno de sus archivos JavaScript autoalojados, que expuso los datos de casi 500 000 clientes a los hackers. El resultado del ataque fue un conjunto de sanciones por incumplimiento del RGPD y la mayor demanda legal conjunta en materia de privacidad de la historia del Reino Unido. En total, millones de usuarios se han visto afectados por estos ataques.

Escribir código seguro dentro de una organización ya es bastante difícil sin tener que preocuparse de terceros. Muchas plataformas SaaS sirven código de terceros a millones de sitios, lo que significa que un único factor de riesgo podría tener consecuencias devastadoras. Page Shield ayuda a los clientes a controlar estos posibles vectores de ataque y a evitar que la información confidencial de los usuarios caiga en manos de los hackers.

A principios de esta semana, anunciamos la función de aislamiento remoto del navegador, disponible para todos, para mitigar los ataques del lado cliente en los navegadores de tus usuarios. Page Shield forma parte de los esfuerzos de Cloudflare por reforzar la seguridad del lado cliente, ayudando a mitigar los ataques dirigidos a tus clientes.

Antecedentes

Un ataque Magecart es un tipo de ataque a la cadena de suministro de software ejecutado en el navegador de un usuario. Los atacantes se dirigen a los servidores de dependencias JavaScript de terceros y obtienen el control del código fuente que se sirve a los navegadores. Cuando el código infectado se ejecuta, a menudo intenta robar datos confidenciales que los usuarios finales escriben en el sitio, como los datos de la tarjeta de crédito durante el proceso de pago.

Estos ataques son difíciles de detectar porque muchos propietarios de aplicaciones confían en que JavaScript de terceros funcione según lo previsto. Debido a esta confianza, el propietario de la aplicación rara vez revisa el código de terceros. En muchos casos, los ataques Magecart han durado meses antes de ser detectados.

La exfiltración de datos no es el único riesgo derivado de las cadenas de suministro de software. En los últimos años también hemos visto a hackers modificar código de terceros para mostrar anuncios fraudulentos a los usuarios. Los usuarios hacen clic en estos anuncios y acceden a sitios de phishing, donde los hackers roban su información personal. Otro malware de JavaScript ha extraído criptomonedas para los atacantes utilizando recursos del usuario final y dañando el rendimiento del sitio.

Entonces, ¿qué pueden hacer los propietarios de aplicaciones para protegerse? Las tecnologías de navegador existentes, como la política de seguridad del contenido (CSP) y la integridad de los subrecursos (SRI) ofrecen cierta protección contra las amenazas del lado cliente, pero tienen algunos inconvenientes.

La CSP permite a los propietarios de aplicaciones enviar una lista de permitidos al navegador, impidiendo que se ejecute cualquier recurso que no esté incluido en la lista. Si bien puede evitar ciertos ataques de scripting entre sitios (XSS), no detecta cuando los recursos existentes cambian de estados benignos a maliciosos. Gestionar la CSP es también un desafío operativo, ya que requiere que los desarrolladores actualicen la lista de permitidos cada vez que se añade un nuevo script al sitio.

La SRI permite a los propietarios de aplicaciones especificar un hash de archivo previsto para JavaScript y otros recursos. Si el archivo obtenido no coincide con el hash, se bloquea su ejecución. La dificultad de la SRI es que los vendedores actualizan su código a menudo y, en ciertos casos, sirven archivos diferentes a usuarios finales distintos. También hemos descubierto que los vendedores de JavaScript a veces sirven archivos versionados con hashes diferentes a los usuarios finales debido a pequeñas diferencias, como el espaciado. Esto podría provocar que la SRI bloqueara archivos legítimos por circunstancias ajenas al propietario de la aplicación.

Script Monitor, primera función disponible de Page Shield

Script Monitor es solo el principio de lo que Cloudflare quiere conseguir con Page Shield. Cuando se activa, registra las dependencias de JavaScript de tu sitio a lo largo del tiempo. Cuando aparecen nuevas dependencias de JavaScript, te avisamos, para que puedas investigar si se trata de cambios previstos en tu sitio. Esto te ayuda a identificar si los ciberdelincuentes modificaron tu aplicación para solicitar un nuevo archivo JavaScript malicioso. Una vez completada la versión beta, este conjunto inicial de funciones se pondrá a disposición de los clientes Business y Enterprise sin coste adicional.

¿Cómo funciona Script Monitor?

Debido a la posición única de Cloudflare entre los servidores de origen de las aplicaciones y los usuarios finales, podemos modificar las respuestas antes de que lleguen a los usuarios finales. En este caso, añadimos un encabezado Content-Security-Policy-Report-Only a las páginas cuando pasan por nuestro perímetro. Cuando los archivos JavaScript se intentan ejecutar en la página, los navegadores envían un informe a Cloudflare. Como utilizamos un encabezado report-only, no es necesario que los propietarios de las aplicaciones mantengan listas de permitidos para obtener información relevante.

Para cada informe que vemos, comparamos el archivo JavaScript con las dependencias históricas de esa zona y comprobamos si el archivo es nuevo. Si lo es, activamos una alerta, para que los clientes puedan investigar y determinar si el cambio era esperado.

The Script Monitor UI located under Firewall -> Page Shield
La interfaz de usuario de Script Monitor se encuentra en Firewall -> Page Shield

Como participante en la versión beta, verás la pestaña Page Shield en la sección Firewall del panel de control de tu zona. Allí, puedes encontrar la tabla Script Monitor que rastrea las dependencias JavaScript de tu zona. Para cada dependencia, puedes ver la fecha en que se vio por primera y última vez, así como el dominio del servidor en el que se detectó.

Email notification example for new JavaScript dependencies found
Ejemplo de notificación por correo electrónico de las nuevas dependencias de JavaScript detectadas

También puedes configurar las notificaciones de Script Monitor en el panel de control. Estas notificaciones envían alertas al correo electrónico o a PagerDuty cada vez que tu sitio solicita un nuevo archivo JavaScript.

Perspectivas

Nuestra misión es ayudar a mejorar Internet, un objetivo que se extiende a los navegadores de los usuarios finales, donde hemos observado un aumento alarmante de los ataques en los últimos años. Con Page Shield, ayudaremos a las aplicaciones a detectar y mitigar estos ataques escurridizos para mantener a salvo la información confidencial de sus usuarios.

Ya estamos incorporando la detección de cambios de código en Script Monitor. La detección de cambios de código buscará periódicamente las dependencias JavaScript de tu aplicación y analizará su comportamiento. Cuando se detecte un nuevo comportamiento del código en los archivos existentes, te avisaremos, para que puedas revisar el cambio y determinar si el nuevo código es una actualización benigna o un fragmento de código infectado.

Tras la detección de cambios de código, pondremos en marcha el análisis inteligente de archivos JavaScript. Aunque alertar a los propietarios de aplicaciones cuando cambian sus dependencias proporciona información sobre los archivos de interés, podemos hacerlo mejor. Hemos trabajado con nuestros socios de soluciones de seguridad para adquirir muestras de JavaScript de Magecart y hemos demostrado que podemos clasificar con precisión las muestras de JavaScript malicioso. Tenemos previsto seguir perfeccionando nuestras técnicas y, con el tiempo, empezar a alertar a los clientes de Page Shield cuando creamos que sus dependencias son maliciosas.

Hemos hablado con nuestros clientes y comprendemos que mantener las listas de permitidos de la CSP es un reto desde el punto de vista operativo. Si se implementa nuevo JavaScript del lado cliente sin añadirlo a la lista de permitidos, los navegadores bloquearán ese nuevo código. Por eso utilizaremos nuestra posición como proxy inverso para enviar el bloqueo negativo del modelo de seguridad. Esto permitirá a los propietarios de aplicaciones bloquear scripts individuales sin tener que mantener una lista de permitidos, garantizando que los clientes puedan enviar nuevo código sin costes operativos engorrosos.

Versión beta

Desde hoy, todos los clientes Business y Enterprise pueden inscribirse aquí para unirse a la versión beta cerrada de Page Shield. De esta forma, los clientes podrán activar Script Monitor y empezar a supervisar JavaScript de su sitio.

Protegemos redes corporativas completas, ayudamos a los clientes a desarrollar aplicaciones web de forma eficiente, aceleramos cualquier sitio o aplicación web, prevenimos contra los ataques DDoS, mantenemos a raya a los hackers, y podemos ayudarte en tu recorrido hacia la seguridad Zero Trust.

Visita 1.1.1.1 desde cualquier dispositivo para empezar a usar nuestra aplicación gratuita y beneficiarte de una navegación más rápida y segura.

Para saber más sobre nuestra misión para ayudar a mejorar Internet, empieza aquí. Si estás buscando un nuevo rumbo profesional, consulta nuestras ofertas de empleo.
Page Shield (ES)Device Security (ES)Remote Browser Isolation (ES)EspañolSpeed & Reliability (ES)Product News (ES)Security Week (ES)

Síguenos en X

Cloudflare|@cloudflare

Publicaciones relacionadas