Build1 distinct publisher3 min readPublished
Forescout's Vedere Labs ported a known WAGO exploit to a new model with Claude and Ghidra, tracking every dollar and human correction. A single bad write to flash memory bricked the target PLC for good.
The Engineer · Build desk
Compiled by The EngineerSomething wrong?How this is made
Start with what the firmware did to the shellcode, because that is where the hours went. The bug is a buffer overflow in the FTP USER command, served by the Nucleus FTP server and reachable before authentication on port 21 [5]. Getting bytes into that buffer was not the obstacle. Standard FTP processing zeroed the shellcode out before it could run [6]. The working move was a sequencing trick: a USER then CWD sequence with an omitted CRLF preserved the buffer long enough to execute ARM shellcode [7]. On closed firmware with no debugger, that is the sort of detail you find only by crashing the device and watching it [8].
The run did not surface it alone. A human corrected false hypotheses, supplied disassembly context, and prompted the model when firmware details were uncertain [4]. Partway through, the team moved from Claude Sonnet 4.6 to Opus 4.6 [9]. The missing debugger, the model's context-window limits, and its own wrong guesses stretched the trial and error out [10].
Now the arithmetic. Spread $535.74 across 8 hours 32 minutes and the API burn is about $63 an hour [13]. That paid for the search, not the payload. Once the buffer-retention problem was solved, two payloads followed in 12 minutes: a UDP-delivered ICMP echo and a "PWNED" string [11][12]. The discovery phase ran roughly 43 times longer than the payload phase [14]. The cost curve is heavy up front and cheap afterward, which is why Forescout flags related targets as the future worry, not this one [24].
Whether $535.74 belongs in your risk model depends on what sat on the bench. The run assumed a working reference exploit for the sibling 750-852, the exact target firmware V01.04.16, physical hardware, and an isolated lab that could be crashed and observed repeatedly [15][26]. It also assumed a human who could read firmware-specific disassembly [16]. Remove any of those and the number moves. This is one vendor, one CVE, one target, and the researchers say it does not generalize [17].
The bricking is the finding I would carry into a change-control meeting. During C2 implant work in a separate session, an incorrect write to flash memory killed the PLC permanently, and the implant was never finished [18][19]. Forescout logged the exact failure point and treated it as a safety limit [20]. The point reaches past attackers: give any agent write access to a cyber-physical device and a malfunction can be physical and irreversible, defensive intent included [21].
The honest read is Forescout's own. With expert help and this bill, the AI made the port no easier than traditional methods, and a human alone might have been faster and cheaper [22][23]. So evaluate these tools the way the lab did, by human support, time, cost, and hardware damage, not by a success checkbox [27].
Ranked by verification strength, evidence, and original report placement.
Forescout Vedere Labs combined Claude, Ghidra, and physical hardware to port a CVE-2021-31886 exploit from the WAGO 750-852 to the WAGO 750-831, successfully executing arbitrary ARM shellcode without authentication (pre-auth remote code execution).
Achieving the remote code execution required continuous human support, 8 hours and 32 minutes, and $535.74 in API cost.
Humans corrected dead ends and false hypotheses, provided necessary disassembly context, and prompted the AI when firmware details were uncertain.
The vulnerability is an FTP USER command buffer overflow in the Nucleus FTP server, reachable pre-authentication on port 21.
Standard FTP processing zeroed out the shellcode, identified as the root cause blocking code execution.
The buffer was preserved using a USER then CWD sequence with an omitted CRLF, after which the ARM shellcode executed.
Distinct publishers with included, body-backed reporting in this cluster.
dev.to
1 article · September 1, 2026
Follow any of these and your For You feed starts watching them — no settings page required.
security
Porting a WAGO PLC exploit with Claude Code cost Forescout $500 and eight hours1 distinct publisher
invest
Three Claude agents, one task, and a malware turf war: the multi-agent bill arrives1 distinct publisher
security
The model is now choosing the extortion targets, not just writing the malware1 distinct publisher
build
Copilot's credit meter moves the cost decision into the model dropdown1 distinct publisher
Evidence-backed comparisons of source perspectives and observed adoption signals. Read the methodology
Which Builder, Operator, and Investor concerns the observed source mix emphasized—not a truth score.
Evidence, demonstrated adoption, hype gap, incentives, and confidence are assessed independently, each on its own current evidence. How these are measured.
One relayed account, priced to the cent
Every number in this story — the 8:32 clock, the $535.74 bill, the 12-minute payload turnaround — traces to Forescout's own write-up, reaching us through dev.to's pass over SecurityWeek's report. Nobody re-ran the port or saw the logs. What lifts it above a press release is how much it volunteers against itself: no human-only baseline, one CVE, one device, and a target the researchers destroyed.
A lab bench with one dead PLC on it
Uptake here amounts to a single run, in one isolated lab, against one 750-831 that no longer boots. The only thing demonstrably in use is a tooling combination — Claude, Ghidra, a terminal, some generated Python — and it stopped the moment a flash write landed wrong. Read it as an existence proof about cost, not evidence that anyone is doing this at scale.
The caveats arrived with the finding
The framing sells the price tag rather than the capability: hours, hundreds of dollars, expert babysitting throughout, and a concession that a person working alone might have been quicker. If anything the account undersells its most durable lesson — a defensive agent with write access to flash killed physical equipment for good — which sits as a coda to the exploit narrative instead of leading it.
Vendor research that ends in a vendor checklist
Forescout sells operational-technology visibility, and the write-up lands exactly where its products live: isolate the test bench, cut FTP off at port 21, watch for reboots and stray beacons, log everything. The measured pessimism about AI-assisted exploitation cuts against the usual vendor reflex to inflate a threat, but the findings, the recommendations and the telemetry wish-list all travel under the name of a company positioned to supply them.
Detailed, coherent, uncorroborated
Internally the story holds: USER then CWD with the CRLF omitted to stop FTP processing zeroing the buffer is the sort of detail inventions rarely bother with, and the timings are consistent with each other. Externally it stands on one relay of one lab's self-report, with nobody independently confirming the elapsed hours, the invoice, or that Opus 4.6 was what broke the impasse.