Overblog Suivre ce blog
Administration Créer mon blog
And Linux For All

Articles avec #securite tag

Sécurité et Linux

4 Juin 2011 , Rédigé par Emmanuel PIEUX Publié dans #Sécurité

Brisons tout de suite une idée reçue: non, Linux n'est pas le système d'exploitation le plus sûr au monde !

Bien. S'il me reste encore quelques lecteurs , je développe pour eux.

La sécurité d'un ordinateur ne consiste pas seulement en la sécurité de son noyau. Profitons-en pour rappeler que Linux est un noyau, et uniquement cela. Or, un environnement de travail ou de jeux est un ensemble de logiciels, dont le noyau est la brique de base. Linux est peut-être le noyau le plus sûr au monde (quoi que cela reste à vérifier), mais votre ordinateur ne l'est certainement pas.

Avant de développer plus avant, faisons un détour par quelques notions de sécurité. La sécurité regroupe plusieurs notions qui tendent toutes vers trois points clés : la disponibilité, la confidentialité et l'intégrité des données.

Sans entrer dans les détails, on peut dire que la disponibilité est le fait que vous pouvez utiliser votre PC quand vous en avez besoin – ou envie – et qu’il répond toujours à vos sollicitations; la confidentialité est le fait que personne à part vous ne peux accéder aux données qui y sont stockées; et enfin l'intégrité est le fait que vous êtes sûr de ne pas perdre vos données ou du moins de pouvoir les retrouver à tout instant, et dans l'état dans lequel vous êtes sensé les avoir laissé.

Si l'on applique cela au poste de travail, voici les thèmes que l'on peut évoquer à ce sujet :

  • les mises à jour

  • les virus

  • les sauvegardes

  • le chiffrement

  • les firewalls ou pare-feux

  • les comportements suspects

  • la conservation des mots de passe

  • la protection des navigateurs internet

Vous allez découvrir ici que les distributions Linux et les logiciels libres sont effectivement parmi les logiciels les plus sûrs du marché, mais que leur sécurité dépend beaucoup de leurs utilisateurs : vous !

 

 

Les mises à jour.

Ça ne surprendra personne : il faut mettre ses logiciels à jour. Pas seulement le noyau Linux ou son environnement graphique, ou encore son navigateur Internet. Il faut TOUT mettre à jour.

 

Pourquoi ? Parce que TOUS les logiciels comportent des bugs et des trous de sécurité. C'est dans leur nature : ils sont écrits par des hommes donc ils comportent des erreurs de programmation. Et ils sont de plus en plus complexes, ce qui augmente encore leurs chances d'être bogués.

Pour ne rien gâcher, ils peuvent aussi être étendus avec d'autres programmes, écrits pas d'autres personnes, qui font aussi des erreurs (pensez à Firefox et ses extensions)…

 

Si vous lisez la presse informatique, vous ne pouvez pas passer à côté des multiples alertes qui touchent les Java, les Flash player ou reader, ou Firefox. Certaines alertes mettent le doigt sur des failles critiques. Un pirate ou un robot bien outillé pourra prendre le contrôle de votre machine pour, au choix :

  • y incruster des logiciels espions et ainsi récupérer des informations privées,

  • vous faire apparaître des fenêtres popup pleines de publicités pour des sites X,

  • rendre votre machine inutilisable à force de lenteur ou de plantages,

  • vous faire participer à un botnet, réseau de machines infectées qui envoient à l'insu de leur utilisateur des millions de mails de spams,

  • tout cela à la fois !

Vous l'aurez compris, si votre PC est connecté à Internet, mieux vaut mettre à jour ses logiciels.

 

D'autant plus que c'est simple : toutes les distributions actuelles comportent un logiciel de mise à jour des programmes installés. Tous les jours, il va automatiquement regarder dans sa base de données si les programmes installés sur votre PC sont conformes à la dernière version en date, celle qui réside sur les serveurs de l'éditeur. Si ce n'est pas le cas, il vous proposera d'effectuer pour vous l'opération de mise à jour, ou mieux, il la fera de façon transparente, et vous en informera une fois celle-ci terminée. Et comme c'est un système sous Linux, vous n'aurez quasiment jamais à redémarrer votre ordinateur après une mise à jour, sauf si le noyau lui-même bénéficie d'une nouvelle version.

 

Là encore, la force de Linux intervient, et vous pouvez trouver un produit qui vous dispense de redémarrage même en cas de mise à jour du noyau . Dites cela à un utilisateur de Windows, il ne vous croira même pas, lui qui doit redémarrer dès qu'une DLL est mise à jour…

 

Une autre force des distributions Linux dans ce domaine est le fait que la totalité des programmes, librairies, plugins, codecs et autres addons, est mise à jour. Pas besoin de chercher sur Internet les mises à jour, pas besoin de répondre à de multiples popups (un par logiciel dans certains cas, tels Adobe Flash player ou Oracle Java). En un seul clic, vous mettez à jour votre logithèque, du sol au plafond...

KPackageKit

Kpackagekit, le gestionnaire de packages et de mises à jour sous KDE.

 

 

Les virus

Parler de virus à un utilisateur de Linux, c'est un peu comme parler de neige à un habitant de Tahiti : il sait que ça existe, mais il n'en a jamais vu et à la limite, il ne veut même pas en entendre parler...

 

C'est un fait, il existe peu de virus écrits spécifiquement pour Linux. Mais il en existe des centaines de milliers pour Windows, et de plus en plus pour les Mac, fort de leur succès grandissant. Et si Linux n'est pas touché par leurs effets, ne peut-il pas les transporter à son insu ?

 

Imaginez : vous recevez de la part d'un ami – sous Windows, le pauvre – un e-mail contenant une pièce jointe infectée par un virus. Naturellement votre PC ne sera pas infecté lorsque vous essayerez d'ouvrir la pièce jointe. Au pire vous n'arriverez pas à l'ouvrir d'ailleurs. Mais si vous y parvenez et que c'est une vidéo sympa et que vous décidez de la faire suivre à d'autres amis, vous risquez de les infecter sans même le savoir.

 

Vous tenez à vos amis, alors installez un antivirus dans votre distribution Linux ! Il en existe des  gratuites, des chères, des pas chères, bref, de quoi satisfaire tout le monde. Une chose est sûre, toutes ne se valent pas, alors faites une comparaison sur Internet, allez sur les forums qui traitent de ces sujets, surtout si vous comptez en acheter un.

 

 

Le chiffrement

Nous y voila justement. Qu'est-ce que le chiffrement et à quoi cela peut-il servir ?

 

On trouve de multiple définition sur Internet, alors je vais y aller de la mienne, qui se veut la moins technique possible ici : le chiffrement est un moyen technique de garantir la confidentialité de vos données en les stockant de façon illisible à toute personne ne possédant pas la clé (ou le mot de passe) permettant d'y accéder.

 

En réalité, c'est un processus complexe, faisant appel de des formules mathématiques tout aussi complexes. Mais pour l'utilisateur lambda, il existe de nombreux outils facilitant le chiffrement de tout ou partie des données stockées sur un média (disque dur interne ou externe, clé USB, téléphone portable, lecteur MP3 évolué, etc).

 

Pour les utilisateurs de distributions Linux, le choix est vaste. Cela va du chiffrement d'un disque dur complet avec CryptSetup-Luks (par défaut dans Fedora, OpenSuSE ou Mandriva), au chiffrement d'un seul fichier avec OpenPGP, en passant par des solutions de création de fichiers virtuels vus comme des répertoires chiffrés comme TrueCrypt, ce dernier permettant aussi de chiffrer des disques ou des partitions de disques entiers, et qui plus est sur de nombreuses plate-formes non Linux.

 

La puissance de ces outils n'est plus à démontrer, tout comme leur fiabilité. Le fait que leur code source soit librement visible et modifiable est la garantie de leur efficience. Dans le domaine du chiffrement, mieux vaut avoir accès au code source que d'avoir une boite noire dont on ne sait rien de ses fonctions cachées. Cette dernière remarque n'engage que moi, le contraire peut aussi se soutenir facilement.

 

Bref, pour protéger vos informations des regards indiscrets, vous avez le choix des outils. A vous de trouver celui qui sera le mieux adapté à vos besoins. Là encore, Internet est une source d'information inépuisable. Jetez un coup d’œil dans la bibliothèque de logiciels de votre distribution. En tapant « crypt » par exemple, vous trouverez déjà une bonne liste de logiciels qui vous rendront service.

 

KWallet

Un programme qui stocke vos données de façon chiffrée: KDEWallet.

 

 

Les firewalls ou pare-feux

 

Parlons un peu de technique. La communication entre les ordinateurs passe par des ouvertures de canaux de communication entre les machines et les serveurs. En règle générale, un serveur « écoute » sur un canal, comme la fréquence radio de votre poste. Il attend sagement qu'un ordinateur lointain vienne frapper à sa porte en lui demandant des informations. Après une courte négociation, il enverra ou pas des informations à cet ordinateur. Le canal de communication s'appelle en informatique un « port ». Par exemple, un serveur web acceptera généralement les demandes sur le port 80, un serveur d'envoi d'e-mail le port 25.

Sachez enfin que sur l'ordinateur client (le vôtre, celui qui initialise la connexion), un port est ouvert aussi, généralement compris entre 1025 et 65534.

 

Assez de technique, passons aux implications. Si les logiciels communiquent, c'est par des ports, nous venons de le voir. Les logiciels comme Firefox ou Chrome le font. Mais les logiciels malveillants aussi ! Et c'est bien d'eux qu'il faut se protéger.

 

Un pare-feu permet de se protéger en stoppant tout trafic qui essaie de rentrer sur votre ordinateur sur un port non identifié. Par exemple, si vous ne disposez pas d'un serveur web sur votre PC, ce qui est généralement le cas, aucun trafic ne devra pouvoir entrer dans votre ordinateur par le port 80. Par contre, votre ordinateur a le droit de consulter un site web sur le port 80.

 

Les nouvelles générations de firewalls bloquent aussi certains trafics sortant. En effet, si votre ordinateur est compromis par un logiciel malveillant, il est possible qu'il envoie par exemple des millions de spams à votre insu. Certains firewalls sont capables d'identifier cela et de bloquer ces envois, ou du moins vous en informer.

 

Une fois de plus, vous aurez l’embarras du choix pour votre distribution. Sachez cependant qu'un firewall de base est généralement installé par défaut. Il s'agit de l'historique iptables, un des premiers pare-feux sous Linux. N'hésitez pas à consulter votre bibliothèque de logiciels, en cherchant le terme « firewall ».

 

Firewall

L'outl de configuration du pare-feu de Fedora.

 

 

Les comportements suspects

Les antivirus classiques et les firewalls ont leurs limites. Par exemple, les mises à jour des bases antivirales ne sont déployées sur les postes clients que lorsque l'éditeur les mets à jour. Imaginons un virus qui n'est pas encore dans la base de données des virus, mais, pas de chance, vous l'attrapez. Dommage. La mise à jour arrivera trop tard. Certains programmes malveillants comptent sur ces limites pour s'implanter sur les machines.

 

Pour se protéger efficacement, il existe une méthode : l'analyse des comportements suspects.

 

Tout OS, tout programme, est composé d'une multitude de fichiers : paramètres, programmes, bibliothèques, etc. Pour chacun de ces programmes existe un profil de comportement type. Par exemple, tous les programmes ne doivent pas pouvoir modifier des fichiers de configuration du réseau qui sont, je vous le rappelle, des fichiers textes facilement éditables si vous disposez des droits adéquats.

 

Les programmes de détection des comportements suspects analysent en permanence les modifications qui surviennent sur certains fichiers « sensibles ». Dès qu'ils s'aperçoivent qu'une demande de modification a été faite par un programme qui n'a pas le droit de le faire, ils stoppent cette demande et alertent l'utilisateur. C'est ce dernier qui décide ou non d'accorder les droits au programme en question.

 

Il faut reconnaître que ce système a ses limites. Il peut bloquer une fonctionnalité dont l'utilisateur a besoin. Et souvent ce dernier se retrouve devant un message qui n'est pas très clair, avec parfois comme unique choix de taper des commandes à la main dans un terminal. Certaines distributions proposent des outils un peu plus simples à utiliser, telle OpenSuSE dans son panneau de configutation Yast.

 

Malgré leur relative complexité, il faut reconnaître que ces programmes offrent une protection efficace contre les programmes malveillants. Lire un minimum de documentation est nécessaire à leur bonne utilisation, mais le jeu en vaut la chandelle en termes de sécurisation.

 

Ah j'oubliais : ces programmes portent les doux noms de SELinux et AppArmor. Il existe des différences importantes entre ces deux lascars. Sachez pour finir que vous n'aurez pas forcément le choix, certaines distributions comme Ubuntu sont livrées avec AppArmor, alors que Fedora repose sur SELinux.

 

 

La conservation des mots de passe

Pour cette partie, je vais faire un peu d'auto-publicité, et vous conseiller de lire mon article sur je sujet.

 


La protection des navigateurs internet

Depuis quelques années, les menaces viennent clairement d'Internet. Les grands sites ultra-médiatiques sont les plus touchés, tels Facebook ou Twitter. Certains jeux du premier sont des nids à embrouilles. Si vous voulez perdre des informations ou vous retrouver pourris par les publicités, inscrivez-vous à ces jeux en ligne.

 

Et ce n'est pas tout. Certains sites web sont purement et simplement infectés par des virus, ou installe sur les PC des programmes facilitant l'affichage de publicités non voulues.

 

N'oublions pas non plus le simple fait – ultra pénible – d’afficher une page pleine de vidéos ou pubs dont vous n'avez rien à faire.

 

Pour éviter ces désagréments, commencez par protéger votre navigateur Internet préféré. Des outils comme AdBlock+, NoScript ou WOT, sont parmi les 578 outils disponibles pour Firefox, dont le but est de protéger votre vie privée et votre sécurité. AdBlock+ bloque les publicités, NoScript bloque les ... scripts qui peuvent être malveillants, et WOT est une base de données collaborative de sites dangereux.

 

Pour trouver la liste des outils, cherchez « plugins firefox » ou « plugins chrome ».

 

Firefox Addons

Un exemple des extensions de sécurité pour Firefox.

 

 

Conclusion

Linux est un système sûr et sécurisé par défaut. Il faut pourtant penser que tout système est composé d'une multitude de composant, et que le niveau de sécurité général dépend du composant le plus faible, comme une chaîne. Et il y aura toujours des pirates pour exploiter les faiblesses.

Avec un minimum d'effort et de logiciels bien fait, vous pouvez vous protéger contre presque tous les risques connus et inconnus. Ce faisant, vous protégerez votre ordinateur, mais aussi celui des autres, en ne devenant pas un vecteur d'infection à votre insu.

Lire la suite

Chiffrer les données avec Linux : deux méthodes.

15 Février 2010 , Rédigé par Emmanuel PIEUX Publié dans #Sécurité

 

Est-il nécessaire de rappeler la nécessité de chiffrer les données contenues dans le disque dur de son ordinateur ?

Disons que la nécessité de chiffrement découle directement de la valeur que l'on octroie à ses données. On trouve généralement des solutions de chiffrement de données dans le monde professionnel, là où les informations ont le plus de valeur, financière généralement.

De plus, la nécessité de chiffrer ses données dépend du support utilisé : un ordinateur portable, donc nomade, devra être plus protégé qu'un ordinateur fixe dans un bureau fermé à clé.

 

Que proposent les distributions Linux pour protéger les données des utilisateurs ?

Il existe pour moi deux méthode majeures :

  • le chiffrement d'un disque dur entier, ou du moins d'une partition

  • l'utilisation d'un gros fichier chiffré, que le système voit comme une partition.

Voyons les avantages et inconvénients de chaque méthode.

 

Remarques préliminaires.

Il faut savoir que l'installation et le paramétrage du chiffrement se fait de préférence à l'installation du système. Toutes les distributions ne proposent pas le chiffrement en standard, du moins pas toujours de façon très accessible à l'utilisateur lambda.

 

Parmi les distributions qui ont mis l'accent sur la simplicité, citons Debian, Ubuntu, OpenSuSE, Fedora.

D'autres le proposent, mais pas de façon aussi évidente que cela : voir mon précédent article « Howto : chiffrer son home à l'installation de Mandriva 2010 ».

 

 

Principe de fonctionnement des deux systèmes.

  • Partition chiffrée :

    Le disque dur est formaté suivant un schéma particulier. Ici, une seule partition classique est créée, celle qui accueille le noyau et les fichiers de boot. Le reste des partitions est créé dans ce que l'on appelle un LVM (logical volume management).

    Derrière cet acronyme se cache un système qui permet de créer des volumes de données indépendants du matériel sur lequel ils sont hébergés. Cela permet notamment de redimensionner à la volée les volumes et de les chiffrés.

    Lorsque l'utilisateur allume son PC, un mot de passe lui est demandé, juste après le chargement du noyau. Ce mot de passe permet de déverrouiller le volume chiffré, permettant ainsi au système d'accéder aux répertoires.

  • Fichier chiffré :

    Ici, le schéma des partitions est tout à fait classique (sda1, sda2, sdb1, etc). Les données de l'utilisateur sont stockées dans un fichier chiffré particulier, qui est physiquement présent dans une partition classique. Lorsque l'utilisateur tape son login et mot de passe pour ouvrir une session, le fichier est déverrouillé, et se comporte comme une partition home de l'utilisateur. Si l'utilisateur quitte sa session, le fichier est verrouillé de nouveau.

 

Facilité de paramétrage.

Entre les deux solutions (partition chiffrée ou fichier chiffré), la plus transparente pour l'utilisateur semble être la deuxième.

En effet, pendant l'installation, il suffit généralement de cocher une case pour que les données de l'utilisateur du système soit chiffrée.

L'autre système peut être aussi simple, mais cela dépend des distributions. Par exemple, une case à cocher suffit sous Debian 5 avec l'installateur graphique, mais il faut installer la version « Alternate » d'Ubuntu pour accéder à ces fonctionnalités, avec un installateur en mode texte, moins simple que son pendant graphique.

 

A l'utilisation.

Là, pas de contestation possible : le plus simple est le fichier. En effet, celui-ci se déverrouille automatiquement à la connexion de l'utilisateur.

L'autre système nécessite la saisie d'un autre mot de passe au démarrage du système, en plus du mot de passe utilisateur.

 

 

Sécurité.

Avantages du système de chiffrement du disque entier :

  • l'intégralité des données et programmes est chiffré. Ainsi, aucun outil ni donnée de l'utilisateur n'est accessible sans le mot de passe de démarrage.

  • Le swap est chiffré lui aussi. Ca n'a l'air de rien, mais des données temporaires peuvent être stockées dans cette partition, et notamment des données de connexion.
  • Un deuxième mot de passe (en plus de l'ouverture de session) est nécessaire. Un mot de passe peut être simple à trouver, deux, c'est tout de suite plus dur.


Inconvénients :

  • Une fois le mot de passe tapé, les partitions sont déverrouillées, quelles que soient les sessions utilisateurs, et restent déverrouillées jusqu'au prochain redémarrage du système. Il ne faut donc pas simplement mettre en veille son ordinateur lors de déplacement par exemple, mais bel est bien l'éteindre. C'est là que la sécurité est la plus forte. Mais c'est bien moins pratique bien entendu.

  • Le chiffrement et déchiffrement est une opération complexe pour un ordinateur. Cela va prendre des ressources systèmes, à chaque lecture et écriture de données et de programmes sur le disque. Il s'ensuit une légère baisse des performances d'entrée/sortie disque. Rien de méchant, mais c'est à noter.

 

 

Avantage du fichier chiffré :

  • Une simple clôture de session est nécessaire pour verrouiller ses données. On peut alors mettre son ordinateur en veille sans problème pendant le transport.

  • Pas de perte de performance en lecture/écriture, sauf pour les données utilisateur. Les programmes n'étant pas chiffrés, ils démarrent normalement.

 

Inconvénient :

  • Le mot de passe est celui de la session de l'utilisateur. Il peut être parfois facile à deviner ou à trouver, voire à casser via un programme de force brut.

 

 

Conclusion

D'un point de vue sécurité, je recommande le chiffrement de la totalité du disque dur. C'est la méthode la plus sûre pour les ordinateurs portables. La seule contrainte est de bien penser à éteindre son PC, notamment pendant les déplacements des utilisateurs.

D'un point de vue utilisateur, il est clair que la solution par fichier est la plus simple. Mais simplicité ne rime pas souvent avec sécurité, hélas.

 

Quoi qu'il en soit, il ma paraît important d'utiliser au moins une de ces méthodes, pour protéger ses données, quelle que soit la valeur que l'on y accorde.

Couplée à une sauvegarde hebdomadaire sur un disque dur externe lui aussi chiffré (voir mon article « Mettre en sécurité vos données sur un disque externe »), vos données seront efficacement protégées.

Lire la suite