Réponse à Palpatine

Palpatine a fait le commentaire au sujet de mon billets précédent :


Pourquoi tant d’agressivité ?
Il est vrai que tu es stressé par ton entré toute récente dans la vie active alors que tu n’es jamais aller en colo ou en voyage (ça doit être perturbant 😉 )… mais le pique-nique aurait du te calmer !!! Bref, la prochaine fois, j’apprécierai plus de retenu dans tes propos…

Je vais tout de même essayer de te repondre point par point :

  • Ta première remarque est un jugement de valeur… Un jugement de valeur n’est pas très constructif quand on ne défini pas des critère précis… MacOSX, même si ça ne te fait pas plaisir est un des OS les plus avancée technologiquement… Je t’invite a lire l’article d’ARS Technica pour te faire une opinion (tu as de la chance, vu que tu es bilingue !!!)… Je pense à mon avis que tu juges sans connaître !
    A ce propos, pour toi, quel est l’environnement qui n’est pas une daube ? KDE (Ton user agent : Mozilla/5.0 (compatible; Konqueror/3.5; Linux) KHTML/3.5.2 (like Gecko)) ? Personnellement, j’ai du mal à accrocher, mais je ne dit pas que c’est une daube, chacun son truc…

  • La remarque sur Linux est plutôt absurde… Il est vrai qu’u sens stricte du terme, Linux ne représente que le kernel, mais il est courrant de parler de Linux pour désigner une distribution comprenant un kernel Linux et une série d’outils… Tout comme il est courrant de parler de PC quand l’on parle d’un ordinateur personnel compatible IBM PC… D’ailleurs, Wikipedia abonde dans mon sens : Linux – ou GNU/Linux – est un système d’exploitation libre, multitâche, multi-plateforme et multi-utilisateur de type Unix.
  • Je ne vois pas ce qui te fait bondir au sujet de la sécurité avec sudo… Sudo permet à un utilisateur lambda de faire des taches d’administration de façon extrêmement fine… Comment fait tu pour qu’un utilisateur charger d’administrer le serveur Web soit capable de le redémarrer ? Tu lui donnes ton mot de passe root ? Bravo la sécurité !!! Avec sudo, tu peux choisir explicitement les commandes qu’il peut lancer… Voir même limiter son usage en créant un wrapper qui vérifie/limite les arguments… A ma connaissance, il n’y a pas de moyens pour gérer les droits d’exécution des utilisateurs aussi efficacement… Bien sur, donner à un utilisateur le droit de lancer tous les programmes (c’est les cas pour tous les utilisateurs qui appartienne à admin sur un Ubuntu ou sur MacOSX peut être très dangereux… Mais rien ne t’oblige à le faire… De plus, sudo journalise toutes les commandes… Si le système a été compromis, et qu’il est configuré pour utiliser sudo (c’est à dire : personne ne connais le mot de passe root), on peut remonter les journaux pour trouver quel utilisateur a été compromis… La seule faille de sécurité que je vois dans sudo est la temporisation qui évite de devoir retaper son mot de passe si l’on fait plusieurs sudo coup à coup… Mais cette faille est plutôt dure à exploiter (il faut me piquer ma console quand j’ai le dos tourné… Et vite 😉 )… Mais cette temporisation est sans doute désactivable sur tout le système…
  • Quand au fait qu’un utilisateur n’a pas à aller changer/déplacer les fichiers sur son système, je ne suis pas du tout d’accord… La force des logiciels libres, c’est justement de pouvoir hacker tranquillement son système… Chaque utilisateur à ses besoins… Quelqu’un qui ne fait que du traitement de texte ne doit sans doute pas avoir besoin de toucher à des fichiers sur lesquels il n’a pas de droits… Mais personnellement, en temps qu’administrateur de serveur, j’ai régulièrement besoin d’aller changer des fichiers de configurations…D’autre part, en tant que développeur, j’ai aussi parfois besoin de lancer certaines des mes productions en tant que root… Ce n’est parce qu’un type d’utilisateur n’a pas besoin d’une fonctionnalité qu’elle n’a pas sa place dans un logiciel… Un autre exemple simple, il m’arrive de devoir installer des logiciels sur le Powerbook de ma mère… Le compte de ma mère n’a pas le droit de sudo… Sur un mac, bien souvent, installer une application revient à la copier dans le dossier Application… Bien sur, ma mère n’a évidement pas les droits d’y accéder… Mais au lieu de refuser purement et simplement la copie, le Finder me permet de m’authentifier (avec mon compte, qui lui à les droits d’administration) pour pouvoir faire la copie avec mes droits… Je ne vois pas où est la faille de sécurité car il faut mon mot de passe pouvoir effectuer cette tache et que, à partir du moment où on a mon mot de passe, je ne vois pas ce qui empêche de se loguer directement avec mon compte pour effectuer la tache… Par contre, c’est bigrement pratique, car ça évite de devoir quitter la session de ma mère pour juste installer une application… Voila le genre de fonctions que je demande à mon bureau… Et n’en déplaise au pro de la console (dont je pense faire un peu partie quand même), c’est tout de même bien pratique et agréable de pouvoir faire ça avec un simple drag’n drop…
  • La sécurité sous MacOSX est à mon sens pas trop mal foutu… C’est sur qu’on est loin d’un BSD prison, mais l’OS est bien protégé contre la plus grande faille de sécurité qui soit : l’utilisateur !
    Aucune tache d’administration de la machine ne peut être faite sans préalablement entrer son mot de passe (même lorsque l’on est logué en tant qu’administrateur). Le système prévient l’utilisateur lorsqu’il télécharge un fichier « dangereux » (script, application, etc.) même lorsque ce fichier est encapsulé dans un zip ou un tarball… Lorsqu’une application est lancée pour la première fois, l’utilisateur est prévenu (même après une mise à jour de l’application)… Enfin, tous les services distants (ssh, ftp, afp, http, etc) sont désactivés par défaut… Les failles qui peuvent rester sont des bugs (buffer overflow (MacOSX utilise le bit NX sur Intel 😉 ), etc.)… A mon avis, il n’est pas pire qu’un Linux (mais c’est vrai que c’est difficilement vérifiable vu que l’on ne peut pas auditer le code… En tout cas, rien à voir avec Windows 😉

  • Je ne suis pas d’accord concernant le fait que lancer un programme utilisateur ne soit pas une faille de sécurité… Les applications graphiques sont généralement très complexes de nos jours. Le code total a auditer est énorme (il faut auditer toutes les librairies avec lesquels le programme est linké…). La moindre faille dans une librairie est sérieuse vu que le code exécuté dans les bibliothèques à les mêmes droits que le programme principal… Il faut minimiser au maximum les portions de codes qui tournent en tant que super utilisateur (autrement dit, juste le thread qui fait la copie)…
  • Enfin, le script de réparation automatique des autorisations n’est pas un script qu’il faut lancer en permanence… Le simple fait de devoir faire cela pour que le système marche prouve que le système est mal conçu !!!
    Le script doit être considérer comme étant un script de dépannage… Il peut être lancer par l’utilisateur depuis un CD de boot quand il a cassé sont système…
    Pour info, le script de MacOSX ne touche pas aux permissions des comptes utilisateurs, juste aux permissions sur le système (par exemple, pour que le système puisse booter, il faut que les extensions du kernel (les modules, pour un linuxien) soit au moins accessible en lecture pour le root et que les scripts de démarrage soit executable par le root..)…

Voila…

Maintenant, tes remarques sont peut être justifiés… Mais dans ce cas, il faudrait étayer un peu ton argumentation plutôt que de te placer en donneur de leçons…

(5 commentaires)

Passer au formulaire de commentaire

  1. Bon, ben j’ai vraiment rien compris ! Et Windows, c’est pas bien ? Ok, ok, je sors…

  2. hhmmm… oui ? ^^ Bon, mea culpa, ça manquait de smileys mon post, j’avoue 😉
    D’un autre côté, quand on parle de Ubuntu sous Gnome, et de MacOS X, faut pas s’étonner que ça me rende un poil nerveux, hein ? Je reprends, donc :
    _ J’ai abandonné l’idée d’éduquer au bon goût ;), chacun son truc, mais je n’aime pas que l’on mette kernel et environnement dans le même sac ; pour windaube, y’a pas le choix ; pour OS X, pas tellement non plus, même si c’est moins vrai (à condition de s’y connaître, de virer quartz pour Xorg, de mettre un DE, etc, bref, ça ne concerne quasiment personne). Dans l’absolu, le kernel d’OS X est fort mauvais, une gestion mémoire misérable, une compatibilité POSIX à 42 années lumières, et j’en passe des meilleures. Un pur BSD est bien mieux ; entendons-nous bien, ça reste bien meilleur qu’un HP/UX ou un kernel32.dll, mais évidemment, faire la comparaison avec Linux, ce n’est pas la peine de commencer… Pour tout ce qui est sentiment vis-à-vis d’Apple, cf l’article de Bertrand Lemaire posté il y a peu. C’est drôle, je parlais à la femme d’Eolas de ça, justement, au picnic, et je disais qu’Apple était peut-être pire que m$ par son côté insidieux, alors que la firme de Redmond est visible dans sa politique de manière outrageusement visible…
    _ si Stallman voyait ce qu’il y d’écrit sur wikipedia, il ne serait pas content ;). Donc, tu parlais du système entier ? Parce que là, je ne vois même plus ce que la comparaison avec les outils GNU vient faire :s. Bref, même remarque qu’au dessus, c’est très tendancieux, sous Linux, il faut bien avouer, en raison des distribs ; pour moi (et bon nombre de libristes puristes – pléonasme), Ubuntu est certainement la plus mal configurée de toute.
    _ Sudo présente déjà un problème d’un point de vue de sécurité pure (voir la faille d’août de l’année dernière). De plus, d’un point de vue philosophique, c’est une erreur. Je crois que tu as quelques problèmes de connaissance du système, à te lire (mais c’est pas grave, ça se corrige 😉 <mode donneur_de_leçon=on>, n’est-ce pas 😉 ). Déjà, un utilisateur peut lancer n’importe quel programme sur lequel il a les droits d’exécution (tous, habituellement) ; c’est a posteriori que le système juge des droits de ce que fait le processus, en fonction des droits avec lesquels il a été lancé. Normalement (ie si pas de suid/guid), le programme hérite des droits utilisateurs : on peut très bien lancer un apache, mais il devra occuper les ports supérieurs à 1024, et pas le 80, c’est tout. Un utilisateur ne devrait pas avoir accès à un serveur apache lancé sur le port 80, c’est une évidence même, celui-ci étant de plus lancé dans des droits particuliers, différents de root (question de sécurité) : wwwrun sur ma SuSE, par exemple. Bref, si sudo est parfois utile (je m’en sers au boulot, par exemple), c’est que le système a été mal pensé, 98% du temps (et 100% du temps si on l’admin de la machine et son utilisateur principal, d’ailleurs) : il y a de bien meilleurs moyens à disposition. Et le pire du pire reste Ubuntu, quiconque possède le mot de passe utilisateur (exemple typique : cracking de ssh par brute force, ça arrive régulièrement, ou pire et plus simple, ftp, justement pour cause de non-temporisation), possède tous les droits sur la bécanne, c’est pas une faille de sécu, c’est un gouffre abyssal.
    _ Pour les fichiers de config, il faut bien se rendre compte que copier par exemple un fichier de conf’ d’un serveur sur son compte utilisateur, donne à un pirate potentiel de très sérieuses informations ; c’est la raison pour laquelle un utilisateur normal ne devrait pas avoir les droits de lecture sur ces fichiers dans /etc, ircd.conf en est un exemple, ou vsftpd.conf. Faire ça en graphique n’a réellement aucun intérêt, il s’agit de fichiers épars, mais il reste cependant la possibilité de lancer un konqueror en root, comme je disais, chose qu’il faut manier avec force précautions. Mais vive le shell, quoi, si tu veux une conf’ de zsh qui poutre, fait moi signe 😉
    _ OS X est évidemment bien meilleur que windaube, normal, on ne peut pas faire pire que ce machin. Mais de là à dire que la différence avec Linux n’est pas élevée, je m’insurge ! o_O° D’ailleurs, les graves failles qui sont arrivées à répétition me donnent raison, et comme tu le dis, on ne connait pas le code (qui est fermé et unique pour tous les utilisateurs) : à ce niveau, ce n’est pas mieux que la daube. De même, demander les mots de passe au dernier moment, le sudo constant, les failles ne vont pas tarder à apparaître partout, tu peux me croire. La comparaison Linux/BSD est plus pertinente, surtout si l’on met SELinux, AppArmor, et toute la clique. Je ne suis vraiment pas sûr qu’un BSD soit plus sécurisé, du point de vue du kernel, je parle (pour le reste, ce n’est que config). Ah oui, j’oubliais : tout désactiver est effectivement un super moyen de sécuriser, éteindre l’ordi l’est encore plus 😀 ; sérieusement, c’est reculer pour mieux sauter (ça me fait penser aux admins qui ne donne pas accès à perl, parce que "c’est un outil de hacker"…) ; mais bon, vaut mieux ça à debian/ubuntu qui lancent tout serveur installé par défaut, alors que le truc n’est même pas configuré, qui plus est :s
    _ Oulah, y’a un truc bizarre dans ta phrase sur les programmes lancés en tant qu’utilisateur. Bon, la faille de sécu, elle existe évidemment toujours, indépendamment de l’utilisateur, la question est simplement de savoir si celui va s’incruster pourra faire tomber tout le système avec. Si ça ne tourne pas en root, et que le système est bien configuré, il n’y a pas l’ombre du début d’une chance ; notre bonhomme pourra toujours s’occuper à plomber la mémoire, ou effacer les données de l’utilisateur en question, mais le système restera debout. Le coup du thread admin qui fait la copie qu’est-ce ? Il y a juste l’appel système fork, et une question de user land/kernel land, nulle question administrative à l’horizon ;).
    _ Pour les droits sur le système, heu, c’est quoi ce truc, il y a des gens qui s’amusent à rendre les modules inaccessibles ? :s Faut se suicider dans ce cas-là, et vite ^^. Le script auquel je faisais allusion va vérifier par exemple les droit en 777 (ou 007, ça suffit), qui sont des failles de sécus plus qu’abominables. Et ça, ce n’est pas une question de système mal conçu, juste une déviance psychologique de l’utilisateur, ça arrive régulièrement aux informaticiens (pour moi, des fakes 😀 ), même…

    Bon, je ne parle même pas de l’impossibilité de mettre des vidéos en plein écran sans débourser quelques dollars, ni des DRMs intrusifs ou de l’absence totale de configuration décente, on s’en fout un peu ici. Mais la conception de la sécu est très importante, et elle nécessite beaucoup de connaissance système, il est vrai. Et sur ce, je vais aller retourner chez la Lène, ce matin j’ai vite posté un comm’ non argumenté (encore ?! 😮 et oui… 😀 Pas bcp de temps en ce moment :/) sur des virus sous Linux (muhahaha, trop drôle, va falloir encore une bonne période d’apprentissage de la langue :p ).
    Ça va mieux comme ça, ou j’argumente encore plus ? 😉 Et pis chuis pas méchant moi, si je commente (depuis mon akregator-qui-poutre), c’est que ça vaut la peine (arg, 426 billets de retard, encore :'( ), et c’était vraiment le cas :).

  3. L’ordinateur que j’ai acheté, exécute ce que je lui demande, comme je lui demande… Si j’ai envie de faire tourner mon script python sur le port 80, je suis bien obligé de le faire tourner en root, que ça te plaise ou non !!!

    Le niveau de sécurité informatique offert par sudo est amplement suffisant pour moi… La sécurité informatique n’est pas qu’un domaine technique, il s’agit aussi de management : il faut comparer le risque encouru par rapport au coût de la solution ! Bien sur, on peut toujours faire sécurisé… mais je pense que dans le cas de mon ordinateur, l’énergie a dépenser pour le pénétrer ne faut absolument pas le coup (me voler mes MP3 ? mes quelques bout de code (qui seront sans doute publier un jours ou l’autre en GPL s’il deviennent intéressant ?)). Et c’est à mon avis le cas sur la quasi totalité des ordinateurs utilisant un kernel Linux, un suite d’outils GNU, un bureau Gnome ou KDE (ça te va là ???)… Pour les ordinateurs sous Windows, l’objectif est d’obtenir des ressources pour pas chère (SPAM, et autres zombies). Actuellement, les failles de sécurités sous Windows permettent de capturer des machines pour un coup quasi nulle… Ce n’est pas le cas sur les machines Linux, c’est pour ça qu’elle n’encours pas les mêmes risques (tant que Windows sera aussi buggé)…

    Maintenant, tu peux toujours être l’esclave de ta paranoïa !!!

    En tout cas, je ne comprend pas bien ce que ce genre de post peut t’apporter… Essaye plutôt de mettre tes « formidables » connaissances au service de la communauté, il y a plein de projets qui pourrait avoir besoin d’aide, ou encore de documentations à rédiger… A mon avis, ta contribution au logiciel libre est loin de donner envie de s’investir dans cette communauté… L’élitisme n’est pas une des valeurs du libre !!!

  4. C’est moi ou je sens un peu d’agressivité 😀 (et plein de mauvaise foi 😉 )
    Port 80 -> lancement par un utilisateur anonyme, via root, ça ne tourne JAMAIS en root, relis mon post.
    La sécurité n’est qu’une affaire de technique, "management", c’est en éco, on voit ce que ça donne… Mais tu comprendras ça dès que tu te feras scanner le port 80 avec insistance (certains l’ont payé cher avec le port 22 et un mot de passe temporaire oublié pas assez compliqué…).
    Je ne suis pas paranoïaque, je sais. Tout comme le disque dur de mon portable est chiffré ; tiens, étrange, il y a eu un vol de portable récemment là où je travaille, je te laisse deviner l’importance des données contenues (qui ne pourront être lu par le quidam moyen, heureusement ; vu les circonstances du vol, il ne s’agirait pas d’organisation quelconque).
    Ce que ce post m’apporte ? Tu poses une question, j’y réponds ;). J’agis au cas par cas, faut bien que quelqu’un aille au front, sérieusement, qui lit la doc ? Et il faut arrêter de croire que le logiciel libre est un repère d’ignares pacifiques, je suis bien moins violent que Torvalds, Raymond ou Stalmann, qui auraient arrêté depuis bien longtemps, mais bon, on me dédicace un post entier, c’est trop d’honneurs :D. Le but du libre, c’est que chacun prenne conscience de l’informatique, pas de faire du presse-bouton stupide, pour ça y’a windaube, on voit ce que ça a donné… (et Mac, mais là ça devient plus complexe, déjà expliqué)

    Bon, je vais à ‘Paris capitale du libre’ (pour le boulot, oui, parce que je contribue au libre même de manière professionelle), si tu me vois, fais-moi signe ;).

  5. Ah ah, viens de penser à toi ! 🙂
    http://www.kde-look.org/content/...
    Il y a une remarque intéressante (outre le fait que le bonhomme est très étrangement sous Ubuntu :p ) : le fait de gagner des privilèges. Ce n’est effectivement pas possible à l’heure actuelle sous les systèmes disponibles, héritage UNIX oblige, il faut donc forker et lancer un nouveau processus avec les nouveaux droits, via su (qui est un programme avec suid, puisqu’il faut qu’il prenne temporairement les droits root pour pouvoir lire /etc/shadow). Bref, en UNIX, la seule chose que l’on peut faire, c’est perdre des privilèges (root qui lance un serveur apache en wwwrun, ou nfs qui lance une session en anonymous).
    En revanche, le Hurd implémente le gain de privilèges ! Là ça devient plus intéressant, au niveau de la sécurité, c’est peut-être ce qu’il te faudrait, regarde de ce côté 😉

Laisser un commentaire

Votre adresse ne sera pas publiée.

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.