Permisos de proveedores
Controla lo que los scripts de cada proveedor pueden hacer en tu sitio. Aprende que cubre cada permiso y que previene bloquearlo.
La vista Dependencies (dependencias) en el dashboard de cside muestra cada proveedor y dominio que entrega scripts a tu sitio. Abre un proveedor para ver su cuadricula de permisos: un conjunto de controles Allow (permitir) y Block (bloquear) que determinan lo que los scripts de ese proveedor pueden hacer en los navegadores de tus usuarios.
Esta pagina explica cada permiso, que cubre y que previene bloquearlo.
Como funcionan los permisos
Cada permiso tiene tres estados:
- Allow (marca verde): los scripts del proveedor pueden usar esta capacidad.
- Block (escudo rojo): cside impide que los scripts del proveedor usen esta capacidad.
- Unset (por defecto): el proveedor mantiene su comportamiento normal y cside sigue monitoreando lo que hace.
Los permisos se aplican por proveedor, para todo tu equipo. Cuando un script no coincide con un proveedor conocido, puedes establecer los mismos permisos en su dominio.
Cuando bloqueas un permiso, cside aplica tu decision en el navegador. Los intentos bloqueados se siguen registrando, asi que puedes ver lo que un proveedor intento hacer despues de restringirlo.
Piensa en los permisos como minimo privilegio para terceros: cada proveedor solo obtiene las capacidades que necesita para hacer su trabajo.
Recursos
Estos permisos controlan lo que los scripts de un proveedor pueden cargar, incrustar o ejecutar en tus paginas.
| Permiso | Que cubre | Que previene bloquearlo |
|---|---|---|
| Create and execute dynamic scripts | Cargar codigo adicional en tiempo de ejecucion con etiquetas script | Impide que el proveedor cargue codigo nuevo y no revisado despues de que la pagina carga. Asi es como un proveedor comprometido tipicamente escala un ataque. |
| Network Requests | Hacer solicitudes de red fetch y XHR | Impide que el proveedor envie datos fuera del navegador hacia sus propios servidores. Este es el canal principal para la exfiltracion de datos. |
| Frames | Incrustar iframes y frames | Impide superposiciones de iframes ocultos, avisos falsos de inicio de sesion e inyeccion de UI estilo clickjacking. |
| Objects | Incrustar plugins y objetos | Impide contenido de plugins heredados (etiquetas <object> y <embed>), una via de inyeccion antigua pero todavia abusada. |
| Workers | Ejecutar web workers y service workers | Impide scripts en segundo plano que se ejecutan fuera de vista, interceptan solicitudes o siguen trabajando despues de que el usuario abandona la pagina. |
| Media | Cargar contenido de audio y video | Impide cargas de audio o video no deseadas, incluyendo medios usados para rastreo o fraude publicitario. |
| Stylesheets | Cargar hojas de estilo externas | Impide la inyeccion de estilos que puede ocultar elementos de la pagina, superponer UI falsa o filtrar datos escritos a traves de selectores CSS. |
| Prefetch | Precargar recursos | Impide la carga especulativa de recursos del proveedor, que puede filtrar senales de navegacion antes de que un usuario interactue. |
| Manifest | Cargar manifests de aplicaciones web | Impide que el proveedor suministre un manifest que cambie como tu sitio se instala o se comporta como aplicacion. |
| Images | Cargar imagenes externas | Impide cargas de imagenes, incluyendo pixeles de rastreo: imagenes diminutas usadas para enviar datos hacia afuera. |
| Fonts | Cargar fuentes externas | Impide cargas de fuentes desde el proveedor, un canal silencioso para rastreo y fingerprinting. |
APIs sensibles
Estos permisos controlan el acceso al hardware del dispositivo a traves del navegador.
| Permiso | Que cubre | Que previene bloquearlo |
|---|---|---|
| Camera | Acceso a la camara del dispositivo | Impide que los scripts soliciten acceso a la camara, asi los usuarios nunca ven un aviso que podrian aceptar por error. |
| Screen Capture | Capturar el contenido de la pantalla o de una ventana | Impide que los scripts soliciten grabacion de pantalla, que puede exponer cualquier cosa visible en la pantalla del usuario. |
| Geolocation | Acceso a la ubicacion del dispositivo | Impide que los scripts soliciten la ubicacion fisica de tus usuarios. |
| Microphone | Acceso al microfono del dispositivo | Impide que los scripts soliciten acceso al microfono y graben audio. |
Almacenamiento
Estos permisos controlan el acceso a los datos almacenados en el navegador.
| Permiso | Que cubre | Que previene bloquearlo |
|---|---|---|
| Cookies | Leer o escribir cookies | Impide que el proveedor lea identificadores de sesion o tokens, y que coloque sus propias cookies de rastreo. |
| Local Storage | Leer o escribir localStorage | Impide el acceso a datos persistentes, que a menudo incluyen identificadores de usuario e informacion personal en cache. |
| Session Storage | Leer o escribir sessionStorage | Impide el acceso a los datos de sesion por pestana, como el estado de una compra en curso. |
| IndexedDB | Acceso a bases de datos IndexedDB | Impide el acceso a bases de datos estructuradas del navegador, donde las aplicaciones a menudo almacenan en cache conjuntos mas grandes de datos de usuario. |
Eventos
Estos permisos controlan si un proveedor puede observar como los usuarios interactuan con tus paginas.
| Permiso | Que cubre | Que previene bloquearlo |
|---|---|---|
| Click Events | Escuchar eventos de clic | Impide el rastreo de clics en tus paginas, incluyendo la captura de lo que los usuarios tocan y seleccionan. |
| Keyboard Events | Escuchar eventos de teclado | Impide el registro de teclas (keylogging). Un script que escucha las pulsaciones de teclas puede capturar todo lo que un usuario escribe, incluyendo credenciales y numeros de tarjeta. |
Permisos de formularios
Estos permisos controlan que campos de formulario pueden leer los scripts de un proveedor. Son centrales para prevenir el robo de datos de formularios, incluyendo el skimming estilo Magecart, y respaldan los requisitos 6.4.3 y 11.6.1 de PCI DSS 4.0.1 para paginas de pago.
| Permiso | Que cubre | Que previene bloquearlo |
|---|---|---|
| Form Access | Acceso a elementos y datos de formularios | El permiso general de formularios. Bloquearlo impide que el proveedor lea campos de formulario no cubiertos por uno de los permisos mas especificos a continuacion. |
| Email Fields | Campos de entrada de correo electronico | Impide la recoleccion de las direcciones de correo que escriben tus usuarios. |
| File Uploads | Campos de entrada de archivos | Impide el acceso a los archivos que los usuarios adjuntan, como documentos de identidad o estados de cuenta. |
| Password Fields | Campos de entrada de contrasena | Impide el robo de credenciales desde formularios de inicio de sesion y registro. |
| Hidden Fields | Campos de formulario ocultos | Impide la lectura de inputs ocultos, que a menudo contienen tokens de sesion, tokens CSRF o IDs internos. |
| Address Fields | Campos de entrada de direccion | Impide la recoleccion de direcciones de domicilio y de envio. |
| Search Fields | Campos de entrada de busqueda | Impide la captura de lo que los usuarios buscan en tu sitio. |
| Phone Fields | Campos de entrada de telefono | Impide la recoleccion de numeros de telefono. |
| URL Fields | Campos de entrada de URL | Impide la lectura de las URLs que los usuarios ingresan en formularios. |
| Name Fields | Campos de entrada de nombre | Impide la recoleccion de nombres personales. |
| One-Time Login | Campos de inicio de sesion de un solo uso | Impide el robo de codigos de un solo uso, que los atacantes usan para evadir la MFA. |
| Birthday Fields | Campos de fecha de nacimiento | Impide la recoleccion de fechas de nacimiento, un dato clave para el robo de identidad. |
| Sex/Gender Fields | Campos de entrada de sexo y genero | Impide la recoleccion de datos demograficos sensibles. |
| Credit Card Fields | Campos de entrada de tarjeta de credito | Impide el skimming de tarjetas: scripts que leen los numeros de tarjeta mientras los usuarios los escriben al pagar. |
Otros
| Permiso | Que cubre | Que previene bloquearlo |
|---|---|---|
| Notifications | Enviar notificaciones push | Impide los avisos de notificaciones y el spam push del proveedor. |
| Full Screen | Solicitar el modo de pantalla completa | Impide tomas de control en pantalla completa usadas para imitar la UI del navegador en superposiciones de phishing. |
| Payment API | Acceso a la Payment Request API | Impide que el proveedor invoque la interfaz de pago del navegador o sondee las capacidades de pago. |
| History API | Manipular el historial del navegador | Impide la manipulacion de URLs que puede disfrazar la pagina en la que realmente esta un usuario o atrapar el boton de retroceso. |
| Clipboard | Leer o escribir en el portapapeles | Impide que los scripts lean lo que los usuarios copiaron en otro lugar, como contrasenas o direcciones de wallets, y el secuestro del portapapeles, como cambiar una direccion de pago copiada por la de un atacante. |
Como elegir que bloquear
No necesitas tomar 40 decisiones por proveedor el primer dia. Un enfoque practico:
- Empieza con las capacidades que el proveedor no tiene razon de usar. La mayoria de los proveedores nunca requieren eventos de teclado, campos de contrasena, campos de tarjeta de credito o el portapapeles. Bloquearlos rara vez afecta la funcionalidad.
- Revisa el comportamiento registrado del proveedor. La vista Dependencies muestra lo que cada proveedor realmente hace en tu sitio. Si un proveedor nunca ha usado una capacidad, bloquearla conlleva poco riesgo.
- Restringe las paginas donde estan los datos. En los flujos de pago e inicio de sesion, prioriza los permisos de formularios y Keyboard Events.
- Observa los reportes despues de bloquear. Los intentos bloqueados se siguen registrando. Un proveedor que intenta repetidamente algo que bloqueaste merece ser investigado.
Si todavia no ves Dependencies en tu dashboard, se esta implementando gradualmente. Contacta a support@cside.dev para habilitarlo para tu equipo.
Paginas relacionadas
- Deteccion de amenazas: como cside identifica scripts maliciosos automaticamente
- Deteccion de vulnerabilidades: como cside marca scripts con vulnerabilidades conocidas
- PCI DSS / PCI Shield: requisitos de scripts para paginas de pago
- Registros de auditoria: rastrea los cambios de configuracion hechos por tu equipo
Thanks for your feedback!