SWEETLEMONADE : un bootkit pour les firmwares UEFI

Spécialité(s)


Résumé

Les bootkits : discrétion, persistance et privilèges maximaux. Dans cet article, nous concevons un bootkit visant les firmwares UEFI et nous montrons comment l’utiliser pour devenir super-utilisateur d’une machine.


Un ordinateur, un capteur de température, un réfrigérateur ou encore un pacemaker, tous ces objets ont un point commun : ils possèdent tous un firmware. En d’autres termes, ils possèdent tous un programme intégré au sein du matériel afin que celui-ci puisse fonctionner. Les firmwares sont donc aujourd’hui ubiquitaires.

Ces programmes disposent, de par leur nature, de privilèges très élevés, ce qui fait d’eux des cibles de choix pour les attaquants. En effet, réussir à incorporer un morceau de code malveillant, un bootkit, à un firmware est l’assurance pour un attaquant d’obtenir un accès pérenne et total au système. Ce genre d’attaque a par exemple été utilisée sur le terrain par la NSA contre des serveurs et des équipements réseau. Nous pouvons citer le projet DEITYBOUNCE qui a pour cible les serveurs Dell PowerEdge ou encore le projet SOUFFLETROUGH utilisé pour compromettre certains pare-feux de la marque Juniper Networks.

Dans la suite...

Cet article est réservé aux abonnés. Il vous reste 96% à découvrir.
S'abonner à Connect
  • 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
Je m'abonne
Références

[UEFIBOOT] Phases du processus d’amorçage d’un microgiciel UEFI :
https://github.com/tianocore/tianocore.github.io/wiki/PI-Boot-Flow

[INTELMANUAL] Intel 64 and IA-32 Architectures Software Developer's Manual – Combined volumes (p. 65) :
https://www.intel.com/content/www/us/en/developer/articles/technical/intel-sdm.html

[DOCINF] Spécifications des fichiers INF d’EDK II : https://edk2-docs.gitbook.io/edk-ii-inf-specification/

[UEFITOOL] UEFITool : https://github.com/LongSoft/UEFITool

[EEPROM] Fiche technique de W25Q64 :
https://www.winbond.com/resource-files/w25q64fv%20revq%2006142016.pdf

[EXPLOIT] https://github.com/Orange-Cyberdefense/sweetlemonade

[KASPERSKY] https://www.kaspersky.com/antivirus-for-uefi

[DEFENDER] https://www.microsoft.com/security/blog/2020/06/17/uefi-scanner-brings-microsoft-defender-atp-protection-to-a-new-level

[CHIPSEC] https://github.com/chipsec/chipsec

[1] L. Chul-woong, « Implementing SMM PS/2 Keyboard Sniffer », janvier 2009.

[2] BSDaemon, coideloko et D0nAnd0n, « System Management Mode Hack: Using SMM for "Other Purposes" », Phrack 65, mars 2008.

[3] F. Wecherowski et core collapse, « A Real SMM Rootkit: Reversing and Hooking BIOS SMI Handlers », Phrack 66, juin 2009.

[4] J. Heasman, « Hacking the Extensible Firmware Interface », Black Hat USA, août 2007

[5] S. Embleton, S. Sparks et C. Zou, « SMM Rootkits: A New Breed of OS Independent Malware », Black Hat USA, septembre 2008.

[6] D. Oleksiuk, « Building reliable SMM backdoor for UEFI based platforms », juillet 2015,
http://blog.cr4.sh/2015/07/building-reliable-smm-backdoor-for-uefi.html

[7] T. Reed, « Using an Option ROM to overwrite SMM/SMI handlers in QEMU », décembre 2019,
https://casualhacking.io/blog/2019/12/3/using-optionrom-to-overwrite-smmsmi-handlers-in-qemu



Article rédigé par

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous