Seguridad en Transloadit

Debemos desconfiar de las plataformas que afirman ser 100% seguras, y no verás a Transloadit hacer afirmaciones así. Nuestro compromiso, en cambio, es que la privacidad y la seguridad son nuestra principal prioridad. Compartimos abiertamente lo que hacemos para mantenerte seguro.

Seguridad y cumplimiento normativo

Cumplimiento normativo integrado

Seguridad de nivel empresarial y residencia regional de datos, con controles auditados que puedes entregar directamente a tu equipo de cumplimiento normativo. Resumen de seguridad.

¿Necesitas los detalles? Nuestro informe completo SOC 2 Type II está disponible previa solicitud, una vez que exista un NDA.

Solicitar nuestro informe SOC 2 Type II
GDPR
GDPR
Badge Check Icon
HIPAA
HIPAA
Badge Check Icon
AES-256
AES-256
Badge Check Icon
SOC 2 Type II
SOC 2 Type II
Badge Check Icon
ISO 27001ISO27001
ISO 27001
Badge Check Icon
Seguridad en serio

Lo que hacemos para mantenerte seguro.

Aquí tienes una lista de cosas que hacemos para mantenerte a ti y a tus datos seguros.

Política

  • Badge Check IconContamos con certificaciones GDPR, CCPA, HIPAA, ISO 27001 y SOC 2 Type II, y estas cubren todas las operaciones.
  • Badge Check IconNuestro informe SOC 2 Type II está disponible previa solicitud.
  • Badge Check IconTenemos un canal interno #security donde generamos conciencia y compartimos y debatimos todas las amenazas relevantes más recientes. Revisamos y actualizamos continuamente las políticas aquí.
  • Badge Check IconTodos los compañeros de equipo y consultores que manejan datos sensibles deben firmar un contrato que cubre NDA, 2FA, discos duros cifrados, gestión de actualizaciones y más.
  • Badge Check IconEjecutamos un programa de seguridad y nos sometemos continuamente a pruebas de penetración, tanto por scanners automatizados como por personas.
  • Badge Check IconTodos los proveedores con acceso a información están listados en nuestra página de Privacidad.
  • Badge Check IconTodos los compañeros de equipo pasan por un proceso de verificación, el acceso se concede según la necesidad de conocer y se revoca cuando esa necesidad deja de existir. Lo confirmamos cuando los trabajadores se van.
  • Badge Check IconSomos una empresa abierta y la transparencia es uno de nuestros valores fundamentales. Compartimos vulnerabilidades con el público en nuestro blog y en Twitter, y lo hemos hecho desde 2009. Contactamos por email a los clientes con un DPA dentro de dos días hábiles, siempre que la naturaleza de la vulnerabilidad no implique que al compartirla tan pronto expongamos a más usuarios a un mayor daño.
  • Badge Check IconComo empresa remota, no tenemos una oficina/red interna con zonas desmilitarizadas y hemos adoptado los principios de seguridad BeyondCorp (una implementación de Zero Trust). Whitepapers disponibles aquí. Sí segmentamos distintas partes de nuestra infraestructura y usamos firewalls para restringir el tráfico de entrada y salida de nuestra red en puntos estratégicos, y desplegamos VPCs para aislar el tráfico y crear zonas de red.
  • Badge Check IconTransloadit es una empresa altamente técnica, y todo es código. Esto incluye políticas, configuración e infraestructura (mediante Terraform), lo que nos permite someter cualquier cambio en la empresa a gestión de cambios mediante control de versiones, peer reviews, tests, CICD y rollbacks. La documentación de todos los cambios en la empresa se puede encontrar en Pull Requests y documentos markdown asociados. Las guías de hardening están documentadas como código.
  • Badge Check IconPermitimos que las personas mantengan el tráfico en una sola región incorporándola en sus endpoints, por ejemplo https://api2-eu-west-1.transloadit.com.

Autorización y cifrado

  • Badge Check IconTodos los datos en tránsito se cifran con TLS con calificación A+; las solicitudes no HTTPS a nuestra API y sitio web se fuerzan a cambiar para usar HTTPS.
  • Badge Check IconLos datos sensibles en reposo se cifran con AES-256.
  • Badge Check IconCumplimos con PCI DSS para tarjetas de crédito almacenadas a través de Stripe.
  • Badge Check IconPuedes usar GitHub oAuth para gestionar cuentas y acceso de forma centralizada. SAML está en el roadmap.
  • Badge Check IconHay propietarios de cuenta y colaboradores; los propietarios tienen más privilegios (pueden invitar, cancelar, etc.).
  • Badge Check IconPara operaciones peligrosas o sensibles, nuestro sitio web solicita volver a autenticarte para iniciar una sesión “sudo” que dura 15 minutos.
  • Badge Check IconPara cuentas con contraseñas, aplicamos requisitos mínimos de seguridad.
  • Badge Check IconLas contraseñas se almacenan con hash criptográfico unidireccional mediante bcrypt con salts y peppers.

Hardening y proceso

  • Badge Check IconNuestro servicio se ejecuta en AWS y seguimos sus mejores prácticas de seguridad. Nuestros servidores se ejecutan en Ubuntu. Los administradores usan sudo para elevar privilegios cuando es necesario.
  • Badge Check IconNuestras mejores prácticas facilitan darle a Transloadit la menor cantidad de acceso a tus archivos
  • Badge Check IconNuestro encoding (la parte más riesgosa, ya que ejecutamos comandos en nombre de terceros) se ejecuta en máquinas reducidas que no tienen secretos en ellas; además, utilizamos sandboxing.
  • Badge Check IconImplementamos Rate Limiting a nivel de cuenta, IP y evento de auditoría.
  • Badge Check IconTodas las entradas relevantes de logs de producción se almacenan de forma remota, con detección de patrones y alertas de intención maliciosa, así como crashes inesperados, excepciones y otras condiciones de error.
  • Badge Check IconAplicamos hardening a las imágenes del sistema y desplegamos nuevas automáticamente con cada cambio mediante Packer y CICD; esto aplica a todos los clusters. Los parches de seguridad se despliegan automáticamente. Otras versiones quedan fijadas y requieren opt-in. Tenemos procesos establecidos para desplegar parches de emergencia al instante.
  • Badge Check IconTenemos miles de unit tests, system tests, integration tests y e2e tests que confirman que los cambios sean seguros, correctos y performantes.
  • Badge Check IconUsamos sentencias preparadas y aprovechamos frameworks para escapar y sanear la entrada de los usuarios.
  • Badge Check IconNuestra API implementa Signature Authentication para que sea imposible manipular las solicitudes. También puedes encontrar más información sobre esto en API Security y Securing Your Assembly Instructions.
  • Badge Check IconAnalizamos los archivos entrantes en busca de virus mediante 🤖/file/virusscan.

Uptime y continuidad

  • Badge Check IconNuestra bóveda, que contiene Credentials y Templates, está cifrada y sincronizada con una ubicación externa. Las copias offline de nuestro código y de esta bóveda se mantienen fuera de internet público.
  • Badge Check IconOperamos en 3 regiones aisladas diferentes. La producción activa puede sufrir la caída de dos de tres regiones sin necesidad de intervención manual.
  • Badge Check IconImplementamos monitoreo y (miles de) alertas para la salud del sistema, la salud del producto y abuso (firmas de ataque, eventos de auditoría).
  • Badge Check IconNuestra statuspage está completamente separada de nuestra plataforma de producción, incluso hasta el registrador del dominio, y te informa de cualquier problema que afecte la producción, al igual que la cuenta de Twitter @TLStatus.
¿Encontraste algo?

Divulgación responsable de una vulnerabilidad de seguridad.

En Transloadit, nos importa mucho la seguridad. Sabemos que pueden ocurrir errores, pero siempre buscamos corregirlos y prevenirlos. Por eso apreciamos mucho que nos avises si encuentras un problema de seguridad.

Recompensas

Si el problema es válido —es decir, si creemos que debe corregirse y eres la primera persona en reportarlo— recibirás un lugar en nuestro Salón de la Fama. Para casos graves, entregamos swag a elección de shop.transloadit.com. No ofrecemos recompensas en efectivo.

Salón de la Fama

Incluye en tu reporte cómo quieres que se te dé crédito en el Salón de la Fama. Puedes proporcionar un sitio y un nombre o alias, pero ponemos límites cuando las cosas se vuelven demasiado ruidosas, spammy u ofensivas.

Reglas

Las herramientas automatizadas pueden generar mucho ruido para nuestras herramientas de auditoría, por lo que te pedimos no usarlas.

Ten en cuenta que sí contamos con rate-limiting para fallos de inicio de sesión y muchos otros eventos, pero se activa bastante tarde.

Además, algunas partes de nuestro sitio web son estáticas y están alojadas en S3. No podemos establecer algunos security headers allí sin pasar cada solicitud por Lamda, lo cual decidimos que es una sobrecarga ineficiente, sabiendo que con archivos HTML simples no aplican los vectores de ataque que estos headers buscan reducir.

Reconocimiento a quien corresponde

Salón de la Fama

Los siguientes investigadores de seguridad han identificado y divulgado vulnerabilidades de forma responsable ante nosotros. Aquí se muestran los 3 principales, junto con todas las personas que han contribuido a hacer de Transloadit un lugar más seguro.

Preguntas frecuentes

Preguntas, respondidas.

Si tienes preguntas sobre la seguridad de Transloadit en general, aquí tienes algunas preguntas relacionadas con seguridad y sus respuestas de nuestras FAQ:

¿Son seguros los ID de Assembly?

Transloadit usa UUIDv4 sin guiones para generar estos ID aleatoriamente. Adivinar, o generar un UUID que coincida con uno de los nuestros, sería tan probable como generar una colisión. Esto es tan improbable que no se considera un vector de ataque viable.

Como mantenemos alrededor de cinco millones de Assemblies en almacenamiento activo en cualquier momento dado, las probabilidades de generar una colisión son, ciertamente, cinco millones de veces mayores. Dicho esto, como aplicamos rate limiting de 250 operaciones por minuto, a las máquinas aún les tomaría más tiempo del que la humanidad ha existido en la Tierra generar suficientes UUIDs para tener una probabilidad del 50% de que uno de ellos coincida con un UUID que Transloadit haya generado alguna vez. Consideramos que esto está lejos de ser un vector de ataque viable.

Para los archivos, la ventana se vuelve aún más pequeña, ya que los eliminamos después de 24 horas. Aquí se describen algunas razones por las que elegimos hacer esto.

Más allá de adivinar archivos o URLs de Assembly, por supuesto es preocupante que estas direcciones puedan filtrarse de alguna manera. Consideramos que un ID de Assembly y una URL de archivo son privados. Son un secreto compartido entre Transloadit, nuestro cliente y, según tu integración, el usuario final específico para quien el cliente está proporcionando los archivos y ejecutando la Assembly en tu nombre.

Esta comunicación entre estas partes ocurre mediante HTTPS, para el cual tenemos calificación A+ en SSL Labs en todos los aspectos. Si se usa HTTPS para la integración con Transloadit y con el usuario final en cualquier solicitud involucrada, las URLs de Assemblies y archivos no pueden filtrarse más allá de estas partes de confianza, hasta el punto de convertirse en un vector de ataque viable.

Luego está Transloadit como parte de confianza. Nuestra política es que solo los miembros de confianza de nuestro equipo central tienen acceso a estos archivos con fines de depuración. Recibimos millones de archivos todos los días y para nosotros son solo UUIDs hasta que un cliente nos pide revisar algo más de cerca.

Ejecutamos todos nuestros procesos como usuarios sin privilegios, inyectando secretos, así que si un atacante ha obtenido esos secretos, eso significa que de alguna manera consiguió acceso root a nuestras máquinas. En este caso, cifrar los buckets de archivos no sería suficiente, ya que con las credenciales adquiridas para obtener acceso completo al bucket, casi con certeza el atacante también tendría acceso a nuestras claves de descifrado, como ocurre cuando consideramos que Amazon ha sido hackeado. Por suerte, tanto Amazon como Transloadit ponemos un foco muy alto en mantener nuestros sistemas seguros. Pero es cierto que cualquiera que te dé aquí una garantía de seguridad del 100%, en realidad, no entiende del todo la seguridad, y harías bien en mantenerte alejado.

¿Puedo permitir las IPs de Transloadit en mi firewall?

Nuestra plataforma es altamente volátil en el sentido de que hoy tendremos 1000 servidores online que mañana ya no estarán. Intentar mantener tus firewalls actualizados a este ritmo es buscar conexiones caídas.

No canalizamos las conexiones salientes (por ejemplo, /sftp/store, Notifications o /http/import) a través de un solo punto por razones de rendimiento y SPOF. Usar una flota de proxies que escalen junto con la carga nos devuelve al mismo problema, y usar NAT tiene limitaciones prohibitivas en términos de rendimiento. La compensación de nuestra decisión de priorizar la máxima fiabilidad y throughput es que nuestras IPs salientes cambian rápidamente.

¿Cómo se protegen mis credenciales de Amazon S3?

Si quieres que almacenemos archivos en tu bucket de S3, se recomienda guardar las credenciales en un Template de tu cuenta. Mantenemos este Template cifrado en nuestra base de datos.

Las claves necesarias para descifrarlas son inyectadas en la memoria del proceso por otro usuario del sistema. Esto significa que, si alguien pudiera explotar el usuario bajo el cual ejecutamos nuestros procesos de API o sitio web, aun así no podría acceder a las claves. Si intentara cambiar nuestro código para mostrar o enviar las credenciales, tendría que reiniciar el servicio (no permitido para ese usuario) y acceder a los archivos de claves (también no permitido).

Si nuestros servidores obtienen acceso root por parte de un atacante, la historia es diferente. Por eso usamos firewalls, claves SSH protegidas y limitamos nuestro sudo, pero como cualquier experto te dirá, la seguridad al 100% es un mito y es mejor prepararse para lo peor.

Por eso recomendamos crear políticas IAM que solo tengan permisos Put y List sobre tus buckets (para una lista precisa y actualizada de los permisos requeridos, consulta la documentación de S3 Store), y permitir que Transloadit las use solo para escritura. Así, si tus credenciales alguna vez fueran robadas y los criminales lograran descifrarlas también, aun así solo podrían agregar más archivos a este bucket en particular, hasta que lo notemos e intervengamos.

Si bien, como dijimos, la seguridad al 100% es un mito, nuestra filosofía de seguridad es hacer que sea lo más difícil posible para cualquiera obtener acceso a tus credenciales y a las claves necesarias para descifrarlas y, si logran adquirirlas, hacer que sean lo más inútiles posible.

MD5 no es un algoritmo de hashing seguro, ¿por qué lo usan?

Primero que nada, para la autenticación de firmas y todo lo demás que necesita ser seguro, no usamos MD5. Proporcionamos hashes MD5 para archivos como una forma de detectar duplicados de fuentes confiables, así como para otros fines en los que no hay un caso de uso que recompense el vector de ataque de calcular hashes con colisiones.

Como MD5 es más rápido de calcular y aún más ampliamente disponible que, por ejemplo, SHA1, se hizo una concesión deliberada al proporcionar hashes MD5 para los resultados de encoding. No hace falta decir que, dado que MD5 no es seguro, no deberías usar estos hashes como componentes para nada que sea sensible a la seguridad en tu aplicación.

Prueba Transloadit

Seguridad sobre la que puedes construir

Empieza a crear workflows de archivos sobre una infraestructura auditada, cifrada y compatible desde el inicio.
Pain Point Icon
Demuestra el cumplimiento ante auditores
Badge Check Icon
SOC 2 Type II, ISO 27001, GDPR y HIPAA
Pain Point Icon
Protección de datos en tránsito
Badge Check Icon
TLS con calificación A+
Pain Point Icon
Protección de datos en reposo
Badge Check Icon
Cifrado AES-256
Pain Point Icon
Mantener los datos en la región
Badge Check Icon
Residencia regional de datos
GDPR Icon
HIPAA Icon
AES-256 Icon
AICPA / SOC icon
No necesitas tarjeta de crédito · 5 GB incluidos en el plan gratuito