FPGA Bitstream Security Broken
NumberField writes "Researchers in Germany released a pair of papers documenting severe power analysis vulnerabilities in the bitstream encryption of multiple Xilinx FPGAs. The problem exposes products using FPGAs to cloning, hardware Trojan insertion, and reverse engineering. Unfortunately, there is no easy downloadable fix, as hardware changes are required. These papers are also a reminder that differential power analysis (DPA) remains a potent threat to unprotected hardware devices. On the FPGA front, only Actel seems to be tackling the DPA issue so far, although their FPGAs are much smaller than Xilinx's."
Is this the good kind of security breach, which enables end users to do new things with their FPGAs? Or the bad kind, that enables attackers to do malicious things with others FPGAs? Or both?
Give me Classic Slashdot or give me death!
I like to think I'm pretty technical, but this article was fucking martian to me. Anyone care to translate? (Posting anon so I can mod-up helpful replies.)
An interesting blurb from the Actel linked page:
Many of the fundamental techniques used to defend against DPA and other side-channel attacks are patented by Cryptography Research, Inc. ... One of CRI's businesses today is licensing this portfolio of very fundamental patents. Nearly all the secure microcontrollers used in smart cards, set-top boxes, SIM cards for GSM phones and Trusted Platform Modules (TPM) for personal computers are built under license to CRI, amounting to about 4.5 billion chips per year in total.
Yet another critical set of concepts which should be obvious to anyone working in the field locked behind a paywall due to USPTO incompetence and/or malfeasance...
...to try to keep the power consumption constant, therefore not giving hints, if I understand correctly.
Uh, Linux geek since 1999.
So maybe a little transistor meant to do one thing is not incredibly secure. But the Russians are going to start writing malicious code that waits for FPGA users to visit hacking urls and then download exploits to their servers?
When the foot seeks the place of the head, the line is crossed. Know your place. Keep your place. Be a shoe.
I didn't really understood what this means, but from reading a cople paragraphs from the papers it sounds like the FPGAs are protected using a triple DES module and the attackers were able to get the keys, what allows "full access" to the hardware (it comes partially locked to prevent IP infringing and some kinds of modification). So overall it sounds like it is a "good" hack, the kind that allows full hardware access to the hardware you bought. Please someone correct me if I'm wrong or there is any harmfull application for this hack (remote access and hw trojan integration into networked devices using those FPGAs or similar).
but I am a security person. The way I understand it, these keys are different for each individual device. Also, the attack requires direct physical access to the device. As a customer, wouldn't all potential threats require a physical security breach? Forgive me if I'm mistaken I'm not entirely sure I understand how/where these things are implemented. It seems like they're mostly used in switches and routers and things. If someone is poking at the power supplies on your switches and routers, I'd imagine that this vulnerability doesn't rank very high on your list of problems.
I am referring to adding circuitry into the FPGA's themselves, so that the current consumption cannot be as easily used for side-channel attacks.
In a sense, think of adding additional NOT gates, within the FPGA itself, and their only purpose would be to always have the combination of an actual [data line + NOT] provide a sum of constant power consumption wherever the FPGA is doing anything that might leak side-channel info. None of the NOT gates would actually be part of processing actual data. At least, that is an idea of what kind of approaches they could try.
Uh, Linux geek since 1999.
gives a reasonable description of what all of this means, but it seems to me that xilinx are approaching this wrongly.
They should create a chain of trust and sign vendors certificates (or for large production runs allow purchasers to do so). The FPGA would only accept a signed bitstream that can be traced back to a particular vendor. All new FPGAs should have a burned in CRL and a burned in xilinx-signed certificate in ROM. That would allow mutual authentication at least. you can layer encryption on top of that if you wish, it is, after all, an FPGA, especially a high-end FPGA like a virtex is an expensive programmable device.
I see no reason why the new FPGAs should differ in pinout or other specs aside from fixing their crypto algorithms to make them less susceptable to DPA, so this problem will eventually become obsolete as new boards use the new parts with no hardware re-design.
Nullius in verba
These aren't used as part of the "secrets box" of any satellite/cable system CAMs by any chance, are they?
CIA had a project in the mid 80's to do precise this, So how this is news?
what percentage of them would have come up with the EXACT SAME WAY (not 'general concepts', the exact methods used) that CR did?
People who complain on Slashdot about the USPTO's examination process are under the impression that inventors manage to score patents on "general concepts".
The FPGA would only accept a signed bitstream that can be traced back to a particular vendor.
How would the user of an evaluation kit sign a bitstream for such an FPGA?
The very well written story How Digital Detectives Deciphered Stuxnet, the Most Menacing Malware in History on Wired.com describes an attack on an Iranian nuclear plant through inserting frequency changing commands sent to the PLC to damage centrifuges. The papers the OP mentioned are probably something very important if encrypted FPGA bit streams can indeed be meaningfully tampered with easily.
7 year Altera person here. Your'e bitstream got compromised? your chip is copied.
"The main difference was that the attack on Virtex 5 FPGAs
required more power traces to be successful, which is mostly
due to a worse signal-to-noise ratio due to a newer process
technology (i.e., 65nm instead of 90nm). For the attack to
work we applied a bandpass filter on our measured traces.
Furthermore, we were able to improve our analysis method
by removing all phase shifts from the measured traces using
an additional FFT preprocessing step."
Cool papers.. I wonder how this scales on V6 and V7?
Remember kids: FPGA's are used in robotics... so, see subject-line above & beware!
("Muahahahaha" mad-scientist laughter & "SiNiSteR" sounding organ music plays...)
APK
P.S.=> On a more serious note though - this MAY have "security-implications" on the note of robotics, one day in the future - Hence the subject-line I used...
... apk
Oh no! GASP!!
The "machine code" (bitstream) of the "software" (hardware) is available to reverse engineer!!?!?!
Welcome to software's reality. Get over it, or die trying.
Back in the late 1700s, the technology behind the textile industry (spinning, looms) was a British state secret. Nobody who had been trained in the technology was allowed to leave Britain. Samuel Slater dressed as a girl, sailed to America, and replicated the British technology. That was a big part of the beginning of the American Industrial Revolution, and the beginning of the end of the British monopoly on cheap textiles.
Some of the mills built in the early 1800s in New England still stand. Of course, the textile industry has moved on - the New England mills started going out of business throughout the 20th century. But in the meantime that industry was a big part of the American economy, politics (directly affecting the reason for and course of the Civil War, for example).
One wonders just what the US would be like had Slater not stolen the British technology.
It's easier to be a result of the past, but more fun to be a cause of the future! http://www.spacefinancegroup.com/