Waarom Shellshock echt zorgen baart

© web
Guy Kindermans Guy Kindermans is freelance journalist bij Data News.

Het probleem is dubbel: Shellshock maakt een onbekend maar bijzonder groot aantal systemen (en toepassingen) kwetsbaar, en de bug kan makkelijk worden misbruikt door misdadigers.

De naam ‘Shellshock’ verwijst naar het misbruik van een wijdverspreide tool in Unix-gerichte omgevingen – een ‘shell’ – waarbij de misdadiger ‘aangepaste’ variabelen invoert om bevelen uit te voeren die normalerwijze niet vrijelijk mogen worden uitgevoerd (1).

Hiervoor wordt gebruik gemaakt van een zwakte in de Bash-shell – alias ‘Bourne-again shell’ – een free software alternatief voor de Bourne shell uitgebracht in 1989. Deze shell wordt aangeboden in het kader van het GNU platform en is standaard in heel wat Linux versies en het Apple Mac OS X besturingssysteem. Bash werd ook overgezet naar de Windows omgeving.

Waarom erg?

Zoals ook in andere omgevingen wordt in een Unix omgeving gebruik gemaakt van een ‘shell’ op het besturingssysteem om rechtstreeks commando’s in te geven, voor interactie met het systeem en de toepassingen die er op draaien.

Het vormt in wezen een toepassing die een brede toegang heeft tot het hele systeem, zelfs tot de kernel van het besturingssysteem. Het Amerikaanse standaardinstituut omschrijft de mogelijke gevolgen van Shellshock uiterst droog als: “allows unauthorized disclosure of information, allows unauthorized modification, allows disruption of service.”

Niet alleen de brede aanvalsmogelijkheden maken Bash erg. De Bash shell is ook bijzonder populair en wordt op zeer ruime schaal gebruikt. Zo wordt deze shell door veel programma’s in de achtergrond gedraaid om toegang te hebben tot specifieke functies, en is dus in heel wat meer systemen actief dan de gebruikers allicht vermoeden.

Als Heartbleed al erg was omwille van de grote aantallen sites die door het probleem waren getroffen, is Shellshock nog erger omdat heel veel langer het probleem in een onbekend aantal omgevingen en toepassingen werd ingebakken… Inclusief allicht industriële of andere non-bedrijfsadministratieve ict-installaties.

In een artikel werd die kwetsbaarheid ietwat scherp gesteld door zelfs ‘slimme lampen’ als mogelijk slachtoffer te suggereren.

Deze waarschuwingen wijzen in ieder geval op de potentieel uitermate wijde verspreiding van het probleem, met alle perikelen van dien om het probleem te verhelpen.

Bij Red Hat werd al gereageerd op de security blog, met verwijzing naar een eerste ‘workaround’ en een FAQ.

Op verscheidene sites wordt de volgende test aangeboden:

Type this in your shell

env x='() { :;}; echo vulnerable’ bash -c ‘echo hello’

If it says vulnerable then you are vulnerable.

If it says

bash: warning: x: ignoring function definition attempt

bash: error importing function definition for `x’

hello

then you are good.

Apple zelf heeft nog niet gereageerd, maar het onderwerp wordt wel besproken in Apple support communities en een hele rist Apple-gerichte sites.

Conclusie

Shellshock vereist stevig wat aandacht van systeembeheerders op korte termijn. Genoeg om er ‘shellshocked’ van te zijn…

Tevens is het eens te meer een ‘wake up call’ voor ontwikkelaars van systemen en toepassingen om meer aandacht te besteden aan de kwaliteit en veiligheid van de tools, frameworks en componenten waarvan ze gebruik maken.

Populariteit alleen is blijkbaar niet voldoende om als bedrijf de veelgebruikte componenten zelf te onderzoeken en duidelijk te documenteren wat in welke omgeving, voor welke toepassing en in welke versie wordt aangewend.

Ter herinnering

De Heartbleed-bug is een zwakte in de implementatie van een onderdeel om beveiligde verbindingen met sites tot stand te brengen, in casu OpenSSL. Hierdoor kunnen misdadigers meer informatie uit de communicatie plukken, dan gewenst, zoals eventueel wachtwoorden en andere authenticatie informatie.

(1) De CVE-2014-7169 omschrijft het probleem als volgt “GNU Bash through 4.3 bash43-025 processes trailing strings after certain malformed function definitions in the values of environment variables, which allows remote attackers to write to files or possibly have unknown other impact via a crafted environment,[…]”

Fout opgemerkt of meer nieuws? Meld het hier

Partner Content