Maison  >  Article  >  Opération et maintenance  >  Introduction à la vulnérabilité d'élévation de privilèges locale Linux

Introduction à la vulnérabilité d'élévation de privilèges locale Linux

王林
王林avant
2020-09-01 16:49:342126parcourir

Introduction à la vulnérabilité d'élévation de privilèges locale Linux

Le 20 juillet 2019, Linux a officiellement corrigé une vulnérabilité d'élévation de privilèges du noyau local. Un attaquant peut utiliser cette vulnérabilité pour élever les utilisateurs disposant de privilèges normaux aux privilèges Root.

(Tutoriel recommandé : Tutoriel sur la sécurité du site Web)

Description de la vulnérabilité

Lorsque PTRACE_TRACEME est appelé, la fonction ptrace_link obtiendra une référence RCU au parent les informations d'identification du processus, puis pointez le pointeur vers la fonction get_cred. Cependant, les règles de durée de vie de l'objet struct cred ne permettent pas la conversion inconditionnelle d'une référence RCU en une référence stable.

PTRACE_TRACEME obtient les informations d'identification du processus parent, lui permettant d'agir comme le processus parent et d'effectuer diverses opérations que le processus parent est capable d'effectuer. Si un processus enfant malveillant à faible privilège utilise PTRACE_TRACEME et que le processus parent du processus enfant dispose de privilèges élevés, le processus enfant peut prendre le contrôle de son processus parent et appeler la fonction execve en utilisant les privilèges du processus parent pour créer un nouveau processus à privilèges élevés. L'attaquant contrôle finalement la relation ptrace entre deux processus dotés de privilèges élevés, qui peuvent être utilisés pour le ptrace.

suid binaire et obtenez les privilèges root.

Récurrence de la vulnérabilité

Il existe un exploit hautement exploitable pour cette vulnérabilité sur Internet, et l'effet de l'exploit est le suivant :

Introduction à la vulnérabilité délévation de privilèges locale Linux

Portée de l'impact

Version du noyau Linux actuellement affectée :

Noyau Linux

Suggestions de réparation

1. :

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=6994eefb0053799d2e07cd140df6c2ea106c41ee

2. Mettez à niveau le noyau Linux vers la dernière version.

Lien de référence

https://github.com/torvalds/linux/commit/6994eefb0053799d2e07cd140df6c2ea106c41ee

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer