Comment être capable de pénétrer dans une machine Linux via grub2 sécurisé?

47

Comment la capacité d’une personne ayant un accès physique à votre ordinateur d’obtenir la racine avec ces étapes est-elle sécurisée?

  1. Lorsque le menu grub2 s'ouvre, appuyez sur e pour modifier les options de démarrage de Linux
  2. Modifier:

    "linux   /vmlinuz-2.6.35-23-generic root=UUID=e7f1e48d-0015-485f-be7d-836217a31312 ro   quiet splash" 
    

    à:

    "linux   /vmlinuz-2.6.35-23-generic root=UUID=e7f1e48d-0015-485f-be7d-836217a31312 ro init=/bin/bash"
    
  3. Maintenant que vous avez un accès root, faites juste:

    mount -o remount,rw /
    passwd user
    mount -o remount,ro / 
    sync
    
  4. redémarrez l'ordinateur et vous gagnez.

Ma question est la suivante: comment être capable de pénétrer dans une machine Linux via grub2 secure? Je ne comprends pas ce fait sur Linux, merci pour vos réponses.

    
posée Clutchy 26.10.2016 - 18:48
la source

4 réponses

106
  

Comment la capacité d’une personne ayant un accès physique à votre ordinateur d’obtenir la racine [en utilisant Grub / Bash] est-elle sécurisée?

Parce que si Linux décidait de le faire, les pirates ne feraient qu'exploiter d'autres failles de sécurité. La première règle de sécurité est que si je dispose d’un accès physique à votre système, c’est fini. J'ai gagné.

De plus, imaginez que votre serveur X est en panne et que vous n’avez plus d’interface graphique. Vous devez démarrer dans une console de récupération pour corriger les choses, mais vous ne pouvez pas, car cela n’est pas sûr. Dans ce cas, vous vous retrouvez avec un système totalement cassé, mais bon, au moins c'est "sécurisé!"

  

Mais Kaz, comment est-ce possible? J'ai défini un mot de passe sur mon Grub pour que vous ne puissiez pas changer mon init en Bash!

Oh, vous l'avez fait? Intéressant, car cela ressemble à votre album photo. GRUB n'a aucun facteur de sécurité inhérent. C'est juste un bootloader , pas une étape dans une chaîne de démarrage et d’authentification sécurisée. Le "mot de passe" que vous avez configuré est en fait assez facile à contourner.

Cela, et quel sysadmin ne pas un lecteur de démarrage sur eux pour les urgences?

  

Mais comment?! Vous ne connaissez pas mon mot de passe (qui n'est absolument pas [email protected] btw)

Oui, mais cela ne m'empêche pas d'ouvrir votre ordinateur et de sortir votre disque dur. De là, il suffit de quelques étapes simples pour monter votre disque sur mon ordinateur, ce qui me permet d'accéder à l'ensemble de votre système. Cela a également l'avantage de contourner votre mot de passe BIOS. Cela, ou j'aurais juste pu réinitialiser votre CMOS. Soit / ou.

  

Alors ... comment ne pas vous laisser accéder à mes données?

Simple. Gardez votre ordinateur loin de moi. Si je peux le toucher, accéder à un clavier, insérer mes propres lecteurs flash ou les démonter, je peux gagner.

  

Alors, puis-je simplement mettre mon ordinateur dans un centre de données ou quelque chose du genre? Celles-ci sont assez sûres, non?

Ouais, ils sont. Mais, vous oubliez que les humains sont aussi piratables, et avec suffisamment de temps et de préparation, je pourrais probablement entrer dans ce centre de données et siphonner toutes ces données douces et douces de votre ordinateur. Mais je m'égare. Nous traitons ici avec les solutions real .

  

Ok, vous avez appelé mon bluff. Je ne peux pas le mettre dans un centre de données. Puis-je simplement crypter mon dossier personnel ou autre?

Bien sûr, vous pouvez! C'est votre ordinateur! Est-ce que ça va m'arrêter? Pas du tout. Je peux simplement remplacer quelque chose d'important, comme /usr/bin/firefox avec mon propre programme malveillant. La prochaine fois que vous ouvrez Firefox, toutes vos données secrètes sont détournées vers un serveur secret quelque part secret. Et vous ne saurez même pas. Ou, si j'ai souvent accès à votre ordinateur, je peux simplement configurer votre dossier personnel pour qu'il soit copié dans /usr/share/nonsecrets/home/ ou tout autre emplacement similaire (non crypté).

  

Qu'en est-il du chiffrement intégral du disque?

C'est ... vraiment bien. Cependant, ce n'est pas encore parfait! Je peux toujours effectuer une attaque au démarrage à froid en utilisant mon bidon d'air comprimé. Ou, je peux simplement brancher un enregistreur de frappe matériel sur votre ordinateur. L'un est évidemment plus facile que l'autre, mais le chemin n'a pas vraiment d'importance.

Dans la grande majorité des cas , il s’agit d’une bonne étape. Peut-être le coupler avec TPM (discuté ci-dessous), et vous êtes en or. À moins que vous ne mettiez en colère une agence de trois lettres ou un hacker motivé, personne ne passera par l’effort requis au-delà de cette étape.

Bien sûr, je peux toujours vous faire installer des logiciels malveillants / backdoors en vous proposant un PPA ou similaire, mais cela entre dans le domaine très flou de la confiance des utilisateurs.

  

Alors ... comment les iPhones sont-ils si sécurisés? Même avec un accès physique, vous ne pouvez pas faire grand chose.

Eh bien oui et non. Je veux dire, si j'étais suffisamment motivé, je pourrais lire la puce flash et obtenir tout ce dont j'ai besoin. Mais les iPhones sont fondamentalement différents dans la mesure où ils sont une plate-forme totalement verrouillée. Mais, en même temps, vous sacrifiez vraiment la convivialité et la capacité à vous remettre des défaillances catastrophiques. GRUB (sauf s'il est conçu de manière très spécifique) est non censé être une chaîne dans un système de sécurité. En fait, la plupart des systèmes Linux ont leurs chaînes de sécurité qui démarrent après le démarrage, donc après que GRUB a fini de faire son travail.

De plus, les iPhones ont une application de signature cryptographique (également discutée ci-dessous), ce qui la rend très très difficile pour les logiciels malveillants d’accéder à votre téléphone via des chemins légitimes.

  

Mais qu'en est-il de TPM / SmartCards / [insérer le crypto tech ici]?

Eh bien, maintenant vous associez la sécurité physique à l’équation, cela devient encore plus compliqué. Mais ce n’est pas vraiment une solution car les TPM sont relativement faibles et que tout le chiffrement n’a pas lieu sur la puce.Si votre TPM est (en quelque sorte) suffisamment puissant pour le chiffrement sur la puce (certains disques durs très sophistiqués ont quelque chose comme ça), la clé ne sera jamais révélée et des attaques comme le démarrage à froid sont impossibles. Cependant, les clés (ou les données brutes) peuvent toujours être présentes dans le bus système, ce qui signifie qu'elles peuvent être interceptées.

Malgré tout, mon enregistreur de frappe matériel peut toujours obtenir votre mot de passe, et je peux facilement charger des logiciels malveillants sur votre ordinateur à l’exploit de Firefox que j’ai mentionné plus tôt. Tout ce dont j'ai besoin, c'est que vous quittiez votre maison / votre ordinateur pendant une heure.

Maintenant, si vous prenez votre TPM / smartcard / peu importe, et que tout le cryptage est effectivement effectué sur la puce (ce qui signifie que votre clé n’est pas stockée du tout dans la RAM), il m’est pratiquement impossible de rentrez du tout, sauf si vous (l’utilisateur) glissez et oubliez quelque chose. Autrement dit, à moins que je ne trouve un moyen de lire la clé (non chiffrée) à partir du bus système.

  

Mais si j'ai une forme d'application de la signature cryptographique / numérique sur tous mes programmes pour m'assurer qu'ils sont légitimes?

Comme l’ont démontré plusieurs sociétés de smartphones, il s’agit là d’un très bon moyen de gérer la sécurité. Vous avez maintenant annulé ma capacité à injecter du code sur votre machine pour faire des choses infâmes, ce qui est un plus. En fait, vous avez désactivé ma capacité à conserver un accès permanent à votre ordinateur à distance, ce qui est un énorme avantage.

Cependant, ce n'est toujours pas une méthode parfaite! L'application de la signature numérique n'arrêtera pas un keylogger matériel, par exemple. Il doit également être complètement exempt de bogues, ce qui signifie qu'il est impossible de trouver un exploit qui me permette de charger mon propre certificat dans le magasin de certificats de votre machine. En outre, cela signifie que chaque exécutable de votre système doit être signé . À moins que vous ne souhaitiez passer manuellement à travers tout cela, il sera très difficile de trouver des packages Apt et autres ayant des signatures numériques sur tout. Dans le même ordre d’idées, cela bloque les utilisations légitimes des exécutables non signés, à savoir la récupération. Que faire si vous cassez quelque chose d'important et que vous n'avez pas l'exécutable (signé) pour le réparer? Eh bien, votre système fonctionne.

Quoi qu’il en soit, un effort pour y parvenir sous Linux a été pratiquement abandonné et ne fonctionne plus pour les nouveaux noyaux. , vous devez donc créer le vôtre.

  

Il est donc impossible de vous tenir à l’écart de mon ordinateur?

Effectivement, oui, désolé. Si j'ai un accès physique et suffisamment de motivation, il est toujours possible d'entrer dans un système. Aucune exception.

En réalité, cependant, la plupart des personnes mal intentionnées n'essaieront pas d'aller aussi loin pour quelques photos de chats. En règle générale, le chiffrement intégral du disque (ou simplement Linux!) Suffit à dissuader la plupart des scriptés d’avoir deux secondes de gloire.

TL; DR: Ne laissez pas les personnes en qui vous n'avez pas confiance près de votre ordinateur. C'est généralement assez bon.

    
réponse donnée Kaz Wolfe 26.10.2016 - 18:59
la source
17

Si vous le souhaitez, utilisez un mot de passe . À partir du lien:

Remarques sur la protection par mot de passe GRUB 2

  

Grub 2 peut définir les exigences de mot de passe sur:

  • Toutes les menus
  • Menuentries spécifiques
  • Pour des utilisateurs spécifiques: Par exemple, l'utilisateur "Jane" peut accéder à Ubuntu mais pas au mode de récupération Windows, accessible uniquement par "John", le superutilisateur.
  • L'administrateur doit activer la protection par mot de passe manuellement en modifiant les fichiers système GRUB 2.

  • Les utilisateurs et les mots de passe doivent être identifiés dans le fichier de script /etc/grub.d/00_header ou dans un autre fichier GRUB 2.

  • À moins que la protection universelle de tous les menus ne soit souhaitée, les entrées spécifiques doivent être identifiées:

    • Manuellement en éditant les scripts Grub 2 /etc/grub.d/ tels que 10_linux et 30_os-prober
    • Manuellement en éditant un fichier de configuration personnalisé créé par l'utilisateur.

    • L'une des méthodes ci-dessus permet à GRUB 2 d'ajouter automatiquement le mot de passe requis dans le fichier de configuration (grub.cfg) à chaque exécution de update-grub.

    • Manuellement en éditant /boot/grub/grub.cfg . Les modifications apportées à ce fichier seront supprimées lorsque update-grub est exécuté et que la protection par mot de passe sera perdue.

  • Si une protection par mot de passe GRUB 2 est activée, le nom et le mot de passe du superutilisateur sont requis pour accéder à la ligne de commande GRUB 2 et aux modes d'édition de menu.

  • Le nom d'utilisateur et / ou le mot de passe ne doivent pas nécessairement être identiques au nom / mot de passe de connexion à Ubuntu.
  • Sauf si la fonction de chiffrement de mot de passe de GRUB 2 est utilisée, le mot de passe est stocké en texte brut dans un fichier lisible. Reportez-vous à la section Cryptage du mot de passe pour savoir comment utiliser cette fonctionnalité.

Par défaut (!), dans ce cas, la convivialité l'emporte sur la sécurité. Si vous ne pouvez pas faire confiance aux personnes qui vous entourent, gardez toujours la machine avec vous. Les personnes qui ont besoin de plus de sécurité ont tendance à chiffrer tout leur système, ce qui rend obligatoire un mot de passe.

    
réponse donnée Rinzwind 26.10.2016 - 19:03
la source
3

Votre piratage intentionnel commence par ceci:

  1. Lorsque le menu grub2 s'ouvre, appuyez sur "e" pour modifier les options de démarrage Linux

Mais vous pouvez protéger par mot de passe l’option e , comme indiqué ici: Comment ajouter la protection par mot de passe GRUB au processus de chargement du système d'exploitation au lieu de modifier les options d'amorçage

Vous pouvez effectuer une étape supplémentaire en cryptant le mot de passe grub comme indiqué dans le lien. En effet, avec peut-être 3% de la population (devine sauvage) utilisant Linux / Ubuntu à la maison, il est conseillé aux administrateurs système de se protéger contre la fonction e sur les systèmes de production au travail. J'imagine que si Ubuntu est utilisé au travail, 30 à 40% l'utiliseront également à la maison et peut-être que 10% d'entre eux apprendront à faire le e sur leurs systèmes domestiques.

Grâce à votre question, ils viennent d’apprendre davantage. Avec le lien ci-dessus, les administrateurs système ont une autre tâche dans leur liste de tâches à faire pour protéger les environnements de production.

    
réponse donnée WinEunuuchs2Unix 27.10.2016 - 01:54
la source
0

Pour sécuriser grub, vous devez en protéger l'accès. Cela peut être fait simplement avec un mot de passe de disque dur, et je parle ici de la sécurité du disque où il est stocké dans le microprogramme du disque lui-même. Le disque ne peut pas être lu ou écrit. Par conséquent, non seulement grub est inaccessible sans mot de passe, mais vos données le sont aussi.

Le mot de passe étant stocké sur le disque lui-même, son déplacement dans un autre système n’aidera pas le pirate.

Il existe des logiciels permettant de supprimer le mot de passe des disques de certains fabricants, mais il efface également efficacement le disque. Ainsi, vos données sont toujours en sécurité.

    
réponse donnée Scooby-2 02.11.2016 - 05:39
la source

Lire d'autres questions sur les étiquettes