Huis Securitywatch Ernstige bash-fout laat aanvallers linux- en Mac-computers kapen

Ernstige bash-fout laat aanvallers linux- en Mac-computers kapen

Video: Apple M1 Mac Review: Time to Recalibrate! (November 2024)

Video: Apple M1 Mac Review: Time to Recalibrate! (November 2024)
Anonim

Een bug ontdekt in Bash, een veelgebruikte commandotolk, vormt een cruciaal beveiligingsrisico voor Unix- en Linux-systemen, aldus beveiligingsexperts. En als je in de verleiding komt om het probleem af te doen als een serverprobleem, onthoud dan dat Mac OS X Bash gebruikt. Veel experts waarschuwen dat het misschien erger is dan Heartbleed.

Het beveiligingslek is aanwezig in de meeste versies van Bash, van versie 1.13 tot 4.3, volgens Stephane Chazelas, een Unix- en Linux-netwerk en telecombeheerder bij Akamai, die de bug voor het eerst openbaarde. Het Computer Emergency Response Team (CERT) van het Department of Homeland Security waarschuwde in een waarschuwing dat het beveiligingslek een hacker op afstand in staat zou stellen kwaadaardige code op een getroffen systeem uit te voeren. De NIST-kwetsbaarheidsdatabase heeft de fout 10 op 10 beoordeeld in termen van ernst.

"Deze kwetsbaarheid is potentieel een zeer groot probleem, " zei Tod Beardsley, engineering manager bij Rapid7.

De kwetsbaarheid heeft te maken met hoe Bash omgaat met omgevingsvariabelen. Wanneer u een functie toewijst aan een variabele, wordt elke extra code in de definitie ook uitgevoerd. Dus het enige dat een aanvaller hoeft te doen, is op de een of andere manier een aantal opdrachten in die definitie toevoegen - een klassieke code-injectie-aanval - en ze kunnen de getroffen machine op afstand kapen. Chazelas en andere onderzoekers die naar de fout hebben gekeken, hebben bevestigd dat het gemakkelijk te exploiteren is als de code wordt geïnjecteerd in omgevingsvariabelen, zoals de ForceCommand-functie in OpenSSH sshd, de mod_cgi en mod_cgid modules in Apache HTTP Server, of scripts die de omgeving voor DHCP-clients.

"Een groot aantal programma's op Linux en andere UNIX-systemen gebruiken Bash om omgevingsvariabelen in te stellen die vervolgens worden gebruikt bij het uitvoeren van andere programma's", schreef Jim Reavis, chief exec van de Cloud Security Alliance, in een blogpost.

Onvermijdelijke Heartbleed-vergelijking

Overweeg twee dingen over dit beveiligingslek: Linux / Unix-servers worden veel gebruikt in datacenters over de hele wereld en op veel apparaten ingebed; de kwetsbaarheid is al jaren aanwezig. Omdat Bash zo wijdverspreid is, is de vergelijking met Heartbleed, de kwetsbaarheid in OpenSSH die in april werd ontdekt, onvermijdelijk. Robert Graham van Errata Security heeft de fout ShellShock al genoemd.

Maar is het Heartbleed 2? Het is een beetje moeilijk te zeggen. Het is absoluut een serieus probleem, omdat het aanvallers toegang geeft tot de opdrachtshell, wat het gouden ticket is om te kunnen doen wat ze op die machine willen.

Laten we denken in termen van grootte. Apache-webservers voeden de overgrote meerderheid van websites ter wereld. Zoals we tijdens Heartbleed hebben geleerd, zijn er veel niet-Linux / Unix-machines die OpenSSH en Telnet gebruiken. En DHCP is belangrijk om het ons gemakkelijk te maken om op netwerken te springen. Dit betekent dat het naast computers en servers mogelijk is dat andere ingebedde systemen, zoals routers, ook kwetsbaar zijn voor kaping. Graham van Errata Security - die tot nu toe een van de meest grondige analyses van de bug heeft uitgevoerd - heeft enkele scans uitgevoerd en gemakkelijk een paar duizend kwetsbare servers gevonden, maar het is op dit moment een beetje moeilijk om de omvang van het probleem te schatten.

De Heartbleed-fout was echter alleen aanwezig door een kwetsbare versie van OpenSSL te hebben geïnstalleerd. Deze bug is niet zo eenvoudig.

"Het is niet zo 'simpel' als 'Bash runnen', " zei Beardsley. Om de machine kwetsbaar te maken voor aanvallen, moet er een applicatie (zoals Apache) zijn die gebruikersinvoer inneemt (zoals een User-Agent header) en deze in een omgevingsvariabele plaatst (wat CGI-scripts doen), zei hij. Moderne webframes zullen over het algemeen niet worden beïnvloed, zei hij.

Dit is misschien de reden waarom Graham zei dat ShellShock even ernstig is als Heartbleed: "Er is weinig reden om deze bug te haasten en op te lossen. Je primaire servers zijn waarschijnlijk niet kwetsbaar voor deze bug."

Maar voordat we in paniek raken over routers en ingebedde apparaten (en het Internet of Things), moet je er rekening mee houden dat niet alle systemen Bash gebruiken. Ubuntu en andere van Debian afgeleide systemen kunnen een andere opdrachtinterpreter gebruiken met de naam Dash. Ingebedde apparaten gebruiken vaak een genaamd BusyBox, die niet kwetsbaar is, zei Roel Schouwenberg, een senior onderzoeker bij Kaspersky Lab, op Twitter.

Kwetsbaar of niet?

U kunt controleren of u kwetsbaar bent door de volgende opdrachten uit te voeren (code verstrekt door de CSA). Open een terminalvenster en voer de volgende opdracht in bij de $ prompt:

env x = '() {:;}; echo kwetsbaar bash -c "echo dit is een test"

Als u kwetsbaar bent, wordt afgedrukt:

kwetsbaar

dit is een test

Als je Bash hebt bijgewerkt, zie je alleen:

dit is een test

Normaal zou ik zeggen ga je gang en patch meteen, maar het blijkt dat de beschikbare patches niet compleet zijn. Er zijn nog steeds manieren om commando's te injecteren via omgevingsvariabelen, zelfs na het patchen van Bash, zei Red Hat vanmorgen. Als u slechts een handvol machines hebt, is het misschien de moeite waard om door te gaan en de beschikbare patches toe te passen, maar als u duizenden machines hebt om te patchen, is het misschien de moeite waard om nog een paar uur te wachten. Alle upstream Linux-distributies (en hopelijk Apple!) Werken momenteel aan een oplossing.

"Denk eraan, zelfs als je nog nooit van Bash hebt gehoord of het niet uitvoert, is het heel goed mogelijk dat er software op je computer draait die Bash-processen voortbrengt, " zei onafhankelijk beveiligingsadviseur Graham Cluley.

Ernstige bash-fout laat aanvallers linux- en Mac-computers kapen