Connaissez-vous les kext sous macOS ? Il s’agit des Kernel Extensions… Si je devais prendre un GROS raccourci (On se calme les pinailleurs psychorigides !), je dirais que c’est un peu comme les drivers Windows ou les modules de noyau sous Linux.
Ça se charge avant le chargement complet de l’OS et ça permet d’agir de manière assez bas niveau sur le système. Bref, pour les adeptes du reverse engineering et de l’exploitation de macOS, le kext, c’est le nerf de la guerre.
C’est pourquoi le développeur ant4gonist a mis au point un kext pour iOS / macOS qui contient des vulnérabilités et permet ainsi d’apprendre à exploiter le noyau de macOS / iOS.
Voici les types de vulnérabilités proposées :
#define CRASH 0x1
#define HEAP_OVERFLOW 0x2
#define INFO_LEAK 0x3
#define BUFFER_OVERFLOW 0x4
#define USE_AFTER_FREE 0x5 //todo
#define INTEGER_OVERFLOW 0x6 //todo
#define DOUBLE_FETCH 0x7
La mise en place peut se faire simplement sous macOS, mais également sous iOS en utilisant checkra1n qui permet de jailbreaker l’appareil iOS.
Ensuite, y’a plus qu’à suivre la documentation se trouvant ici pour apprendre à exploiter l’OS proprement.