El error de shellshock y la característica subyacente que permite la Importación de Funciones desde el Ambiente (lo llamo FIE), han estado en bash desde al menos 1993, antes del aumento de CGI.
En ese momento, el resto del entorno Unix / Linux / GNU era muy diferente.
Así que en ese momento en la historia:
- ¿Se permitieron los scripts de setuid en ese momento?
- ¿Fueron los scripts setuid parte de la configuración predeterminada en ese momento?
- ¿Las llamadas
system(3)
ypopen(3)
fueron usadas rutinariamente por los binarios setuid en ese momento?- los usos comunes son para expandir globos de shell (
less
parece usarlo para esto, pero no está configurado) y ejecutar comandos externos
- los usos comunes son para expandir globos de shell (
- ¿Era común en ese momento heredar el entorno cuando
su
-ing? - ¿Se podría propagar el entorno con elementos como
rlogin
etc? (Creo que telnet propagóDISPLAY
por defecto). - ¿Hay alguna característica que haga que el error de la FIE sea más problemático en ese entonces?
Entonces, ¿qué tan grave fue este error de escalada de privilegios y ejecución de código, que se ha ocultado a simple vista durante más de veinte años, cuando se introdujo originalmente ?