Log4shell; een beknopte uitleg.
LOG4SHELL IS DÈ KWETSBAARHEID VAN HET AFGELOPEN DECENNIUM
Kwetsbaarheden worden elke dag ontdekt. Hoewel sommige serieus kunnen zijn, zijn de meeste niet zo spannend dat ze iedereen gelijk in staat van paraatheid brengen. Dit is echter wel het geval bij de Log4J [ook Log4Shell genoemd]. Deze cyberbibliotheek blijkt ook niet bestendig tegen cybercriminelen. En er zijn maar weinig bedrijven waar dit geen invloed op heeft... Maar wat is het precies? Wie treft het? En waarom is het hele internet in paniek? Allemaal vragen die je jezelf wellicht stelt. Wij nemen je mee in een beknopte uitleg over wat deze lek inhoudt, met op het eind nog een technische notitie voor de techneuten onder ons.
WAT IS LOG4SHELL PRECIES?
Wanneer een programmeur code schrijft, schrijft hij/zij vaak niet iedere regel code opnieuw, maar hergebruikt deze dezelfde stukjes code steeds opnieuw voor soortgelijke taken. Deze specifieke codes worden opgeslagen in de Log4J-bilbliotheek, door mensen en bedrijven, om anderen te helpen. Dit is de kracht van deze bibliotheek; de code hoeft maar één keer geschreven te worden en kan vervolgens vele malen gebruikt worden.
WAT IS ER ONTDEKT?
Begin november 2021 is er een lek ontdekt door het Cloud beveiligingsteam van Alibaba bij de leverancier Apache Foundation. Samen hebben ze ervoor gezorgd dat er een oplossing beschikbaar was, voordat de details van de kwetsbaarheid openbaar werden gemaakt. Het Log4J-project van Apache Foundation wordt beschouwd als een van de gemakkelijkste en is een veelgebruikt open source tool bij het bouwen van een applicatie.
WAT IS DE LOG4SHELL-KWETSBAARHEID?
Het Alibaba-team ontdekte dat de Log4J niet naar behoren werkte. Normaal gesproken legt een logger codes vast van wat er gebeurt en maakt hier een notitie van. De Log4J gebruikt, net als alle andere programma’s, daarbij variabelen [tijd, datum] om gegevens in te vullen. Echter moet dit, voorzichtig gebeuren en vooral als het gegevens van een eindgebruiker [een mogelijke aanvaller!] opneemt.
VOORBEELD:
Denk aan een eenvoudig programma zoals een Hello-programma. Als je start vraagt het om je naam in te voeren: als je Jaap heet, antwoordt het "Hallo, Jaap!". Om dit te doen heeft het een variabele nodig voor Naam. Het programma kan er dus als volgt uitzien:
$naam = [invoer van gebruiker]
print 'Hallo, $naam'
Het $ teken vertelt het programma om te zoeken naar een variabele genaamd $name. De variabele wordt toegewezen met de invoer van de gebruiker, in dit voorbeeld het woord "Jaap".
WAT GAAT ER MIS MET LOG4SHELL?
Wanneer Log4J de logboeken schrijft van wat er gebeurt, volgt het een sjabloon en vult het zulke variabelen in voordat het zijn record schrijft. Dit is waar zaken een beetje ontsporen voor Log4J, want in plaats van daar te stoppen doet het programma iets complexer waardoor het ook iets ongewensts doen.
Bij het invullen van de variabelen halen sommige daarvan gegevens van het internet, en blijft dit herhalen.
Als de eindgebruiker echter een aanvaller is, kunnen ze op een speciale manier om een kopje koffie vragen die het proces onderbreekt en verandert in: "Ik heb melk nodig, ga naar het donkere steegje achter de plasticfabriek en breng wit water terug". Uw aanvraag gaat dan verder met het zetten van de koffie zonder te controleren of de 'melk' legitiem was.
Dit is in wezen wat Log4J aan het doen is, er wordt hem verteld om wat code in te voeren en uit te voeren zonder te controleren wie het heeft geschreven of waar het vandaan komt. Dit betekent dat aanvallers elke code kunnen uitvoeren die ze willen op de computer van het slachtoffer. En dan staat de deur staat open cyber aanvallers. Daarna kunnen ze elke code uitvoeren die ze willen op de computer van het slachtoffer.
WAT BETEKENT DIT VOOR JOU?
Wereldwijd hebben vakmensen gezocht, gevonden en geprobeerd dit probleem op te lossen. Het is helaas te vroeg om te juichen, maar er wordt hard aan gewerkt. Je gaat merken dat je computer en je apparaten in de komende dagen gaan vragen updates uit te voeren, het zogenaamde patching en het hardenen van software en systemen. En doe dit dan ook direct, hoe frustrerend dit ook kan zijn. Het is de enige manier om de kans op een aanval te verminderen.
Wij helpen je graag om de huidige IT veilige situatie in jouw bedrijf te checken!