La sécurité sous GNU/Linux

Les systèmes d'exploitation GNU/Linux, Unix et « Unix-like » sont en général considérés comme peu ciblés par les virus informatiques. En effet, jusqu'ici, aucun virus opérant sous Linux n'a été répertorié comme étant très répandu, comme c'est parfois le cas avec Microsoft Windows. Ceci est souvent attribué au fait que les virus Linux ne peuvent accéder aux privilèges « root » et à la rapidité des corrections pour la plupart des vulnérabilités de Linux. Un autre facteur est le fait qu'il y a moins d'incitations pour un programmeur à écrire des malwares opérant sous Linux :

  • il est très répandu sur les serveurs (il est utilisé par exemple par Google et Wikipédia) et les superordinateurs, mais ceux-ci sont la plupart du temps gérés par des professionnels formés aux enjeux de la sécurité informatique ;
  • il est encore assez peu répandu sur le marché des ordinateurs personnels, meilleurs vecteurs de propagation des malwares en raison de la fréquente inexpérience de leurs utilisateurs.

Le nombre de programmes malicieux (incluant les virus, Trojans et autres types) sous Linux a augmenté ces dernières années, et plus particulièrement doublé en 2005, passant de 422 à 863 dû a l'augmentation du nombre d'utilisateurs de Linux.

Source : Présentation sous wikipedia

Attention aux virus sur les routeurs

Les virus sont aussi sur vos routeurs et BOX ADSL :

Solution à ce jour :

  1. Réinitialiser le routeur pour le remettre en configuration d'origine
  2. Ou installer un driver libre que vous pourrez mettre à jour et surveiller l'activité : c'est d'ailleurs le seul moyen car vous n'avez pas la possibilité de voir l'activité avec les pilotes par défaut (qui sont comme beaucoup de choses propriétaires pas mis à jour pour la sécurité, ou l'industriel a fermé).

Qu'en est-il pour Ubuntu, pour GNU/Linux ?

  • Il faut savoir que les pirates informatiques cherchent avant tout à nuire au plus grand nombre. Or Windows© représente près de 90% de part du marché sur les ordinateurs de bureau en 2012 (statcounter.com); les pirates s'attaquent donc logiquement en priorité à ce système d'exploitation.
  • Les systèmes basés sur GNU/Linux possèdent une gestion différente des droits sur votre ordinateur. En effet, alors que Windows1) est de base très laxiste sur des paramètres de sécurité (c'est à vous de renforcer), GNU/Linux, lui, est totalement fermé et c'est à vous (à vos risques et périls) de libérer les droits au fur et à mesure. Ainsi vous êtes protégé des manipulations malencontreuses que vous pourriez réaliser par mégarde, mais vous êtes aussi protégé des maliciels.
    Pourquoi ?
    Parce que pour s'installer, un logiciel a besoin de droits d'installation ! Or, si sous Windows©, il a le droit de s'installer (à cause de la politique du système), sous GNU/Linux, il est obligé de « demander l'autorisation à l'administrateur », c'est-à-dire vous. Les virus sous GNU/Linux ne peuvent donc pas, sauf cas exceptionnel, s'installer et agir sur le système à leur guise, vous êtes le seul maître de votre machine.
  • Le paragraphe précédent n'est pas totalement juste, car un programme peut s’exécuter sans forcement avoir les droits administrateurs. Dans ce cas il sera installé dans votre dossier /home/"utilisateur" et ne sera donc que potentiellement dangereux pour ce seul utilisateur. Malgré tout il n'y a que très peu de risques que cela arrive car un binaire téléchargé sur le net devra ou être décompressé ou être « autorisé à s’exécuter » manuellement par l'utilisateur pour pouvoir être finalement lancé.
  • Enfin, les failles de sécurité sous GNU/Linux sont de loin moins nombreuses que sous Windows© 2). En effet, les applications utilisées par GNU/Linux sont des logiciels libres ; chacun est donc libre d'analyser et de modifier le code source même de ce système d'exploitation. Ainsi, en cas de faille ou d'attaque, ce n'est pas une poignée de programmeurs qui retrousse ses manches pour corriger le problème, mais une bonne centaine de bénévoles ! La communauté GNU/Linux reste très réactive à ces failles, donc si vous faites les mises à jour, il est très probable qu'un virus d'hier ne marche déjà plus aujourd'hui !
  • Les virus les plus dangereux utilisent des failles de sécurité automatiquement pour s'exécuter et se déployer sans votre aide. Donc les mises à jour du système sont comme un antivirus empêchant les virus d'infecter votre système en fermant les portes leur permettant d'entrer.
  • Les Virus et Linux sur Serveur. Souvent appelés Rootkits. Un Rootkit n'est pas un Virus à proprement parler, mais un logiciel injecté par un pirate dans un serveur ayant une faille de sécurité permettant d'exécuter du code non sollicité. Un Rootkit permet de sécuriser le chemin permettant à un pirate de faire plus ou moins n'importe quoi avec votre serveur. Pour être infecté par un Rootkit il ne faut pas obligatoirement être un gros serveur, mais il faut attirer l'attention. De plus, il faut qu'on puisse y accéder de l'extérieur, ce qui n'est pas le cas si vous utilisez un Pare-feu et/ou n'avez aucun service réseau actif. Bien entendu, si le but est de faire un serveur accessible de l'extérieur, il faudra ouvrir un port. Dans ce cas, il suffit simplement de n'ouvrir que le ou les ports qui vous intéressent et pas plus, et de suivre les mises à jour de sécurité avec attention. Des Anti Rootkits existent pour vérifier leur présence.
  • Les virus d'application. Ces malwares se glissent soit via les navigateurs (par exemple Firefox), soit via les outils de messagerie (par exemple Thunderbird). Il s’installent en local sous un utilisateur, ou comme des extensions locales des outils d'accès à Internet. Il s'insèrent dans le traitement local du clavier, capturent le flux d'entrée qu'ils transmettent à leur « maître » via des messages de service. Comme l'utilisation des Linux demande souvent de s'identifier, ils capturent ainsi les mots de passe de root ou de l'utilisateur principal, ce qui leur permet de s'introduire plus profondément dans le système. Evidement, ils capturent aussi les codes de cartes bancaires ou des organismes de payement. Généralement, leur présence engendre des perturbations des ascenseurs qui reviennent spontanément à une extrémité, ou des duplications incontrôlées de commandes pour bloquer le système.

La pertinence des antivirus sous GNU/Linux

Cette section se donne pour objectif d'expliquer pourquoi il est généralement peu utile d'installer un antivirus sous un système d'exploitation GNU/Linux, dans le cadre d'une utilisation du type « ordinateur personnel » (dite poste client). Le risque zéro n'existe cependant pas mais les antivirus ne vous aideront pas plus pour autant.

Une erreur commune en matière de sécurité consiste à croire que GNU/Linux étant peu utilisé, il n'intéresse aucun pirate. Il ne faut pas oublier que les distributions basées sur GNU/Linux sont utilisées sur une grande partie des serveurs web, et constituent de facto une cible privilégiée pour de nombreuses attaques. Mais ces attaques ne concernent quasi exclusivement que des parties du système utilisées par les serveurs. Ce sont des services comme des serveurs HTTP, Serveur FTP, SSH, autrement dit quasiment que des services qui ne sont pas installés par défaut sous Ubuntu Desktop. Les seuls virus restants pouvant vous infecter sont très rares et concernent globalement des parties universellement utilisées par les systèmes Linux (comme le noyau).

L'existence d'antivirus dédiés à GNU/Linux amène à s'intéresser aux possibilités d'existence et de propagation des virus sous GNU/Linux. Malgré tout, je me dois de limiter cet impact car ces antivirus contrôlent pour la quasi totalité de leur base de données l'existence de virus Windows sur votre système Linux. Ce qui n'a que peu d'intérêt ! En effet gardez à l'esprit qu'un virus Windows n'affectera quasiment jamais un système Linux. 3)
Le second problème des antivirus sous Linux est que si un nouveau virus est détecté sous Linux, il le sera bien moins rapidement que sous Windows. Linux n'étant pas leur domaine de prédilection ni leur marché numéro 1, il est quasiment certain que le virus ne sera déjà plus efficace quand la mise à jour permettant de s'en débarrasser sortira.
Autant vous dire qu'il n'y a pas beaucoup de place à un Antivirus sur votre système Linux : le seul cas où il peut être intéressant d'avoir un antivirus sous Linux concerne le cas où vous auriez des fichiers à envoyer à des contacts fonctionnant sous Windows et que vous êtes concernés par leur sécurité.
Mais le meilleur antivirus reste tout de même de ne pas faire circuler n'importe quoi. Et je serais d'avis que les utilisateurs de Windows soient outillés contre les virus.
Ce n'est pas à vous de vous occuper de la sécurité des ordinateurs des autres, ou alors il existe des méthodes bien plus productives de s'occuper de leur sécurité (installez-leur Linux ou achetez-leur un Antivirus).
La recherche nous fait progresser sur le sujet de la protection, nos acquis et méthodes servent aux WINDOSIENS (écoute, ROBERT!) sur les bons AV, pare-feu, nettoyeurs…l'usine à gaz du parano. LINUX par sa faible diffusion et sa forte implication est à l'abri, cela évoluera sans doute, les bonnes pratiques doivent donc être gardées.
Car avant de venir à LINUX on s'est frotté au problème sécurité, assez pour en avoir une saine approche, d'abord ne pas baisser la garde!

Les « scripts malicieux »

Ces programmes ne sont pas à proprement parler des virus, puisqu'ils n'ont pas pour objectif de porter atteinte à l'intégrité du système d'exploitation. Ils se « contenteront » d'attaquer les fichiers utilisateurs (vos données personnelles, c'est-à-dire la plupart des fichiers du dossier « /home/[utilisateur] »).

Le système de droits d'accès aux fichiers qui existe sous GNU/Linux rend extrêmement robuste le système (voir aussi, Sécurité), mais la protection des données de l'utilisateur est maigre. Cependant, la situation est toujours meilleure que sous Windows où, jusqu'à la version Vista exclue (mais en partie seulement), les fichiers essentiels au système d'exploitation ne sont pas différenciés des fichiers personnels ‒ si bien qu'une attaque par un programme malicieux peut avoir le même résultat qu'une attaque d'un virus : la perte pure et simple du système d'exploitation. GNU/Linux permet de limiter la casse, mais la destruction des données personnelles reste possible.

Aussi :

  • à moins qu'il ne vienne de source sûre (site officiel d'Ubuntu, d'un grand prestataire de service, etc.), n'exécutez pas un programme trouvé sur Internet sans qu'il n'ait été vérifié par quelqu'un de compétent. N'hésitez pas à venir poser la question sur le forum Ubuntu-fr avant de l'utiliser ;
  • idem pour les paquets que vous pourrez trouver ici et là. Préférez les dépôts officiels d'Ubuntu, car un paquet (extension « .deb », « .rpm ») peut contenir des instructions de pré-installation et de post-installation : ces fonctionnalités pourraient très bien être utilisées pour détruire vos données !

En résumé, sous GNU/Linux, grâce à la gestion de droits d'accès, votre système est à l'abri, mais vos données ne le sont pas nécessairement. Aucun antivirus ne vous protégera d'un script malicieux, car son rôle n'est pas de protéger les données utilisateurs mais le système d'exploitation. D'une certaine manière, un antivirus est donc inutile et le premier maillon de la sécurité de votre système, c'est vous. Pensez à faire des sauvegardes quand vous faites quelque chose de potentiellement risqué !

Les virus cachés dans les pièces jointes

Vous avez peut-être déjà constaté qu'un fichier téléchargé sous GNU/Linux n'est pas par défaut exécutable. Si vous voulez vérifier cela, tapez dans une console « touch test.sh » puis « ./test.sh ». Le message « Permission denied » qui s'affiche stipule que l'accès à ce fichier en exécution est interdit. Il est cependant possible de le modifier (accès en écriture) et d'en lire le contenu (accès en lecture). Ce trio lecture-écriture-exécution constitue la base du système de droits d'accès aux fichiers. Pour un script, la lecture signifie la possibilité d'édition dans un éditeur de texte, l'écriture signifie la possibilité de conserver (sauvegarder) les modifications, et l'exécution signifie la possibilité de lancer le script pour effectuer les tâches programmées. Le droit d'exécution est donc l'élément crucial dans la chaîne de sécurité.

Pour des raisons évidentes de sécurité, GNU/Linux requiert que soit manuellement et volontairement donnée l'autorisation à un fichier de s'exécuter. Cela implique que vous ne pouvez pas contracter un virus sans l'avoir lancé intentionnellement, c'est-à-dire sans lui avoir donné l'autorisation de s'exécuter. Cette différence entre un fichier exécutable et un fichier lisible, qui n'existe pas sous Windows, vous met à l'abri des virus envoyés par courriel : reçus dans l'espace d'exécution utilisateur, ils ne peuvent pas s'exécuter dans l'espace administrateur (root) et ne peuvent donc pas altérer le système d'exploitation.

Attention, dans les archives compressées (du type .tar.gz, .tar.bz2, etc.) les fichiers conservent les droits qu'ils avaient au moment de l'archivage. Ainsi, vous pouvez très bien tomber sur un fichier exécutable après son désarchivage. Évidemment, la nécessité de donner un mot de passe administrateur constitue une seconde protection, mais restez méfiants quand de tels fichiers archives vous sont communiqués par des tiers inconnus.

Les attaques par dépassement de tampon

Le « dépassement de tampon » ou buffer overflow est un type d'attaque lié à l'utilisation mémoire (voir l'article de Wikipédia). À la différence d'un virus cherchant à s'exécuter avec les privilèges de l'administrateur, un virus du type buffer overflow sera typiquement orienté vers la prise de contrôle d'un programme utilisateur habituellement sécurisé et possédant des accès ponctuels à des parties du système d'exploitation. Cette prise de contrôle fait intervenir des mécanismes complexes de détournement de la gestion de la mémoire allouée aux programmes de l'espace utilisateur. Concrètement, ces virus peuvent être actifs sans que vous n'ayez donné d'autorisation explicite d'exécution.

Ces virus sont rares sous GNU/Linux, car les possibilités réelles de détourner un programme utilisateur pour corrompre finement le système d'exploitation sont faibles. L'installation de programmes certifiés, programmés avec les outils sécurisés des langages de programmation de haut niveau, limite considérablement les risques. Les chevaux de Troie sont de fait essentiellement développés en vue d'attaque de serveurs et non de postes personnels.
Cependant, l'éventualité d'être contaminé par un virus effectuant des attaques du type « dépassement de tampon » n'est pas à écarter et peut constituer un argument pour l'installation d'un antivirus.

Tests d'efficacité des antivirus Linux

Antivirus et serveurs GNU/Linux

Si un antivirus n'est pas franchement utile sur un poste client (ordinateur personnel), il peut trouver son utilité sur un serveur ‒ par exemple un serveur mail connecté à des clients Windows : car si le serveur en question n'est pas lui-même en danger, l'anti-virus peut éviter des propagations et ainsi protéger les clients Windows. On peut alors utiliser un antivirus opensource comme ClamAV ou bien des produits commerciaux proposés par différentes sociétés éditrices d'antivirus.

Voir aussi

1)
Les versions de Windows inférieures à Vista en particulier
2)
FIXME à revoir : Windows étant souvent attaqué, les mises à jour de sécurité sont nombreuses et les failles le sont de moins en moins avec le temps…
3)
Le quasiment n'est là que pour ne pas exclure la possibilité, il a existé quelques virus fonctionnant sur les deux systèmes mais ils sont inefficaces depuis bien longtemps. Leur programmation multi-plateforme les rend en effet encore plus faciles à "casser" qu'un virus normal
  • antivirus.txt
  • Dernière modification: Le 28/04/2018, 11:19
  • (modification externe)