Onderzoekers van Forescout Research en Vedere Labs hebben laten zien hoe ver een AI-model kan meegaan in het porteren van een kwetsbaarheidsexploit binnen industriële omgevingen. In dit geval ging het om het omzetten van een werkende PLC pre-auth RCE (remote code execution) van het ene WAGO-model naar een ander, met uitvoering van door de aanvaller aangeleverde ARM-shellcode op live hardware. Dat gebeurde niet via “magie”, maar via meerdere iteraties waarin het model nauw samenwerkte met reverse engineering tools en de controller zelf.
De bevindingen zijn relevant voor organisaties die PLC’s en andere OT-systemen inzetten, omdat de impact van een fout hier niet alleen cyber is, maar ook operationeel: storing of verkeerde commando’s kunnen echte gevolgen hebben voor processen in het veld.
Welke aanval stond centraal: CVE-2021-31886
De exploit richt zich op CVE-2021-31886, een stack-based buffer overflow in hoe de Nucleus FTP-server omgaat met het USER-commando. De kwetsbaarheid is voorafgaand aan authenticatie bereikbaar via TCP poort 21. Volgens de Siemens-toewijzing heeft de issue een CVSS-score van 9,8.
Dat betekent concreet: een aanvaller kan al voordat er een login plaatsvindt proberen code uit te voeren. De uitwerking in het onderzoek toont bovendien dat de juiste volgorde van FTP-commando’s en details in de protocolverwerking het verschil maken tussen “crash” en “werkt op hardware”.
Van WAGO-model naar WAGO-model: wat er precies is geporteerd
Verdere Labs had eerder een werkende RCE-exploit voor de WAGO 750-852 ontwikkeld. Vervolgens is die aanpak geport naar een WAGO 750-831 met firmware V01.04.16. De onderzoekers gebruikten daarvoor drie inputbronnen: de bestaande exploit voor 750-852, een firmware-binaire voor 750-831 en een fysieke 750-831 als live doelsysteem.
Elke ontwikkelingsfase verliep als een interactieve sessie tussen een onderzoeker en Claude Code. Daarbij had het AI-systeem toegang tot een terminal, het reverse-engineering gereedschap Ghidra en de doel-PLC. Niet alle pogingen waren direct succesvol: het porteren vergde meerdere iteraties en meerdere “AI-gestuurde” aanpassingen.
Waar het misging bij de eerste pogingen
Een belangrijke bottleneck was dat de normale FTP-afhandeling op de 750-831 256 bytes in de buffer die door de aanvaller te beïnvloeden is, overschreef. Daardoor verdween de geïnjecteerde shellcode voordat die kon worden uitgevoerd.
Het model paste daarom de FTP-sequentie aan. Tegen de 750-852 werkte een bepaalde USER en QUIT-aanpak. Voor de 750-831 werd het aangepast naar USER en CWD. Bovendien liet men een cruciale terminator weg: door het CRLF-einde weg te laten, voorkwam het model dat het “gebruikelijke verwerkingspad” volledig doorliep. Daardoor bleef de buffer lang genoeg intact om de payload toch te laten draaien.
Van code-executie naar netwerkpayloads
Zodra code execution op de PLC was vastgesteld, schakelde Claude van het uitvoeren van een no-operation (NOP) shellcode naar twee functionele payloads. Die transitie kostte volgens Forescout ongeveer 12 minuten.
- De eerste payload stuurde ICMP echo requests naar een aanvaller-systeem.
- De tweede payload stuurde een UDP-pakket met de string PWNED.
Volgens de onderzoekers loopt de exploit in de context van een Ethernet receive callback. In de demonstratie stopte de aantoonbare capaciteit bij het verzenden van netwerkverkeer, niet bij het opzetten van een volledige langdurige implant op het netwerk.
Waarom een poging tot C2 “blijvend” fout afliep
Een latere sessie probeerde de exploit door te trekken richting een command-and-control (C2) implant. In die poging schreef het ontwikkelde resultaat naar een flash-mapped geheugenregio, met als gevolg dat de PLC permanent werd “gebricked”.
Forescout trok daar een belangrijke reflectie uit: je kunt je afvragen of dezelfde onderzoeker de eerste RCE-omgeving ook had kunnen porteren zonder AI, sneller en goedkoper, terwijl de PLC dan mogelijk langer bruikbaar was. Die nuance is belangrijk, omdat het niet gaat om “AI maakt alles makkelijker”, maar om de manier waarop AI de tijd en expertisebarrière kan verlagen voor specifieke technische stappen.
Geen updates beschikbaar: mitigaties volgens CERT@VDE
Voor de getroffen WAGO-controllers geeft CERT@VDE aan dat er geen updates beschikbaar zijn voor de aangetaste controllers. Dat maakt het advies extra operationeel: organisaties moeten vooral werken met blokkeren, segmentatie en detectie.
De belangrijkste aanbevelingen:
- FTP uitschakelen of blokkeren op poort 21
- Segmentatie afdwingen (controle op netwerkpaden)
- Netwerkverkeer monitoren op afwijkingen en verdacht gedrag
De kwetsbaarheidscatalogus noemt daarnaast welke modellen volgens de advisory kwetsbaar zijn. Deze lijst omvat onder meer:
- 750-829 (FW16 en eerder)
- 750-831/000-00x (FW14 en eerder)
- 750-852 (FW16 en eerder)
- 750-880/0xx-xxx (FW16 en eerder)
- 750-881 (FW16 en eerder)
- 750-882 (FW16 en eerder)
- 750-885/0xx-xxx (FW16 en eerder)
- 750-889 (FW16 en eerder)
- 750-331 (FW16 en eerder)
- 750-352/xxx-xxx (FW16 en eerder)
Niet alleen één bug: een mogelijke extra fout
Naast CVE-2021-31886 meldt Forescout dat het model tijdens de eerste sessie ook een mogelijke bug signaleerde in een FTP command extraction loop. Dat is volgens de onderzoekers een ander issue dan de specifieke CVE.
Manual review wees erop dat het om een mogelijk afzonderlijk en eerder niet-gedentificeerde kwetsbaarheid zou kunnen gaan. De onderzoekers hebben die bevinding apart gezet voor vervolgonderzoek. In deze fase kreeg het probleem geen afzonderlijke CVE-code.
Wat is de “echte” dreiging: geautoriseerde agents met verkeerde intentie
In het artikel benadrukt Forescout een punt dat verder gaat dan alleen exploitontwikkeling. De onmiddellijke risico-inschatting is niet dat “een agent zichzelf” zelfstandig op zoek gaat naar PLC’s. Het grootste gevaar zit eerder in scenario’s waarin een geautoriseerde agent de verkeerde handeling uitvoert op een fysiek systeem, met echte operationele gevolgen.
Dat sluit aan op een bredere lijn: cyberincidenten in OT ontstaan vaak wanneer systemen bereikbaar zijn, segmentatie tekortschiet of wanneer automatische processen niet voldoende afgeschermd zijn.
Link met bredere OT- en AI-dreigingssignalen
Deze case past in een grotere trend. Eerder stelden overheidsinstanties (NSA, CISA, FBI, Department of Energy en Environmental Protection Agency) dat er een actief dreigingsbeeld is rond internet-exposed Siemens S7 PLC’s, waarbij AI gegenereerde exploitation scripts gebruikt zouden kunnen worden. Hun inschatting richtte zich op persistente verkenning en het opbouwen van mogelijkheden, zonder volledige toeschrijving aan één actor.
Ook in het onderzoek dat Forescout eerder publiceerde over het ketenen van PLC-exploits, werd geconcludeerd dat zulke problemen vaak niet bovenaan stonden qua prioriteit. Deze nieuwe resultaten zetten organisaties juist aan om die inschatting opnieuw te bekijken, zeker nu AI de vertaalslag van exploit-idee naar werkend gereedschap sneller kan helpen maken.
Praktische startpunten voor organisaties met PLC’s
Als je PLC’s beheert die gebruikmaken van FTP of andere services die vóór authenticatie aanspreekbaar zijn, kun je met een paar gerichte maatregelen meteen risico verlagen.
- Inventariseer welke PLC’s FTP op poort 21 aanbieden (en aan welke interfaces).
- Beperk de attack surface door FTP te blokkeren of uit te schakelen waar dat mogelijk is.
- Segmentatie: zorg dat OT niet “open” is richting endpoints of onverwachte netwerken.
- Monitor verkeer naar PLC’s: afwijkende FTP-commando’s en verdachte netwerkpatronen verdienen prioriteit.
Wil je breder kijken naar het beveiligen van AI-toepassingen en het risico van autonome of semi-autonome acties in bedrijfsomgevingen? Dan kan ook dit artikel helpen: AI beveiligen in ondernemingen: van adoptie tot incident.
Conclusie
De demonstratie door Forescout Research en Vedere Labs laat zien dat PLC pre-auth RCE niet alleen een theoretisch gevaar is, maar dat het porteren van een exploit tussen hardwarevarianten haalbaar wordt met assistentie van AI. De kern zit niet enkel in het vinden van een kwetsbaarheid, maar in het precies afstemmen van protocolpaden zodat de payload in hardware echt kan draaien.
Omdat voor de genoemde WAGO-controllers geen updates beschikbaar zijn, blijft de nadruk liggen op technische mitigaties: FTP blokkeren op poort 21, sterke segmentatie en gerichte monitoring. Daarmee beperk je de kans dat een pre-auth aanval überhaupt kans krijgt—ongeacht of een aanvaller handwerk inzet of AI-tooling gebruikt.
Bron: https://thehackernews.com/2026/09/researchers-use-claude-to-port-pre-auth.html
