, L'isolation de chaque coeur permet de ne pas propager les fautes aux autres. Permettant dans cette attaque de ne cibler qu'une application s'exécutant sur un seul coeur permettant à l'OS s'exécutant sur un autre coeur par exemple de continuer son travail parfaitement

, La régulation s'applique de manière indifférenciée à tous les niveaux de sécurité (niveaux d'abstractions, TrustZone, etc.). Permettant par la même à un attaquant ne disposant pas d'un accès à des programmes ou des données sécurisée d'avoir tout de même un effet sur celles-ci

, Le premier est celui qu'ils cherchent à attaquer. Le second est celui qu'ils contrôlent et qui sera chargé de modifier en temps réel le couple fréquence/voltage pour induire une faute. Dans leur cas, le scénario d'attaque est celui d'un utilisateur étant capable d'installer un driver sur sa machine et donc d'être au même niveau de privilège que le kernel. Ce driver permet de contrôler les couples fréquences/voltage permettant de générer des fautes. Le thread attaquant va donc faire appel à ce driver

. Celui-ci, est dans cet exemple un thread qui fonctionne une utilisant des mécanismes d'isolation comme la TZ ou Software Guard eXtensions (SGX). Par la suite leur attaque se découpe en plusieurs phases

. Vidanger-le-cache, Cette étape permet de s'assurer que le cache du coeur ciblé ne contient pas d'autres données ou d'autre code que l'application ciblée et le code nécessaire pour lancer l'attaque. Pour cela, ils ont exécuté plusieurs fois les deux codes sur le coeur. Ceci permettant d'assurer que toutes les cases de caches pouvant contenir des données autres soient évincées

, Cette phase permet de trouver un point intéressant d'injection pour l'attaquant. Ce sera le moment où le code devra être exécuté avec un couple fréquence/voltage différent

S. Introduire-un-délai and . Nécessaire, En utilisant l'application d'attaque qu'ils contrôlent, les attaquants sont capables d'introduire un délai en effectuant des «no-operations». Offrant ainsi la possibilité de cibler un traitement spécifique si la latence de la mise en place est trop importante

. Injecter, Le thread attaquant va faire appel au driver, afin de modifier le couple fréquence/voltage. Le thread victime s'exécutant sur le même coeur conservera la valeur de ce couple, il en résultera une faute si l'attaquant a réussi à trouver un couple ayant l

, Cette attaque leur a permis de créer deux schémas d'attaques : -Retrouver une clef de chiffrement AES sauvegardée dans la TZ. Ils stipulent cependant que cette vulnérabilité ne peut être créée que s'il est possible de chronométrer l'exécution d'un thread s'exécutant en TZ

, Variable d'accusé de réception du message de départ du coeur 1, contenant la valeur d'un registre d

, Variable d'accusé de réception du message de départ du coeur deux, contenant la valeur d'un registre d

, Variable d'accusé de réception du message de départ du coeur 3, contenant la valeur d'un registre d

, Pour chaque coeur de travail, la valeur de la clef de chiffrement utilisée

, Pour chaque coeur de travail, la valeur du texte clair

, Pour chaque coeur de travail, la valeur du chiffré résultant

, Un compteur du nombre d'exécutions et d'autres registres d'état pour suivre l'exécution

, les différents coeurs, ceci afin que les accès à la mémoire soient non-concurrents. Il est alors possible avec une seule injection d'affecter les coeurs à des moments différents, sans nécessité de poser des points d'arrêt. Ensuite ce même coeur de contrôle reste dans sa boucle d'attente de commande lorsque l'on injecte la faute

S. Andersen, V. Abella-;-jean-arlat, M. Aguera, L. Amat, Y. Crouzet et al., Fault injection for dependability validation : A methodology and some applications, Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security, CCS '16, vol.2, pp.743-754, 1990.

M. Abadi, M. Budiu, Ú. Erlingsson, and J. Ligatti, Control-flow integrity principles, implementations, and applications, ACM Transactions on Information and System Security (TISSEC), vol.13, issue.1, p.4, 2009.

C. Archambeau, E. Peeters, F. Standaert, and J. Quisquater, Template attacks in principal subspaces, Cryptographic Hardware and Embedded Systems-CHES 2006, pp.1-14

A. William, . Arbaugh, J. David, J. M. Farber, and . Smith, A secure and reliable bootstrap architecture, Security and Privacy, 1997. Proceedings., 1997 IEEE Symposium on, pp.65-71, 1997.

L. Antoni, R. Leveugle, and M. Feher, Using run-time reconfiguration for fault injection in hardware prototypes, Defect and Fault Tolerance in VLSI Systems, 2002. DFT 2002. Proceedings. 17th IEEE International Symposium on, pp.245-253, 2002.
URL : https://hal.archives-ouvertes.fr/hal-00015042

A. Avizienis, J. Laprie, and B. Randell, Fundamental concepts of computer system dependability, Workshop on Robot Dependability : Technological Challenge of Dependable Robots in Human Environments, pp.1-16, 2001.

. Android, System and kernel security, 2010.

D. B. Armstrong, A deductive method for simulating faults in logic circuits, IEEE Transactions on Computers, vol.21, pp.464-471, 1972.

, Arm security technology : Building a secure system using trustzone technology, 2009.

, Arm cortex-a53 mpcore processor technical reference manual, ARM DDI 0500D ID021414, 2014.

, Arm architecture reference manual : Armv8, for armv8-a architecture profile, ARM DDI 0487B.a (ID033117, 2017.

, ARM. Arm trusted firmware, 2019.

A. Akhunzada, M. Sookhak, N. Badrul-anuar, A. Gani, E. Ahmed et al., Man-At-The-End attacks : Analysis, taxonomy, human aspects, motivation and future directions, Journal of Network and Computer Applications, vol.48, pp.44-57, 2015.

A. Barenghi, L. Breveglieri, I. Koren, and D. Naccache, Fault injection attacks on cryptographic devices : Theory, practice, and countermeasures, Proceedings of the IEEE, vol.100, issue.11, pp.3056-3076, 2012.
URL : https://hal.archives-ouvertes.fr/hal-01110932

S. Bukasa, L. Claudepierre, R. Lashermes, and J. Lanet, When fault injection collides with hardware complexity, 11th International Symposium on Foundations & Practice of Security (FPS 2018), 2018.
URL : https://hal.archives-ouvertes.fr/hal-01950931

E. Brier, C. Clavier, and F. Olivier, Correlation power analysis with a leakage model, International Workshop on Cryptographic Hardware and Embedded Systems, pp.16-29, 2004.

S. Bhatkar, D. C. Duvarney, and R. Sekar, Address Obfuscation : An Efficient Approach to Combat a Broad Range of Memory Error Exploits, Usenix Security, vol.3, pp.105-120, 2003.

E. Betters, Apple pay : How it works, pp.2017-2019, 2016.

T. Bletsch, X. Jiang, V. W. Freeh, and Z. Liang, Jump-oriented programming : a new class of code-reuse attack, Proceedings of the 6th ACM Symposium on Information, Computer and Communications Security, pp.30-40, 2011.

. Sebanjila-kevin, R. Bukasa, H. L. Lashermes, J. Bouder, A. Lanet et al., How TrustZone Could Be Bypassed : Side-Channel Attacks on a Modern Systemon-Chip, 11th IFIP International Conference on Information Security Theory and Practice (WISTP), volume LNCS-10741 of Information Security Theory and Practice, pp.93-109, 2017.

. Sebanjila-kevin, R. Bukasa, J. Lashermes, A. Lanet, and . Legay, Let's shock our IoT's heart : ARMv7-M under (fault) attacks, 13th International Conference on Availability, Reliability and Security (ARES 2018), pp.1-6, 2018.

E. Blem, J. Menon, and K. Sankaralingam, Power struggles : Revisiting the risc vs. cisc debate on contemporary arm and x86 architectures, 2013 IEEE 19th International Symposium on High Performance Computer Architecture (HPCA), pp.1-12, 2013.

A. Bosio and G. D. Natale, Lifting : A flexible open-source fault simulator, 17th Asian Test Symposium, pp.35-40, 2008.
URL : https://hal.archives-ouvertes.fr/lirmm-00343610

A. Barenghi, G. Pelosi, and Y. Teglia, Improving first order differential power attacks through digital signal processing, Proceedings of the 3rd International Conference on Security of Information and Networks, SIN '10, pp.124-133, 2010.

. Sp-buchner, . Wilson, . Kang, J. A. Gill, . Mazer et al., Laser simulation of single event upsets, IEEE Transactions on Nuclear Science, vol.34, issue.6, pp.1227-1233, 1987.

C. Benjamin-morin and . Kasmi, État des lieux de la sécurité des communications cellulaires, 2011.

C. Clavier-;-pierluigi-civera, L. Macchiarulo, M. Rebaudengo, M. Sonza-reorda, ;. Violante et al., Xception : Software fault injection and monitoring in processor functional units, An improved scare cryptanalysis against a secret a3/a8 gsm algorithm. Information Systems Security, vol.10, pp.245-266, 1998.

J. Corpuz, Mobile password managers, pp.2017-2019, 2017.

S. Chari, R. Josyula, P. Rao, and . Rohatgi, Template attacks, Cryptographic Hardware and Embedded Systems-CHES 2002, pp.13-28, 2003.

N. Carlini and D. Wagner, Rop is still dangerous : Breaking modern defenses, USENIX Security, vol.14, 2014.

R. D. +-16]-ruan-de-clercq, B. Keulenaer, B. Coppens, P. Yang, . Maene et al., SOFIA : Software and control flow integrity architecture, 2016 Design, Automation & Test in Europe Conference & Exhibition (DATE), pp.1172-1177, 2016.

L. Davi, A. Dmitrienko, M. Egele, T. Fischer, T. Holz et al., MoCFI : A Framework to Mitigate Control-Flow Attacks on Smartphones, NDSS, vol.2, p.27, 2012.

, Jedec solid state technology association, DDR3 SDRAM Specification JESD79-3F, 2012.

L. Davi, A. Dmitrienko, A. Sadeghi, and M. Winandy, Returnoriented programming without returns on arm, 2010.

A. Dehbaoui, . Amir-pasha, N. Mirbaha, J. Moro, A. Dutertre et al., Electromagnetic glitch on the aes round counter, Constructive Side-Channel Analysis and Secure Design, pp.17-31, 2013.
URL : https://hal.archives-ouvertes.fr/emse-00837514

T. Espitau, P. Fouque, B. Gérard, and M. Tibouchi, Side-channel attacks on bliss lattice-based signatures : Exploiting branch tracing against strongswan and electromagnetic emanations in microcontrollers, Proceedings of the 2017 ACM SIGSAC Conference on Computer and Communications Security, CCS '17, pp.1857-1874, 2017.
URL : https://hal.archives-ouvertes.fr/hal-01648080

W. Enck, P. Gilbert, S. Han, V. Tendulkar, B. Chun et al., Taintdroid : an information-flow tracking system for realtime privacy monitoring on smartphones, ACM Transactions on Computer Systems (TOCS), vol.32, issue.2, p.5, 2014.

D. Foo-kune and Y. Kim, Timing attacks on pin input devices, Proceedings of the 17th ACM conference on Computer and communications security, pp.678-680

E. Benoit-gonzalvo, L. Bourbao, M. Bossuet, and . Fabien, Jtag combined attacks, Workshop on Secure Hardware and Security Evaluation, 2015.

B. Gierlichs, L. Batina, P. Tuyls, and B. Preneel, Mutual information analysis, International Workshop on Cryptographic Hardware and Embedded Systems, pp.426-442, 2008.

D. Genkin, L. Pachmanov, I. Pipman, E. Tromer, and Y. Yarom, Ecdsa key extraction from mobile devices via nonintrusive physical side channels, Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security, CCS '16, pp.1626-1638, 2016.

D. Genkin, L. Pachmanov, I. Pipman, and E. Tromer, Stealing keys from pcs using a radio : Cheap electromagnetic attacks on windowed exponentiation, International Workshop on Cryptographic Hardware and Embedded Systems, pp.207-228, 2015.

D. Gruss, R. Spreitzer, and S. Mangard, Cache template attacks : Automating attacks on inclusive last-level caches, USENIX Security Symposium, pp.897-912, 2015.

D. Daniel, F. Gajski, and . Vahid, Sanjiv Narayan, and Jie Gong. Specification and design of embedded systems, 1994.

R. Hay and A. Dayan, Android keystore stack buffer overflow, 2014.

H. Fred, R. J. Hardie, and . Suhocki, Design and use of fault simulation for saturn computer design, IEEE Transactions on Electronic Computers, issue.4, pp.412-429, 1967.

H. Takashi, S. Hideki, and K. Yoshio, Investigation on radiated emission characteristics of multilayer printed circuit boards, IEICE Trans. Commum., B, vol.80, issue.11, pp.1645-1651, 1997.

S. Han, G. Kang, H. Shin, and . Rosenberg, Doctor : An integrated software fault injection environment for distributed real-time systems, Computer Performance and Dependability Symposium, pp.204-213, 1995.

F. Jelinek, Buffer overflow in variable length coding of fixed rate sources, IEEE Transactions on Information Theory, vol.14, issue.3, pp.490-501, 1968.

D. Jauvart, J. A. Jacques, L. Fournier, N. E. Goubin, and . Mrabet, First practical side-channel attack to defeat point randomization in secure implementations of pairingbased cryptography, SECRYPT, pp.104-115, 2017.
URL : https://hal.archives-ouvertes.fr/hal-02177711

M. Joye, M. Kim, R. Daly, J. Kim, C. Fallin et al., Flipping bits in memory without accessing them : An experimental study of dram disturbance errors, In ACM SIGARCH Computer Architecture News, vol.147, pp.361-372, 2012.

M. Kooli and G. D. Natale, A survey on simulation-based fault injection tools for complex systems, Design & Technology of Integrated Systems In Nanoscale Era (DTIS), pp.1-6, 2014.
URL : https://hal.archives-ouvertes.fr/hal-01075473

A. Ghani, . Kanawati, A. Nasser, J. A. Kanawati, and . Abraham, Ferrari : A flexible software-based fault and error injection system, IEEE Transactions on computers, vol.44, issue.2, pp.248-260, 1995.

J. Karlsson, P. Liden, P. Dahlgren, R. Johansson, and U. Gunneflo, Using heavy-ion radiation to validate fault-handling mechanisms, IEEE micro, vol.14, issue.1, pp.8-23, 1994.

C. Paul and . Kocher, Timing attacks on implementations of Diffie-Hellman, RSA, DSS, and other systems, Advances in Cryptology-CRYPTO'96, pp.104-113, 1996.

F. Koeune and F. Standaert, A Tutorial on Physical Security and Side-Channel Attacks, pp.78-108, 2005.

T. Hélène-le-bouder, D. Barry, J. Couroussé, R. Lanet, and . Lashermes, A Template Attack Against VERIFY PIN Algorithms, SECRYPT 2016, pp.231-238, 2016.

R. Leveugle, Fault injection in vhdl descriptions and emulation, Proceedings-IEEE-International-Symposium-on-Defect-and-Fault-Tolerance-in-VLSI-Systems, pp.414-433, 2000.
URL : https://hal.archives-ouvertes.fr/hal-00015057

R. Lashermes, J. Fournier, and L. Goubin, Inverting the final exponentiation of tate pairings on ordinary elliptic curves using faults, International Workshop on Cryptographic Hardware and Embedded Systems, pp.365-382, 2013.

R. Lashermes, H. L. Bouder, and G. Thomas, Hardware-Assisted Program Execution Integrity : HAPEI, NordSec 2018 -23rd Nordic Conference on Secure IT Systems, 2018.
URL : https://hal.archives-ouvertes.fr/hal-01978181

G. Marsaglia, Xorshift rngs, Journal of Statistical Software, vol.8, issue.14, pp.1-6, 2003.

S. Mangard, A simple power-analysis (spa) attack on implementations of the aes key expansion, International Conference on Information Security and Cryptology, pp.343-358, 2002.

R. Premachandran, S. G. Menon, A. Chappell-;-nicolas-moro, K. Dehbaoui, B. Heydemann et al., Deductive fault simulation with functional blocks, Electromagnetic fault injection : towards a fault model on a 32-bit microcontroller, vol.27, pp.689-695, 1978.

M. Lipp, D. Gruss, R. Spreitzer, C. Maurice, and S. Mangard, ARMageddon : Cache Attacks on Mobile Devices, Proceedings of the 25th USENIX Security Symposium, p.83294375, 2016.

S. Mobile, White paper : An overview of samsung knox platform. White paper, 2016.

S. Mobile, White paper : Samsung knox a security solution, 2016.

S. Mangard, E. Oswald, and T. Popp, Power analysis attacks : Revealing the secrets of smart cards, vol.31, 2008.

N. Moro, Sécurisation de programmes assembleur face aux attaques visant les processeurs embarqués. (Security of assembly programs against fault attacks on embedded processors), 2014.

L. Nguyen, Samsung pay : How it works, pp.2017-2019, 2016.

J. Newsome and D. Song, Dynamic taint analysis for automatic detection, analysis, and signature generation of exploits on commodity software, 2005.

E. Owusu, J. Han, S. Das, A. Perrig, and J. Zhang, Accessory : Password inference using accelerometers on smartphones, Proceedings of the Twelfth Workshop on Mobile Computing Systems &#38 ; Applications, HotMobile '12, vol.9, pp.1-9, 2012.

E. Oswald, Enhancing simple power-analysis attacks on elliptic curve cryptosystems, International Workshop on Cryptographic Hardware and Embedded Systems, pp.82-97, 2002.

C. Paul, J. Kocher, B. Jaffe, and . Jun, Differential Power Analysis, CRYPTO, pp.388-397, 1999.

A. Peslyak, Return-to-libc attack

V. Pallipadi and A. Starikovskiy, The ondemand governor, Proceedings of the Linux Symposium, vol.2, pp.215-230, 2006.

S. Potyra, V. Sieh, and . Cin, Evaluating fault-tolerant system designs using faumachine, Proceedings of the 2007 workshop on Engineering fault tolerant systems, p.9, 2007.

D. Patterson and A. Waterman, The RISC-V Reader : An Open Architecture Atlas. Strawberry Canyon, 2017.

J. Quisquater and D. Samyde, Electromagnetic analysis (EMA) : Measures and counter-measures for smart cards, Smart Card Programming and Security, pp.200-210, 2001.

L. Riviere, J. Bringer, T. Le, and H. Chabanne, A novel simulation approach for fault injection resistance evaluation on smart cards, Software Testing, Verification and Validation Workshops (ICSTW), pp.1-8, 2015.
URL : https://hal.archives-ouvertes.fr/hal-02412312

L. Riviere, Sécurité des implémentations logicielles face aux attaques par injection de faute sur systemes embarqués, 2015.

K. Rosenfeld and R. Karri, Attacks and defenses for jtag. Design & Test of Computers, IEEE, vol.27, pp.36-47, 2010.

M. Seaborn and T. Dullien, Exploiting the dram rowhammer bug to gain kernel privileges, Black Hat, p.15, 2015.

M. Sand, S. Potyra, and V. Sieh, Deterministic high-speed simulation of complex systems including fault-injection, IEEE/IFIP International Conference on Dependable Systems & Networks, pp.211-216, 2009.

L. Szekeres, M. Payer, T. Wei, and D. Song, Sok : Eternal war in memory, Security and Privacy (SP), 2013 IEEE Symposium on, pp.48-62, 2013.

P. Shroff, S. Smith, and M. Thober, Dynamic dependency monitoring to secure information flow, 20th IEEE Computer Security Foundations Symposium (CSF'07), pp.203-217, 2007.

V. Sieh, O. Tschache, and F. Balbach, Verify : Evaluation of reliability using vhdl-models with embedded fault descriptions, Fault-Tolerant Computing, 1997. FTCS-27. Digest of Papers., Twenty-Seventh Annual International Symposium on, pp.32-36, 1997.

M. Tunstall, D. Mukhopadhyay, and S. Ali, Differential fault analysis of the advanced encryption standard using a single fault
URL : https://hal.archives-ouvertes.fr/hal-01573310

S. Zhou-;-sébastien-tiran and . Ordas, Yannick Teglia, Michel Agoyan, and Philippe Maurine. A frequency leakage model and its application to cpa and dpa, Information Security Theory and Practice. Security and Privacy of Mobile Devices in Wireless Communication, p.278, 2011.

A. Tang, S. Sethumadhavan, and S. Stolfo, CLKSCREW : Exposing the perils of security-oblivious energy management, 26th USENIX Security Symposium (USENIX Security 17), pp.1057-1074, 2017.

N. Timmers, A. Spruyt, and M. Witteman, Controlling pc on arm using fault injection, Fault Diagnosis and Tolerance in Cryptography (FDTC), 2016 Workshop on, pp.25-35, 2016.

G. Ernst, T. Ulrich, . Baker, and . Williams, Fault-test analysis techniques based on logic simulation, Proceedings of the 9th Design Automation Workshop, pp.111-115, 1972.

Y. Victor-van-der-veen, M. Fratantonio, D. Lindorfer, C. Gruss, G. Maurice et al., Drammer : Deterministic Rowhammer Attacks on Mobile Platforms, pp.1675-1689, 2016.

G. Vishwakarma and W. Lee, Exploiting jtag and its mitigation in iot : A survey, Future Internet, vol.10, issue.12, p.121, 2018.

A. Shell-waterman, Design of the RISC-V instruction set architecture, 2016.

R. Weinmann, Baseband attacks : Remote exploitation of memory corruptions in cellular protocol stacks

Y. Yarom, K. Falkner-;-loic-zussa, A. Dehbaoui, K. Tobich, J. Dutertre et al., Flush+ reload : A high resolution, low noise, l3 cache side-channel attack, 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE), vol.1, pp.1-6, 2014.