porter wrote:
I absolutely astounded that the authors of bash thought it a neat idea to
(a) export functions via environment variables
(b) execute contents of any environment variable with the script parser/handler
Its like somebody shooting themselves in the head with every revolver they find to see if they are loaded.
Plonkers!
Part of the problem is that Bash is just too complex. The design of the Bourne shell was convoluted enough, and then they add on so many "special features." Glad that my "/bin/sh" is "/bin/dash", and I will use Bash only for custom shell scripts using Bash features.
Actually some of the extra features in Bash are useful, like in-process testing with "[[ ]]", and in-process arithmetic with "let". By switching over to Bash features, some of the programs I've written have become much more efficient. These are all available in ksh88 and mksh, though.
When a system relies on one component so much, that component has to be simple, safe, and sturdy. Even aside from this Shellshock vulnerability, Bash is very questionable for the role of "/bin/sh". It's too complex.