Page 1 sur 1
[Shellshock] Faille dans Bash - Besoin de préciser (Résolu)
Publié : sam. 27 sept. 2014, 19:23
par waitnsea
Bonsoir,
Tout le monde a appris la faille de bash, et testé différentes commandes :
qui renvoie un refus de permission
01net.com propose :
Code : Tout sélectionner
env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
qui ne retourne pas le "vulnérable" signant la vulnérabilité
Voilà
QuebecOS qui apporte sa touche :
Code : Tout sélectionner
env x=’() { :;}; echo vulnerable’ bash -c « echo this is a test »
Le système est vulnérable si le résultat est:
vulnerable / this is a test.
Sous zsh, j'obtiens :
Code : Tout sélectionner
asus% env x=’() { :;}; echo vulnerable’ bash -c « echo this is a test »
vulnerable’ bash -c « echo this is a test »
Indice de vulnérabilité ? Bizarre...
Si je passe en bash :
Code : Tout sélectionner
asus% bash
[waitnsea@asus ~]$ env x=’() { :;}; echo vulnerable’ bash -c « echo this is a test »
bash: erreur de syntaxe près du symbole inattendu « ( »
Q_OS s'emmêle ?
Re: [Shellshock] Faille dans Bash - Besoin de préciser
Publié : sam. 27 sept. 2014, 19:38
par benjarobin
Il y a 2 tests à réaliser :
Code : Tout sélectionner
env X='() { (a)=>\' `which bash` -c "echo date"; cat echo; rm -f echo
env X="() { :;} ; echo shellshock" `which bash` -c "echo completed"
Si le premier affiche la date, c'est qu'il y a une faille dans bash
Si le second test affiche le texte
shellshock
, c'est qu'il y a une faille dans bash
Pour information zsh n'est pas vulnérable aux 2 failles, mais comme bash est utilisé pour tous les scripts cela ne change rien
Pour tester zsh :
Code : Tout sélectionner
env X='() { (a)=>\' `which zsh` -c "echo date"; cat echo; rm -f echo
env X="() { :;} ; echo shellshock" `which zsh` -c "echo completed"
Re: [Shellshock] Faille dans Bash - Besoin de préciser
Publié : sam. 27 sept. 2014, 20:17
par waitnsea
Merci benjarobin,
Précis et définitif...

Re: [Shellshock] Faille dans Bash - Besoin de préciser
Publié : dim. 05 oct. 2014, 18:46
par waitnsea
benjarobin a écrit :Pour information zsh n'est pas vulnérable aux 2 failles, mais comme bash est utilisé pour tous les scripts cela ne change rien
Je remonte ce post: QuebecOS signale que Fedora remplacera le shell par défaut par dash
voir ceci
ZSH offre bien plus de fonctionnalités, mais pour l'éxécution des scripts, ce shell léger et rapide semble très approprié.
Un moyen simple (lien ?) de configurer le système vers lui plutôt que bash ?
Re: [Shellshock] Faille dans Bash - Besoin de préciser (Réso
Publié : dim. 05 oct. 2014, 18:53
par benjarobin
Au début de tes script tu as ceci :
ou
Ce qui indique quel exécutable va être utilisé pour interpréter la suite du fichier. Donc l'exécutable /bin/bash ou /bin/sh (qui est un lien vers /bin/bash) est lancé.
L'astuce est de créer un paquet ayant comme dépendance
dash et fournissant comme dépendance
bash
(et qui remplace donc bash, ce dernier ne sera donc plus installé sur le système)
Dans le paquet créé il faut ajouter 2 liens symbolique (en faites ce sera son seul contenu) : /bin/bash et /bin/sh qui pointent vers /bin/dash
Donc oui c'est techniquement possible, mais je n'ai aucune idée des conséquences.
Re: [Shellshock] Faille dans Bash - Besoin de préciser (Réso
Publié : dim. 05 oct. 2014, 20:04
par waitnsea
Merci,
Code : Tout sélectionner
asus% sudo mv bash bkpbash
asus% sudo ln -s /usr/bin/dash /usr/bin/bash
Bien sûr, dash est installé...
Je lance une installation par Octopi (fenêtre du shell /bin/sh) tout se passe parfaitement.
À tester plus longuement.
EDIT hélas :
renvoie
Code : Tout sélectionner
asus% packer -Syu
/usr/bin/packer: 16: /usr/bin/packer: [[: not found
/usr/bin/packer: 30: /usr/bin/packer: [[: not found
/usr/bin/packer: 96: /usr/bin/packer: Syntax error: redirection unexpected
alors que :
Machine arrière, un gros boulot à faire, rien de simple apparemment.