La deuxième étape de la compréhension du système UEFI va s’articuler autour de l’implémentation en C avec l’optique de fabriquer sa propre brique UEFI. Le développement va permettre d’illustrer le processus de la chaîne de boot avec pour objectif de mieux appréhender les différentes problématiques de sécurité.
Cet article fait suite à un précédent [1] expliquant déjà la méthode de compilation du projet EDK2, faisant figure de référence au sein du monde de l’UEFI. L’objectif de celui-ci est de donner les clefs à tout personne voulant développer des applications exécutables au sein d’un environnement UEFI. La finalité étant de pouvoir créer des applications pouvant être stockées sur une partition FAT32 à l’instar de GRUB [2]. À cet effet, on présentera les procédures de gestion de l’API de l’UEFI. Puis, une application sera proposée pour traiter de différentes problématiques telles que l’apparition de différentes formes géométriques au niveau de l’écran ou de la gestion d’évènements. Enfin, une dernière application sera implémentée, celle-ci permettra de lancer des systèmes d’exploitation. L’objectif principal est de donner à tout lecteur la capacité d’exploiter au maximum l’API de l’UEFI avec ses différentes spécificités :...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première
[1] L’UEFI, au cœur du système : https://connect.ed-diamond.com/MISC/MISC-105/L-UEFI-au-coeur-du-systeme
[2] Site officiel français de la distribution Ubuntu : https://doc.ubuntu-fr.org/uefi
[3] Git officiel du projet edk2 : https://github.com/tianocore/edk2
[4] Site officiel de Microsoft : https://docs.microsoft.com/en-us/cpp/c-runtime-library/sal-annotations?view=vs-2019
[5] Site officiel de Microsoft : https://docs.microsoft.com/en-us/previous-versions/aa373931(v%3Dvs.80)
[6] Site officiel de la bibliothèque SDL : https://www.libsdl.org/
[7] Site officiel de Microsoft : https://docs.microsoft.com/en-us/windows/desktop/opengl/rgba-mode-and-windows-palette-management
[8] Site officiel de l’UEFI : https://uefi.org/sites/default/files/resources/UEFI%20Firmware%20-%20Security%20Concerns%20and%20Best%20Practices.pdf
[9] Git officiel du projet edk2 : https://github.com/tianocore/tianocore.github.io/wiki/EDK-II-Platforms
[10] Git contenant les projets UEFI : https://github.com/PF-Maillard