web-dev-qa-db-fra.com

Les rootkits pourraient-ils être efficaces pour les utilisateurs non-root?

Après avoir mal interprété cette question , je me demande si les rootkits et autres programmes malveillants pourraient être efficaces si l'utilisateur ne dispose pas des autorisations root.

Les rootkits trompent généralement les utilisateurs disposant d'autorisations root pour donner à un virus ou à un autre programme malveillant des autorisations root, leur permettant ainsi de faire à peu près n'importe quoi. Si l'un de ces programmes rencontrait un utilisateur non root, pourrait-il être efficace?

4
David

Ce que vous devez savoir

Linux n'est pas à l'abri contre les malwares avancés, tels que les rootkits et les chevaux de Troie, et contre Zero Day .

Sur toute distribution Linux générique, un rootkit peut utiliser l'ingénierie sociale pour dérober le mot de passe root. il peut également utiliser un exploit de mémoire si le système n'est pas à jour et exécuter un script Shell en tant qu'administrateur sans interaction de l'utilisateur ni effet visible.

Sous Ubuntu, où Sudo est souvent installé mais pas correctement configuré, un logiciel malveillant a simplement besoin du mot de passe de l'utilisateur actuel pour exécuter des actions administratives et infecter le système.

Si vous avez setuid exécutables installés et qu'ils utilisent un interpréteur (comme par exemple les anciennes versions de Nmap), ils peuvent être utilisés pour contourner la barrière de compte et exécuter des actions administratives.

Les rootkits modernes essaieront tous les moyens possibles pour obtenir l'accès root et charger un nouveau module du noyau pour obtenir tous les privilèges et masquer les autres infections.

Comment se protéger

Précautions de base

J'ai fait une petite liste de tâches:

  • Jamais ne donnez le mot de passe root à vos utilisateurs dans un système multi-utilisateurs;
  • Jamais insérez le mot de passe root dans des applications non fiables (téléchargées à partir de référentiels non officiels) si cela n'est pas absolument nécessaire;
  • Mettez à jour votre système Ubuntu au moins tous les mois à partir du référentiel officiel et ne laissez que les 2 derniers noyaux mis à jour installés.
  • N'utilisez pas de logiciels instables ou en développement.
  • Utilisez gufw ou un autre wrapper pour configurer le pare-feu et bloquer les ports inutilisés pour IN/OUT: TCP et IN/OUT: UDP.
  • Configurez passwd pour imposer une longueur minimale de mot de passe, car un programme malveillant peut brute-force mots de passe faibles .

Après cela, installez et utilisez tiger pour vérifier les problèmes de sécurité de votre système.

Précautions avancées

Ces précautions vont considérablement améliorer votre sécurité, mais ils nécessitent une maintenance régulière après l'installation du nouveau logiciel et sont pour les utilisateurs avancés :

  • Utilisez SELinux pour protéger les fichiers de configuration sensibles. Sudo à lui seul offre des garanties limitées de sécurité contre les experts en sécurité. Vous devriez consulter la référence officielle avant de l'utiliser, car , il peut limiter les droits d'accès root et vous verrouiller s'il n'est pas configuré correctement . C’est un outil très avancé et puissant, expérimentez sur une machine virtuelle avant de l’utiliser en production.
  • Utilisez Apparmor ( installé par défaut sur Ubuntu), qui fournit une protection en limitant un programme à un ensemble particulier de répertoires et garantit une bonne protection, même aux utilisateurs non spécialistes. Pour commencer, vous devez installer les "profils" d'Apparmor dans certains programmes courants. Vous pouvez les installer comme suit: Sudo apt install apparmor-profiles apparmor-profiles-extra apparmor-utils puis les activer en exécutant Sudo aa-enforce /etc/apparmor.d/*.
  • Firejail est un sandbox facile à utiliser qui réduit le risque d'atteinte à la sécurité en limitant l'environnement d'exécution d'applications non fiables à plusieurs techniques. Vous pouvez l'utiliser pour isoler votre navigateur Web et obtenir une protection supplémentaire contre les exploits en mémoire.

Toutes ces précautions augmenteront la sécurité de leurs zones d’effet respectives mais réduiront les performances de l’ensemble du système si le matériel est ancien. En fait, on les trouve souvent dans les serveurs d'entreprise pour protéger les nœuds de réseau importants (ou publics).

Merci à ser311982 pour les suggestions utiles.


Même si Linux est plus sécurisé que les autres systèmes, cela ne signifie pas qu'il est à l'abri. Mon petit guide n'est pas exhaustif, n'hésitez pas à commenter ci-dessous si vous avez d'autres questions.

4
Lorenzo Ancora

Par définition, un rootkit n'est pas un kit permettant d'obtenir les privilèges root. c'est plutôt un kit pour les conserver une fois qu'ils ont été obtenus. Ainsi, un rootkit dans le sens le plus strict est inutile sans autorisations root.

Bien sûr, dans la vie réelle, les rootkits feront probablement partie d'un paquet global plus malveillant, généralement récupéré et déployé par un compte-gouttes, contenant divers exploits destinés à obtenir les privilèges root. On pourrait appeler familièrement ce paquet dans son ensemble "un rootkit" puisque le rootkit est la charge utile, et bien que ce ne soit pas un moyen techniquement exact de s'y référer, la division de ces poils ne gardera pas votre système en sécurité. :)

Si vous êtes un utilisateur normal, vous ne devriez pas introduire de logiciels malveillants dans le système. Si vous vous enracinez, vous serez complètement impuissant à faire quoi que ce soit à moins d’avoir les privilèges root.

Néanmoins, après avoir étudié assez longuement les logiciels malveillants, mon conseil est que, si vous savez qu'un système a été infecté de quelque manière que ce soit par un logiciel malveillant (quel que soit le niveau d'autorisation), vous devez assumer que tout cela est maintenant malveillant et le tuer par le feu, qui est Par exemple, effacez le disque dur et réinstallez-le en préservant le moins de données possible, et ce, après avoir été scanné à partir d'un système d'exploitation actif à l'aide de plusieurs programmes anti-malware.

Le seul cas non spécialisé dans lequel ce ne serait pas la bonne façon de procéder est de croire que le logiciel malveillant ne fait rien aussi malveillant. Mais pourquoi croiriez-vous que les logiciels malveillants ne sont pas malveillants? Cela ressemble à une stratégie perdante pour moi.

0
Nathan