Mange sikkerhetseksperter og systemleverandører advarer nå mot en sårbarhet (CVE-2014-6271) som har blitt funnet i bash (Bourne Again SHell), en kommandotolk som er en del av GNU-prosjektet. Den programvaren er svært mye brukt i Unix-lignende systemer, inkludert OS X og Linux-distribusjoner. Sårbarheten kalles for «Shellshock» av enkelte.
Sårbarheten, som skal ha blitt oppdaget av franske Stephane Chazelas i forrige uke, involverer måten bash evaluerer «environment»-variabler på. Ifølge Red Hat er det en del av problemet at man kan lage slike variabler med spesielt utformede verdier allerede for bash kalles. Disse variablene kan inneholde kode som kjøres så snart skallet blir anropt.
Dette kan utnyttes av en angriper til å omgår restriksjoner i systemet ved at kommandoene i «environment»-variablene blir kjørt allerede før restriksjonene har blitt innført.
Sårbarheten skal ha blitt innført i versjon 1.13 av bash. Denne versjonen kom for mer enn 20 år siden. Det er ukjent om sårbarheten har blitt utnyttet tidligere.
Problemet med bash er at det ikke bare brukes av lokalt påloggede brukere som tar i bruk kommandolinjegrensesnittet, men potensielt også i en mengde andre sammenhenger. Red Hat nevner blant annet at Apaches webserver med modulene mod_cgi eller mod_cgid kan være berørt dersom CGI-skript enten er skrevet i bash eller starter underskall.
Maskiner som får tildelt IP-adresser ved hjelp av DHCP bruker skall-baserte skript til å konfigurere systemet. Disse kan hente verdier fra en potensielt ondsinnet server, noe som ifølge Red Hat kan føre til at vilkårlige kommandoer kan kjøres, typisk som root, på DCHP-klientmaskiner.
Alle versjonen av bash skal nå være patchet med en sikkerhetsfiks som sikrer at det ikke er tillatt med kode etter slutten på en bash-funksjon. Men bash-oppdateringene må distribueres og tas i bruk på alle berørte systemer, og det er tvilsomt at disse patchene løser hele problemet.
The bash patch seems incomplete to me, function parsing is still brittle. e.g. $ env X='() { (a)=>\’ sh -c “echo date”; cat echo
— Tavis Ormandy (@taviso) 24. september 2014
En ny patch skal derfor ha blitt utarbeidet. Men det er tvilsomt at den er blir bredt rullet ut allerede nå.
Verre enn Heartbleed?
Sikkerhetsbloggeren Robert Graham mener at Shellshock er minst like ille som SSL-sårbarheten Heartbleed, som ble oppdaget i våres. Det er fortsatt mange som ennå ikke har fjernet Heartbleed fra sine systemer.
I think I was wrong saying #shellshock was as big as #heartbleed. It’s bigger.
— Robert Graham (@ErrataRob) 25. september 2014
Graham begrunner dette med at bruken av bash, i likhet med OpenSSL, er svært uoversiktlig, fordi programmet utnyttes av så mange andre programmer på systemene. Dessuten brukes både bash og OpenSSL på svært mange systemer som sjelden blir oppdatert. Graham skriver at internett-tilknyttede videokameraer er spesielt utsatt fordi programvaren deres ofte bygger på web-tilknyttede bash-skripts, og fordi denne typen enheter typisk blir sjeldnere oppdatert enn pc-er og webservere.
Det som kanskje gjør Shellshock enda litt verre enn Heartbleed, er at det er langt enklere å utnytte det. Illustrasjonen i toppen av artikkelen viser hvordan et enkelt eksempel tar seg ut på i henholdsvis en sårbar og en patchet utgave av bash.
Alle som har berørte systemer, inkludert Linux, BSD og Mac OS X, anbefales å installere sikkerhetsoppdateringene så snart som mulig. Det har ikke kommet meldinger om omfattende angrep basert på sårbarheten, men siden den er så enkel å utnytte, er det trolig bare et tidsspørsmål før det vil skje.
Leave a Reply