Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
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
Outils/GitHubGitHub/zenzue/cve_2026_31694
Outils DéfensifsScanners de VulnérabilitésAnalyse des VulnérabilitésAudit de Configuration
GitHubzenzue/cve_2026_31694

CVE_2026_31694

Scanner passif de vulnérabilités pour hôtes Linux pour CVE-2026-31694 : vérifie le noyau en cours d'exécution, la configuration FUSE, les métadonnées de paquets et les preuves de correctifs, puis génère des recommandations d'atténuation adaptées.

Voir le dépôt
14il y a 2 moisPas 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-2026-31694 Passive Scanner

Un outil passif d'évaluation de hôtes Linux pour CVE-2026-31694, une écriture hors limites dans le cache readdir de FUSE dans le noyau Linux.

Le scanner évalue le noyau en cours d'exécution, l'exposition FUSE, les métadonnées locales des paquets, les preuves issues des sources du noyau, l'environnement d'exécution et la famille de systèmes d'exploitation. Lorsque l'hôte peut être affecté, il produit un guide d'atténuation adapté à la distribution détectée.

Auteur : Aung Myat Thu [w01f]


Table des matières

  • Aperçu
  • Résumé de la vulnérabilité
  • Modèle de sécurité
  • Fonctionnalités
  • Prérequis
  • Installation
  • Utilisation
  • Options de ligne de commande
  • Flux d'évaluation
  • Verdicts
  • Codes de sortie
  • Sources de détection
  • Support des distributions
  • Génération d'atténuations
  • Comportement en conteneur et WSL
  • Formats de rapport
  • Automatisation et intégration
  • Recommandations opérationnelles
  • Limites
  • Dépannage
  • Références

Aperçu

cve_2026_31694_scanner.py est un utilitaire local d'évaluation de vulnérabilités sans exploitation.

Il ne confirme pas la vulnérabilité en déclenchant le chemin de code FUSE affecté. Il combine plutôt plusieurs indicateurs passifs :

  • version du noyau en cours d'exécution ;
  • références de versions corrigées en amont ;
  • taille de page mémoire actuelle ;
  • configuration noyau CONFIG_FUSE_FS ;
  • types de systèmes de fichiers FUSE enregistrés ;
  • présence de /dev/fuse et accès utilisateur actuel ;
  • disponibilité de l'utilitaire de montage FUSE ;
  • montages FUSE actifs ;
  • inspection des sources du noyau installées ;
  • propriété du paquet noyau ;
  • preuves issues du changelog local des paquets ;
  • métadonnées de mise à jour de paquets en cache ;
  • comparaison entre noyau installé et noyau en cours d'exécution ;
  • détection de la distribution et du gestionnaire de paquets ;
  • détection de conteneur, de machine virtuelle et de WSL.

Le résultat est une évaluation de l'exposition, et non une preuve basée sur l'exploitation.


Résumé de la vulnérabilité

CVE-2026-31694 affecte le cache readdir FUSE du noyau Linux.

La logique vulnérable calcule la taille sérialisée d'une entrée de répertoire à partir d'une longueur de nom contrôlée par le serveur et copie l'enregistrement dans une seule page du cache de pages. Une entrée de répertoire avec une longueur de nom de 4095 peut produire une taille sérialisée de 4120 octets.

Sur un système utilisant des pages de 4096 octets, cet enregistrement dépasse une page de 24 octets.

La correction en amont rejette les enregistrements de répertoire qui ne peuvent pas tenir dans une seule page avant que la copie dans le cache ne se produise.

Composant affecté```text

fs/fuse/readdir.c fuse_add_dirent_to_cache()

### Données de référence du scanner

Le scanner contient les références amont stables corrigées suivantes :

| Série de noyau | Référence corrigée |
|---|---:|
| 5.10 | 5.10.258 |
| 5.15 | 5.15.209 |
| 6.1 | 6.1.175 |
| 6.6 | 6.6.136 |
| 6.12 | 6.12.84 |
| 6.18 | 6.18.25 |
| 7.0 | 7.0.2 |
| Mainline | 7.1 ou plus récent |

Ces versions servent d’entrée d’évaluation. Elles ne sont pas considérées comme la seule source de vérité, car les éditeurs de distributions peuvent rétroporter la correction tout en conservant un numéro de version amont plus ancien.

---

## Modèle de sécurité

Le scanner est conçu pour éviter de déclencher l’opération vulnérable.

### Le scanner ne

- monte pas de système de fichiers FUSE ;
- ouvre ni ne communique avec `/dev/fuse` ;
- démarre pas de serveur FUSE ;
- soumet pas d’enregistrements de répertoire forgés ;
- alloue pas de mémoire pour les tests de placement de pages ;
- prépare pas les allocateurs du noyau ;
- modifie pas `/etc/passwd` ;
- modifie pas la configuration du noyau ;
- charge ni ne décharge des modules du noyau ;
- modifie pas les permissions de `/dev/fuse` ;
- installe ni ne supprime des paquets ;
- redémarre pas le système ;
- tente pas d’élévation de privilèges.

### Le scanner peut

- lire les fichiers situés sous `/proc`, `/boot`, `/lib/modules`, `/usr/lib/modules`, `/usr/src` et les répertoires de métadonnées de paquets ;
- exécuter des requêtes de paquets limitées et en lecture seule ;
- inspecter les montages actifs et l’enregistrement des systèmes de fichiers ;
- écrire un rapport uniquement lorsque `--output` est explicitement fourni ;
- afficher des commandes d’atténuation pour examen par l’administrateur.

Les commandes d’atténuation sont une sortie documentaire. Elles ne sont jamais exécutées automatiquement.

---

## Fonctionnalités

### Identification de l’hôte et du noyau

- Lit `platform.release()` et analyse la version du noyau au format amont.
- Lit `/etc/os-release` ou `/usr/lib/os-release`.
- Détecte l’architecture du processeur et la taille des pages mémoire.
- Détermine si le noyau analysé appartient au système d’exploitation actuel.

### Évaluation de l’exposition FUSE

- Lit `CONFIG_FUSE_FS` à partir des sources de configuration du noyau disponibles.
- Détecte la prise en charge intégrée de FUSE et les configurations de module chargeable.
- Lit `/proc/filesystems`.
- Vérifie les métadonnées de `/dev/fuse` et l’accès en lecture/écriture de l’utilisateur actuel.
- Localise `fusermount3` ou `fusermount`.
- Analyse les montages FUSE actifs à partir de `/proc/self/mountinfo`.

### Preuves de correctif

- Compare la version en cours d’exécution aux références corrigées amont.
- Recherche dans le source du noyau installé la protection contre les enregistrements surdimensionnés.
- Vérifie dans les journaux de modifications locaux des paquets RPM ou Debian :
  - `CVE-2026-31694` ;
  - le titre du correctif amont.

### État des paquets et du redémarrage

- Tente d’identifier le paquet propriétaire du noyau en cours d’exécution.
- Interroge les métadonnées locales du gestionnaire de paquets sans actualiser les dépôts.
- Détecte un noyau installé plus récent lorsque l’environnement hôte est autoritatif.
- Vérifie `/var/run/reboot-required` le cas échéant.

### Sensibilité à l’environnement

- Détecte les conteneurs compatibles Docker.
- Détecte les conteneurs compatibles Podman.
- Détecte les cgroups liés aux conteneurs.
- Détecte WSL.
- Détecte les machines virtuelles à l’aide de `systemd-detect-virt` lorsqu’il est disponible.

### Rapports

- Sortie texte lisible par l’humain.
- Sortie JSON lisible par machine.
- Sortie de rapport Markdown.
- Sortie atténuation uniquement.
- Sortie fichier optionnelle.
- Codes de sortie de processus explicites.

---

## Prérequis

### Requis

- Linux pour l’évaluation du noyau.
- Python 3.9 ou plus récent.
- Accès en lecture aux métadonnées système normales.

Le scanner n’utilise que la bibliothèque standard de Python.

### Commandes facultatives

Des preuves supplémentaires sont collectées lorsque les outils suivants sont présents :

| Outil | Fonction |
|---|---|
| `dpkg-query` | Découverte du paquet propriétaire du noyau et du journal des modifications pour Debian/Ubuntu |
| `rpm` | Inspection de la propriété des paquets et du journal des modifications pour Fedora/RHEL/SUSE |
| `pacman` | Paquet noyau et métadonnées de mise à jour pour la famille Arch |
| `apt` | Requête de mise à jour en cache pour la famille Debian |
| `dnf` ou `dnf5` | Requête de mise à jour en cache pour Fedora/RHEL |
| `zypper` | Requête de correctif CVE en cache pour SUSE |
| `apk` | Requête de paquet/mise à jour Alpine |
| `systemd-detect-virt` | Détection de conteneurs et de machines virtuelles |
Télécharger l’outil