Hypervisor for executables protection - design, development and discussion - Archive ouverte HAL Access content directly
Theses Year : 2014

Hypervisor for executables protection - design, development and discussion

Hyperviseur de protection d'exécutables - Etude, développement et discussion

(1)
1
Eddy Deligne
  • Function : Author
  • PersonId : 955074

Abstract

To ensure the continuity of the company, it must seek export contracts. In the defense field, these contracts are often accompanied by transfers of technology (ToT) to the recipient country. These, are partial and a compromise is needed between the protection of industrial property, the national secret and the client requests. It is in this context, particularly in DCNS, we are looking for new techniques in software protection. Faced with the failure of the various techniques protections (obfuscations and packer), which allow only to slow understanding of the code, a new approach of protection is discussed. The main idea is to filter the memory accesses, that contains the sensitive data. This solution, which is part of a strong industrial environment should impact the minimum system and applications provided by DCNS. We propose an architecture that uses the latest technologies Intel and particularly the hardware virtualization. This technology, allows us to obtain a high level of privilege and to control precisely the applications. Our solution allows to protect executable data of the ELF binary; in the plateforms 32 and 64 bits without modifying the targeted system. We detail the differents steps to protect a process (from its start to its finish) and the different problems encountered and the choices to address it. We also show, through various measures, the effectiveness of our architecture and its low impact on the guest system. In our implementation, only executable data are protected, we propose food for thoughts to fully protect binary memory. And the evolutions, to integrate our solution in a trusted architecture to ameliorate its robustness Our solution forbids, by construction, all the reads and writes of the sensitive data and is compatible with all Linux distributions without modifications.
Pour garantir la pérennité de l'entreprise, celle-ci doit souvent chercher des contrats à l'export. Dans le domaine de la Défense, ces contrats s'accompagnent souvent de transferts de technologie (ToT) vers le pays acquéreur. Ceux-ci sont partiels et un compromis est nécessaire entre la protection de la propriété industrielle, celle du secret national et les demandes du client. C'est dans ce contexte, et notamment au sein de DCNS que nous cherchons de nouvelles techniques de protection logicielles. Face aux échecs des différentes techniques de protections actuelles (obfuscations et packer) qui ne proposent que de ralentir la compréhension des données, une nouvelle approche de protection est envisagée. L'idée principale est de filtrer les accès mémoires des données identifiées comme sensibles. Cette solution, qui s'inscrit dans un environnement industriel défini (architecture Intel et système d'exploitation Linux), doit impacter au minimum le système et les applications fournis par DCNS. Nous proposons une architecture qui s'appuie sur les dernières technologies Intel et particulièrement sur la virtualisation matérielle. Celle-ci nous permet d'obtenir un haut niveau de privilège et de contrôler finement les applications. Notre solution permet de protéger les données exécutables des binaires de type ELF, dans les architectures 32 et 64 bits, sans modification du système cible. Nous détaillons les différentes étapes pour protéger l'exécution d'un processus (du chargement à son arrêt) ainsi que les problèmes rencontrés et les choix pour y remédier. Nous montrons également, à travers différentes mesures, l'efficacité d'une telle architecture et son faible impact sur les performances globales. Dans notre implémentation, seules les données exécutables sont protégées, nous proposons donc des pistes d'améliorations pour couvrir la totalité du binaire en mémoire. Et nous étudions les évolutions possibles pour intégrer notre protection dans une architecture de confiance et ainsi, renforcer sa persistance face aux attaques. Notre solution permet donc par construction d'interdire toutes les lectures et écritures des données exécutables sensibles et s'adapte à tous les systèmes d'exploitation Linux sans aucune modification du système.
Fichier principal
Vignette du fichier
these_page_1.pdf (33.9 Ko) Télécharger le fichier

Dates and versions

pastel-00976713 , version 1 (10-04-2014)

Identifiers

  • HAL Id : pastel-00976713 , version 1

Cite

Eddy Deligne. Hyperviseur de protection d'exécutables - Etude, développement et discussion. Cryptographie et sécurité [cs.CR]. Ecole Polytechnique X, 2014. Français. ⟨NNT : ⟩. ⟨pastel-00976713⟩

Collections

PASTEL PARISTECH
256 View
201 Download

Share

Gmail Facebook Twitter LinkedIn More