Contourner les limitations de SELinux liées au chargement des modules du noyau

La possibilité de contourner l'interdiction de chargement des modules du noyau implémentée dans les règles SELinux ciblées sur l'un des appareils étudiés a été démontrée (il n'est pas précisé de quel appareil nous parlons et dans quelle mesure le problème affecte les règles SELinux dans les firmwares et les distributions). Le blocage des modules dans les règles SELinux impliquées était basé sur la restriction de l'accès à l'appel système finit_module, qui permet de charger un module à partir d'un fichier et est utilisé dans des utilitaires tels que insmod. Cependant, les règles SELinux ne prenaient pas en compte l'appel système init_module, qui peut également être utilisé pour charger des modules du noyau directement à partir d'un tampon en mémoire.

Pour démontrer la méthode, un prototype d'exploit a été préparé qui vous permet d'exécuter du code au niveau du noyau en chargeant votre module et de désactiver complètement la protection SELinux, si vous disposez d'un accès root au système limité par SELinux.

Source: opennet.ru

Ajouter un commentaire