Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Linux et Unix affectés par une faille critique dans Bash

32 réponses
Avatar
andre_debian
La vuln=E9rabilit=E9 pourrait constituer une plus grande menace que Heartbl=
eed

www.developpez.com/actu/75661/Linux-et-Unix-affectes-par-une-faille-critiqu=
e-dans-Bash-la-vulnerabilite-pourrait-constituer-une-plus-grande-menace-que=
=2DHeartbleed/

http://seclists.org/oss-sec/2014/q3/649

Info, hoax ou intox ?

Andr=E9

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-REQUEST@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmaster@lists.debian.org
Archive: https://lists.debian.org/201409252224.51179.andre_debian@numericable.fr

10 réponses

1 2 3 4
Avatar
Belaïd
--e89a8f64333012ea990503f51485
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

bonjour,
Le 26 sept. 2014 11:25, "admini" a écrit :

Le 26/09/2014 11:16, a écrit :

On Friday 26 September 2014 07:56:06 JUPIN Alain wrote:

env x='() { :;}; echo vulnerable' bash -c 'echo hello'




J'ai upgradé bash et relancé, tapé la commande ci-dessus
et j'ai ce message de warning :

"bash: warning: x: ignoring function definition attempt
bash: erreur lors de l'import de la définition de fonction pour  « x »
hello"




il faut refaire l'upgrade une fois. il y a une nouvelle upgrade de bash c e
matin, il devrait afficher que hello sans erreur.


Quid ?

André




--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/





--e89a8f64333012ea990503f51485
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<p dir="ltr">bonjour,<br>
</p>
<div class="gmail_quote">Le 26 sept. 2014 11:25, &quot;admini&quot; &lt;< a href="mailto:"></a>&gt; a à ©crit :<br type="attribution"><blockquote class="gmail_quote" style ="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Le 26/09 /2014 11:16, <a href="mailto:" target="_blan k"></a> a écrit :<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1p x #ccc solid;padding-left:1ex">
On Friday 26 September 2014 07:56:06 JUPIN Alain wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1p x #ccc solid;padding-left:1ex">
env x=&#39;() { :;}; echo vulnerable&#39; bash -c &#39;echo hello&#39;<br >
</blockquote>
<br>
J&#39;ai upgradé bash et relancé, tapé la commande ci-dessus <br>
et j&#39;ai ce message de warning :<br>
<br>
&quot;bash: warning: x: ignoring function definition attempt<br>
bash: erreur lors de l&#39;import de la définition de fonction pour « x »<br>
hello&quot;<br>
</blockquote>
<br>
il faut refaire l&#39;upgrade une fois. il y a une nouvelle upgrade de bash ce matin, il devrait afficher que hello sans erreur.<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1p x #ccc solid;padding-left:1ex">
<br>
Quid ?<br>
<br>
André<br>
<br>
</blockquote>
<br>
-- <br>
Lisez la FAQ de la liste avant de poser une question :<br>
<a href="http://wiki.debian.org/fr/FrenchLists" target="_blank">http:// wiki.debian.org/fr/<u></u>FrenchLists</a><br>
<br>
Pour vous DESABONNER, envoyez un message avec comme objet &quot;unsubscribe &quot;<br>
vers <a href="mailto:" target ="_blank">debian-user-french-REQUEST@<u></u>lists.debian.org</a><br>
En cas de soucis, contactez EN ANGLAIS <a href="mailto: ebian.org" target="_blank"></a><br>
Archive: <a href="https://lists.debian.org/ " target="_blank">https://lists.debian.org/<u></u> ome.com</a><br>
<br>
</blockquote></div>

--e89a8f64333012ea990503f51485--

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/CAFuS2bbV88uOfq6jh5GFh+
Avatar
Belaïd
--f46d044303e6120b4a0503f51bfc
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

bonjour,
la nouvelle mise à jour bash 4.2+dfsg-0.1+deb7u3 a vue le jour hier so ir
vers 23h30
Le 26 sept. 2014 11:25, "admini" a écrit :

Le 26/09/2014 11:16, a écrit :

On Friday 26 September 2014 07:56:06 JUPIN Alain wrote:

env x='() { :;}; echo vulnerable' bash -c 'echo hello'




J'ai upgradé bash et relancé, tapé la commande ci-dessus
et j'ai ce message de warning :

"bash: warning: x: ignoring function definition attempt
bash: erreur lors de l'import de la définition de fonction pour  « x »
hello"




il faut refaire l'upgrade une fois. il y a une nouvelle upgrade de bash c e
matin, il devrait afficher que hello sans erreur.


Quid ?

André




--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/





--f46d044303e6120b4a0503f51bfc
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<p dir="ltr">bonjour,<br>
la nouvelle mise à jour bash 4.2+dfsg-0.1+deb7u3 a vue le jour hier so ir vers 23h30</p>
<div class="gmail_quote">Le 26 sept. 2014 11:25, &quot;admini&quot; &lt;< a href="mailto:"></a>&gt; a à ©crit :<br type="attribution"><blockquote class="gmail_quote" style ="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Le 26/09 /2014 11:16, <a href="mailto:" target="_blan k"></a> a écrit :<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1p x #ccc solid;padding-left:1ex">
On Friday 26 September 2014 07:56:06 JUPIN Alain wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1p x #ccc solid;padding-left:1ex">
env x=&#39;() { :;}; echo vulnerable&#39; bash -c &#39;echo hello&#39;<br >
</blockquote>
<br>
J&#39;ai upgradé bash et relancé, tapé la commande ci-dessus <br>
et j&#39;ai ce message de warning :<br>
<br>
&quot;bash: warning: x: ignoring function definition attempt<br>
bash: erreur lors de l&#39;import de la définition de fonction pour « x »<br>
hello&quot;<br>
</blockquote>
<br>
il faut refaire l&#39;upgrade une fois. il y a une nouvelle upgrade de bash ce matin, il devrait afficher que hello sans erreur.<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1p x #ccc solid;padding-left:1ex">
<br>
Quid ?<br>
<br>
André<br>
<br>
</blockquote>
<br>
-- <br>
Lisez la FAQ de la liste avant de poser une question :<br>
<a href="http://wiki.debian.org/fr/FrenchLists" target="_blank">http:// wiki.debian.org/fr/<u></u>FrenchLists</a><br>
<br>
Pour vous DESABONNER, envoyez un message avec comme objet &quot;unsubscribe &quot;<br>
vers <a href="mailto:" target ="_blank">debian-user-french-REQUEST@<u></u>lists.debian.org</a><br>
En cas de soucis, contactez EN ANGLAIS <a href="mailto: ebian.org" target="_blank"></a><br>
Archive: <a href="https://lists.debian.org/ " target="_blank">https://lists.debian.org/<u></u> ome.com</a><br>
<br>
</blockquote></div>

--f46d044303e6120b4a0503f51bfc--

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/CAFuS2baYrehc4GyjeSX6QU7g-dRrA4iYxgTMQBeMj=
Avatar
Frédéric MASSOT
Le 26/09/2014 11:44, Sébastien NOBILI a écrit :
Bonjour,

Le vendredi 26 septembre 2014 à 11:03, Frédéric MASSOT a écrit :
Sur un serveur web, est-ce que le fait d'avoir le lien "/bin/sh" vers dash
empêche ce type d'attaque ou limite l'attaque à certain CGI mal écrit ?



Si tous les CGI utilisent « /bin/sh », alors pas de problème. En revanche, ceux
qui utiliseraient explicitement « /bin/bash » seraient impactés.

La meilleure parade reste de toute façon la mise-à-jour de Bash…



D'après ce que je comprends, le problème toucherait toutes applications
visibles sur Internet et qui utiliserait Bash avec les fonctions du type
system(), popen(), etc, et donc quelque soit le langage utilisé, PHP,
Python...


--
============================================= | FRÉDÉRIC MASSOT |
| http://www.juliana-multimedia.com |
| mailto: |
| +33.(0)2.97.54.77.94 +33.(0)6.67.19.95.69 |
==========================Þbian=GNU/Linux==
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
Avatar
Yves Rutschle
On Fri, Sep 26, 2014 at 11:10:53AM +0200, Francois Lafont wrote:
Perso, même si c'est vraiment une grosse faille, ça me semble moins
grave que Heartbleed.



Ça se discute, les effets n'étant pas le même...

Par exemple, ici il va falloir mettre à jour les serveurs:
c'est lourd, mais on sait faire. Par conter, ne pas mettre à
jour, c'est laisser son serveur ouvert à 4 vents.

Avec Heartbleed, il fallait demander aux utilisateurs de
changer leurs mots de passe, recréer des certificats etc...
beaucoup plus d'impact opérationel au final.

mais il me semble que si l'on prend l'exemple d'un serveur
Web, ça n'est pas simple de pouvoir exploiter cette faible
à distance. Parce qu'il faut déjà que le serveur web soit
amené à lancer un bash ce qui me semble pas toujours le
cas (mais il paraît que ça peut arriver avec du cgi par
exemple) mais surtout il faut que l'attaquant arrive à
distance à faire en sorte qu'une nouvelle variable
d'environnement soit définie au moment où le bash
s'exécute sur le serveur et ça, ça me semble pas évident à
distance.



La définition de CGI, c'est que le serveur Web communique au
script les paramètres de la communication (URL, query, IP
source, ce genre de choses) par l'intermédiaire de variables
d'environnements (REQUEST_URI, si ma mémoire est bonne).

Donc tout script CGI a des variables d'environnements qui
sont au final définies par le client.

Donc tout script CGI bash est exploitable trivialement.

En effet, la faille s'exploite en définissant une variable
d'environnement qui fera partie du processus du bash. Mais si un
attaquant arrive à faire cela, alors sans même que cette faille existe,
ça veut dire qu'il peut modifier le PATH par exemple et potentiellement
déjà mettre un peu la pagaille, non ?



Il ne pourra pas modifier PATH, mais il lui suffit de
pouvoir agir sur certaines, et c'est bien le cas.

Y.

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
Avatar
Vincent Lefevre
On 2014-09-26 11:10:53 +0200, Francois Lafont wrote:
Perso, même si c'est vraiment une grosse faille, ça me semble moins
grave que Heartbleed.



Je suis d'accord.

Je vais peut-être dire des bêtises (auquel cas
je serais ravi d'avoir des explications) mais il me semble que si
l'on prend l'exemple d'un serveur Web, ça n'est pas simple de pouvoir
exploiter cette faible à distance. Parce qu'il faut déjà que le serveur
web soit amené à lancer un bash ce qui me semble pas toujours le cas
(mais il paraît que ça peut arriver avec du cgi par exemple) mais
surtout il faut que l'attaquant arrive à distance à faire en sorte
qu'une nouvelle variable d'environnement soit définie au moment où
le bash s'exécute sur le serveur et ça, ça me semble pas évident à
distance.



Il suffit d'un script CGI qui stocke par exemple les valeurs des
paramètres dans une variable d'environnement donnée, et qu'un shell
bash soit exécuté par le script CGI ou un descendant. Mais sachant
que l'environnement est hérité par tous les descendants, utiliser
des variables d'environnement pour des paramètres locaux à un
script CGI est une façon sale de programmer.

En effet, la faille s'exploite en définissant une variable
d'environnement qui fera partie du processus du bash. Mais si un
attaquant arrive à faire cela, alors sans même que cette faille existe,
ça veut dire qu'il peut modifier le PATH par exemple et potentiellement
déjà mettre un peu la pagaille, non ?



Normalement non, car le processus qui va définir la variable
d'environnement va typiquement choisir un nom fixé, par exemple
PROCNAME_PARAMETERS.

À noter que les variables d'environnement contenant des lettres
minuscules n'ont pas de signification particulière et sont réservées
aux applications. Cela signifie que les utiliser avec n'importe
quelle valeur ne devrait pas poser de problème. Mais bash est
toujours vulnérable sur ce point, car on peut redéfinir ainsi des
commandes standard (echo, eval, exec, set, etc.), dont au moins
une se trouve très probablement dans le script shell. C'est cependant
encore moins évident à exploiter (l'ensemble des applications
affectées se réduit encore).

Il y avait aussi l'exemple d'un serveur DHCP malicieux qui était
donné, mais dans un tel cas, il y a probablement d'autres problèmes
de sécurité (cf les sites qui distribuent des programmes en http
non sécurisé[*], sans même parler de https avec des certificats
dont la révocation n'est pas vérifiée...).

[*] Dans ce cas, l'utilisateur doit pouvoir vérifier la signature (si
celle-ci est fournie) de manière fiable, ce qui n'est pas évident.

--
Vincent Lefèvre - Web: <https://www.vinc17.net/>
100% accessible validated (X)HTML - Blog: <https://www.vinc17.net/blog/>
Work: CR INRIA - computer arithmetic / AriC project (LIP, ENS-Lyon)

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
Avatar
Vincent Lefevre
On 2014-09-26 11:44:05 +0200, Sébastien NOBILI wrote:
Le vendredi 26 septembre 2014 à 11:03, Frédéric MASSOT a écrit :
> Sur un serveur web, est-ce que le fait d'avoir le lien "/bin/sh" vers dash
> empêche ce type d'attaque ou limite l'attaque à certain CGI mal écrit ?

Si tous les CGI utilisent « /bin/sh », alors pas de problème. En
revanche, ceux qui utiliseraient explicitement « /bin/bash »
seraient impactés.



Ou ceux qui exécutent un programme menant indirectement à l'exécution
de bash, puisque l'environnement est hérité.

grep /bin/bash /bin/* /usr/bin/*

peut donner une idée de ce qui ne doit pas être exécuté (directement
ou indirectement).

--
Vincent Lefèvre - Web: <https://www.vinc17.net/>
100% accessible validated (X)HTML - Blog: <https://www.vinc17.net/blog/>
Work: CR INRIA - computer arithmetic / AriC project (LIP, ENS-Lyon)

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
Avatar
Vincent Lefevre
On 2014-09-26 11:33:50 +0200, Yves Rutschle wrote:
On Fri, Sep 26, 2014 at 11:10:53AM +0200, Francois Lafont wrote:
> Perso, même si c'est vraiment une grosse faille, ça me semble moins
> grave que Heartbleed.

Ça se discute, les effets n'étant pas le même...

Par exemple, ici il va falloir mettre à jour les serveurs:
c'est lourd, mais on sait faire. Par conter, ne pas mettre à
jour, c'est laisser son serveur ouvert à 4 vents.



C'était pareil avec Heartbleed: les serveurs avec OpenSSL devaient
être mis à jour.

Avec Heartbleed, il fallait demander aux utilisateurs de
changer leurs mots de passe, recréer des certificats etc...
beaucoup plus d'impact opérationel au final.



Oui, et en plus, comme la majorité des navigateurs ne vérifie pas
la révocation des certificats (au moins par défaut), cela peut
encore faire des dégâts.

La définition de CGI, c'est que le serveur Web communique au
script les paramètres de la communication (URL, query, IP
source, ce genre de choses) par l'intermédiaire de variables
d'environnements (REQUEST_URI, si ma mémoire est bonne).



Ceci dit, il faut que les deux premiers caractères de la valeur
soient "()". Pas possible pour certaines variables. Peut-être
query?

Donc tout script CGI a des variables d'environnements qui
sont au final définies par le client.

Donc tout script CGI bash est exploitable trivialement.



Mais de tels scripts ne doivent pas être très courants.

Si le serveur web exécute le script via system() et que /bin/sh
est bash, c'est aussi exploitable.

--
Vincent Lefèvre - Web: <https://www.vinc17.net/>
100% accessible validated (X)HTML - Blog: <https://www.vinc17.net/blog/>
Work: CR INRIA - computer arithmetic / AriC project (LIP, ENS-Lyon)

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
Avatar
S
Le vendredi 26 septembre 2014 à 12:45, Vincent Lefevre a écrit :
Ou ceux qui exécutent un programme menant indirectement à l'exécution
de bash, puisque l'environnement est hérité.

grep /bin/bash /bin/* /usr/bin/*

peut donner une idée de ce qui ne doit pas être exécuté (directement
ou indirectement).



Ouah, j'étais jamais allé vérifier les sheebangs dans ces dossiers, je ne
pensais pas trouver autant de scripts maqués avec Bash !

C'est dommage car la plupart d'entre eux pourraient sûrement être rendus
compatibles avec le standard à moindre frais…

Seb

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
Avatar
Philippe Gras
Le 26 sept. 14 à 11:44, Sébastien NOBILI a écrit :

Bonjour,

Le vendredi 26 septembre 2014 à 11:03, Frédéric MASSOT a écrit :
Sur un serveur web, est-ce que le fait d'avoir le lien "/bin/sh"
vers dash
empêche ce type d'attaque ou limite l'attaque à certain CGI mal
écrit ?



Si tous les CGI utilisent « /bin/sh », alors pas de problème. En
revanche, ceux
qui utiliseraient explicitement « /bin/bash » seraient impactés.

La meilleure parade reste de toute façon la mise-à-jour de Bash…



Bien sûr. Ceci dit, et si la faille existe depuis 22 ans comme
c'était écrit dans l'article,
elle n'a sans doute pas été connue par énormément de pirates
potentiels… Ce n'est
certainement pas la peine de flipper.


Seb

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet
"unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/





--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
Avatar
Francois Lafont
Merci pour vos réponses.

Effectivement je me trompais. Si j'ai bien compris, le problème
n'est pas le fait qu'un attaquant (via le web, je me plaçais dans
cette hypothèse) puisse *créer* une variable d'environnement
particulière qu'un processus local bash utilisera ensuite. Le
problème n'est pas vraiment là car ceci normalement est difficilement
réalisable. Le problème c'est qu'un attaquant puisse s'arranger pour
*définir* de manière malicieuse une variable d'environnement *déjà*
utilisée de base par un processus local bash, ce qui serait davantage
faisable.

Par exemple, on peut supposer qu'un script bash en cgi récupère
le "user agent" en tant que variable d'environnement, alors dans
ce cas le méchant pirate paramètre son navigateur pour que le user
agent soit :

"() { true;}; rm -rf --no-preserve-root /"

Par exemple. ;)

--
François Lafont

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/m03p6p$m4q$
1 2 3 4