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 (
less
sembra 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
rlogin
etc? (Penso che telnet abbia propagatoDISPLAY
per 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 ?