Er is opnieuw bewijs dat snelheid en vakmanschap bij cyberaanvallen niet uitsluitend door AI worden bepaald. Onderzoekers van Sysdig beschreven een incident waarin een kwetsbaarheid in Marimo (waaronder Marimo RCE) werd gebruikt als startpunt en de aanvaller binnen enkele seconden doorpakte naar een SSH-bastionhost. Dat tempo kwam niet uit een agentische aanpak, maar uit een door de aanvaller zelf geschreven en geteste toolkit.
De kernboodschap: zelfs als AI de afstand verkleint tussen het ontdekken van een zwakte en het misbruiken ervan, kunnen ervaren mensen nog steeds “handmatig” aanvallen bouwen, valkuilen vermijden en detecties slimmer ontwijken.
Wat is er mis met Marimo RCE?
De aanvalketen maakte gebruik van CVE-2026-39987, een pre-authenticated remote code execution-kwetsbaarheid met een CVSS-score van 9,3. Volgens de onderzoekers werd deze fout in alle versies van Marimo die actief werden misbruikt, binnen uren na publieke bekendmaking teruggevonden in aanvallen.
Omdat het om een pre-authenticated situatie gaat, is de drempel voor de aanvaller laag: er is geen authenticatie nodig om code op afstand uit te voeren. Dat maakt een platform als startpunt aantrekkelijk, zeker wanneer het webtoegang of een terminal-achtige endpoint blootstelt.
Van notebook naar SSH-bastion in acht seconden
De meest opvallende passage uit het onderzoek is de tijdslijn. Nadat de aanvaller een aanvankelijk foothold had verkregen via de Marimo-kwetsbaarheid, pivotte hij naar een SSH-bastionhost. Het ging om acht seconden tussen de kwetsbaarheid en het moment waarop SSH-authenticatie richting de bastion werd waargenomen.
Dat gebeurde met een eigen Python-toolkit die “door de aanvaller zelf is geschreven en debugged”, zonder AI-agent in de loop. De aanval bestond daarmee vooral uit engineering en snelle uitvoering door een operator, niet uit automatisch gegenereerde stappen.
Hoe zag de credential-pivot eruit?
Volgens Sysdig bestond de kernroute uit meerdere stappen waarbij referenties werden opgehaald en meteen werden omgezet naar de volgende toegangsstap. In het onderzoek zijn duidelijke momenten benoemd:
- WebSocket-verbinding naar het terminal-eindpunt van Marimo, gevolgd door commandowissels.
- Vervolgens een lookup tegen opgeslagen credentials binnen de toepassing, waarmee de aanvaller de geharvestte AWS-key terugvond.
- Daarna SSH-authenticatie op de bastionhost, waarbij de private key uit een beveiligingslaag kwam die door de aanvaller zelf via AWS werd benaderd.
De onderzoekers koppelen dit aan een sequentie waarin de aanvaller vanuit Marimo eerst een interactieve shell wist te verkrijgen, en daarna via Amazon Web Services (AWS) Secrets Manager een private key kon ophalen.
Waarom deze aanpak detectie lastiger maakt
In gesprekken over aanvallen met AI-agenten wordt vaak gedacht dat de “agentische” component bepalend is. Sysdig stelt echter dat vaardige aanvallers dezelfde snelheid kunnen halen als ze een goede route bouwen en fouten vermijden.
Interessant is bovendien dat de aanvaller volgens de bevindingen “langskwam” bij meerdere valkuilen die eerder door agentische dreigingsactoren werden geraakt bij dezelfde CVE. Het punt is niet alleen tempo, maar ook tradecraft: hoe iemand zich gedraagt tijdens het misbruik en hoe goed de stappen aansluiten op wat defenders loggen of verwachten.
Sysdig benadrukt daarnaast dat mensen vaak makkelijker kunnen “ontwijken” in de zin van detectieregels en patroonherkenning, vooral wanneer ze geen herkenbare, publiek beschikbare offensieve tooling gebruiken.
Een sessie van negen uur, maar met grote impact
Hoewel het pivot-moment naar SSH binnen acht seconden plaatsvond, was de volledige activiteit onderdeel van een langere sessie. Sysdig beschrijft een periode van ongeveer negen uur waarin de aanvaller meer dan 850 interactieve commando’s uitvaardigde.
Opvallend is dat de operator volgens de onderzoekers geen bekende, standaardoffensieve tools gebruikte. De scripts werden in de sessie zelf “handmatig” samengesteld en de uitvoering concentreerde zich op één achtergrondproces met Python3 dat de rest orkestreerde.
Die aanpak betekende: credential ophalen, daarna de SSH-private key uit Secrets Manager halen, die key wegschrijven naar disk en vervolgens in één vloeiende stap authenticeren op de bastion via SSH.
AI verandert de economie, maar vervangt niet de operator
Sysdig trekt een duidelijke conclusie: AI kan de economische kant van aanvallen veranderen. Denk aan sneller van ontdekking naar exploit, meer doelen en minder tijd voor repetitief handwerk. Toch blijft volgens de onderzoekers de ervaren aanvaller nodig voor het bouwen van een complete keten en voor het vermijden van fouten die automatisering kan veroorzaken.
Met andere woorden: Marimo RCE wordt hier niet “automatisch” misbruikt; het misbruik wordt georkestreerd door iemand die precies weet welke stappen de omgeving raakt en welke routes het meeste opleveren.
Parallelle campagnes: van Marimo naar andere kwetsbare diensten
Het verhaal rond Marimo RCE staat niet op zichzelf. In hetzelfde bredere overzicht komen ook bevindingen terug over een campagne die zich richtte op Redis-servers en in het bijzonder om cryptomining.
Hunt.io meldde details van een cryptomining-operatie die 3.562 Redis-servers had gecompromitteerd. De vermoedelijke route was een brede internet-scan naar kandidaat-Redis hosts op poort 6379, gevolgd door meerdere gelijktijdige pijplijnen.
Welke technieken werden daar getest?
Volgens de beschrijving werden onder andere de volgende benaderingen ingezet:
- WordPress-doelverkenning: scannen op WordPress-versie, plugins en of XML-RPC of directory listing bereikbaar waren.
- AOF-based SSH key-injectie: het gebruik van Redis append-only file (AOF) modus om een authorized_keys-injectie te doen.
- Lua sandbox-escape probing: het uitvoeren van Redis EVAL-commando’s en pogingen tot sandbox-escape op een set van drie hosts.
Welke route werkte op schaal?
De onderzoekers geven aan dat vooral één methode op schaal resultaat opleverde: Redis rogue replication. Daarmee kon de aanvaller content “smokkelen” via een SLAVEOF-commando, waarna er een XMRig-miner werd ingezet.
Andere ketens — zoals SSH key-injectie en MongoDB sandbox-escape — leverden bij het testen geen succesvolle resultaten op, en een volledige WordPress credential-to-webshell keten werd wel teruggevonden maar niet op schaal bevestigd.
Wat betekent dit voor verdedigers?
Voor organisaties die Marimo of vergelijkbare webtoegankelijke omgevingen gebruiken, zit de les in het combineren van technische harde maatregelen met detectie en beperking van privileges.
Omdat Marimo RCE in dit geval pre-authenticated was, helpt het niet om alleen op “gebruikerslogin” te vertrouwen. Denk aan het minimaliseren van blootstelling aan internet, het beperken van toegang tot terminal-achtige endpoints en het controleren op ongebruikelijke WebSocket-activiteit.
Daarnaast laat de aanval zien hoe snel een initial foothold kan omslaan in een systeemroute via cloudreferenties. Als er AWS-secrets en SSH-sleutels zijn die direct bruikbaar zijn na het compromitteren van een instantie, dan wordt de afstand naar SSH-bastion toegang klein. Daarom zijn strikte secret-governance, segmentatie en logging rondom secrets-toegang cruciaal.
Wil je breder kijken naar de manier waarop cloud- of app-gedrag gebruikt wordt om detectie te omzeilen? Lees dan ook eens over exposure-issues valideren met AI: zo kies je actie, zodat je jouw prioriteiten op basis van echte blootstellingen kunt aanscherpen.
Praktische aandachtspunten voor security teams
Op basis van de beschreven aanpak kun je als security team gericht een paar zaken aanscherpen:
- Let op pre-authenticated RCE-signalen: monitor gedrag rond endpoints die code-uitvoering mogelijk maken, inclusief snelle commandoreeksen na een initiële sessie.
- Detecteer snelle pivot-patronen: wanneer een sessie van een applicatie direct gevolgd wordt door aanvragen naar secrets en daarna SSH-authenticatie, is dat vaak een sterke indicator.
- Beperk secrets en sleutelgebruik: voorkom dat een gecompromitteerde instantie direct private keys kan ophalen en gebruiken voor laterale toegang.
- Gebruik command & control context: een operator die scripts handmatig bouwt kan alsnog patronen tonen in timing, command types en de volgorde van acties.
Conclusie
De aanval met Marimo RCE toont hoe snel een gedegen operator een keten kan opbouwen: van een kwetsbare notebook naar SSH-bastion toegang in acht seconden, inclusief credential-pivot via opgeslagen applicatiegegevens en AWS Secrets Manager.
AI kan de schaal en snelheid van aanvallen vergroten, maar deze case maakt vooral duidelijk dat “vakmanschap zonder AI” evenzeer tot machine-achtige tempo’s kan leiden. Voor verdedigers ligt de focus daarom op blootstelling beperken, cloud-toegang aanscherpen en detectie bouwen rondom pivot-stappen, niet alleen rondom de eerste exploit.
Als je ook geïnteresseerd bent in hoe zulke exploitketens zich in de praktijk ontwikkelen bij andere systemen, dan kan dit kader je helpen: GitLab kwetsbaarheid wordt snel misbruikt. Zo zie je dat vroege misbruiksignalen vaak samengaan met snelle escalatie naar waarde binnen de omgeving.
Bron: https://thehackernews.com/2026/09/human-attacker-exploits-marimo-rce.html
