Les antivirus sous GNU/Linux
Les systèmes d'exploitation GNU/Linux, Unix et « Unix-like » sont en général considérés comme très bien protégés mais pas totalement immunisés. En effet, jusqu'ici, aucun virus opérant sous Linux n'a été répertorié comme étant très répandu, comme c'est 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.
L'argument souvent avancé, consistant à expliquer l’absence de logiciels malveillants sous Linux par une part de marché très faible (et donc peu d’intérêt pour les pirates) ne tient pas. En effet, si Linux est peu utilisé sur les ordinateurs personnels, il est extrêmement répandu sur les serveurs, les systèmes embarqués, les supercalculateurs, là même où l’exploitation de logiciel malveillante serait la plus profitable.
Attention aux virus sur les routeurs
- Un ver se constitue un botnet de routeurs équipés Linux (psyb0t) (NB: date de 2009)
- Chuck Norris Botnet Karate-chops Routers Hard (chuck norris) (article en anglais) Risque si vous n'avez jamais changé le mot de passe de votre box.
Solution à ce jour :
- Réinitialiser le routeur pour le remettre en configuration d'origine
- 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 ?
- 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 très laxiste sur les 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 potentiellement dangereux que 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 corrigées très rapidement. Le code étant librement accessible, chacun peut l'analyser et proposer des correctifs. Lorsqu'une faille est détectée, elle est généralement corrigée dans les heures ou les jours qui suivent. Et votre distribution fournira aussitôt un correctif de sécurité alors que d'autres systèmes d'exploitation attendent parfois plusieurs semaines/mois avant de publier leurs correctifs.
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. 2)
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.
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
Voir :
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 tel que Dr.Web qui est natif sous GNU/Linux.