EmbeddedRelated.com
Forums
The 2024 Embedded Online Conference

Is protected flash secure?

Started by Klaus Kragelund February 16, 2017
Hi

So, I have been using a ST Cortex M0 STM32, NXP LPC, PIC32 and also a Renesas RX63. Just for fun. They look interesting as a potential candidate 

All processors has a bit to set it up in protected mode, so the flash with proprietary IP cannot be read out 

But, say my competitor wants to dig into my code

Is there really such a thing as a safe micro controller which memory is protected from Reverse Engineering conducted by a Russian or Chinese firm?

Isn't it just a matter of how much you pay for an invasive attack? (I have read numbers from 1000 to 20.000 USD)

Regards 

Klaus
On 02/16/2017 11:41 PM, Klaus Kragelund wrote:
> Hi > > So, I have been using a ST Cortex M0 STM32, NXP LPC, PIC32 and also a Renesas RX63. Just for fun. They look interesting as a potential candidate > > All processors has a bit to set it up in protected mode, so the flash with proprietary IP cannot be read out > > But, say my competitor wants to dig into my code > > Is there really such a thing as a safe micro controller which memory is protected from Reverse Engineering conducted by a Russian or Chinese firm? > > Isn't it just a matter of how much you pay for an invasive attack? (I have read numbers from 1000 to 20.000 USD) > > Regards > > Klaus >
Andrew Zonenberg has a nice blog on decapping. I guess with access to a SEM it should be quite possible to sense the gate charge. <http://siliconexposed.blogspot.com/> I think there was also a presentation of his at a DefCon some years ago. I don't have a link.
On 2/16/2017 3:41 PM, Klaus Kragelund wrote:
> Hi > > So, I have been using a ST Cortex M0 STM32, NXP LPC, PIC32 and also a > Renesas RX63. Just for fun. They look interesting as a potential candidate > > All processors has a bit to set it up in protected mode, so the flash with > proprietary IP cannot be read out > > But, say my competitor wants to dig into my code
What resources do they have available? How motivated are they to attempt outright theft vs. just being a "copycat" (at some other level)?
> Is there really such a thing as a safe micro controller which memory is > protected from Reverse Engineering conducted by a Russian or Chinese firm? > > Isn't it just a matter of how much you pay for an invasive attack? (I have > read numbers from 1000 to 20.000 USD)
Exactly. Virtually every "protection scheme" can be beat; the question is where you draw the line between practical vs. impractical for a given attack vector. Is it cheaper for me to try to break your ("hardware") protection? Bribe one of your employees? Reimplement your design from black-box observations of its behavior/specifications? [There are firms that specialize in the latter -- and I'm sure others who resort to the other approaches!] If you are truly interested in the types of attacks that can be mounted on your hardware with MINIMAL access to the device's internals, there are lots of papers on the subject. (E.g., dynamically monitoring power supply current to deduce the instructions that are being executed)
Klaus Kragelund <klauskvik@hotmail.com> writes:
> Is there really such a thing as a safe micro controller which memory > is protected from Reverse Engineering conducted by a Russian or > Chinese firm?
A typical MCU won't have serious protection but some security processors will, including ones that aren't very expensive because they're intended for use in high-volume applications like payment cards. A very determined and high-resource attacker will be hard to stop, especially if they can get their hands on lots of individual units. But you can make it pretty hard. Today's smart cards evolved over a many-year technical arms race between cable TV companies and cable pirates. These days the smart card manufacturers seem to have the upper hand, though maybe the advantage will flip again some day. The book "Security Engineering" by Ross Anderson is now somewhat dated, but it's good reading about this type of subject. http://www.cl.cam.ac.uk/~rja14/book.html
Klaus Kragelund <klauskvik@hotmail.com> wrote:
> Isn't it just a matter of how much you pay for an invasive attack? (I have > read numbers from 1000 to 20.000 USD)
Pretty much. Though the costs can go a lot, lot higher than that. My advice would be to pick something in as small a technology as possible. It doesn't prevent attacks, but ratchets up the difficulty level substantially, at least for physical attacks. It also reduces SNR for sidechannel attacks, though some features of more complex processors (eg caches) can increase the potential sidechannels. The other option is to go for hardened processors (eg as used on smartcards) which have additional mechanisms to prevent physical attacks - but those are mostly focused on protecting key material rather than software. But, generally, making it not worth their while is the safest defence. Theo

The 2024 Embedded Online Conference