web-dev-qa-db-fra.com

Pourquoi crypter la partition de swap

J'ai vu sur ce site que de nombreux utilisateurs de Linux chiffrent la partition d'échange. Quels sont les avantages du cryptage swap?

11

Le cryptage de l'espace d'échange sert à protéger les informations sensibles. Considérons une application qui traite les mots de passe. Tant que ces mots de passe restent dans la mémoire physique, ces mots de passe ne sont pas écrits sur le disque et ne sont pas effacés après un redémarrage. Si le système d'exploitation commence à permuter les pages de mémoire afin de libérer de l'espace pour d'autres applications, les mots de passe peuvent être écrits sur les plateaux de disque sans chiffrement. Le chiffrement de l'espace d'échange peut être une solution à ce scénario.

Les partitions d'échange ne sont pas cryptées par défaut et doivent être effacées de toutes les données sensibles avant de continuer.

La partition de swap peut contenir de nombreuses informations confidentielles non chiffrées et le fait qu’elles persistent après l’arrêt de l’ordinateur peut poser problème.

Pour chiffrer SWAP, voir Partition d'échange chiffrée sur Ubunt

Lecture supplémentaire: chiffrement par échange , et buntu - Comment chiffrer une partition d'échange

Source: C. Brüffer

18
Mitch

Ceci est la raison pour laquelle j’ai depuis longtemps convaincu de chiffrer aussi ma partition d’échange.

Essayez les commandes suivantes:
Commencez par trouver votre périphérique de swap, puis déterminez si votre mot de passe utilisateur (ou toute chaîne critique pour vous) est stocké quelque part dans la mémoire de swap:

  $ Sudo swapon --summary  
  Filename                                Type        ...  
  /dev/mapper/vg_ubu476-lv_swap           partition   ...  

   $ Sudo time strings < /dev/mapper/vg_ubu476-lv_swap | grep <any substring of your password>

Si le mot de passe n'est pas trouvé, la commande se termine sans résultat. Cela a pris 40 secondes pour moi, avec mes 4 GiB d’échange.
Essayez cela avec "| more" au lieu de "| grep <...>"; cela montrera si vous avez effacé votre disque depuis le tout début, avant le cryptage, avec random ASCII ou non.

Attention à un problème: Après ces commandes, votre "sous-chaîne de votre mot de passe" restera écrite dans votre historique bash et vous pourrez ressentir le besoin de l’effacer. Avec "sous-chaîne de mot de passe", vous n'avez au moins pas le mot de passe complet ici ... Et: seul le root peut regarder à l'intérieur.

Ma commande strings a examiné la couche déchiffrée du système, qui ne vit que pendant l'exécution du système d'exploitation.

En passant au-dessous, il y a le LVM, puis le conteneur LUKS déchiffré et enfin le périphérique chiffré (une grande partition). Vous pouvez essayer de tous les analyser avec des "chaînes".

Quand j'ai fait cela "chaînes" la première fois, j'ai trouvé beaucoup de mots de passe root, car j'utilisais "su-root" à la place de "Sudo su -". Maintenant, avec Sudo, je n'en trouve pas.

Performance - Croyez-moi: je travaille avec 1,3 téraoctets d'éléments chiffrés (système + grande base de données de photos) sur trois disques SSD sur un Thinkpad W520 sans ressentir de retards. Mais au moins 8 GiB mémoire peut aider quelque peu.

2
prometheos

Je suppose que vous parlez d'un répertoire de base ou d'une installation de chiffrement intégral du disque.

Le swap consiste à allouer de l'espace sur le stockage persistant (parce que c'est moins cher), fournissant ainsi plus de mémoire virtuelle au système d'exploitation. Toutes vos applications s'exécutent dans la mémoire virtuelle contenant toutes les données non chiffrées pour les opérations. Il est fort probable que des parties des données chiffrées sur le disque finissent non chiffrées sur le stockage de swap. De plus, des éléments temporaires en mémoire, tels que des clés de cryptage, pourraient être déplacés de la mémoire physique pour être échangés pendant un certain temps (si le noyau le décide). Avec une clé de cryptage simple, un attaquant est certainement capable de décrypter tout votre disque dur.

En outre, contrairement à la mémoire physique, l’échange n’est pas effacé après la mise hors tension de votre PC.

Notez également que si vous mettez votre système en veille prolongée, toute la mémoire physique sera écrite pour être échangée. Cela fournit une quantité de données encore plus grande pour un attaquant possible.

En résumé, dans le contexte du cryptage des données sur votre machine, c’est une très mauvaise chose pas = crypter le swap si vous gérez des fichiers cryptés, du point de vue de la sécurité. Cela peut même porter atteinte à la sécurité complète que vous essayez d'atteindre.

2
gertvdijk

Pour les mêmes raisons, vous voudriez chiffrer la mémoire principale. Les programmes ont des copies de texte claires de vos informations et elles sont permutées sur disque (partition de swap) par le planificateur de temps en temps. Si l'un d'entre eux était suffisamment motivé et activé, l'échange pourrait être exploité pour ces données personnelles.

Toutefois, l’échange de chiffrement n’a pas d’importance importante si vous n’avez pas chiffré votre disque racine.

le cryptage n'est pas bon marché, attendez-vous à une baisse significative de vos performances.

Les seules personnes que je connais qui "font tout" voyagent beaucoup. Si vous voulez juste bricoler, allez-y.

P.S. avant que quelqu'un ne s'inquiète de ne pas être en mesure de chiffrer la mémoire principale, veuillez visiter http://bluerisc.com/ , même le jeu d'instructions est chiffré.

1
ppetraki