CVE-2017-1000405
Les versions 2.6.38 à 4.14 du noyau Linux présentent une utilisation problématique de pmd_mkdirty() dans la fonction touch_pmd() au sein de l'implémentation...
- Publié
- 30 nov. 2017
- Mise à jour
- 5 août 2024
- Attribution de CNA
- mitre
- Preuve observée
- 30 nov. 2017
CVSS primaire
nvd · CVSS 3.1
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:HFaible · 30 prochains jours
- Percentile
- 86,0 %
- Date du modèle
- 21 sept. 2026
EPSS est une estimation statistique, et non une certitude ou une mesure d'impact. Combinez-le avec CVSS, le statut KEV, l'exposition et votre environnement.
Résumé
Les versions 2.6.38 à 4.14 du noyau Linux présentent une utilisation problématique de pmd_mkdirty() dans la fonction touch_pmd() au sein de l'implémentation des THP. touch_pmd() peut être atteinte par get_user_pages(). Dans ce cas, la pmd deviendra dirty. Ce scénario brise la logique de la nouvelle fonction can_follow_write_pmd() — une pmd peut devenir dirty sans passer par un cycle COW. Ce bug n'est pas aussi grave que le « Dirty cow » original, car un fichier ext4 (ou tout autre fichier régulier) ne peut pas être mappé à l'aide des THP. Néanmoins, il nous permet d'écraser des pages énormes en lecture seule. Par exemple, la page énorme zéro et les fichiers shmem scellés peuvent être écrasés (car leur mappage peut être peuplé à l'aide des THP). Notez qu'après le premier défaut de page en écriture sur la page zéro, celle-ci sera remplacée par un nouveau THP tout neuf (et remis à zéro).
Sources
3Un POC pour la vulnérabilité Huge Dirty Cow (CVE-2017-1000405)
Utilisation responsable
Utilisez les informations de vulnérabilité uniquement sur les systèmes que vous possédez ou que vous êtes autorisé à tester. Kitploit renvoie aux métadonnées de la recherche publique et ne stocke pas de code d'exploitation ni de charges utiles malveillantes.