1 puntos por GN⁺ 2023-09-21 | 1 comentarios | Compartir por WhatsApp
  • Mullvad completó la transición de su infraestructura VPN para eliminar por completo cualquier rastro del uso de discos, de modo que los servidores operen únicamente con un despliegue solo en RAM
  • Este trabajo es la continuación del anuncio, a inicios de 2022, de la migración hacia una infraestructura sin disco basada en el cargador de arranque stboot
  • Esta configuración fue auditada en dos ocasiones, en 2022 y 2023, y las futuras auditorías de los servidores VPN se realizarán solo sobre el despliegue solo en RAM
  • Los servidores usan un kernel Linux ligero y personalizado que sigue el desarrollo del kernel mainline para incorporar las funciones y mejoras de rendimiento más recientes y eliminar componentes innecesarios
  • La clave del modelo operativo es asegurar, en cada reinicio o aprovisionamiento inicial, un kernel nuevo, un estado sin rastros de archivos de registro y un sistema operativo completamente parcheado

Transición a una infraestructura VPN sin disco

  • Mullvad anunció que eliminó todos los rastros del uso de discos en su infraestructura VPN
  • La transición se ha llevado a cabo desde que, a inicios de 2022, informó el inicio de la migración hacia una infraestructura sin disco que usa el cargador de arranque stboot
  • La infraestructura VPN con esta configuración fue auditada en dos ocasiones
  • Las futuras auditorías de los servidores VPN se realizarán solo sobre el despliegue solo en RAM

Kernel y configuración del sistema operativo de arranque

  • Todos los servidores VPN siguen usando un kernel Linux personalizado y fuertemente reducido
  • El desarrollo del kernel sigue la rama mainline, adoptando las versiones más recientes para reflejar nuevas funciones y mejoras de rendimiento
  • Se eliminan los componentes innecesarios del kernel para mantener una configuración ligera
  • Antes del despliegue, el sistema operativo de arranque tiene un tamaño de poco más de 200 MB
  • Cuando el servidor se reinicia o se aprovisiona por primera vez, se garantiza el siguiente estado
    • un kernel recién compilado
    • sin rastros de archivos de registro
    • un sistema operativo completamente parcheado

1 comentarios

 
GN⁺ 2023-09-21
Opiniones de Hacker News
  • Realmente genial. Si una empresa de VPN se preocupa por la seguridad y la transparencia, uno espera que actúe como Mullvad.
    Algunas empresas gastan montones de dinero en influencers para que digan que “priorizan la seguridad”, y otras se enfocan en mejorar la seguridad de verdad.
    Por cierto, todo es open source: https://github.com/system-transparency/stboot

    • Un poco aparte de esto, siempre me molesta que las grandes empresas de VPN hablen como si la mayoría de los sitios que visitan los usuarios no usaran HTTPS, y anuncien como beneficio principal que ellas cubren las brechas que HTTPS ya cubre.
      HTTPS no es una solución mágica, pero el marketing del miedo de las grandes empresas de VPN que se anuncian en YouTube hace parecer que, solo por entrar a Amazon desde una cafetería, alguien te va a robar la tarjeta de crédito.
      Tom Scott es el único al que vi hacer un video correcto sobre este tema [0].
      [0] https://www.youtube.com/watch?v=WVDQEoe6ZWY
    • stboot y sus componentes de soporte, junto con la documentación, se trasladaron a un GitLab separado: https://git.glasklar.is/system-transparency/core/stboot
  • No quiero provocar la reacción obvia, pero me resulta interesante que proveedores de VPN con capacidad técnica usen Linux en lugar de BSD, aun teniendo requisitos como operación sin disco, personalización del kernel y seguridad más fuerte.

    • Desde mi punto de vista, el grupo de personas que se pueden contratar y que conocen Linux a fondo es mucho más grande. La ventaja es suficiente como para aceptar los problemas de seguridad percibidos.
      En cuanto a operación sin disco, llegué a operar más de 25,000 despliegues iPXE con un Ubuntu muy personalizado en servidores blade sin disco, y funcionó de maravilla.
      Independientemente de la elección del sistema operativo, operar sin disco es bastante bueno. Si hay un problema de seguridad o se necesita una actualización, basta con reiniciar. Eso sí, reiniciar 25,000 servidores toma bastante tiempo incluso con gigE.
      Crear un sistema de scheduling que manejara eso de forma confiable dio bastante trabajo, pero el resultado fue bastante bueno.
    • ¿Hay algún BSD mejor para este tipo de uso?
  • Me dan curiosidad las VPN que dicen “no registramos ni almacenamos logs”. Puede que realmente sea así, pero también podrían estar enviando un flujo de datos en tiempo real a agencias de seguridad, inteligencia, etc., en lugar de almacenarlo ellas mismas.
    Entonces decir “no registramos logs” sería técnicamente correcto.

    • Inevitablemente puede haber actores maliciosos.
      Pero también hay empresas como OVPN que demostraron ante un tribunal que su política de “sin logs” era real[1].
      [1] https://www.ovpn.com/en/blog/ovpn-wins-court-order
    • Incluso para una empresa honesta, la presión viene por dos frentes. Uno es la seguridad y el otro es la presión legal.
      Los sistemas pueden ser comprometidos mediante vulnerabilidades de seguridad, ingeniería social y coerción que incluya herramientas clásicas de guerra psicológica, como dinero, ideología, puntos débiles y ego.
      O pueden recibir una orden legal del gobierno. Casi todos los gobiernos del mundo tienen leyes y prácticas operativas para obligar a cualquier entidad a entregar datos en nombre de la prevención del lavado de dinero y del terrorismo, es decir, AML/CFT.
      Defenderse con fuerza contra este tipo de ataques es muy caro. No veo un modelo de negocio viable que, con una tarifa de 5 dólares al mes, cubra los costos operativos normales y además la respuesta a estos incidentes.
      Además, también están las puertas traseras integradas en tecnologías básicas que probablemente ya se estén usando. El caso del HSM de Cavium revelado esta semana es un ejemplo.
    • No creo que el Houston Police Department, ni la policía de ninguna ciudad, sea lo bastante sofisticada como para montar una operación al estilo NSA de aspirar datos del backbone de fibra óptica.
      Se dice que la NYPD compró equipos ilegales de interceptación de celulares de un millón de dólares, pero incluso ese suele ser más o menos el límite de lo que alcanzan las fuerzas policiales municipales más grandes de Estados Unidos.
      Para empezar, ¿cómo funcionaría eso? Si no hubiera una orden judicial de silencio, en cuestión de semanas se filtrarían rumores internos.
      El equipamiento relacionado con celulares se mantuvo en secreto porque solo participaba personal del departamento de policía, pero ese esquema no funciona con una empresa de VPN. Ellos no tienen los privilegios indebidos que reciben la CIA o la NSA, y a veces el FBI.
      Cualquier cosa que yo pueda hacer que despierte la curiosidad de las fuerzas del orden está muy por debajo de los intereses de las agencias federales de inteligencia. Claro, quizá tu vida sea más interesante.
    • Los sistemas de interceptación legal han funcionado así desde los años 90.
      Para saber si existen obligaciones de interceptación legal que afecten a las empresas de VPN, habría que revisar la ley de la jurisdicción correspondiente. O quizá Mullvad pueda aclararlo.
      Suecia definitivamente tiene requisitos de interceptación legal para todo equipo de comunicaciones, pero no sé bien cómo aplica a las VPN.
    • Eso parece una interpretación bastante peculiar de lo que significa registrar logs.
      A mi modo de ver, sería que la VPN registra la actividad del cliente y luego la envía a otro lugar para que la almacenen.
  • Siempre tuve una duda sobre las VPN.
    Por ejemplo, si un pedófilo usa Mullvad para descargar imágenes prohibidas, ¿la VPN es responsable?
    Las fuerzas del orden verán que la IP salió de las oficinas de Mullvad, así que ¿no asumirán que ellos lo hicieron? Me pregunto cómo evitan eso.
    Quizá sea una pregunta tonta, pero de verdad me da curiosidad.

    • En realidad, Mullvad ya fue allanada por la policía por un caso similar, y aquí lo explican:
      https://mullvad.net/en/blog/2023/5/2/update-the-swedish-auth...
      “Pero incluso si se hubieran llevado algo, no habrían podido acceder a ninguna información de clientes.”
      “Las leyes nacionales que permiten operar un servicio de VPN centrado en la privacidad en Suecia son las siguientes.”
    • No soy abogado, pero según entiendo normalmente entra en el ámbito de Section 230. Porque se puede aplicar la misma lógica a Comcast, AT&T y otros proveedores que hacen pasar bytes por su infraestructura.
    • Entonces la investigación simplemente pasaría a enviar una orden judicial o citación al servicio de VPN para pedir materiales relacionados, como datos del usuario de esa cuenta y logs.
      Ahí es donde cobran importancia la frase “no guardamos ningún log” y la arquitectura de ejecutarse solo en RAM.
      Aunque la orden permitiera retirar el hardware, al apagarse se pierden todos los datos. Las fuerzas del orden tendrían que llevar un montón de baterías.
    • No lo evitan. Por eso en su momento fueron objeto de un allanamiento policial, y por eso ya no ofrecen port forwarding.
    • Pero supongamos que iniciaste sesión en esa VPN para buscar suéteres infantiles para tu hijo y dejaste la sesión abierta. Mientras tanto, las fuerzas del orden consultan una IP vinculada a actividad anterior, y esa IP ahora te fue asignada a ti.
      Si tienes que explicarle a la policía qué es una VPN y una dirección IP, buena suerte. Ese es mi temor.
  • “Ellos” simplemente podrían rociar nitrógeno líquido sobre el equipo, sacarlo del rack, meter la DRAM en un termo con nitrógeno líquido y llevársela para leer los datos lentamente.
    https://ieeexplore.ieee.org/document/8388826

    • Con los protocolos de cifrado modernos, eso no les daría nada.
      Esa función se llama secreto hacia adelante y protege el tráfico pasado aunque la clave se filtre más adelante.
      WireGuard, que usa Mullvad, lo soporta. Por alguna razón —dejo la especulación al lector— el WPA de Wi‑Fi todavía no.
    • Los procesadores AMD soportan RAM cifrada llamada SME[1].
      La clave está dentro de la CPU y se aleatoriza en cada arranque. Aunque espíes los chips de RAM en funcionamiento o leas una RAM enfriada y perfectamente conservada, no obtienes nada.
      También fue una de las principales razones por las que la Xbox One no fue hackeada.
      En laptops empresariales basadas en AMD y servidores AMD EPYC, se puede activar SME desde la BIOS.
      1. https://www.amd.com/content/dam/amd/en/documents/epyc-busine...
    • La palabra “simplemente” está cargando con mucho peso aquí.
      Para “simplemente” hacer eso, los agentes tendrían que tomar casi por completo el control de la infraestructura del edificio antes de que Mullvad pudiera reaccionar, y eso no es tan fácil como suena.
      Incluso si fuera algo trivial, sigue estando varios niveles por encima en comparación con servicios de VPN competidores.
    • Eso parece muchísimo más trabajo que sacar un SSD y leer los archivos de log, y con mucha más posibilidad de cometer errores.
  • Aun así, eso no bloquea ataques que extraigan datos en tiempo real mediante otros tipos de puertas traseras, como backdoors basados en hardware, inyección de memoria o la cadena de suministro.
    Dijeron que “podemos tener la certeza de que el servidor recibe un kernel recién compilado cuando se reinicia o se aprovisiona por primera vez”, pero me pregunto cada cuánto ocurre ese ciclo.
    ¿A diario, semanalmente o cada hora? Cuanto más largo sea el ciclo, menor será la probabilidad de algunos vectores de ataque.

  • En Norteamérica y Europa, las VPN están legalmente obligadas a conservar durante 1 a 2 años los registros de uso de VPN, es decir, sitios visitados o el correo electrónico de registro.
    La mayoría de las empresas de VPN anuncian que no guardan logs de navegación.
    Entonces estarían violando las leyes europeas y estadounidenses.
    Por eso no sé cómo interpretar una VPN sin disco.

  • Un buen punto que salió en los comentarios: las máquinas virtuales pueden dejar una instantánea del estado completo de la memoria. También hay que tenerlo en cuenta.

  • Si hablamos de “un kernel recién compilado, sin rastros de archivos de log y un SO completamente parcheado”, ¿no se consigue el mismo efecto simplemente usando el disco en modo de solo lectura?

    • Hoy en día los discos no siempre tienen un interruptor de solo lectura. Extraño la muesca física de los disquetes.
      Y también es difícil que un tercero demuestre mediante auditoría que ese interruptor está configurado correctamente.
  • Dijeron que “todos nuestros servidores VPN siguen usando un kernel Linux personalizado y muy reducido, y seguimos la rama mainline del desarrollo del kernel”, pero un servidor personalizado es un punto ciego desde el punto de vista de la seguridad.
    Los servidores comunes se investigan y parchean constantemente, pero no se puede esperar lo mismo de estos servidores.
    Si alguien encuentra un agujero de seguridad, un atacante podría comprarlo y nadie llegaría a saber que el sistema fue comprometido.