Development and evaluation of solutions for the protection of DRAM and MRAM memories against Rowhammer attacks - TEL - Thèses en ligne Accéder directement au contenu
Thèse Année : 2022

Development and evaluation of solutions for the protection of DRAM and MRAM memories against Rowhammer attacks

Développement et évaluation de solutions de protections des DRAM et MRAM contre l'attaque Rowhammer

Loïc France

Résumé

Modern computer memories have shown reliability issues.The main memory is the target of a security threat called Rowhammer, which takes advantage of cell-to-cell disturbance between DRAM rows to cause bit-flips in adjacent victim cells of repeatedly activated aggressor rows.Moreover, as DRAM manufacturers keep increasing the memory density to improve efficiency and reduce cost, the disturbance between cells gets more important over the years, worsening the threat.The abundant research on this subject led to the development of numerous countermeasures.Each proposal comes with pros and cons in terms of modularity, performance cost, silicon area, and energy overheads, with implementation in software, hardware or both.The development of hardware-based mitigation techniques can be made easier with a computer architecture simulator such as gem5, which facilitates the development of computer architectures that integrate new hardware components with existing and future memories or other elements.However, existing architecture simulators are not suitable for Rowhammer mitigation development, as they cannot simulate the memory corruption from Rowhammer attacks, which makes verifying mitigation techniques more difficult.In this work, we first improve the open-source simulator gem5 to make it a complete tool for Rowhammer mitigation development.We add a memory corruption module that is able to simulate the bit-flips caused by Rowhammer attacks, with various parameters to adapt it to mature and future memories, and utility functions to facilitate the integration and evaluation of mitigation techniques into the architecture.Then, we study how changing the counting granularity of counter-based Rowhammer mitigation proposals could reduce their storage requirements.Some of the most efficient proposals rely on row activation counters, using for example Counting Bloom Filters or the Misra-Gries algorithm.We demonstrate that those proposals can have their storage requirements reduced by 40% to 50% without impacting the protection level, by changing their counting granularity from bank-level to rank-level.Additionally, we propose two new Rowhammer detection mechanisms.We show that by including hardware event traces inside the architecture, a machine-learning algorithm implemented in the hardware can classify traces from these counters to detect Rowhammer attacks.We also propose a new detection mechanism that evaluates the activation frequency of every DRAM row to accurately detect aggressor rows and prevent the corruption, with an adaptive energy consumption.As a line of research, we explore the vulnerabilities of emerging non-volatile memories to variations of the Rowhammer attack.Through power consumption analysis, we retro-engineer the internal architecture of commercial Toggle-MRAM and STT-MRAM to design attacks that are susceptible to produce bit-flips in the memory, and execute these attacks to check if they can corrupt the memory.
Les mémoires des ordinateurs modernes sont sujette stockée dans les cellules voisines de celluleses à des problème de fiabilité. La mémoire principale est la cible d'une attaque appelée Rowhammer, qui utilise les perturbations électriques entre les lignes de la DRAM pour corrompre la donné activées fréquemment.De plus, la densité des mémoires augmentant avec l'amélioration des technologies de fabrication pour optimiser l'efficacité et réduire les coûts, les effets des perturbations entre les lignes sont de plus en plus importants, empirant la menace.La recherche abondante sur ce sujet a conduit au développement de nombreuses contremesures. Chaque proposition a ses propres avantages et inconvénients en termes de modularité, d'impact sur les performances, sur la surface de silicium ou la consommation énergétique, avec des implémentations purement logicielles, matérielles ou un mélange des deux. Le développement de contremesures peut être facilité par l'utilisation d'un simulateur d'architecture tel que gem5, qui simplifie l'intégration de nouveaux composants matériels avec différentes technologies de mémoires et de processeurs.Cependant, les simulateurs existants étant incapables de simuler la corruption de la mémoire produite par une attaque Rowhammer, ils ne sont pas appropriés pour le développement de protections contre Rowhammer car ils ne permettent pas de vérifier l'absence de corruption. Dans un premier temps, nous proposons une amélioration du simulateur ouvert gem5 pour en faire un outil de développement de contremesure contre Rowhammer.Nous y incorporons un simulateur de corruption de mémoire capable de simuler des bit-flips causés par les attaques Rowhammer, configurable en plusieurs points pour l'adapter aux mémoires existantes et futures, et fournissant les fonctions nécessaires à l'intégration et l'évaluation de contremesures dans l'architecture.Dans un deuxième temps, nous étudions comment le changement de granularité de comptage peut réduire les besoins en mémoire de certaines contremesures contre Rowhammer.Parmi les propositions de contremesures les plus efficaces à ce jour, certaines utilisent des compteurs d'activations des lignes de la DRAM, en utilisant par exemple les compteurs à filtre de Bloom ou l'algorithm de Misra-Gries pour réduire les besoins en mémoire. Nous démontrons que ces propositions peuvent avoir leurs besoins en mémoire réduits de 40% à 50% sans impacter la niveau de protection, en modifiant la granularité de comptage du niveau bank au niveau rank de l'architecture de la DRAM.Dans un troisième temps, nous proposons deux nouveaux mécanismes de détection des attaques Rowhammer. La première proposition utilise un algorithme de machine-learning ainsi que des compteurs d'événements introduits dans l'architecture pour détecter les attaques Rowhammer. La seconde proposition combine le comptage des activations et l'évaluation de la fréquence d'activation de toutes les lignes de la DRAM pour détecter les attaques. Dans un quatrième et dernier temps, nous explorons les vulnérabilités des mémoires émergentes non-volatiles aux variations de l'attaque Rowhammer. En analysant la consommation d'une mémoire externe de Toggle-MRAM et d'STT-MRAM lors de différentes opérations de lecture et d'écriture, nous reconstituons une partie de l'architecture interne de ces mémoires, afin de concevoir des attaques susceptibles de corrompre les données stockées, puis exécutons ces attaques pour évaluer la vulérabilité de ces mémoires.
Fichier principal
Vignette du fichier
FRANCE_2022_archivage.pdf (1.08 Mo) Télécharger le fichier
Origine : Version validée par le jury (STAR)

Dates et versions

tel-04117848 , version 1 (05-06-2023)

Identifiants

  • HAL Id : tel-04117848 , version 1

Citer

Loïc France. Development and evaluation of solutions for the protection of DRAM and MRAM memories against Rowhammer attacks. Cryptography and Security [cs.CR]. Université de Montpellier, 2022. English. ⟨NNT : 2022UMONS086⟩. ⟨tel-04117848⟩
73 Consultations
102 Téléchargements

Partager

Gmail Facebook X LinkedIn More