Attacchi hardware top secrets

Page 1

Hardware Attacks 2004-09-20 Summerschool Applied IT Security 2004 Maximillian Dornseif See http://md.hudora.de/presentations/summerschool/

Laboratory for Dependable Distributed Systems


Agenda • Traditional hardware attacks: Locks • Tampering: Looking into things you are not supposed to

• Tempest: Spooks are watching you • Side-Channels • Fault-Injection • Cracking 128 Bit in 128 Minutes Maximillian Dornseif • Laboratory for Dependable Distributed Systems


The playing field

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Locks


History of Locks

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Traditional Locks

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Modern locks

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Modern locks

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Modern locks

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Modern locks

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Modern Locks

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Matt Blaze: Rights Amplification in Master-Keyed Mechanical Locks

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Matt Blaze: Rights Amplification in Master-Keyed Mechanical Locks

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Picking Locks

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Picking Locks

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Side-Bar/Disc Locks

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Picking tools

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Automatic Picking

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Pick protection

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Magnetic Locks

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


High Security Locks

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Maximillian Dornseif • Laboratory for Dependable Distributed Systems


The Crypto Attack

• Matt Blaze: Rights Amplification in Master-Keyed Mechanical Locks, IEEE Security & Privacy, March/April 2003

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Matt Blaze: Rights Amplification in Master-Keyed Mechanical Locks

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


http://video.bikeforums.net/

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Maximillian Dornseif • Laboratory for Dependable Distributed Systems


No Lockpicking ...

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Tampering


Opening things you shouldn’t

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


iPod

g! Maximillian Dornseif • Laboratory for Dependable Distributed Systems


USB Devices

g! Maximillian Dornseif • Laboratory for Dependable Distributed Systems


g! Maximillian Dornseif • Laboratory for Dependable Distributed Systems


g! Maximillian Dornseif • Laboratory for Dependable Distributed Systems


g! Maximillian Dornseif • Laboratory for Dependable Distributed Systems


g! Maximillian Dornseif • Laboratory for Dependable Distributed Systems


• Chrysalis-ITS Luna CA3 Cryptographic Token • Mike Bond, Daniel Cvrček, Steven J. Murdoch: Unwrapping the Chrysalis

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Bond / CvrÄ?ek /Murdoch:Unwrapping the Chrysalis

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Bond / CvrÄ?ek /Murdoch:Unwrapping the Chrysalis

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Looking inside

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Super Pacman

g! Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Super Pacman

g! Maximillian Dornseif • Laboratory for Dependable Distributed Systems


iPod

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


iPod

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


iPod

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


iPod

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


JTAG

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


g! Maximillian Dornseif • Laboratory for Dependable Distributed Systems


http://www.xda-developers.com/jtag/

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


http://www.xda-developers.com/jtag/

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


http://www.xda-developers.com/jtag/

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


http://www.xda-developers.com/jtag/

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


http://www.xda-developers.com/jtag/

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


http://openwince.sourceforge.net/jtag/iPAQ-3600/

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


http://openwince.sourceforge.net/jtag/iPAQ-3600/

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


jtag> detectflash Note: Supported configuration is 2 x 16 bit only ROM_SEL: 32 bits 2 x 16 bit CFI devices detected (QRY ok)!

Manufacturer: Intel Chip: 28F640J3A jtag> print No. Manufacturer Part Stepping Instruction Register ---------------------------------------------------------------------------------------0 Intel SA1110 B4 EXTEST BSR jtag> flashmem 0 /home/bootldr-2.18.54.bin 0x00000000 Note: Supported configuration is 2 x 16 bit only ROM_SEL: 32 bits 2 x 16 bit CFI devices detected (QRY ok)! program: block 0 unlocked erasing block 0: 0 addr: 0x00033500 verify: addr: 0x00033500 Done.

Maximillian Dornseif • Laboratory for Dependable Distributed Systems

http://openwince.sourceforge.net/jtag/iPAQ-3600/

CFI Query Identification String: Primary Vendor Command Set and Control Interface ID Code: 0x0001 (Intel/Sharp Extended Command Set) Address of Primary Algorithm extended Query table: P = 0x???? Alternate Vendor Command Set and Control Interface ID Code: 0x0000 (null) Address of Alternate Algorithm extended Query table: A = 0x???? [...]


XBox • Andrew “bunnie” Huang: Keeping Secrets in Hardware: the Microsoft XBox Case Study (2002)

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


http://www.xenatera.com/bunnie/proj/anatak/xboxmod.html

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


http://www.xenatera.com/bunnie/proj/anatak/xboxmod.html

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


http://www.xenatera.com/bunnie/proj/anatak/xboxmod.html

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


http://www.xenatera.com/bunnie/proj/anatak/xboxmod.html

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


http://www.xenatera.com/bunnie/proj/anatak/xboxmod.html

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


http://www.xenatera.com/bunnie/proj/anatak/xboxmod.html

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Tampering with Chips • Ross Anderson, Markus Kuhn: Low Cost Attacks on Tamper Resistant Devices (Security Protocols, 1997)

• Oliver Kömmerling, Markus G. Kuhn: Design Principles for Tamper-Resistant Smartcard Processors (Smartcard '99)

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Kรถmmerling / Kuhn: Design Principles for Tamper-Resistant Smartcard Processors

Tampering

Maximillian Dornseif โ ข Laboratory for Dependable Distributed Systems


Maximillian Dornseif โ ข Laboratory for Dependable Distributed Systems Kรถmmerling / Kuhn: Design Principles for Tamper-Resistant Smartcard Processors


Anderson: On the Security of Digital Tachographs

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Maximillian Dornseif โ ข Laboratory for Dependable Distributed Systems Kรถmmerling / Kuhn: Design Principles for Tamper-Resistant Smartcard Processors


Maximillian Dornseif โ ข Laboratory for Dependable Distributed Systems Kรถmmerling / Kuhn: Design Principles for Tamper-Resistant Smartcard Processors


Maximillian Dornseif โ ข Laboratory for Dependable Distributed Systems Kรถmmerling / Kuhn: Design Principles for Tamper-Resistant Smartcard Processors


Maximillian Dornseif โ ข Laboratory for Dependable Distributed Systems

Kรถmmerling / Kuhn: Design Principles for Tamper-Resistant Smartcard Processors

Figure 8: The interrupted white line at the bottom of the cavity in this FIB secondary-electron image is a blown polysilicon fuse next to a test pad (MC68HC05SC2x processor).


Maximillian Dornseif โ ข Laboratory for Dependable Distributed Systems Kรถmmerling / Kuhn: Design Principles for Tamper-Resistant Smartcard Processors


Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Tempest


Tempest •

“TEMPEST is a code word that relates to specific standards used to reduce electromagnetic emanations. In the civilian world, you'll often hear about TEMPEST devices (a receiver and antenna[...]) or TEMPEST attacks” (Joel McNamara)

“Electromagnetic Radiation from Video Display Units: An Eavesdropping Risk?” Wim van Eck, PTT Dr. Neher Laboratories (1985 - http://www.shmoo.com/ tempest/emr.pdf): “All it takes to do so is a little knowledge of the principles of TV reception and an investment of about $5.“

You can put together a emanation monitoring device for under $100 worth of Radio Shack and surplus parts. Perhaps for a dumb video display terminal (VDT), but certainly not for a VGA or SVGA monitor. (TEMPEST Urban Folklore - Joel McNamara)

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Old sch00l • “The Threat of Information Theft by Reception of Electromagnetic Radiation from RS-232 Cables.” Peter Smulders - Computers & Security vol 9, pp 53-58, 1990

• “Protective Measures Against Compromising Electro Magnetic Radiation Emitted by Video Display Terminals”, Professor Erhart Möller University of Aachen, Aachen, Germany Phrack (!) Vol 4, Issue # 44, File 10 of 27

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Maximillian Dornseif • Laboratory for Dependable Distributed Systems http://web.archive.org/web/20010606194803/ http://www.newscientist.com/ns/19991106/newsstory6.html


http://www.bemashield.com/

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


http://www.hollandshielding.be/tempest_equipment.htm

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Soft Tempest • Soft Tempest: Hidden Data Transmission

Using Electromagnetic Emanations Markus G. Kuhn and Ross J. Anderson (Information Hiding Workshop,1998) Soft Tempest - An Opportunity for NATO Ross J. Anderson and Markus G. Kuhn (1999) Patents

• ••

Markus Günther Kuhn, Ross John Anderson: Low cost countermeasure against compromising electromagnetic computer emanations. UK Patent GB2333883, granted 2002-09-17, filed 1998-01-28

Markus Günther Kuhn, Ross John Anderson: Software piracy detector sensing electromagnetic computer emanations. UK Patent GB2330924, granted 2003-08-06, filed 1997-10-29

Ross John Anderson, Markus Günther Kuhn: Low cost countermeasures against compromising electromagnetic computer emanations. US Patent US6721423, granted 2004-04-13, filed 1999-01-28

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Anderson/Kuhn: Soft Tempest

Broadcasting AM

300 kHz

Maximillian Dornseif • Laboratory for Dependable Distributed Systems

1200 kHz


Anderson/Kuhn: Soft Tempest

DataSafe/ESL Model 400 Tempest Emission Monitor

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Anderson/Kuhn: Soft Tempest

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Tempest Fonts

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


http://www.erikyyy.de/tempest/

Tempest For Eliza by Erik Thiel (2001)

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Optical Tempest • CRT • LED

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Monitors • Markus G. Kuhn: Optical Time-Domain

Eavesdropping Risks of CRT Displays, Proceedings 2002 IEEE Symposium on Security and Privacy, Berkeley, California, 2002

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


http://www.cl.cam.ac.uk/~mgk25/emsec/optical-faq.html

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


http://www.cl.cam.ac.uk/~mgk25/emsec/optical-faq.html

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


LEDs • Information Leakage from Optical Emanations

JOE LOUGHRY Lockheed Martin Space Systems and DAVID A. UMPHRESS Auburn University -ACM Transactions on Information and System Security,Vol. 5, No. 3, August 2002, Pages 262–289.

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Loughry/Umphress: Information Leakage from Optical Emanations

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Loughry/Umphress: Information Leakage from Optical Emanations

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Side-Channels


Side Channels • Simple Power Analysis (SPA) • (Differential) Timing Analysis. • Differential Power Analysis (DPA) • Overview: • N. P. SMART: PHYSICAL SIDE-CHANNEL

ATTACKS ON CRYPTOGRAPHIC SYSTEMS

• Manfred Aigner and Elisabeth Oswald: Power Analysis Tutorial

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Aigner / Oswald: Power Analysis Tutorial

DPA

MOV 0 vs. MOV FF Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Fault-Injection


Fault Injection • Often called “glitching”. • Overview • Hagai Bar-El, Hamid Choukri, David

Naccache, Michael Tunstall, Claire Whelan: The Sorcerer’s Apprentice Guide to Fault Attacks (2004)

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Fault Injection • Electrical perturbation on the standard ISO contact of the smart card • Vcc glitch • Clock duty cycle and/or frequency alteration • Light-beam perturbation • Global light-beam (wide spectrum) • Focused light-beam (wide spectrum) • Laser-beam (single wavelength) • Electro-Magnetic Field perturbation (contactless • Temperature Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Bar-El/Choukri et.al.: The Sorcerer’s Apprentice Guide to Fault Attacks

Optical Fault Injection

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Bar-El/Choukri et.al.: The Sorcerer’s Apprentice Guide to Fault Attacks

Electrical Fault Injection

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Maximillian Dornseif • Laboratory for Dependable Distributed Systems Bar-El/Choukri et.al.: The Sorcerer’s Apprentice Guide to Fault Attacks


Maximillian Dornseif • Laboratory for Dependable Distributed Systems Bar-El/Choukri et.al.: The Sorcerer’s Apprentice Guide to Fault Attacks


Cracking 128 Bit in 128 Minutes


Cracking 128 Bit in 150 Minutes • Embedded Systems are often underpowowered • This allows all kinds of timing attacks • Example: comparing a 128 bit key on an 8 bit Processor

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


def checkAccess(k): for i in range(8): ktest = k[i] kcorrect = correct_key[i] if ktest != kcorrect: return False return True

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Checking ...

-

> S

e

c

r

e

t

!

u

n G u

• Check for ->GeheimPassWord • Check for ->SecretPassWord Maximillian Dornseif • Laboratory for Dependable Distributed Systems

e

S

s


def cracker(): known = '' while 1: tests = [0] * 256 for c in range(256): k = pad(16, known + chr(c)) s = time.time() if checkAccess(k): print "done: %r" % known return tests[c] = time.time() - s known += chr(tests.index(max(tests))) print repr(known)

Maximillian Dornseif • Laboratory for Dependable Distributed Systems


% python latency.py 0.51 '-' 136.97 '->' 402.24 '->S' 799.69 '->Se' 1326.48 '->Sec' 1996.37 '->Secr' 2664.01 '->Secre' 3319.87 '->Secret' 3980.39 '->Secret!' 4638.58 '->Secret!u' 5302.46 '->Secret!un' 5964.47 '->Secret!unG' 6620.07 '->Secret!unGu' 7295.35 '->Secret!unGue' 7954.96 '->Secret!unGueS' 8616.71 '->Secret!unGueSs' Maximillian Dornseif • Laboratory for Dependable Distributed Systems


Credits • Joe Grand for Inspiration and Images • Google Images and respective page owners for lock-picking images.

Maximillian Dornseif • Laboratory for Dependable Distributed Systems




Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.