1 |
A complementary approach for testing system robustness based on passive testing and fault injection techniquesBessayah, Fayçal 03 December 2010 (has links) (PDF)
La robustesse est un attribut spécifique de la fiabilité qui caractérise la réaction d'un système aux fautes externes. Par conséquent, le test de robustesse consiste à tester un système en présence de fautes ou dans des conditions environnementales stressantes afin d'étudier son comportement lorsqu'il évolue dans un environnement hostile. Le test de robustesse peut être soit empirique ou formel. Les méthodes d'injection de fautes sont très communément utilisées pour évaluer le degré de robustesse d'un système. Cependant, elles ne se basent sur aucun oracle de test pour valider leurs résultats. D'autre part, les méthodes formelles de test de robustesse formalisent et la génération de fautes et le processus d'analyse. Elles présentent cependant quelques limitations par rapport aux types de fautes considérées qui dépendent fortement du modèle fonctionnel du système testé. Le travail que nous présentons dans cette thèse, consiste en un ensemble de propositions qui ont pour objectif de répondre aux défis auxquels font face les approches de test de robustesse existantes. D'abord, nous proposons une approche formelle pour la spécification et la vérification du processus d'injection de fautes. Cette approche consiste à formaliser les fautes injectées par un ensemble de triplet de Hoare et ensuite d'utiliser cette spécification pour vérifier la bonne exécution des campagnes d'injections. Notre seconde contribution concerne la spécification et la vérification des propriétés de robustesse. Nous proposons de formaliser les propriétés de robustesse en utilisant une extension de la logique temporelle linéaire qui permet la spécification de contraintes temps réel (XCTL) et nous proposons un algorithme de test passif qui permet de tester la satisfiabilité de ce type de contraintes sur des traces d'exécution finies. Nous contribuons aussi par une nouvelle approche de test de robustesse. Nous proposons une approche hybride basée sur l'injection de fautes et le test passif. L'injection de fautes est utilisée pour créer des conditions environnementales stressantes, et le test passif permet de vérifier la satisfiabilité des propriétés de robustesse sur les traces d'exécution collectées. Les fautes injectées ainsi que les propriétés de robustesse sont formellement spécifiées. Nous utilisons la logique de Hoare pour la spécification des fautes et la logique XCTL pour la formalisation des propriétés de robustesse. Ce qui nous permet de vérifier à la fois le processus d'injection et les exigences de robustesse en appliquant les approches de test passives proposées dans nos contributions précédentes. Finalement, nous proposons une plateforme de modélisation et de vérification de la robustesse des services Web. Cette plateforme est en réalité une instanciation de notre approche de test de robustesse, adaptée aux services Web. Le choix des services Web est motivé par l'émergence de cette technologie qui tend progressivement à s'imposer comme un standard du paradigme de communication programme-à-programme. Ils fournissent aussi un excellent exemple de systèmes hétérogènes fortement distribués.
|
2 |
INJECTION DE FAUTES DANS LES SYSTEMES DISTRIBUESHoarau, William 21 March 2008 (has links) (PDF)
Dans un réseau constitué de plusieurs milliers d'ordinateurs, l'apparition de fautes est inévitable. Etre capable de tester le comportement d'un programme distribué dans un environnement où l'on peut contrôler les fautes (comme le crash d'un processus) est une fonctionnalité importante pour le déploiement de programmes fiables.....
|
3 |
A complementary approach for testing system robustness based on passive testing and fault injection techniques / Une approche complémentaire de test de robustesse basée sur l'injection de fautes et le test passifBessayah, Fayçal 03 December 2010 (has links)
La robustesse est un attribut spécifique de la fiabilité qui caractérise la réaction d’un système aux fautes externes. Par conséquent, le test de robustesse consiste à tester un système en présence de fautes ou dans des conditions environnementales stressantes afin d’étudier son comportement lorsqu’il évolue dans un environnement hostile. Le test de robustesse peut être soit empirique ou formel. Les méthodes d’injection de fautes sont très communément utilisées pour évaluer le degré de robustesse d’un système. Cependant, elles ne se basent sur aucun oracle de test pour valider leurs résultats. D’autre part, les méthodes formelles de test de robustesse formalisent et la génération de fautes et le processus d’analyse. Elles présentent cependant quelques limitations par rapport aux types de fautes considérées qui dépendent fortement du modèle fonctionnel du système testé. Le travail que nous présentons dans cette thèse, consiste en un ensemble de propositions qui ont pour objectif de répondre aux défis auxquels font face les approches de test de robustesse existantes. D’abord, nous proposons une approche formelle pour la spécification et la vérification du processus d’injection de fautes. Cette approche consiste à formaliser les fautes injectées par un ensemble de triplet de Hoare et ensuite d’utiliser cette spécification pour vérifier la bonne exécution des campagnes d’injections. Notre seconde contribution concerne la spécification et la vérification des propriétés de robustesse. Nous proposons de formaliser les propriétés de robustesse en utilisant une extension de la logique temporelle linéaire qui permet la spécification de contraintes temps réel (XCTL) et nous proposons un algorithme de test passif qui permet de tester la satisfiabilité de ce type de contraintes sur des traces d’exécution finies. Nous contribuons aussi par une nouvelle approche de test de robustesse. Nous proposons une approche hybride basée sur l’injection de fautes et le test passif. L’injection de fautes est utilisée pour créer des conditions environnementales stressantes, et le test passif permet de vérifier la satisfiabilité des propriétés de robustesse sur les traces d’exécution collectées. Les fautes injectées ainsi que les propriétés de robustesse sont formellement spécifiées. Nous utilisons la logique de Hoare pour la spécification des fautes et la logique XCTL pour la formalisation des propriétés de robustesse. Ce qui nous permet de vérifier à la fois le processus d’injection et les exigences de robustesse en appliquant les approches de test passives proposées dans nos contributions précédentes. Finalement, nous proposons une plateforme de modélisation et de vérification de la robustesse des services Web. Cette plateforme est en réalité une instanciation de notre approche de test de robustesse, adaptée aux services Web. Le choix des services Web est motivé par l’émergence de cette technologie qui tend progressivement à s’imposer comme un standard du paradigme de communication programme-à-programme. Ils fournissent aussi un excellent exemple de systèmes hétérogènes fortement distribués. / Robustness is a specialized dependability attribute, characterizing a system reaction with respect to external faults. Accordingly, robustness testing involves testing a system in the presence of faults or stressful environmental conditions to study its behavior when facing abnormal conditions. Testing system robustness can be done either empirically or formally. Fault injection techniques are very suitable for assessing the robustness degree of the tested system. They do not rely however, on formal test oracles for validating their test. On the other hand, existing formal approaches for robustness testing formalize both the fault generation and the result analysis process. They have however some limitations regarding the type of the handled faults as well as the kind of systems on which they can be applied. The work presented in this thesis manuscript aims at addressing some of the issues of the existing robustness testing methods. First, we propose a formal approach for the specification and the verification of the fault injection process. This approach consists in formalizing the injected faults as a set of Hoare triples and then, verifying the good execution of the injection campaigns, based on a passive testing algorithm that checks the fault specification against a collected injection trace. Our second contribution focuses on providing a test oracle for verifying real time constraints. We propose a passive testing algorithm to check real time requirements, specified as a set of XCTL (eXplicit Clock Temporal Logic) formulas, on collected execution traces. Then, we propose a new robustness testing approach. It is a complementary approach that combines fault injection and passive testing for testing system robustness. The injected faults are specified as a set of Hoare triples and verified against the injection trace to validate the injection process. The robustness requirements are formalized as a set of XCTL formulas and are verified on collected execution traces. This approach allows one to inject a wide range of faults and can be used to test both simple and distributed systems. Finally, we propose an instantiation of our robustness testing approach for Web services. We chose Web services technology because it supports widely distributed and heterogeneous systems. It is therefore, a very good application example to show the efficiency of our approach.
|
4 |
Analyse de sûreté par injection de fautes dans un environnement de prototypage à base de FPGAVanhauwaert, P. 04 April 2008 (has links) (PDF)
L'évolution des technologies microélectroniques augmente la sensibilité des circuits intégrés face aux perturbations (impact de particules, perte de l'intégrité du signal...). Le comportement erroné d'un circuit peut être inacceptable et une analyse de sûreté à haut niveau d'abstraction permet de choisir les protections les plus adaptées et de limiter le surcoût induit par une éventuelle reprise de la description. Cette thèse porte sur le développement d'une méthodologie et d'un environnement améliorant l'étude de la robustesse de circuits intégrés numériques. L'approche proposée met en œuvre un prototype matériel d'une version instrumentée du circuit à analyser. L'environnement comprend trois niveaux d'exécution dont un niveau logiciel embarqué qui permet d'accélérer les expériences en conservant une grande flexibilité : l'utilisateur peut obtenir le meilleur compromis entre complexité de l'analyse et durée des expériences. Nous proposons également de nouvelles techniques d'instrumentation et de contrôle des injections afin d'améliorer les performances de l'environnement. Une évaluation prédictive de ces performances renseigne l'utilisateur sur les paramètres les plus influents et sur la durée de l'analyse pour un circuit et une implantation de l'environnement donnés. Enfin la méthodologie est appliquée pour l'analyse de deux systèmes significatifs dont un système matériel/logiciel construit autour d'un microprocesseur SparcV8.
|
5 |
Conception architecturale haut débit et sûre de fonctionnement pour les codes correcteurs d'erreurs / Design of high speed and dependable architectures for error correcting codesJaber, Houssein 09 December 2009 (has links)
Les systèmes de communication modernes exigent des débits de plus en plus élevés afin de traiter des volumes d'informations en augmentation constante. Ils doivent être flexibles pour pouvoir gérer des environnements multinormes, et évolutifs pour s'adapter aux normes futures. Pour ces systèmes, la qualité du service (QoS) doit être garantie malgré l'évolution des technologies microélectroniques qui augmente la sensibilité des circuits intégrés aux perturbations externes (impact de particules, perte de l'intégrité du signal, etc.). La tolérance aux fautes devient un critère important pour améliorer la fiabilité et par conséquence la qualité de service. Cette thèse s'inscrit dans la continuité des travaux menés au sein du laboratoire LICM concernant la conception architecturale d'une chaîne de transmission à haut débit, faible coût, et sûre de fonctionnement. Elle porte sur deux axes de recherche principaux : le premier axe porte sur les aspects rapidité et flexibilité, et en particulier sur l'étude et l'implantation d'architectures parallèles-pipelines dédiées aux codeurs convolutifs récursifs. Le principe repose sur l'optimisation des blocs calculant le reste de la division polynomiale qui constitue l'opération critique du codage. Cette approche est généralisée aux filtres récursifs RII. Les caractéristiques architecturales principales recherchées sont une grande flexibilité et une extensibilité aisée, tout en préservant la fonctionnalité ainsi qu'un bon équilibre entre quantité de ressources utilisées (et donc surface consommée) et performances obtenues (vitesse de fonctionnement) ; le deuxième axe de recherche porte sur le développement d'une méthodologie de conception de codeurs sûrs en présence de fautes, améliorant ainsi la tolérance de circuits intégrés numériques. L’approche proposée consiste à ajouter aux codeurs des blocs supplémentaires permettant la détection matérielle en ligne de l'erreur afin d'obtenir des architectures sûrs en présence des fautes. Les solutions proposées permettent d'obtenir un bon compromis entre complexité et fréquence de fonctionnement. Afin d'améliorer encore le débit du fonctionnement, nous proposons également des versions parallèles-pipelines des codeurs sûrs. Différents campagnes d'injection de fautes simples, doubles, et aléatoires ont été réalisées sur les codeurs afin d'évaluer les taux de détection d’erreurs. L'étude architectures sûrs de fonctionnement a ensuite été étendue aux décodeurs parallèles-pipeline pour les codes cycliques en blocs. L'approche choisie repose sur une légère modification des architectures parallèles-pipeline développées / Nowadays, modern communication systems require higher and higher data throughputs to transmit increasing volumes of data. They must be flexible to handle multi-norms environments, and progressive to accommodate future norms. For these systems, quality of service (QoS) must be guaranteed despite the evolution of microelectronics technologies that increase the sensitivity of integrated circuits to external perturbations (impact of particles, loss of signal integrity, etc). Fault-tolerance techniques are becoming more and more an important criteria to improve the dependability and the quality of service. This thesis’work continues previous research undertaken at the LICM laboratory on the architectural design of high-speed, low-cost, and dependable transmission systems. It focuses on two principal areas of research : The first research area concerns the speed and flexibility aspects, particularly on the study and implementation of parallel-pipelined architectures dedicated to recursive convolutional encoders. The principle is based on the optimization of blocks that calculate the remainder of the polynomial division which constitute the critical operation of the encoding. This approach is generalized to recursive IIR filters. The main architectural characteristics being aimed are high flexibility and scalability, yet preserving a good trade-off between the amount of resources used (and hence, area consumption) and the obtained performance (operation speed). The second topic concerns the developing of a methodology for designing FS (fault-secure) encoders, improving the tolerance of digital integrated circuits. The proposed approach consists in adding an extra blocks to the encoders, allowing online error detection. The proposed solutions offer a good compromise between complexity and frequency operation. For even higher throughput, parallel-pipelined implementations of FS encoders were considered. Different fault injection campaigns of single, double, and random errors were applied to the encoders in order to evaluate error detection rates. The study of dependable architecture was extended to pipeline-parallel decoders for cyclic block codes. This approach is based on a slight modification of the parallel-pipeline architectures developed at LICM laboratory, introducing some redundancy in order to make it dependable
|
6 |
Évaluation de méthodes faible consommation contre les attaques matérielles / Evaluation of low power methods against hardware attacksOrdas, Sébastien 30 November 2015 (has links)
La consommation des circuits intégrés n'a cessé d'augmenter cette dernière décennie. Avec l'augmentation du prix de l'énergie et la démocratisation des systèmes embarqués, des méthodes permettant de gérer le compromis consommation performance, comme la gestion dynamique de la fréquence et de la tension d'alimentation ou encore du potentiel de substrat, ont été élaborées. Ces méthodes, qui sont de plus en plus couramment mises en œuvre dans les systèmes intégrés, permettent de diminuer la consommation de ceux-ci, et mieux de gérer le compromis consommation performance. Certains de ces circuits, embarquant ces méthodes peuvent avoir à effectuer des opérations traitant des informations confidentielles. Il est donc nécessaire de s'interroger sur l'éventuel impact de ces sur la sécurité des systèmes intégrés. Dans ce contexte, les travaux de thèse reportés dans le présent document, ont eu pour objectif d'analyser la compatibilité de ces méthodes de gestion de la consommation avec la conception de circuits robustes aux attaques matérielles. Plus particulièrement, l'objectif a été de déterminer si ces techniques de conception faible consommation, constituent des obstacles réels ou bien facilitent les attaques matérielles par observation et perturbation exploitant le canal électromagnétique. Dans un premier temps, une étude sur l'efficacité des attaques par observation en présence de gestion aléatoire de la tension, de la fréquence et de la polarisation de substrat a été conduite. Dans un deuxième temps, l'impact de la gestion dynamique des tensions d'alimentation et de substrat sur la capacité à injecter des fautes par médium électromagnétique a été étudié. Ce document présente l'ensemble des résultats de ces analyses.Mots-clés : Attaques Matérielles, Attaques par Canaux Auxiliaires, Attaques par fautes, Canal électromagnétique, DVFS, Body-Biasing. / The consumption of integrated circuits has been increasing over the last decade. With the increase of energy prices and the democratization of embedded systems, methods to manage the consumption performance compromise, such as the dynamic management of the frequency and the supply voltage or the substrate potential, were developed. These methods, which are becoming more commonly implemented in integrated systems, allow to reduce the consumption of those latter, and to better manage the tradeoff between consumption and performance.Some of these circuits, embedding these methods, may have to perform some operations with confidential information. It is therefore necessary to consider the possible impact of these methods on the safety of the integrated systems. In this context, the work reported in this thesis aimed to analyze the compatibility of these methods of power management with the design of robust circuits to physical attacks.Specifically, the objective was to determine whether these low-power techniques constitute real obstacles or facilitate the attacks by observation or perturbation exploiting the electromagnetic channel. Initially, a study on the effectiveness of attacks by observation in the presence of random management of voltage, frequency and substrate polarization was done. Secondly, the impact of the dynamic management of supply voltages and substrate polarization on the ability to inject faults by electromagnetic medium was studied. This document presents the overall results of these analyzes. Keyword : Hardware Attacks, Side Channel Attacks, Faults Attacks, Electromagnetic canal, DVFS, Body-biasing
|
7 |
Injection de fautes par impulsion laser dans des circuits sécurisés / Fault injections by laser impulsion in secured microcontrollersSarafianos, Alexandre 17 September 2013 (has links)
De tout temps, l’Homme s’est vu contraint de protéger les fruits de sa créativité et les domaines concernant sa sécurité. Ses informations sont souvent sensibles, dans les relations politiques et commerciales notamment. Aussi, la nécessité de les protéger en les rendant opaques au regard d’adversaires ou de concurrents est vite survenue. Depuis l’Antiquité, les procédés de masquages et enfin de cryptages furent nombreux. Les techniques de protection, depuis l’époque industrielle n’ont fait que croître pour voir apparaître, durant la seconde guerre mondiale, l’archétype des machines électromécaniques (telle l’Enigma), aux performances réputées inviolables. De nos jours, les nouveaux circuits de protection embarquent des procédés aux algorithmes hyper performants. Malgré toutes ces protections, les produits restent la cible privilégiée des « pirates » qui cherchent à casser par tous les moyens les structures de sécurisation, en vue d’utilisations frauduleuses. Ces « hackers » disposent d’une multitude de techniques d’attaques, l’une d’elles utilise un procédé par injections de fautes à l’aide d’un faisceau laser. Dès le début de ce manuscrit (Chapitre I), l’état de l’art de l’injection de fautes sera développé, en se focalisant sur celles faite à l’aide d’un faisceau laser. Ceci aidera à bien appréhender ces procédés intrusifs et ainsi protéger au mieux les microcontrôleurs sécurisés contre ces types d’attaques. Il est nécessaire de bien comprendre les phénomènes physiques mis en jeu lors de l’interaction entre une onde de lumière cohérente, tels les lasers et le matériau physico-chimique qu’est le silicium. De la compréhension de ces phénomènes, une modélisation électrique des portes CMOS sous illumination laser a été mise en oeuvre pour prévoir leurs comportements (chapitre II). De bonnes corrélations ont pu être obtenues entre mesures et simulations électrique. Ces résultats peuvent permettre de tester la sensibilité au laser de portes CMOS au travers de cartographies de simulation. De cette meilleure compréhension des phénomènes et de ce simulateur mis en place, de nombreuses contre-mesures ont été imaginées. Les nouvelles techniques développées, présentées dans ce manuscrit, donnent déjà des pistes pour accroître la robustesse des circuits CMOS contre des attaques laser. D’ores et déjà, ce travail a permis la mise en oeuvre de détecteurs lasers embarqués sur les puces récentes, renforçant ainsi sensiblement la sécurité des produits contre une attaque de type laser. / From time immemorial, human beings have been forced to protect the fruits of their creativity and ensure the security of their property. This information is very often strategic, in particular in political and commercial relationships. Also the need to protect this information by keeping it concealed in regards to enemies or competitors soon appeared. From ancient times, the methods used for masking and eventually encrypting information were numerous. Protection techniques have only advanced grown since the industrial era and have led to the precursor of electro-mechanic machines (such as the famous Enigma machine). Nowadays, new protection circuitry embeds very efficient algorithms. Despite these protections, they remain a prime target for « attackers » who try to break through all means of securing structures, for fraudulent uses. These « attackers » have a multitude of attack techniques. One of them uses a method of fault injections using a laser beam. From the beginning (Chapter I), this manuscript describes the state of the art of fault injections, focusing on those made using a laser beam. It explains these intrusive methods and provides information on how to protect even the most secure microcontrollers against these types of attacks. It is necessary to understand the physical phenomena involved in the interaction between a coherent light wave, such as lasers, and the physicochemical material that makes up a microcontroller. To better understanding these phenomena, an electrical modeling of CMOS gates under laser illumination was implemented to predict their behavior (Chapter II). Good correlations have been obtained between measurements and electrical simulation. These results can be used to test the laser sensitivity of CMOS gates through electrical cartographies. Due to the better understanding of the phenomena and the developed simulator, many countermeasures have been developed. The techniques presented in this manuscript offer new possibilities to increase the robustness of CMOS circuits against laser attacks. This work has already enabled the implementation of efficient counter-measures on embedded laser sensors and significantly enhanced product security against different laser attacks.
|
8 |
INJECTION DE FAUTES SIMULANT LES EFFETS DE BASCULEMENT DE BITS INDUITS PAR RADIATIONFaure, F. 14 November 2005 (has links) (PDF)
Obtenir une estimation du taux d'erreurs induit par les phénomènes de basculement de bit (soft error<br />rate, SER) des équipements électroniques est d'un intérêt grandissant. Les standards publiés traitent principalement de la qualification des circuits de type mémoire. Il n'y a pas d'accord sur les méthodes de qualification des microprocesseurs. Dans ce contexte, cette thèse s'attache à définir une méthodologie permettant de prédire le SER d'un processeur à l'aide d'une approche en trois étapes: 1) En définissant une méthode de test sous radiation permettant d'obtenir de façon précise la sensibilité du circuit au rayonnement ionisant; 2) En présentant une analyse détaillée des mesures, dont le but est d'extraire un modèle statistique d'un test accéléré; 3) En utilisant cette empreinte statistique pour reproduire à l'aide d'injection de fautes le comportement du circuit étudié afin de prédire le comportement d'une application quelconque exécutée par le processeur.
|
9 |
Etalonnage de la sûreté de fonctionnement des systèmes d'exploitation. Spécifications et mise en oeuvreKALAKECH, Ali 08 June 2005 (has links) (PDF)
Les développeurs des systèmes informatiques, y compris critiques, font souvent appel à des systèmes d'exploitation sur étagère. Cependant, un mauvais fonctionnement d'un système d'exploitation peut avoir un fort impact sur la sûreté de fonctionnement du système global, d'où la nécessité de trouver des moyens efficaces pour caractériser sa sûreté de fonctionnement. Dans cette thèse, nous étudions l'étalonnage de la sûreté de fonctionnement des systèmes d'exploitation par rapport aux comportements défectueux de l'application. Nous spécifions les propriétés qu'un étalon de sûreté de fonctionnement doit satisfaire. Après, nous spécifions les mesures et la mise en oeuvre des trois étalons destinés à comparer la sûreté de fonctionnement de différents systèmes d'exploitation. Ensuite, nous développons les prototypes des trois étalons. Ces prototypes servent à comparer les différents systèmes d'exploitation des familles Windows et Linux, et pour montrer la satisfaction des propriétés identifiées.
|
10 |
Méthodes et outils pour l'évaluation de la sensibilité de circuits intégrés avancés face aux radiations naturellesPeronnard, P. 02 October 2009 (has links) (PDF)
La réduction des dimensions et paramètres électriques des transistors, fruit des progrès dans les technologies de fabrication de circuits intégrés, rend les composants présents et futurs de plus en plus sensibles aux perturbations appelées évènements singuliers S.E.E. (Single Event Effects). Ces événements sont la conséquence d'une impulsion de courant résultant de l'impact dans des zones sensibles du circuit, de particules énergétiques présentes dans l'environnement dans lequel ils fonctionnent. Parmi les différents types de SEE, peuvent être mentionnés les SEU (Single Event Upsets) qui consistent en l'inversion du contenu de cellules mémoires, les SEL (Single Event Latchups) qui donnent lieu à des courts-circuits masse-alimentation et peuvent donc conduire à la destruction du circuit par effet thermique. Cette thèse a pour but de décrire et valider les méthodologies nécessaires pour évaluer de manière précise la sensibilité face aux radiations de deux types de circuits numériques représentatifs, processeurs et mémoires, composants utilisés dans la plupart des systèmes embarqués.
|
Page generated in 0.0331 seconds