End-to-end Mechanized Proof of an eBPF Virtual Machine for Micro-controllers - INSA Rennes - Institut National des Sciences Appliquées de Rennes Accéder directement au contenu
Communication Dans Un Congrès Année : 2022

End-to-end Mechanized Proof of an eBPF Virtual Machine for Micro-controllers

Résumé

RIOT is a micro-kernel dedicated to IoT applications that adopts eBPF (extended Berkeley Packet Filters) to implement so-called femto-containers. As micro-controllers rarely feature hardware memory protection, the isolation of eBPF virtual machines (VM) is critical to ensure system integrity against potentially malicious programs. This paper shows how to directly derive, within the Coq proof assistant, the verified C implementation of an eBPF virtual machine from a Gallina specification. Leveraging the formal semantics of the CompCert C compiler, we obtain an end-to-end theorem stating that the C code of our VM inherits the safety and security properties of the Gallina specification. Our refinement methodology ensures that the isolation property of the specification holds in the verified C implementation. Preliminary experiments demonstrate satisfying performance.
Fichier principal
Vignette du fichier
cav22.pdf (1.02 Mo) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)

Dates et versions

hal-03888082 , version 1 (07-12-2022)

Licence

Paternité

Identifiants

  • HAL Id : hal-03888082 , version 1

Citer

Shenghao Yuan, Frédéric Besson, Jean-Pierre Talpin, Samuel Hym, Koen Zandberg, et al.. End-to-end Mechanized Proof of an eBPF Virtual Machine for Micro-controllers. CAV 2022 - 34th International Conference on Computer Aided Verification, Aug 2022, Haifa, Israel. pp.1-23. ⟨hal-03888082⟩
84 Consultations
35 Téléchargements

Partager

Gmail Facebook X LinkedIn More