Il bug shellshock e la funzione sottostante che consente l'importazione di funzioni dall'ambiente (lo chiamo FIE), sono state in bash almeno dal 1993, prima dell'ascesa di CGI.
A quel tempo, il resto dell'ambiente Unix / Linux / GNU era molto diverso.
Quindi in quel momento della storia:
- Sono stati consentiti script setuid in quel momento?
- Gli script setuid erano parte della configurazione predefinita in quel momento?
- Le chiamate
system(3)epopen(3)sono state utilizzate regolarmente dai binari setuid in quel momento?- usi comuni sono per espandere i globi di shell (
lesssembra usarlo per questo, ma non è setuid) ed eseguire comandi esterni
- usi comuni sono per espandere i globi di shell (
- era comune in quel momento ereditare l'ambiente quando
su-ing? - L'ambiente può essere propagato da cose come
rloginetc? (Penso che telnet abbia propagatoDISPLAYper impostazione predefinita). - Ci sono delle caratteristiche che potrebbero rendere più problematico il bug della FIE?
Quindi quanto è stato pessimo questo escalation di privilegi e bug di esecuzione del codice, che è stato nascosto in bella vista per oltre vent'anni, quando è stato inizialmente introdotto ?