capability-based-security

6 posts

Tus dependencias pueden leer tus variables de entorno. JavaScript se lo permite.

La autoridad ambiental significa que cualquier código en tu proceso de Node.js puede tocar el sistema de archivos, la red y el entorno. Así es como puedes eliminarla con lockdown, compartments y el paso explícito de capabilities.

Una sola dependencia transitiva comprometida puede exfiltrar tu , escribir en tu sistema de archivos y abrir conexiones salientes. No necesita una…

La proximidad de red no es identidad: cómo los servicios se autentican sin autoridad ambiental

La mayoría de la confianza entre servicios viene de la ubicación en la red, no de la prueba criptográfica. Aquí explicamos cómo las capabilities, mTLS y SPIFFE permiten que los servicios se autentiquen sin autoridad ambiental, y por qué es más difícil de lo que debería.

Tus microservicios comparten una VPC, así que se confían entre sí. Esa confianza es autoridad ambiental: el permiso para invocar un servicio se otorga no por…

Tus dependencias pueden leer cualquier archivo en disco. cap-std las obliga a pedir permiso.

La biblioteca estándar de Rust otorga autoridad de sistema de archivos ambiental a cada dependencia. cap-std la reemplaza con APIs basadas en capabilities que obligan al código a demostrar que tiene derecho a acceder a una ruta antes de abrirla.

Cualquier crate en tu árbol de dependencias puede abrir , escribir en tu directorio , o enumerar cada archivo en tu proyecto. La biblioteca estándar de Rust no…

Tu Servicio Es un Cómplice Inconsciente: Cómo Funcionan los Ataques de Confused Deputy

Un ataque de confused deputy engaña a un servicio privilegiado para que use su autoridad contra sí mismo. Así es como los atacantes explotan la confianza implícita, y por qué la seguridad basada en capabilities es la solución.

Tu servicio tiene una API key para tu almacenamiento en la nube. Un usuario envía una petición. Tu servicio escribe un archivo obedientemente. El archivo…

¿Y si cada función tuviera que recibir permiso en lugar de asumirlo?

La mayoría del código se ejecuta con autoridad ambiental: cada función puede tocar todo. La seguridad basada en capacidades invierte ese modelo al obligar a las funciones a recibir permisos explícitos y delimitados.

Tu función tiene acceso a la base de datos, la pasarela de pagos y el registry de auditoría porque resulta que vive en el mismo proceso. Si un atacante…