Cyberdreigingen afgewend: de paasaanval op de supply chain

De IT Security community beleefde een interessant paasweekend. Een bijzonder slimme hacker probeerde bijna 20 miljoen internetservers te hacken, maar werd op het nippertje gestopt door een man uit San Francisco genaamd Andres Freund. Als dit een filmplot zou zijn, zou je het onwaarschijnlijk noemen.

Het incident ontvouwt zich

Het begon allemaal op Goede Vrijdag met een zorgwekkende post op Mastodon door Andres Freund, een Microsoft-ingenieur die gespecialiseerd is in de open-source PostgreSQL-database. Freund merkte vreemd gedrag op bij een van zijn testservers: de SSH-service, die wordt gebruikt voor externe login naar Linux, verbruikte veel meer middelen dan normaal.

https://mastodon.social/@AndresFreundTec/112180083704606941

Als expert in systeemprestaties wilde hij weten waarom en hij wist precies hoe hij dit soort problemen moest opsporen. Hij ontdekte dat de boosdoener een veelgebruikte softwarebibliotheek genaamd XZ was. Deze bibliotheek wordt door veel programma’s gebruikt voor datacompressie.

De reden voor de vertraging was dat er een achterdeur was toegevoegd aan XZ, specifiek gericht op SSH om een aanvaller toegang te geven tot systemen met hun eigen privé-inlogsleutel, zonder dat de eigenaar van het systeem hiervan op de hoogte was.

De potentiële impact

Scans van het internet tonen 20 miljoen IP-adressen met de SSH-service die op verbindingen wacht. Webservers, e-mailservers, infrastructuurservers, databaseservers, allerlei soorten servers. Als deze software zich naar al deze servers zou hebben verspreid, zouden de aanvallers in staat zijn geweest om deze servers op afstand te manipuleren. Ze hadden gegevens kunnen verwijderen, stilletjes informatie kunnen stelen, gegevens kunnen wijzigen, noem maar op. Het zou niet overdreven zijn om te zeggen dat ze een groot deel van het internet hadden kunnen controleren en veel vertrouwelijke communicatie hadden kunnen afluisteren.

Gelukkig draait Andres systemen met veel recentere software dan 99% van ons. Dit was dus net gebeurd en was nog niet opgenomen in de gangbare Linux-versies. Een grote opluchting voor iedereen. Een zeer gelukkige ontsnapping.

Hoe kon dit gebeuren?

De achterdeur was zeer slim verborgen. Het was niet te vinden door naar de broncode van XZ te kijken. Iemand had het toegevoegd aan een release-script, een klein programma dat de software bouwt, verpakt en verstuurt naar “downstream” om te worden opgenomen in Linux-besturingssysteemversies. Pas nadat XZ is gebouwd vanuit de broncode, wordt de achterdeurcode geïnjecteerd in de bestanden die worden verzonden om op andere systemen te worden uitgevoerd.

Bovendien is de achterdeur zo gebouwd dat deze niet detecteerbaar is vanuit het netwerk. Als XZ is opgenomen in SSH, wordt het alleen actief wanneer een loginverzoek wordt ontvangen van iemand met een specifieke, geheime sleutel. Alleen dan zal de achterdeur een commando uitvoeren voor de eigenaar. Als je die geheime sleutel niet hebt, is er geen manier om te weten dat een server kwetsbaar is. Alleen de servereigenaar zou het kunnen vinden, mits hij of zij op de hoogte is van het probleem en weet waar te zoeken.

Als Andres de lichte timingafwijking niet had opgemerkt, had het heel lang kunnen duren voordat dit werd ontdekt.

Wie is de dader?

De versie van XZ met de achterdeur werd uitgebracht door iemand die zichzelf Jia Tan noemde. Nu wordt aangenomen dat dit geen echte persoon is.

Lasse Collin is de eigenaar en uitvinder van XZ. Hij heeft de software jarenlang gratis onderhouden. Na onder druk te zijn gezet om harder aan zijn project [1] te werken en door ziekte geveld, gaf hij een zeer vriendelijke nieuwe vrijwilliger genaamd Jia Tan toegang om de software te bewerken en releases te maken.Vervolgens nam hij een welverdiende vakantie. We denken nu dat de drukcampagne, die in 2022 begon, was opgezet zodat “Jia Tan” de beheerder van XZ kon worden en zo schadelijke software kon uitbrengen in het bredere internetecosysteem.

Controle krijgen over een veelgebruikt project, een ingewikkelde achterdeur ontwikkelen en verbergen, moet een serieuze investering hebben gekost. ommigen zeggen dat enkele grote criminele hackgroepen in staat zijn om zoiets te bouwen, maar de belangrijkste verdachte zou een nationale inlichtingendienst zijn. We kunnen natuurlijk niet zeker zijn, maar wie anders zou jaren besteden aan het bouwen hiervan en het laten opnemen in een belangrijk stuk internetinfrastructuur door een veelgebruikt project te vinden dat door slechts één overwerkte persoon wordt onderhouden?

[1] Look at this e-mail exchange from 2022, for example: https://www.mail-archive.com/[email protected]/msg00566.html – “Jigar Kumar” and “Dennis Ens” demanding that Lasse give control of his project to others; conveniently, “Jia Tan” then volunteers

Wat moet ik doen?

We hebben veel geluk gehad dat dit op tijd werd opgemerkt. “Jia Tan” was vorige week nog bezig Linux-beheerders te pushen om snel de nieuwste versie van XZ in hun hoofdversies op te nemen, maar dit was nog niet gebeurd. Dus, tenzij je “bleeding edge”, onstabiele testversies van Linux draait, zit je waarschijnlijk goed. Maar update toch, om extra zeker te zijn: er zijn nu updates uitgebracht die de laatste, geïnfecteerde versies van XZ (5.6.0 en 5.6.1) terugdraaien.

Ook geven wij bij Securance altijd de aanbeveling aan onze klanten om diensten zoals SSH, die alleen bedoeld zijn voor gebruik door een paar IT-medewerkers, niet bloot te stellen aan het open internet. Beperk de toegang in de firewall tot interne IP-adressen en misschien een paar thuisadressen van vertrouwde medewerkers. Op die manier, als een nieuwe kwetsbaarheid in de dienst wordt ontdekt, kunnen aanvallers gewoonweg geen verbinding maken met je servers om deze te misbruiken.

Lessen voor de toekomst

Aanvallen op de toeleveringsketen zullen blijven bestaan, omdat ingewikkelde toeleveringsketens zullen blijven bestaan. Een bekende cartoon verwoordt het als volgt:

Wij (internetgebruikers) moeten deze “willekeurige personen” wat meer ondersteunen en ons bewust zijn van hun belang voor onze veiligheid. Lasse Collins bouwde en onderhoudt deze kritieke software in zijn vrije tijd, voor niets. En er zijn nog veel meer Lasses daarbuiten.

Wij bij Securance ondersteunen enkele open-sourceprojecten waarvan we uitstekende software gratis gebruiken. We zullen bekijken of we meer van hen kunnen ondersteunen met een maandelijkse donatie. Hoe klein ook – deze kunnen echt een verschil maken.

Share this blog

juli 16, 2024

Anti-Adversary-in-the-Middle (AitM) tokens detecteren en omzeilen Binnen het Advanced Red...

    juli 15, 2024

    Wat is XXE (XML eXternal Entity)? Veel moderne webapplicaties gebruiken...

      juli 5, 2024

      Wordt het wachtwoord van de lokale administrator in jouw omgeving...