. . . it's probably safe to
assume that at some
point we 'll have to
deploy secure updates
to our system.
WHITE PAPER
7 Tenets of Layered Security in Embedded Design
mrcy.com 6
have to deploy secure updates to our system, whether it 's for
updates or increased functionality.
In almost every case, secure updates are going to require
some form of cryptography, which requires us to keep keys out
of band from an attacker, and iterate over the tenets again.
Updates go poorly all the time:
▪ Failing to check signatures on update images
▪ User supplied data handled improperly on update scripts,
resulting in arbitrary code execution as root
▪ Leaving manufacturing utilities around for exploitation . . .
Unless your system is guaranteed static in the field, there
must be a plan to deploy secure updates that cannot be
exploited by an attacker.
No One Property to Rule Them All
There's no one tip or trick or technology or technique that
can immediately and permanently prevent an attacker from
compromising your system. It takes a combination of many
techniques to do that.
Start with these 7 tenets in order to build security into the
design, implementation, and operation of your embedded
system:
1. Define the threat model for your system by identifying the
potential attacks your system faces.
2. Employ Authentication and Encryption protection for
protection of data at rest.