Skip to main content
Blog
Blog

El Riesgo de la Cadena de Suministro No Termina en NPM

Al solo verificar NPM (u otro registro), no estás protegido contra ataques a través de scripts de terceros.

May 30, 2024 4 min read
Ilustración de que la seguridad del lado del cliente no es solo npm
Tabla de Contenidos

Resumen: los scripts de terceros que obtiene el navegador quedan fuera de la cobertura del escaneo de registros

  • Verde no es fin: Todo el mundo trata un escaneo verde de Socket como si la cadena de suministro estuviera resuelta, pero los ataques a la cadena de suministro en EE. UU. aumentaron un 115% entre 2022 y 2023 y el 95% de los scripts que obtiene el navegador no tiene protección frente al secuestro de DNS, así que el registro es solo una capa entre muchas.
  • Comprobación de código completo: cside comprueba el código completo de cada fuente de terceros el 100% de las veces antes de que se renderice en el navegador del usuario, monitoriza más de 60 atributos con IA y tiene en cuenta el contexto histórico, algo que un escáner de registro no puede hacer una vez que el código se entrega dinámicamente a sesiones de producción.
  • El tramo sin vigilar: Socket se encarga del paso de instalación, el WAF de Cloudflare se encarga del tráfico entrante, y Hadrian y Cycognito se encargan de la superficie externa, así que la decisión no es cuál de ellos mantener, sino si el tramo de ejecución en el navegador entre la instalación y el tráfico entrante se monitoriza igual o se deja a la confianza.

¿Poco tiempo? Consulta el bloqueo de Magecart y skimmers en el navegador de cside. Cubre todo lo de abajo en un solo despliegue.

Los ataques a la cadena de suministro son hoy un problema prioritario. El número de estos ataques en EE. UU. aumentó un 115% entre 2022 y 2023, según Statista. Herramientas como Socket y Coana detectan código dañino en registros como NPM. Pero el riesgo de la cadena de suministro no termina ahí.

Diagrama de los riesgos de seguridad del lado del cliente por contenido de terceros inyectado dinámicamente

Algunas herramientas son scripts de terceros que obtiene el navegador del usuario. Al solo verificar NPM (u otro registro), no estás protegido contra ataques a través de estos scripts.

Estos scripts, usados para el seguimiento de marketing, anuncios, captchas y mucho más, se implementan con frecuencia en sitios enteros por conveniencia. Estos scripts son potentes y pueden hacer cosas como reescribir código, redirigir a los usuarios, exfiltrar datos e incluso minar criptomonedas en tu navegador.

El método de entrega de estos scripts permite un comportamiento dinámico. Cualquier usuario puede recibir una entrega distinta cada vez, especialmente cuando un script ha sido comprometido.

A medida que más gente adopta mejores enfoques de seguridad de dependencias, los scripts dinámicos que obtiene el navegador se convierten en un vector de ataque cada vez más interesante y relevante. Esto hace que verificar solo las fuentes sea un juego arriesgado. El mejor enfoque es verificar el código completo cada vez que se entrega, que es justo lo que hace cside.

Además, muchos de estos scripts no están mantenidos por empresas centradas en tecnología. Las herramientas pueden quedar abandonadas a medida que las empresas desaparecen o son adquiridas, dejándolas expuestas a secuestros. Ni siquiera los servicios de buena reputación y muy utilizados están libres de fallos, como demuestran los problemas de cdnjs en 2021 o esta persona que compró un dominio caducado de policía y servicios sociales en Bélgica y así consiguió acceso a información privada.

Por último, el 95% de estos scripts carece de protección frente al secuestro de DNS. Incluso la red en la que estás puede afectar al script que recibes.

Qué hacer al respecto

Esto es lo que recomendamos:

Usa una herramienta como Socket (o alternativas) para el riesgo de cadena de suministro en el registro y usa cside para monitorizar el comportamiento de los scripts de terceros del lado del navegador. Comprobamos el código completo de las fuentes de terceros, el 100% de las veces, antes de que se entregue al navegador de tu usuario. Asegurando por completo este lado de la cadena de suministro.

Por último, debes proteger tu infraestructura frente a ataques entrantes. Para eso usa algo como el Web Application Firewall de Cloudflare.

Cosas más específicas, como las subidas de formularios y la detección de bots, pueden requerir herramientas especializadas.

Usa herramientas de monitorización proactiva como Hadrian o Cycognito para vigilar la superficie de amenazas.

Diagrama que muestra las capas de riesgo de la cadena de suministro más allá de los paquetes de npm

Simon Wijckmans
Founder & CEO

Founder and CEO of cside. Previously a product manager on Cloudflare Page Shield (now Cloudflare Client-Side Security). Co-chair of the W3C Anti-Fraud Community Group and a Forbes 30 Under 30 honoree. Building accessible security against client-side attacks, web security is not an enterprise-only problem.

FAQ

Frequently Asked Questions

Las dependencias en tiempo de compilación son una fuente de riesgo, pero los scripts de terceros en tiempo de ejecución, las CDN y el contenido cargado dinámicamente también se ejecutan en el navegador. A un atacante le basta con comprometer una de esas capas para llegar a tus usuarios.

Cubre CDN, gestores de etiquetas, herramientas de A/B testing, analítica, SDK de pago y cualquier script que cargue otros scripts. La monitorización del lado del cliente, como cside, vigila cada uno de ellos en tiempo de ejecución, en lugar de solo en el paso de instalación.

Monitoriza y protege tus scripts de terceros

Gain full visibility and control over every script delivered to your users to enhance site security and performance.

Empieza gratis o prueba Business con una versión de prueba de 14 días.

Interfaz del panel de cside que muestra la monitorización de scripts y el análisis de seguridad
Related Articles
Reservar una demo

¿Quieres verlo en detalle con un ingeniero?

Treinta minutos, sobre tu propio sitio. Nada de diapositivas.

Te enseñaremos:

Qué scripts de terceros se están ejecutando ahora mismo en tu sitio
En qué punto estás con los requisitos 6.4.3 y 11.6.1 de PCI DSS
Qué parte de tu tráfico son bots y agentes de IA

¿Prefieres mandarnos una pregunta?

Buscando huecos libres…

Solo humanos de verdad. Nos daríamos cuenta.

¿Problemas para reservar? Abrir el calendario en una pestaña nueva

¿Qué quieres resolver?

Cuéntanoslo en una línea y te responderemos con algo útil, no con un discurso genérico.

Solemos ayudar con:

Ver qué scripts de terceros se ejecutan en tu sitio
Evidencias para PCI DSS 6.4.3 y 11.6.1
Bots, agentes de IA y robo de cuentas

¿Prefieres reservar una hora? Elegir un hueco