All posts·Security at the edge: what most IoT architectures get wrong
BlogIoT

Security at the edge: what most IoT architectures get wrong

Most IoT security thinking is borrowed from web security and applied badly. Here's the threat model that actually fits embedded systems.

Kwame Asante

IoT Systems Lead

Oct 22, 2024

5 min read

The default IoT security pattern: HTTPS for transport, API keys for authentication, a cloud-side firewall. This is wrong in ways that will eventually be expensive.

The threat model is different

Web security assumes the client is untrusted. IoT inverts this — your devices are physical objects that can be stolen, tampered with, cloned. The question shifts from "how do we prevent unauthorised requests?" to "how do we prevent a compromised device from compromising the fleet?"

Certificate-based authentication, not API keys

API keys are secrets stored in firmware. Firmware can be extracted. Device certificates with a proper PKI give you per-device identity that can be revoked individually — revoke device 847 without affecting the other 1,199.

Mutual TLS

Standard TLS proves the server's identity. Mutual TLS proves both sides. In an IoT context, mTLS means a rogue device can't successfully connect to your backend even if it knows the right endpoint. AWS IoT Core, Azure IoT Hub, and Google Cloud IoT all support this natively.

Firmware signing and secure boot

Signed firmware with secure boot means a device will refuse to run firmware not signed by your key. This doesn't make your update infrastructure invulnerable — it makes a successful attack unable to achieve its goal.

The segmentation principle

An industrial sensor node has no reason to initiate outbound connections to arbitrary internet endpoints. Strict egress rules dramatically reduce the blast radius of a compromised device.

Tags

SecurityESP32TLSIoT Architecture

Author

Kwame Asante

IoT Systems Lead

Want to work together?

We build the things we write about. Start with a 30-minute discovery call.

Book a call