Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2016-5195 — Harness d'analyse et de validation non armé de CVE-2016-5195 (Dirty COW) avec recherche des causes racines, revue des correctifs en amont et PoC sûr réservé au laboratoire pour les noyaux confirmés. | Kitploit
Outils/GitHubGitHub/gogooma125732/cve-2016-5195
Escalade de PrivilègesAnalyse des VulnérabilitésAnalyse de CodeExploitationArticles et RechercheApprentissage et Éducation
GitHubgogooma125732/cve-2016-5195

CVE-2016-5195

Harness d'analyse et de validation non armé de CVE-2016-5195 (Dirty COW) avec recherche des causes racines, revue des correctifs en amont et PoC sûr réservé au laboratoire pour les noyaux confirmés.

Voir le dépôt
15il y a 26 joursPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

CVE-2016-5195 : Dirty COW, condition de course du noyau Linux

Recherche défensive, validation non armée et analyse de correctif pour CVE-2016-5195 (Dirty COW), une condition de course copy-on-write du noyau Linux qui peut permettre à un utilisateur local de modifier des données associées à un mappage en lecture seule et d'obtenir des privilèges élevés.

FieldValue
ComposantGestion de la mémoire du noyau Linux / get_user_pages()
FaiblesseCWE-362 : Exécution concurrente utilisant une ressource partagée avec une synchronisation inappropriée
GravitéÉlevée, CVSS 3.1 : 7.0
VecteurCVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
Prérequis d'attaqueAccès local à faibles privilèges
Correctif en amont19be0eaffa3ac7d8eb6784ad9bdbc7d67ed8e619
Première version amont corrigéeLinux 4.8.3 ; les rétroportages des distributions varient

Aperçu

Dirty COW est une course dans la gestion par le noyau Linux des écritures forcées et des mappages copy-on-write (COW). Un utilisateur local peut faire entrer en course une invalidation de page contre une écriture via /proc/self/mem. Sur un noyau affecté, la course peut entraîner la réécriture de données associées à un mappage privé nominalement en lecture seule dans le fichier sous-jacent.

L'impact public est une élévation de privilèges locale lorsqu'un attaquant peut appliquer la primitive à un fichier sensible du point de vue de la sécurité. La vulnérabilité a été exploitée dans la nature en octobre 2016. Ce dépôt n'automatise pas cette voie d'élévation.

Structure du dépôt

Harnais de validation sûr

Le harnais par défaut est volontairement contraint :

  • il n'accepte aucun chemin cible ni charge utile contrôlée par l'attaquant ;
  • il crée un fichier temporaire mode-0600 et le délie immédiatement ;
  • il ne fait entrer en course que l'inode jetable encore ouvert ;
  • il n'établit aucune connexion réseau et n'exécute aucune commande ; et
  • il signale un marqueur bénin fixe.

Compilation

root@kitploit:~
cc -std=c11 -Wall -Wextra -Wpedantic -Werror -O2 \
  poc.c -o dirtycow-safe -pthread

La primitive d'exploitation réservée au laboratoire peut être compilée séparément :

root@kitploit:~
cc -std=c11 -Wall -Wextra -Wpedantic -Werror -O2 \
  exploit.c -o dirtycow-exploit -pthread

Exécution sur un système de test Linux isolé

root@kitploit:~
./dirtycow-safe

Nombre d'itérations limité facultatif :

root@kitploit:~
./dirtycow-safe --iterations 5000000

Résultats possibles :

  • marker-observed : un comportement vulnérable a été observé sur l'inode jetable.
  • marker-not-observed : résultat non concluant. Une course qui ne se déclenche pas ne prouve pas que le noyau est corrigé.
  • code de sortie 77 : l'interface Linux /proc/self/mem requise est indisponible.

N'utilisez pas le résultat du PoC comme contrôle principal de l'état du correctif. Consultez l'avis du paquet du noyau de la distribution utilisée et vérifiez que le noyau corrigé est actif après le redémarrage.

Primitive d'exploitation

exploit.c accepte un fichier explicite et un préfixe de remplacement et démontre la primitive d'écriture dans un fichier arbitraire sur un noyau affecté. Il exige la confirmation littérale --i-understand, applique des limites bornées de charge utile et d'itérations, et ne construit pas de charge utile d'élévation de privilèges.

Le fichier sélectionné peut être modifié de manière permanente. Utilisez-le uniquement dans un laboratoire isolé, jetable, qui vous appartient ou pour lequel vous êtes explicitement autorisé à tester. L'analyse complète de la course et de la transition d'état se trouve dans ROOT_CAUSE.md.

Preuves

evidence/evidence.json enregistre les signatures source observées dans les révisions Linux officielles pré-correctif et corrigées, le résultat de compilation du PoC sans avertissement, et les propriétés de sécurité de la validation. evidence/validation.log fournit un résumé concis. La validation capturée n'a pas exécuté la course.

Remédiation

Installez la mise à jour du noyau fournie par le fournisseur et redémarrez sur le noyau corrigé. Ne déterminez pas l'exposition à partir de la chaîne de version amont seule : les noyaux d'entreprise et de distribution rétroportent couramment le correctif sans adopter le numéro de version amont. Les conteneurs utilisent le noyau hôte, la remédiation doit donc couvrir l'hôte.

Voir PATCH_ANALYSIS.md pour le changement amont exact et VULNERABILITY_REPORT.md pour les recommandations de validation.

Références

  • NVD: CVE-2016-5195
  • Correctif amont Linux
  • Journal des modifications Linux 4.8.3
  • Catalogue CISA des vulnérabilités connues exploitées
  • Enregistrement CVE Red Hat

Utilisez ce matériel uniquement sur des systèmes qui vous appartiennent ou pour lesquels vous êtes explicitement autorisé à tester.

Télécharger l’outil
CheminObjectif
poc.cValidation non armée utilisant uniquement un inode temporaire délié
exploit.cPrimitive d'écriture dans un fichier arbitraire pour un laboratoire jetable autorisé
ROOT_CAUSE.mdAnalyse détaillée de la transition d'état vulnérable et de la course
VULNERABILITY_REPORT.mdPréconditions, cause racine, impact et remédiation
PATCH_ANALYSIS.mdAnalyse ligne par ligne du correctif FOLL_COW en amont
evidence/Sortie de validation structurée et notes d'interprétation