Le swap peut-il être chiffré par utilisateur?


8

Le problème se pose pour un ordinateur multi-utilisateur avec échange crypté, quant à la façon de permettre à chaque utilisateur d'hiberner et de sortir de l'hibernation sans compromettre la sécurité des autres utilisateurs.

Je cherche un moyen de crypter l'utilisation de swap de chaque utilisateur spécifiquement pour eux, de telle sorte que lorsqu'ils veulent sortir de l'hibernation, ils peuvent le faire en entrant uniquement leur mot de passe / phrase secrète. Ils ne devraient pas être en mesure de décrypter l'échange d'autres utilisateurs; tous les processus des utilisateurs doivent être arrêtés jusqu'à ce que l'utilisateur respectif puisse fournir sa phrase secrète pour décrypter leur échange et poursuivre leurs processus.

Les utilisateurs peuvent souhaiter que tout ou partie de leurs processus ne soient pas cryptés afin de pouvoir continuer, quelle que soit la personne qui reprend l'ordinateur.

Tant qu'aucune donnée personnelle n'est stockée dans les processus système et que le système ne permet pas aux clés des utilisateurs d'appuyer sur l'échange, l'échange du système n'a pas besoin d'être chiffré, ce qui signifie que tout utilisateur peut reprendre le système sans compromettre les autres utilisateurs. .

Notez que cela pourrait être complété par le cryptage du système avec une clé stockée dans le firmware du BIOS tel que Coreboot ou LibreBoot pour rendre la falsification très difficile, mais il s'agit d'une approche fondamentalement différente basée sur la difficulté apparente de falsifier le matériel impliqué plutôt que d'une complète approche cryptographique pour empêcher les gens de lire les données personnelles d'autrui en supposant une falsification n'est pas un problème. Pour une sécurité optimale, ces deux mécanismes pourraient être utilisés ensemble, mais dans cette question, je demande l'approche entièrement cryptographique.

En théorie, cela a du sens, mais dans la pratique, il peut ne pas être mis en œuvre. J'espère que cela est possible sous Linux.


1
Ces autres utilisateurs peuvent-ils obtenir un accès root à cet hôte? S'ils ne le peuvent pas, je pense que j'ai raison de dire que le système d'autorisations normal devrait les empêcher de lire les fichiers d'échange d'autres utilisateurs (c'est-à-dire que je pense qu'il est correct que même sur un échange non chiffré, les utilisateurs ne devraient pas être en mesure de lire les autres fichiers d'échange). S'ils peuvent obtenir root, ils pourraient probablement extraire les clés d'une autre partition de swap chiffrée par les utilisateurs de toute façon?
Geeb

Si les utilisateurs ont un accès root à l'ordinateur (et effectivement ils le font s'ils ont un accès direct à tout l'ordinateur, ce qui est impliqué par le fait qu'ils peuvent le suspendre en premier lieu!), Alors aucune quantité de cryptage et de jeu de jambes fantaisiste avec des partitions de swap différentes pour chaque utilisateur protégera réellement les utilisateurs les uns des autres. Utilisez un matériel différent pour chaque utilisateur!
Greg A. Woods

Il pourrait y avoir un moyen de pirater quelque chose comme ça en gardant la session de connexion de chaque utilisateur dans un conteneur LXC, avec leurs propres instances systemd, et en échangeant de l'espace stocké dans des chroots privés, mais je ne peux pas offrir une suggestion concrète sur la façon, précisément , qui serait mis en œuvre.
BRPocock

Réponses:


1

Oui, tout est possible via le logiciel. Il faudrait probablement modifier certaines parties importantes du noyau pour ce faire. Si vous parlez maintenant ... non. En fait, vous ne pouvez pas du tout allouer d'espace d'échange système en fonction d'un utilisateur donné.

Une autre approche consiste à ne pas allouer d'espace de swap sur la partition physique et à découper un gros fichier préalloué pour un volume Truecrypt, à le monter et à créer un fichier swap sous celui-ci. Ensuite, configurez le système pour utiliser ce fichier sous le volume Truecrypt en tant que fichier d'échange. Je ne garantis pas la stabilité ni l'efficacité du traitement d'un tel mouvement cependant, ce serait à vous d'expérimenter. Cependant, ce serait par SYSTÈME et non par utilisateur.


4
Je découragerais l'utilisation de TrueCrypt, il existe des solutions spécifiques à Linux pour le chiffrement par blocs qui devraient être privilégiées (dm-crypt / LUKS et al).
Andreas Wiese
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.