27.01.2015 Views

Automatized Fault Attack Emulation for Penetration Testing

Automatized Fault Attack Emulation for Penetration Testing

Automatized Fault Attack Emulation for Penetration Testing

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

<strong>Automatized</strong> <strong>Fault</strong> <strong>Attack</strong> <strong>Emulation</strong> <strong>for</strong><br />

<strong>Penetration</strong> <strong>Testing</strong><br />

Johannes Grinschgl 1 , Thomas Aichinger 3 , Armin Krieg 1 ,<br />

Christian Steger 1 , Reinhold Weiss 1 ,<br />

Holger Bock 2 , Josef Haid 2<br />

1<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics, Graz University of Technology, Austria<br />

2<br />

Infineon Technologies Austria AG, Design Center Graz, Austria<br />

3<br />

Austria Card GmbH, Austria<br />

12th International Common Criteria Conference<br />

Kuala Lumpur, Malaysia, September 29, 2011<br />

A. Krieg 2011-9-29<br />

1


Agenda<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

• Motivation<br />

• Introduction<br />

• Related work<br />

• <strong>Automatized</strong> <strong>Fault</strong> <strong>Attack</strong> <strong>Emulation</strong><br />

• Impact on Certification Flow<br />

• Conclusion<br />

A. Krieg 2011-9-29<br />

2


Motivation (1/3)<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

• Increasing complexity of SoC<br />

− More-than-Moore [Arden2010]<br />

− Increasing test duration<br />

• Increasing security and<br />

dependability requirements<br />

− High costs<br />

− Loss of trust<br />

− Loss of life<br />

SOC Consumer Portable Design Complexity Trends<br />

(Source: ITRS - 2010 Update, "System Drivers“)<br />

• Increasing number of known fault attacks<br />

− Increasing knowledge of attackers<br />

− Better attack tools<br />

− Cheaper analysis equipment<br />

A. Krieg 2011-9-29<br />

3


Motivation (2/3)<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

• Common criteria certification<br />

− Time consuming<br />

− Expensive<br />

− <strong>Penetration</strong> tests very late in<br />

development phase<br />

• <strong>Fault</strong> detection during certification<br />

− Longer time to market<br />

− Reevaluation<br />

• Test coverage of penetration tests<br />

• Efficiency evaluation of new<br />

security features<br />

A. Krieg 2011-9-29<br />

4


Motivation (3/3)<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

• How to solve this problem<br />

• Target:<br />

− Reduction of deficits during design phase<br />

− Early evaluation of security features<br />

− Support of very large test pattern sets<br />

− Open sample evaluation support<br />

− SW test without HW security features<br />

− (HW test without SW security features)<br />

• Solution:<br />

<strong>Automatized</strong> <strong>Fault</strong><br />

<strong>Attack</strong> <strong>Emulation</strong><br />

A. Krieg 2011-9-29<br />

5


Agenda<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

• Motivation<br />

• Introduction<br />

• Related work<br />

• <strong>Automatized</strong> <strong>Fault</strong> <strong>Attack</strong> <strong>Emulation</strong><br />

• Impact on Certification Flow<br />

• Conclusion<br />

A. Krieg 2011-9-29<br />

6


Introduction (1/2)<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

• <strong>Emulation</strong><br />

− Mapping of smart card<br />

functionality to FPGA<br />

− <strong>Emulation</strong> resembles very<br />

accurately the behavior of<br />

the final device<br />

− Extendibility in respect to<br />

fault emulation<br />

− Real-time emulation<br />

per<strong>for</strong>mance<br />

− On-line debugging<br />

− On-line register and memory<br />

examination<br />

− Standard SW development<br />

tool<br />

Easy-to-use Rapid FPGA Prototyping Plat<strong>for</strong>m,<br />

Tanto2-FPGA system, http://www.hitex.com<br />

A. Krieg 2011-9-29<br />

7


Introduction (2/2)<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

• POWER-MODES 1 vision: Flexible and Fast <strong>Fault</strong> Emulator<br />

− Whole system evaluation <strong>for</strong> fault attack vulnerability<br />

− Software<br />

− Hardware<br />

− Operating system<br />

− Saboteur-based attack method<br />

− <strong>Automatized</strong> VHDL code base adaptation<br />

− <strong>Automatized</strong> result evaluation<br />

− Austria Card ACOS operating system<br />

1<br />

“POWer EmulatoR and MOdel based DEpendability and Security evaluation plat<strong>for</strong>m”, funded by the Austrian Federal<br />

Ministry <strong>for</strong> Transport, Innovation, and Technology under the FIT-IT contract FFG 825749. Project Partners: Infineon<br />

Technologies Austria AG and Austria Card<br />

A. Krieg 2011-9-29<br />

8


Agenda<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

• Motivation<br />

• Introduction<br />

• Related work<br />

• <strong>Automatized</strong> <strong>Fault</strong> <strong>Attack</strong> <strong>Emulation</strong><br />

• Impact on Certification Flow<br />

• Conclusion<br />

A. Krieg 2011-9-29<br />

9


Related Work (1/2)<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

• <strong>Fault</strong> injection mechanisms<br />

− Simulation [Jenn1994, Velanzco2001, Rothbart2004]<br />

• Slow<br />

• Flexible<br />

− Physical test [Karlsson1995]<br />

• Late in design phase<br />

• Expensive<br />

− <strong>Emulation</strong> [Bayar2008, Kenterlis2006, Kafka2008, Sterpone2007, Sonza2006, Baraza2005,<br />

Leveugle2000]<br />

• Fast<br />

• Low-cost compared to physical tests<br />

• Compromise between cost and flexibility<br />

• Early in design phase<br />

A. Krieg 2011-9-29<br />

10


Related Work (2/2)<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

• <strong>Fault</strong> emulation methods<br />

− Partial reconfiguration [Bayar2008, Kenterlis2006, Kafka2008, Sterpone2007,<br />

Sonza2006]<br />

• Runtime adaptation of LUTs<br />

• Requires specialized FPGA devices<br />

− Mutants<br />

• VHDL modification to modules [Baraza2005, Leveugle2000]<br />

• Requires pre-modified modules <strong>for</strong> every fault scenario<br />

− Saboteur<br />

• VHDL modification into signal lines [Baraza2005, Leveugle2000]<br />

• Very flexible if supported by automatized placement<br />

• Common Criteria Certification Process [JIL2009], [CCEVS2005]<br />

A. Krieg 2011-9-29<br />

11


Agenda<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

• Motivation<br />

• Introduction<br />

• Related work<br />

• <strong>Automatized</strong> <strong>Fault</strong> <strong>Attack</strong> <strong>Emulation</strong><br />

• Impact on Certification Flow<br />

• Conclusion<br />

A. Krieg 2011-9-29<br />

12


Autom. <strong>Fault</strong> <strong>Attack</strong> <strong>Emulation</strong> (1/5)<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

• Host PC<br />

− <strong>Fault</strong> injection flow control<br />

• <strong>Attack</strong> Database<br />

− Storage of different attack scenarios<br />

• <strong>Fault</strong> injection controller<br />

− Saboteur<br />

Management<br />

• Saboteurs<br />

− Single-bit type<br />

− Bus type<br />

− Port type<br />

• Saboteur interface<br />

− Saboteur FI controller connection<br />

A. Krieg 2011-9-29<br />

13


Autom. <strong>Fault</strong> <strong>Attack</strong> <strong>Emulation</strong> (2/5)<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

• What are saboteurs<br />

− Modules which can disturb signals<br />

− Placed between signal source and sink<br />

• Advantages<br />

− Definable detailed attack<br />

− Full control over the signal<br />

− Flexibility<br />

− Applicable to Security and<br />

Dependability Evaluations<br />

• <strong>Attack</strong> patterns<br />

− Specification of fault location<br />

− Mapping of physical to logical location<br />

A. Krieg 2011-9-29<br />

14


Autom. <strong>Fault</strong> <strong>Attack</strong> <strong>Emulation</strong> (3/5)<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

• <strong>Fault</strong> emulation<br />

initialization<br />

−<br />

−<br />

−<br />

<strong>Attack</strong> time<br />

<strong>Attack</strong> type<br />

Memory address<br />

• <strong>Attack</strong> scenario<br />

• Result evaluation<br />

−<br />

−<br />

Output<br />

Memory<br />

• Report generation<br />

• Repeat until all<br />

addresses and points in<br />

time are tested<br />

A. Krieg 2011-9-29<br />

15


Autom. <strong>Fault</strong> <strong>Attack</strong> <strong>Emulation</strong> (4/5)<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

• <strong>Attack</strong> on security relevant regions<br />

− Memory regions<br />

− Time<br />

− Calculation example<br />

• Some 100 Addresses<br />

• 20-50ms <strong>for</strong> one command<br />

• ~1ms is interesting<br />

• ~1M <strong>Attack</strong> Scenarios<br />

• 1sec per attack<br />

• 11,6 Days<br />

− Long time tests<br />

• <strong>Attack</strong> granularity<br />

refinement<br />

• In<strong>for</strong>mation gain <strong>for</strong><br />

real-chip testing<br />

A. Krieg 2011-9-29<br />

16


Autom. <strong>Fault</strong> <strong>Attack</strong> <strong>Emulation</strong> (5/5)<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

• Power emulation<br />

[Bachmann2010]<br />

−<br />

−<br />

−<br />

−<br />

<strong>Automatized</strong> control<br />

signal extraction<br />

Control signal<br />

weighting<br />

Accumulation<br />

Characterization using<br />

gate level simulations<br />

and physical tests<br />

• In<strong>for</strong>mation extraction<br />

from the power profile<br />

• Emulate power<br />

in<strong>for</strong>mation available to<br />

attacker<br />

−<br />

Average error below<br />

10%<br />

Power [normalized]<br />

1<br />

Equipment<br />

0.8<br />

0.6<br />

0.4<br />

0.2<br />

P<br />

estimated<br />

∑<br />

= c * x[<br />

t]<br />

0<br />

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1<br />

Time [normalized]<br />

[Genser2009]<br />

i<br />

i<br />

Reference<br />

Estimated<br />

A. Krieg 2011-9-29<br />

17


Agenda<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

• Motivation<br />

• Introduction<br />

• Related work<br />

• <strong>Automatized</strong> <strong>Fault</strong> <strong>Attack</strong> <strong>Emulation</strong><br />

• Impact on Certification Flow<br />

• Conclusion<br />

A. Krieg 2011-9-29<br />

18


Impact on Certification Flow (1/3)<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

Impact on smart card embedded SW development<br />

• SW evaluation without activated HW security features<br />

− Evaluation of SW security implementation<br />

− Automated verification of SW countermeasure implementation<br />

and test replication using HW with enabled security features<br />

− <strong>Testing</strong> of security relevant code is difficult (practical<br />

experience)<br />

• Coding guideline verification<br />

− E.g. SW handling of memory manipulations<br />

− E.g. Detection of program counter manipulations<br />

• Replicable penetration test<br />

A. Krieg 2011-9-29<br />

19


Impact on Certification Flow (2/3)<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

Impact on certification (penetration tests)<br />

• Advantages <strong>for</strong> the lab<br />

− Gain in<strong>for</strong>mation <strong>for</strong> physical attacks<br />

• <strong>Attack</strong> time<br />

• <strong>Attack</strong> region (RAM, Core, …)<br />

• No blocking of expensive laboratory equipment<br />

• Enabling of parallel test scenarios<br />

• Certain HW security features can be deactivated<br />

A. Krieg 2011-9-29<br />

20


Impact on Certification Flow (3/3)<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

• Use the emulator as open sample/ sample with known secrets<br />

• Freely configurable hardware<br />

− Internal values can be read out and manipulated<br />

• Registers<br />

• Memory<br />

• Program counter<br />

− Hardware security features can be deactivated<br />

• Memory encryption<br />

• <strong>Fault</strong> detection mechanisms<br />

− Manipulation of critical signals<br />

• <strong>Fault</strong> detection mechanisms<br />

• Crypto calculation<br />

• Freely definable software load<br />

− Debugging is possible<br />

− Get memory location of critical code<br />

A. Krieg 2011-9-29<br />

21


Agenda<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

• Motivation<br />

• Introduction<br />

• Related work<br />

• <strong>Automatized</strong> <strong>Fault</strong> <strong>Attack</strong> <strong>Emulation</strong><br />

• Impact on Certification Flow<br />

• Conclusion<br />

A. Krieg 2011-9-29<br />

22


Conclusion (1/3)<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

• SW development view<br />

− Test security features<br />

− Verification of coding guideline<br />

− Allow to debug SW<br />

• Open sample approach<br />

− Specific deactivation of HW security features<br />

− Allow to test SW on the HW<br />

− Allow to manipulate HW features<br />

• Run-time power estimation<br />

− Extract interesting time slots<br />

• E.g. Cryptographic calculations<br />

A. Krieg 2011-9-29<br />

23


Conclusion (2/3)<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

• Provide in<strong>for</strong>mation <strong>for</strong> real chip certification<br />

− <strong>Attack</strong> time<br />

− <strong>Attack</strong> region<br />

• RAM, Core, Crypto, …<br />

• Speed-up of security evaluation<br />

− Simple tests can already be per<strong>for</strong>med during SW development<br />

− Provide in<strong>for</strong>mation <strong>for</strong> the real tests<br />

− Test counter measures<br />

− Detailed attack result evaluation by memory analysis<br />

• Enabling of complex fault attack scenarios<br />

A. Krieg 2011-9-29<br />

24


Conclusion (3/3)<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

• Future Work<br />

− More detailed result evaluation<br />

− Multiple FPGA configurations <strong>for</strong> parallel emulation<br />

− Automatic increase of test granularity at critical regions<br />

A. Krieg 2011-9-29<br />

25


Q&A<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

Thanks <strong>for</strong> your attention!<br />

Questions<br />

A. Krieg 2011-9-29<br />

26


References<br />

Institute <strong>for</strong> Technical In<strong>for</strong>matics<br />

www.ITI.TUGraz.at<br />

[Arden2010]<br />

[Jenn1994]<br />

[Velanzco2001]<br />

[Rothbart2004]<br />

[Karlsson1995]<br />

[Bayar2008]<br />

[Kenterlis2006]<br />

[Kafka2008]<br />

[Sterpone2007]<br />

[Sonza2006]<br />

[Baraza2005]<br />

[Leveugle2000]<br />

[Grinschgl2011]<br />

[Pohl2010]<br />

[Pellegrini2010]<br />

[Bachmann2010]<br />

[Genser2009]<br />

[JIL2009]<br />

[CCEVS2005]<br />

W. Arden, M. Brillouët, P. Cogez, M. Graef, B. Huizing, R. Mahnkopf: More-than-Moore, ITRS<br />

2010.<br />

E. Jenn, J. Arlat, M. Rimen, J. Ohlsson, and J. Karlsson, “<strong>Fault</strong> injection into vhdl models: the mefisto tool,” in<br />

Proc. Twenty-Fourth Int <strong>Fault</strong>-Tolerant Computing FTCS-24. Digest of Papers. Symp, 1994, pp. 66–75.<br />

R. Velazco, R. Leveugle, and O. Calvo, “Upset-like fault injection in vhdl descriptions: A method and<br />

preliminary results,” in Proc. IEEE Int Defect and <strong>Fault</strong> Tolerance in VLSI Systems Symp, 2001, pp. 259–267.<br />

K. Rothbart, U. Neffe, C. Steger, R. Weiss, E. Rieger, and A. Muehlberger, “High level fault injection <strong>for</strong> attack<br />

simulation in smart cards,” in Proc. 13th Asian Test Symp, 2004, pp. 118–121.<br />

J. Karlsson and P. Folkesson, “Application of three physical fault injection techniques to the experimental<br />

assessment of the mars architecture.” IEEE Computer Society Press, 1995, pp. 267–287.<br />

S. Bayar and A. Yurdakul, “Self-reconfiguration on spartan-iii fpgas with compressed partial bitstreams via a<br />

parallel configuration access port (cpcap) core,” in Proc. Ph.D. Research in Microelectronics and Electronics<br />

PRIME 2008, 2008, pp. 137–140.<br />

P. Kenterlis, N. Kranitis, A. Paschalis, D. Gizopoulos, and M. Psarakis, “A low-cost seu fault emulation<br />

plat<strong>for</strong>m <strong>for</strong> sram-based fpgas,” in Proc. 12th IEEE Int. On-Line <strong>Testing</strong> Symp. IOLTS 2006, 2006.<br />

L. Kafka, “Analysis of applicability of partial runtime reconfiguration in fault emulator in xilinx fpgas,” in<br />

DDECS ’08: Proceedings of the 2008 11th IEEE Workshop on Design and Diagnostics of Electronic Circuits<br />

and Systems. Washington, DC, USA: IEEE Computer Society, 2008, pp. 1–4.<br />

L. Sterpone and M. Violante, “A new partial reconfiguration-based fault-injection system to evaluate seu<br />

effects in sram-based fpgas,” Nuclear Science, IEEE Transactions on, vol. 54, no. 4, pp. 965 –970, 2007.<br />

M. Sonza Reorda, L. Sterpone, M. Violante, M. Portela-Garcia, C. Lopez-Ongil, and L. Entrena, “<strong>Fault</strong><br />

injection-based reliability evaluation of sopcs,” in Proc. Eleventh IEEE European Test Symp. ETS ’06, 2006,<br />

pp. 75–82.<br />

J. C. Baraza, J. Gracia, D. Gil, and P. J. Gil, “Improvement of fault injection techniques based on vhdl code<br />

modification,” in Proc. Tenth IEEE Int. High-Level Design Validation and Test Workshop, 2005, pp. 19–26.<br />

R. Leveugle, “<strong>Fault</strong> injection in vhdl descriptions and emulation,” in Proc. IEEE Int Defect and <strong>Fault</strong> Tolerance<br />

in VLSI Systems Symp, 2000, pp. 414–419.<br />

J. Grinschgl, A. Krieg, C. Steger, R. Weiss, H. Bock, and J. Haid, “Modular fault injector <strong>for</strong> multiple fault<br />

dependability and security evaluations,” in DSD 2011, In Press.<br />

C. Pohl, R. Fuest, and M. Porrmann, “vmagic – automatic code generation <strong>for</strong> vhdl,” newsletter edacentrum,<br />

vol. 2, pp. 7–10, Jul. 2010.<br />

A. Pellegrini, V. Bertacco, and T. Austin, “<strong>Fault</strong>-based attack of rsa authentication,” in Proc. Design,<br />

Automation & Test in Europe Conf. & Exhibition (DATE), 2010, pp. 855–860.<br />

C. Bachmann, A. Genser, C. Steger, R. Weiss, and J. Haid, “Automated Power Characterization <strong>for</strong> Run-Time<br />

Power <strong>Emulation</strong> of SoC Designs,” in DSD 2010, 2010, pp. 587–594.<br />

A. Genser, C. Bachmann, J. Haid, C. Steger, and R. Weiss, “An emulation-based real-time power profiling<br />

unit <strong>for</strong> embedded software,” in SAMOS 2009, 2009, pp. 67–73.<br />

Joint Interpretation Library, “Application of <strong>Attack</strong> Potential to Smartcards,”, 2009,online available on<br />

https://www.bsi.bund.de<br />

National In<strong>for</strong>mation Assurance Partnership Common Criteria Evaluation and Validation Scheme, “Common<br />

Criteria Evaluation and Validation Scheme Validation Report”, 2005, online available<br />

onhttp://www.commoncriteriaportal.org/files/epfiles/st_vid10023-vr.pdf<br />

A. Krieg 2011-9-29<br />

27

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!