env mafonction='() { echo "bonjour vous"; }; ' ...
est plus dangereux que
env mafonction='() { echo "bonjour vous"; ; }' ...
Parce que dans le premier cas, l'exécution est faite à l'évaluation de l'environnement donc sans qu'on ne fasse rien d'autre que d’exécuter le shell avec la variable settée... tandis que dans le second cas, il faut appeler la fonction,ce qu'on ne peut pas faire si on ne contrôle pas le script, alors que dans le premier cas, on n'a rien à faire, ça sera exécuté.
[^] # Re: Je pense avoir bien lu la dépèche mais...
Posté par allcolor . En réponse à la dépêche Une faille nommée « shellshock ». Évalué à 6.
Parce que dans le premier cas, l'exécution est faite à l'évaluation de l'environnement donc sans qu'on ne fasse rien d'autre que d’exécuter le shell avec la variable settée... tandis que dans le second cas, il faut appeler la fonction,ce qu'on ne peut pas faire si on ne contrôle pas le script, alors que dans le premier cas, on n'a rien à faire, ça sera exécuté.