1 points par GN⁺ 2023-09-21 | 1 commentaires | Partager sur WhatsApp
  • Mullvad a supprimé toute trace d’utilisation de disque de son infrastructure VPN, afin que ses serveurs fonctionnent exclusivement selon un mode de déploiement uniquement en RAM
  • Cette opération fait suite à l’annonce, début 2022, d’une migration vers une infrastructure sans disque basée sur le chargeur de démarrage stboot
  • Cette configuration a fait l’objet de deux audits, en 2022 et 2023, et les futurs audits des serveurs VPN porteront uniquement sur les déploiements en RAM
  • Les serveurs utilisent un noyau Linux personnalisé et allégé, suivant le développement du noyau mainline afin d’intégrer les dernières fonctionnalités et améliorations de performance, tout en supprimant les éléments inutiles
  • Le principe clé de ce mode d’exploitation est de garantir, à chaque redémarrage ou provisionnement initial, un nouveau noyau, l’absence de traces de fichiers journaux et un OS entièrement corrigé

Transition vers une infrastructure VPN sans disque

  • Mullvad a annoncé avoir supprimé toutes les traces d’utilisation de disque de son infrastructure VPN
  • Après avoir annoncé, début 2022, le début de la migration vers une infrastructure sans disque utilisant le chargeur de démarrage stboot, l’entreprise a poursuivi cette transition
  • L’infrastructure VPN dans cette configuration a fait l’objet de deux audits
  • Les futurs audits des serveurs VPN porteront uniquement sur les déploiements en RAM

Noyau et configuration de l’OS de démarrage

  • Tous les serveurs VPN continuent d’utiliser un noyau Linux personnalisé et fortement réduit
  • Le développement du noyau suit la branche mainline, en intégrant les dernières versions afin de bénéficier des nouvelles fonctionnalités et des améliorations de performance
  • Les éléments inutiles du noyau sont supprimés afin de conserver une configuration légère
  • Avant déploiement, la taille de l’OS de démarrage est d’un peu plus de 200 Mo
  • Lorsqu’un serveur redémarre ou est provisionné pour la première fois, l’état suivant est garanti
    • Un noyau nouvellement compilé
    • Aucune trace de fichiers journaux
    • Un OS entièrement corrigé

1 commentaires

 
GN⁺ 2023-09-21
Avis de Hacker News
  • Vraiment impressionnant. Sécurité et transparence : c’est ce qu’on attendrait d’un fournisseur de VPN qui s’en soucie, en agissant comme Mullvad
    Certains dépensent des fortunes auprès d’influenceurs pour leur faire dire qu’ils « prennent la sécurité au sérieux », d’autres se concentrent vraiment sur l’amélioration de la sécurité
    Pour info, tout est open source : https://github.com/system-transparency/stboot

    • À côté de ça, ce qui m’a toujours agacé, c’est la façon dont les grands fournisseurs de VPN parlent comme si la plupart des sites visités n’étaient pas en HTTPS, et présentent comme leur principal avantage le fait de combler une faille que HTTPS comble déjà
      HTTPS n’est pas une solution miracle, mais le marketing de la peur des grandes sociétés de VPN qui font de la pub sur YouTube donne l’impression que quelqu’un va voler votre carte bancaire simplement parce que vous vous êtes connecté à Amazon depuis un café
      Tom Scott est le seul que j’aie vu faire une vidéo correcte sur ce sujet [0]
      [0] https://www.youtube.com/watch?v=WVDQEoe6ZWY
    • stboot, ses composants de prise en charge et sa documentation ont été déplacés vers un GitLab séparé : https://git.glasklar.is/system-transparency/core/stboot
  • Sans vouloir provoquer une réaction prévisible, je trouve intéressant que des fournisseurs de VPN techniquement solides utilisent Linux plutôt que BSD, alors même qu’ils ont des exigences comme une exploitation sans disque, des personnalisations du noyau et une sécurité renforcée

    • De mon point de vue, le vivier de personnes qu’on peut recruter et qui connaissent Linux sur le bout des doigts est beaucoup plus large. L’avantage est suffisant pour accepter les problèmes de sécurité perçus
      Côté sans disque, j’ai déjà exploité plus de 25 000 déploiements iPXE avec un Ubuntu fortement personnalisé sur des serveurs blade sans disque, et ça fonctionnait remarquablement bien
      Indépendamment du choix de l’OS, le sans-disque est plutôt pratique. En cas de problème de sécurité ou de besoin de mise à jour, il suffit de redémarrer. Cela dit, redémarrer 25 000 serveurs prend pas mal de temps, même en gigE
      Construire un système de planification capable de gérer ça de façon fiable a demandé beaucoup de travail, mais le résultat était plutôt bon
    • Y a-t-il un BSD meilleur pour ce type d’usage ?
  • Je me pose des questions sur les VPN qui disent « ne pas conserver ni stocker de logs ». C’est peut-être vrai en pratique, mais ils pourraient aussi envoyer un flux de données en temps réel aux forces de l’ordre, aux services de renseignement, etc., au lieu de le stocker eux-mêmes
    Dans ce cas, dire « nous ne conservons pas de logs » serait techniquement exact

    • Il y aura forcément de mauvais acteurs
      Mais il existe aussi des sociétés comme OVPN qui ont prouvé devant un tribunal que leur politique « no logs » était réelle[1]
      [1] https://www.ovpn.com/en/blog/ovpn-wins-court-order
    • Même pour une entreprise honnête, la pression vient de deux côtés : la sécurité et le juridique
      Un système peut être compromis par des vulnérabilités de sécurité, par l’ingénierie sociale, et par la coercition au moyen des leviers classiques de guerre psychologique : argent, idéologie, faiblesses, ego
      Ou bien il peut faire l’objet d’une injonction légale d’un gouvernement. Presque tous les gouvernements du monde disposent, au nom de la lutte contre le blanchiment et le financement du terrorisme, c’est-à-dire AML/CFT, de lois et de pratiques opérationnelles permettant d’obliger n’importe quel acteur à transmettre des données
      Se défendre solidement contre ce genre d’attaque coûte extrêmement cher. Je ne vois pas vraiment de modèle économique viable qui permette, avec un abonnement à 5 dollars par mois, de couvrir à la fois les frais d’exploitation normaux et la réponse à ce type d’incidents
      À cela s’ajoutent les portes dérobées intégrées aux technologies de base qu’on utilise probablement déjà. Le cas du HSM Cavium révélé cette semaine en est un exemple
    • Je ne vois pas le Houston Police Department, ni la police de n’importe quelle ville, être assez sophistiqués pour monter une opération d’aspiration de données sur backbone fibre optique à la NSA
      Le NYPD aurait certes acheté pour un million de dollars des équipements illégaux d’interception de téléphones portables, mais c’est généralement à peu près la limite de ce que peuvent atteindre les plus grands services municipaux américains de maintien de l’ordre
      Et puis, comment cela fonctionnerait-il au départ ? Sans ordonnance de confidentialité du tribunal, des rumeurs internes fuiteraient en quelques semaines
      Si les équipements liés aux téléphones portables sont restés confidentiels, c’est parce que seuls des employés du commissariat étaient impliqués ; avec un fournisseur de VPN, ce mode opératoire n’est pas possible. Ils n’ont pas non plus les privilèges indus dont bénéficient la CIA ou la NSA, et parfois le FBI
      Parmi les choses que je pourrais faire et qui intéresseraient les forces de l’ordre, aucune n’arrive à la cheville de ce qui intéresse les agences fédérales de renseignement. Bien sûr, votre vie est peut-être plus intéressante
    • Les systèmes d’interception légale fonctionnent ainsi depuis les années 1990
      Pour savoir s’il existe des obligations d’interception légale qui s’appliquent aux fournisseurs de VPN, il faut regarder la loi de la juridiction concernée. Ou Mullvad pourrait peut-être clarifier ce point
      La Suède impose clairement des exigences d’interception légale à tous les équipements de télécommunication, mais je ne sais pas ce qu’il en est pour les VPN
    • C’est une interprétation assez particulière de la journalisation
      À mes yeux, cela revient à ce que le VPN enregistre l’activité des clients, puis l’envoie ailleurs pour qu’elle y soit stockée
  • Je me suis toujours posé une question à propos des VPN.
    Par exemple, si un pédophile utilise Mullvad pour télécharger des images interdites, est-ce le VPN qui en porte la responsabilité ?
    Les forces de l’ordre verront que l’IP vient des bureaux de Mullvad, donc ne vont-elles pas supposer que c’est eux qui l’ont fait ? Je me demande comment ils évitent ça.
    C’est peut-être une question idiote, mais je me la pose vraiment.

    • Mullvad a effectivement déjà fait l’objet d’une perquisition policière dans une affaire similaire, et c’est expliqué ici :
      https://mullvad.net/en/blog/2023/5/2/update-the-swedish-auth...
      « Mais même s’ils avaient emporté quelque chose, ils n’auraient eu accès à aucune information client. »
      « Les lois nationales qui permettent d’exploiter un service VPN axé sur la confidentialité en Suède sont les suivantes. »
    • Je ne suis pas avocat, mais d’après ce que je comprends, cela relève généralement de la Section 230. Parce qu’on peut appliquer le même raisonnement à Comcast, AT&T, etc., qui laissent des octets transiter sur leur infrastructure.
    • L’enquête se contenterait alors d’envoyer un mandat ou une assignation au service VPN pour demander les éléments pertinents, comme les détails de l’utilisateur du compte concerné et les journaux.
      C’est là que l’affirmation « nous ne conservons aucun log » et l’architecture qui fonctionne uniquement en RAM deviennent importantes.
      Même si un mandat autorise l’emport du matériel, toutes les données disparaissent quand l’alimentation est coupée. Les forces de l’ordre devraient venir avec une grosse réserve de batteries.
    • Ils ne l’évitent pas. C’est pour cela qu’ils ont déjà subi une perquisition policière, et qu’ils ont fini par ne plus proposer de redirection de ports.
    • Mais imaginons que vous soyez connecté à ce VPN et que vous cherchiez des pulls pour enfants, avec la session encore ouverte. Pendant ce temps, les forces de l’ordre consultent une IP liée à une activité antérieure, et cette IP vous est maintenant attribuée.
      Bonne chance pour expliquer à la police ce que sont un VPN et une adresse IP. C’est ça qui me fait peur.
  • « Ils » n’ont qu’à asperger l’équipement d’azote liquide, le sortir du rack, puis placer la DRAM dans une bouteille isotherme remplie d’azote liquide pour l’emporter et lire lentement les données.
    https://ieeexplore.ieee.org/document/8388826

    • Avec les protocoles de chiffrement modernes, cela ne permettrait rien d’obtenir.
      Cette propriété s’appelle la confidentialité persistante, et elle protège le trafic passé même si une clé fuit plus tard.
      WireGuard, utilisé par Mullvad, la prend en charge. Pour une raison que je laisse au lecteur le soin de deviner, le WPA du Wi-Fi ne le fait toujours pas.
    • Les processeurs AMD prennent en charge une RAM chiffrée appelée SME[1].
      La clé se trouve à l’intérieur du CPU et est randomisée à chaque démarrage. Espionner des puces RAM en fonctionnement, ou lire de la RAM refroidie parfaitement préservée, ne donnerait rien.
      C’est aussi l’une des grandes raisons pour lesquelles la Xbox One n’a pas été piratée.
      Sur les portables professionnels AMD et les serveurs AMD EPYC, on peut activer SME dans le BIOS.
      1. https://www.amd.com/content/dam/amd/en/documents/epyc-busine...
    • Le mot « juste » porte beaucoup de choses ici.
      Pour « juste » faire ça, les agents devraient prendre un contrôle quasi total de l’infrastructure du bâtiment avant que Mullvad ne réagisse, ce qui est plus facile à dire qu’à faire.
      Même si c’était trivial, cela reste plusieurs crans au-dessus par rapport aux services VPN concurrents.
    • Cela représente beaucoup plus de travail que d’extraire un SSD pour lire des fichiers de logs, et semble aussi bien plus propice aux erreurs.
  • Cela ne protège toutefois pas contre des portes dérobées matérielles, ni contre d’autres types de backdoors comme l’injection mémoire ou la chaîne d’approvisionnement, qui permettraient d’exfiltrer des données en temps réel.
    Ils disent qu’« on peut avoir l’assurance que le serveur reçoit un noyau fraîchement compilé lorsqu’il est redémarré ou provisionné pour la première fois », mais je me demande quelle est la fréquence de ce cycle.
    Tous les jours, toutes les semaines, ou toutes les heures ? Plus le cycle est long, plus la probabilité de certains vecteurs d’attaque diminue.

  • En Amérique du Nord et en Europe, les VPN sont légalement tenus de conserver pendant 1 à 2 ans l’historique d’utilisation du VPN, c’est-à-dire les sites visités ou l’e-mail d’inscription, etc.
    La plupart des sociétés de VPN annoncent ne pas conserver les logs de navigation.
    Elles enfreindraient donc les lois européennes et américaines.
    Du coup, je ne sais pas trop quoi penser des VPN sans disque.

  • Bon point soulevé dans les commentaires : les machines virtuelles peuvent prendre un snapshot de l’état complet de la mémoire. Il faut aussi garder cela à l’esprit.

  • Avec un « noyau fraîchement compilé, aucune trace de fichiers de logs, un OS entièrement patché », est-ce qu’utiliser le disque en mode lecture seule ne produirait pas le même effet ?

    • Les disques n’ont plus toujours un interrupteur de lecture seule aujourd’hui. L’encoche physique des disquettes me manque.
      Et il est difficile pour un tiers de prouver par audit que cet interrupteur a bien été réglé correctement.
  • Ils disent que « tous nos serveurs VPN continuent d’utiliser un noyau Linux personnalisé et fortement réduit, tout en suivant la branche mainline du développement du noyau », mais les serveurs personnalisés constituent un angle mort de sécurité.
    Les serveurs standards sont continuellement étudiés et patchés, mais on ne peut pas attendre la même chose de ce type de serveurs.
    Si quelqu’un trouve une faille de sécurité, un attaquant peut l’acheter, et personne ne saura forcément que le système a été compromis.