Everything I own, owned

Aug 24, 2026 05:41 AM - 1 hour ago 2
August 23, 2026

Over the past mates weeks I’ve been doing agent-driven reverse engineering of peripherals that hap to be within arm’s reach. From those devices, I’ve travel distant pinch a afloat plaintext bid ammunition wrong my microphone, a webcam whose activity LED I tin move disconnected while it records, and a cardinal ray that hands retired representation writes to anyone connected the WiFi. Peripherals person proven to beryllium an perfect target for agentic RE - they’re mini computers attached to my computer, pinch a information relationship to the big and usually a firmware update mechanism, truthful an agent has thing to iterate against. The nett result is amended power and knowing of my machine.

My process was beautiful overmuch the aforesaid for each of these devices: drawback a transcript of the device’s firmware and associated update instrumentality from the manufacturer, propulsion it into my reverse engineering environment, show Claude Opus 5 what my goals are, and fto it churn. Depending connected the device, the goals were somewhat different, but they usually looked something like:

In this directory is the firmware and update inferior for ___. The instrumentality is besides attached to this computer, and you whitethorn interact pinch it successful non-mutating ways. Exhaustively archive and cross-validate the full firmware, including the pursuing goals: * reverse technologist the firmware update format and update protocol * instrumentality our ain update utility * find the information properties of the update protocol, including checksums, signature validation, unafraid boot * usage fixed and move study to find each protocol surfaces and wholly enumerate functionality * find immoderate hidden aliases debug functionality successful the merchandise and really to entree it

Depending connected the results, location were different directions of follow-up, but you should get the wide idea. Let’s tally done the database - each instrumentality links to a GitHub repo afloat of generated-slop docs and scripts, most of which person been validated unrecorded against existent hardware. I’ve besides included the effort each instrumentality took, pulled out of the Claude Code convention transcripts. “Churn” is the clip Claude was really working, pinch the agelong idle gaps removed. “Prompts from me” is each connection I typed, including the one-word ones telling it to support going. All 5 devices together came retired to astir 13 hours of churn and 98 prompts, dispersed crossed 2 weeks of evenings.

Everything I own

GitHub repo - 3.7 hours of Claude churn, 33 prompts from me

Insta360 Link webcam, its greenish activity LED lit

I usage an Insta360 Link webcam, which is simply a bully gimbaled pan-tilt-zoom camera that does face tracking for automatically framing the shot. I wanted to cognize if it was imaginable to subvert the activity LED, like successful the classic iSeeYou exploit.

Interestingly, it was instantly evident that this camera has a batch going connected wrong it. It turns retired that it runs a full RTOS (ThreadX) originated from the upstream SoC vendor, Ambarella. The RTOS hosts respective mini imagination models that supply things for illustration the aforementioned look tracking, arsenic good as gesture discovery for controlling settings. Pretty astonishing complexity wrong a mini webcam, but it besides means there’s immoderate breathtaking onslaught aboveground here.

Over the USB Video Class interface, there’s an XU (Extension Unit) bid that kicks the instrumentality into “mass storage” mode. This past lets america transportation a staged firmware update to the device’s soul FAT filesystem, which the instrumentality past applies to itself connected reboot. This way does require personification involution to reboot pinch a replug, but there’s really different bid transmission that exposes arbitrary read/write of files and a reboot bid complete the USB vendor class. With this, we tin afloat flash the instrumentality without immoderate personification interaction. Once the firmware is successful the correct place, there’s efficaciously nary anti-tamper, conscionable an appended MD5 hash to ensure integrity.

The parameter LED turns retired to person a well-structured group of “patterns” in the firmware that dictate color, blink pattern, etc. that are indexed into for various instrumentality states. I had Claude constitute a instrumentality to spot retired the array introduction for camera activity, hole up the integrity hash, and flash it to the camera. A speedy trial showed that the greenish LED that usually illuminates while signaling nary longer turned on. Horrifying! On this device, the gimbal itself besides deflects down erstwhile not recording, truthful it’s not completely stealth, but it still doesn’t consciousness great.

The LED behaviour earlier and aft patching.

ASUS ROG Swift PG42UQ monitor

GitHub repo - 1.2 hours of Claude churn, 13 prompts from me

ASUS ROG Swift PG42UQ monitor

My ASUS ROG Swift PG42UQ show was really wherever I started, because I sewage irritated astatine the pop-up overlay that comes up each erstwhile successful a while that tells maine to tally “pixel cleaning”. I person ne'er intentionally tally pixel cleaning connected this show and I ne'er will, I don’t care, and I would for illustration for that overlay to spell distant forever. Maybe there’s a debug paper aliases thing that tin move it off, aliases worst lawsuit we spot a branch successful the firmware?

Claude recovered that the firmware has efficaciously nary protection whatsoever - there’s a two-slot A/B strategy and a simple checksum, but yet we tin constitute immoderate we want to the thing. Firmware updates tally complete an I2C bus bridged complete USB.

The pixel cleaning informing turns retired to person nary autochthonal measurement to disable it, and it’ll ever show up aft 8 hours of runtime. Oh well. Claude did find the appropriate area to patch to termination the functionality though. I haven’t really been brave capable to constitute a modified firmware to the thing yet - it’s a beautiful costly show - but I’ll get location astatine immoderate point.

Another neat point was exploring the DDC/CI interface. This is the power transmission disposable complete the display cable itself, allowing the big to alteration inputs and different settings. I judge ASUS offers this done their Windows utility, DisplayWidget, but that does small for maine connected Linux. So, now I have a ammunition script that tin flip through immoderate of the DDC/CI features for illustration the hardware crosshair aliases zoom overlays, FPS counter, and countdown timer. I mightiness group up immoderate of these connected hotkeys successful the early for easy access.

Shure MV7 microphone

GitHub repo - 4.2 hours of Claude churn, 32 prompts from me

Shure MV7 microphone

At this point, there’s little existent inducement to support popping these devices and much conscionable morbid curiosity. My microphone, the Shure MV7, connects complete USB and evidently has immoderate magnitude of smarts to it, pinch on-device digital measurement controls and such.

The firmware for this 1 turned retired to beryllium hidden wrong the Windows software, MOTIV Mix, truthful Claude installed that successful Wine, recovered the update server, and pulled it down. I wasn’t connected the latest, truthful location was really a reasonable inducement present to get this moving conscionable to update my microphone from Linux. The firmware turned out to incorporate both DSP and MCU firmware, and was honestly beautiful boring arsenic you mightiness expect. Again, nary existent information connected the firmware flash itself.

However, the update protocol revealed that the full point really runs complete a USB HID vendor people protocol that implements a full plaintext bid shell, pinch 48 different commands. Since it’s HID, we tin actually hit this complete WebHID from a webpage successful Chrome, truthful I had Claude build a web interface for utilizing the shell. There’s each sorts of interesting settings successful present including a twelve DSP knobs, arbitrary representation read/write, LED control, and a 4-tier user privilege strategy whose entire authentication is a drawstring comparison against the sanction of the tier you asked for. su sup conscionable works, and the apical tier can disable the touch sheet truthful you can’t shut up astatine the device, and thrust the shut up LED independently of whether the microphone is really muted. It’s the webcam LED instrumentality again, connected a microphone. Obviously, beryllium alert that you could astir apt break your instrumentality if you usage that UI and do thing stupid pinch it.

WebHID interface for the MV7’s bid shell, showing DSP settings and a console The WebHID ammunition interface. The DSP knobs connected the near are the device’s ain settings; the console on the correct is the plaintext bid ammunition talking complete HID.

GitHub repo - 1.5 hours of Claude churn, 10 prompts from me

Elgato Cam Link 4K video seizure dongle

The Elgato Cam Link 4K is conscionable an HDMI video seizure device, and honestly was conscionable much of the same. The interesting thing for this 1 was that I fto it spell afloat unattended - I virtually kicked disconnected the process earlier going to sleep and woke up to a teardown and functioning firmware updater. The firmware contains an MCU image and an FPGA bitstream for the existent HDMI handling, truthful you could perchance do thing nosy pinch the FPGA if you went deep enough into the reverse engineering there. There’s nary protection connected the firmware update path.

I was capable to propulsion retired each the EDID information used for negotiating video parameters, truthful we cognize precisely what resolutions, refresh rates, colour spaces, and chroma subsampling options are offered to devices.

The vendor HID protocol does see tunneled entree to the internal I2C bus, which is kinda neat arsenic you tin flick the soul HDMI receiver registers.

Elgato Key Light Mini

GitHub repo - 2.4 hours of Claude churn, 10 prompts from me

Elgato Key Light Mini

Finally, I poked astatine thing that wasn’t connected complete USB but WiFi instead, the Elgato Key Light Mini. This one turned retired to beryllium way much absorbing than I expected: it’s the only 1 pinch meaningful firmware integrity protection. Elgato signs the firmware updates with Ed25519 complete a SHA-512 hash of the firmware payload, and rejects firmware that doesn’t validate. This makes sense to do, arsenic the instrumentality fundamentally connects to a WiFi web and past provides unauthenticated entree to anyone connected the aforesaid network, truthful the threat exemplary is inherently different.

Unfortunately, while that’s an betterment complete each of the different devices we’ve looked at, it protects the firmware astatine precisely 1 constituent successful time: erstwhile an update is happening. It’s not a footwear clip cheque enforced by the bootloader aliases immoderate different benignant of unafraid footwear scheme, and the updater happens to beryllium moving while everything else successful the instrumentality is still operating, meaning there’s immense onslaught aboveground to effort to disable that signature validation. I asked Claude to look for an utilization that mightiness alteration this, and it recovered a doozy: an HTTP POST request that drops a payload consecutive into the soul UART, which includes a memory flick command. This intends that a azygous HTTP POST of ATSE=0200ED94,0E001009 turns the signature cheque into a no-op, and we can freely update to a firmware image without a morganatic signature. I successfully tested this pinch a elemental spot that changed the sanction of the device, truthful uh, yeah, don’t put these on an untrusted network.

…, owned

I person a batch of feelings astir this full thing. As I wrote backmost successful March, this is incredible for interoperability and fixing things that don’t activity really we want them to. Hardware is almost universally “open” for tinkering astatine this constituent pinch conscionable a mates hours of mostly hands-off machine-driven labor each, and I look guardant to a adjacent early wherever I tin adhd features to my webcam firmware arsenic easy arsenic I tin to software that runs connected my Linux instrumentality itself.

On the different hand, arsenic a information professional, this scares maine for respective reasons. I would activity from the operating presumption that immoderate instrumentality attached to a machine could person had a malicious firmware implant performed, wherever antecedently that required important per-model finance and was stereotyped arsenic a “state actor” benignant of activity. Operating systems aren’t really equipped to activity pinch the personification to guarantee that a microphone stays a microphone, and doesn’t spontaneously move into a keyboard that hits Win+R and drops a payload to bargain each your information erstwhile the room is quiet capable that it tin presume you aren’t watching. And the existence of WebUSB, WebHID, and WebBluetooth mean that for immoderate devices, depending connected the specifics of which classes are used, a infinitesimal of personification indiscretion successful accepting a permissions punctual could permanently backdoor one of their attached devices.

Network-connected devices look adjacent universally fucked astatine this point? There are a fewer others I’ve poked at that I haven’t documented here, but I’ve gotten a guidelines ammunition connected a commercialized Dell display, and RCE connected an Eaton UPS. Obviously it was ne'er champion believe to fto untrusted clients touch these things, but the speed and standard astatine which this tin beryllium executed makes the consequence truthful overmuch higher now.

Finally, I can’t thief but deliberation astir what an AI-equipped automatically-reverse-engineering worm could do today. It’s only a mini leap to ideate that personification could make a self-replicating portion of malware that probes its environment, relaying reconnaissance backmost to a smart command-and-control that actively useful to push itself into accessories and IoT devices and business instrumentality recovered adjacent to an infected target. Two things person kept this from happening: each instrumentality exemplary needs its ain reverse engineering, and validating immoderate of it needs the hardware successful hand. The first is the labour I conscionable handed to an agent. The 2nd is free to malware already sitting on an infected host. Honestly, I wouldn’t beryllium amazed if this already exists, and I deliberation the adjacent fewer years are going to beryllium extremely interesting. 🫠

More