This Week In Security: AI Is A Mess, Hacking Car Chargers, An OpenSSL DoS, And Factories Under Attack

[Ayush Paul] posts about extracting data from Claude agents while it accesses web data to fulfill user requests.

But it wasn’t that easy. [Ayush] discovered that Anthropic anticipated many of the attacks, and set up guardrails in an attempt to keep the agent from accessing arbitrary web sites. For Claude to access a website, the user has to specify it, it must be the results of a web search, or it must be referenced by a website previously specified by the user or returned in a search.

To convince the Claude agent to navigate a malicious site designed to extract data, Ayush formed a false warning that Cloudflare was blocking the agent for authentication purposes, and asked it to spell out the name of the agents owner by clicking a list of alphabetical links. Of course Claude trusts Cloudflare and wants to be helpful, so it cheerfully completed the task.

Once the agent is trapped in the false authentication loop, it can be interrogated for all sorts of information it knows about the owner: Ayush was able to convince it to disclose employer, and even data about the user that could be linked to security questions, like their home town.

Since Claude can be detected by the user agent (the field attached to web requests that tells the web server what sort of browser is requesting the page) custom information can be fed to the bot while users see a normal website; clicking a link looks completely normal, but asking an agent to summarize the site triggers fooling the bot into spilling the beans.

After reporting the issue, Ayush was told that Anthropic had already identified the issue internally, and eventually prevented the attack for now by preventing the agent from following links on external pages.

Grok sends entire codebases

Cereblab discovered that the Grok coding agent uploaded the entire content of the codebase it’s working with – and all Git history – to xAI servers, almost immediately. Even when told to never upload a file, the agent would reply “OK”, and then begin uploading the code bundle anyway.

If uploading your code to a remote server isn’t bad enough, and this could be extremely bad in some situations involving sensitive company code, including the entire Git history means that previously deleted files, like accidentally committed secrets or authentication credentials and tokens, were also leaked. Attempting to opt out by disabling options to improve the model by uploading code had no effect.

After gaining attention, Grok has added a privacy option to opt out of data retention. xAI has committed to deleting the retained uploaded code, but it is unclear if users will be told when their data has been removed. To actually prevent the agent from uploading local files to the xAI servers, even temporarily, a global flag “disable_codebase_upload” is required. Watch out, the privacy retention flags are only per-session!

Continue reading “This Week In Security: AI Is A Mess, Hacking Car Chargers, An OpenSSL DoS, And Factories Under Attack”

Quick And Very Dirty Repair Gets Smoked PLC Back In The Game

When electronics release the Magic Smoke, more often than not it’s a fairly sedate event. Something overheats, the packaging gets hot enough to emit that characteristic and unmistakable odor, and wisps of smoke begin to waft up from the defunct component. Then again, sometimes the Magic Smoke is more like the Magic Plasma, as was the case in this absolutely smoked Omron programmable logic controller.

Normally, one tasked with repairing such a thing would just write the unit off and order a replacement. But [Defpom] needed to get the pump controlled by this PLC back online immediately, leading to the somewhat unorthodox repair in the video below. Whatever happened to this poor device happened rapidly and energetically, taking out two of the four relay-controlled outputs. [Defpom]’s initial inspection revealed that the screw terminals for one of the relays no longer existed, one relay enclosure was melted open, its neighbor was partially melted, and a large chunk of the PCB was missing. Cleaning up the damaged relays revealed what the “FR” in “FR4” stands for, as the fiberglass weave of the board was visible after the epoxy partly burned away before self-extinguishing.

With the damaged components removed and the dangerously conductive carbonized sections cut away, [Defpom] looked for ways to make a temporary repair. The PLC’s program was locked, making it impossible to reprogram it to use the unaffected outputs. Instead, he redirected the driver transistor for the missing relay two to the previously unused and still intact relay one, while adding an outboard DIN-mount relay to replace relay three. In theory, that should allow the system to work with its existing program and get the system back online.

Did it work? Sadly, we don’t know, as the video stops before we see the results. But we can’t see a reason for it not to work, at least temporarily while a new PLC is ordered. Of course, the other solution here could have been to replace the PLC with an Arduino, but this seems like the path of least resistance. Which, come to think of it, is probably what caused the damage in the first place.

Continue reading “Quick And Very Dirty Repair Gets Smoked PLC Back In The Game”

A Cheap DIY PLC Based On The Atmega328P

If you’re running a big factory, you’ve probably got a massively expensive contract with a major programmable logic controller (PLC) manufacturer. One shudders to think about the cost of the service subscription on that one. If you’re working on a smaller scale, though, you might consider a DIY PLC like this one from [Mr Innovative.]

PLCs are rarely cutting-edge; instead, they’re about reliability and compliance with common industry standards. To that end, this design features the ATmega328P. Few other microcontrollers are as well understood or trusted as that one. The device is compatible with RS232 and RS485 and will run off 24 VDC, both of which you would find in a typical industrial environment. It offers 24 V digital inputs and outputs, as well as analog inputs and outputs from 0 to 10 V. [Mr Innovative] demonstrates it by hooking up a DWIN human-machine interface (HMI) for, well… human interaction, and a variable frequency drive to run a motor.

If you want to run a basic industrial-lite system but can’t afford the real industrial price tag, you might enjoy tinkering around at this level first. It could be a great way to get a simple project up and running without breaking the bank. Video after the break.

Continue reading “A Cheap DIY PLC Based On The Atmega328P”

Arduino PLC Keeps The Beat

For most of our prototype, hobby, or one-off electronics projects it’s perfectly fine to use a development platform like an Arduino Uno or something to that effect. They’re both easy to program and easy to wire up to projects without breaking the bank. But if you step into an industrial setting where reliability is paramount even in places that are noisy, vibrating all the time, hot, or otherwise unpleasant for electronics, you’ll want to reach for a programmable logic controller (PLC) that are much more robust. There is actually a PLC from Arduino, and if you want to dip your toes into the PLC world then take a look at this drum kit based on the Arduino Opta.

With the PLC at the core of the build, it’s on to making the drumming mechanisms themselves. For that, project creator [JC Audio] is using a series of solenoids attached to camera mounts with a custom 3D printed part that allows for quick assembly and disassembly so he can get the positioning of each drum sound just right. The high hat is taken care of by the noise of an internal solenoid, with the other drums striking various real drums and other solid objects in his shops. The solenoids themselves are driven by a solid-state relay expansion module to ensure there’s enough power

While the build doesn’t sit inside a factory and run for years at a time, a musician’s stage is certainly a rough enough environment that we might reach for a PLC over a standard development board for its benefits. The code for this project is available as well at the project’s GitHub page for those looking for a more advanced timekeeper to play along with their music practice, and for more details on why you might choose a PLC for your project take a look at this Arduino vs PLC showdown from a few years ago.

Continue reading “Arduino PLC Keeps The Beat”

A DIY DIN rail mounted rack of PLC components for home automation

2024 Home Sweet Home Automation: A DIY SCADA Smart Home

A SCADA-style display of icons and control buttons
Touch-screen control and monitoring

Supervisory control and data acquisition, or SCADA, systems sit in the background in industrial settings, performing all kinds of important jobs but in an ad-hoc setup, depending on the precise requirements of the installation. When we think about home automation systems, they’re pretty much the same deal: ad-hoc systems put together from off-the-shelf components and a few custom bits thrown in. [Stefan Schnitzer] clearly has significant knowledge of SCADA in an industrial setting and has carried this over into their home for their entry into the Hackaday 2024 Home Sweet Home Automation Contest. Continue reading “2024 Home Sweet Home Automation: A DIY SCADA Smart Home”

A 1960s PLC Gives Up Its Secrets

When it comes to process automation, the go-to part in most industrial settings is a Programmable Logic Controller, or PLC. These specialized computers will have a modern microcontroller running the show, but surprisingly the way they are programmed still has echoes of a time before electronic PLCs when such control would have been electromechanical.

[Thomas Scherrer] has an interesting design to tear down, it’s a Siemens electromechanical motor controller from the early 1960s. It’s not quite the huge banks of relays which would have made a fully-blown PLC back in those times, but it’s a half-way house with some simple programming capability in the form of several channels of adjustable time delay.

We’re partly sad to see this unit being subjected to a destructive teardown, but nevertheless it’s interesting to see all those very period components. The current sensor has a mechanism similar to a moving coil meter, and the four-channel timer is a mechanical sequencer with four adjustable cam-driven switches. We’re not sure we would be cracking open selenium rectifiers with such nonchalance though.

These units were built to a very high quality indeed, and though it’s obvious this one comes from a decommissioned installation it’s not beyond possibility to think there might be some of them still doing their job over six decades after manufacture. Have any of you seen one of these or something like it in operation recently? Let us know in the comments. Meanwhile the video is below the break.

Continue reading “A 1960s PLC Gives Up Its Secrets”

Humble Arduino As PLC

On the surface, a programmable logic controller (PLC) might seem like nothing more than a generic microcontroller, perhaps outfitted to operate in industrial settings with things like high temperatures or harsh vibrations. While this is true to some extent, PLCs also have an international standard for their architecture and programming languages. This standard is maintained by the International Electrotechnical Commission, making it so that any device built under these specifications will be recognizable to control engineers and maintenance personnel worldwide. And, if you use this standard when working with certain Arduinos, this common platform can become a standard-compliant PLC as well.

The IDE itself supports programming ladder diagrams, functional block diagrams, and other programming systems covered under the IEC 61131-3 standard. Not only that, it allows the combination of these types of PLC programming with Arduino sketches. The system offers many of the perks of PLC programming alongside the familiar Arduino platform, and supports a number of protocols as well including CANOpen, Modbus RTU, and Modbus TCP. It can also be used for monitoring a PLC system, essentially adding IoT capabilities to existing systems, enabling continuous monitoring, debugging, and program updates.

While not every Arduino is a great platform to build a PLC around, there are a few available for those looking for a system a little less proprietary and a little more user-friendly than typical PLC systems tend to be. There’s a reason that PLCs are built around an international standard and generally have certain hardware in mind to run it, though, and this comparison of a Raspberry Pi with an off-the-shelf PLC goes into detail about why certain components aren’t good choices for PLCs.