Journal Mise à jour securité gentoo. (la revanche)

Posté par  .
Étiquettes : aucune
0
1
déc.
2004
Ceci est une réponse à mon précedent journal.
(http://linuxfr.org/~frafra/16019.html(...)).

Mes constats :
1/ Sur ma gentoo chez moi , je souhaite comme beaucoup, ne mettre à jour que les packages qui posent des pbs de sécurité. Mais le suivi devient compliqué à mesure que le nombre de packages augmente.

2/ glsa-check est loin d'être au point (faux positifs, pas de gestion de apache1/apache2 ...) et s'il était stable , il serait intégré à emerge.

3/ les fichiers /usr/portage/metadata/glsa/glsa2004*.xml sont mise à jour par le "emerge sync" et facilement exploitables par n'importe quel language disposant d'une lib xml simple.

4/ "emerge -puD --columns world" fournit un resultat dans un format exploitable par n'importe quel language moderne.

Ne trouvant pas de solution, je me suis décidé à écrire mon propre outil. C'est encore une ébauche mais ça semble fonctionner chez moi. Le but n'est pas de refaire glsa-check, mais de palier en attendant. A terme je souhaite utiliser cet outil pour faire des "emerge --buildpkgonly" en crontab la nuit, l'installation restant manuelle.

Il est dispo. sur : http://www.frafra.org/myglsa/myglsa.py(...)

Je n'ai pu tester que sur ma machine qui est plutot à jour.
Les remarques sont les bienvenues même si je ne promets rien pour la suite. J'espère que vous me pardonnerez mon style collegien de 5e tant ici que dans le code.
  • # Testeur

    Posté par  . Évalué à 3.

    J'ai justement un duron 700 sous gentoo que je ne met pas souvent à jour ( Juste les progs qui m'interessent, comme amarok ou mplayer ).

    Je testerai ton programme ce soir, glsa-check ne donne pas grand chose non plus chez moi.
    • [^] # Re: Testeur

      Posté par  . Évalué à 3.

      Bon me voici de retour chez moi (retour du ciné, narco, qui est pas mal).

      Dis , tu bosses en direct sur ta page web ??

      La ligne qui fait le emerge pour remplir ton fichier texte était commenté (l50) (pour les tests je suppose) et le mode pour le open (l49) était en 'r' (que j'ai remplacé par un 'w+').

      Après ces quelques modifs (je n'avais jamais fait de python, mais à ce niveau la je m'en sort encore :) ton script marche (bien même) sur une machine pas du tout à jour. Merci, simple et efficace :)

      Reste plus qu'à enchainer le resultat sur un emerge ^^

      Je ne donnerais pas le résultat ici, c'est pas beau à voir :p

      PS : si tu ne l'as pas encore fais, pose le sur le forum de gentoo, tu auras quelques clients je pense.
  • # Changements en vue

    Posté par  (site web personnel) . Évalué à 3.

    Pas mal du tout en effet. Même si le script se termine par une petite erreur, j'ai bien eu la liste des packages concernés par un GLSA.

    > Traceback (most recent call last):
    > File "myglsa.py", line 80, in ?
    > testvuln = eval(ev)
    > File "", line 0, in ?
    > AttributeError: 'str' object has no attribute '__rge__'


    Comme je ne cause pas (encore) Python, je ne suis pas en mesure de trouver d'où celà vient. Par contre quelques interrogations me viennent à l'esprit: comment ton outil gère-t-il les slots? La solution de créer les packages la nuit est effectivement la meilleure. As-tu eu connaissance du GLEP 19 http://www.gentoo.org/proj/en/glep/glep-0019.html(...) dont l'objectif se rapproche du tiens? D'après Sune Kloppenborg, ils sont en train de travailler dessus. Peut-être devrais-tu prendre contact avec eux pour voir si ton code les intéresse?
    • [^] # Re: Changements en vue

      Posté par  . Évalué à 2.

      Merci pour l'erreur, il y a un cas de comparaison de pkg qui n'est pas géré ('rge'). La liste que tu recupère ne doit pas être complete. Je rajouterai le cas et une exception à l'occase ...

      Merci pour l'url sur glep, mais cet outil est un peu different puisqu'il vise à faire des portages alternatifs pour gérer les maj.

      Prendre contact avec gentoo c'est sans doute bcp pour un script de moins de 100 lignes :)
      • [^] # Re: Changements en vue

        Posté par  . Évalué à 3.

        J'ai patché en attendant pour ignorer l'erreur.
        A suivre ...
      • [^] # Re: Changements en vue

        Posté par  (site web personnel) . Évalué à 3.

        > Merci pour l'url sur glep, mais cet outil est un peu different puisqu'il vise à faire des portages alternatifs pour gérer les maj.

        C'est presque celà: cette amélioration vise à fournir un arbre de Portage stable avec des ebuilds ayant une durée de vie supérieure à un an. N'y seront ajoutés que les patchs de sécurité. Voilà pourquoi je disais qu'il y avait des points communs entre ta démarche et celle de cette amélioration qui vise à rendre Gentoo adapté aux serveurs de production.

        > Prendre contact avec gentoo c'est sans doute bcp pour un script de moins de 100 lignes :)

        Bah tu sais, la ML sécurité a été litérallement noyée le mois dernier dans une gigantesque discussion sur la signature des ebuilds et des eclass, pour se terminer par un script de quelques lignes... ;)
  • # Heu... comment ca marche python?

    Posté par  (site web personnel) . Évalué à 2.

    # ./myglsa.py
    ./myglsa.py: line 4: glsadir: command not found
    ./myglsa.py: line 5: glsafiles: command not found
    ./myglsa.py: line 10: syntax error near unexpected token `('
    ./myglsa.py: line 10: `def listDir(dir):'



    # python myglsa.py
    Traceback (most recent call last):
    File "myglsa.py", line 70, in ?
    mergeres = getMergeDict()
    File "myglsa.py", line 49, in getMergeDict
    emergeResFile = open(emergeResFileName,'r')
    IOError: [Errno 2] No such file or directory: './emerge-p-world2.txt'


    Alors c'est laquelle la bonne version?
  • # Des news ...

    Posté par  . Évalué à 1.

    En effet il restait une erreur. Le script remarche chez moi maintenant.


    J'ai corrigé quelques petits trucs. Mais en faisant cela j'ai trouvé quelques bugs qui demande du tps.

    Il faudra que je me penche dessus ce weekend ...


    J'ai mis une petite page d'info sur http://www.frafra.org/myglsa/(...)

    to be continued ...
    • [^] # Re: Des news ...

      Posté par  . Évalué à 1.

      Finalement, j'ai pas attendu le we. Il reste du taf, mais ca marche mieux. (plus de pkg trouvé).

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.