Retour aux mises à jour
New releaseAug 14, 2026

PhantomFS v1.2.20

Pot de miel Windows utilisant ProjFS pour projeter des fichiers leurres qui déclenchent des alertes dans le Journal des événements et sur le bureau lorsqu'ils sont consultés, avec enregistrement des sessions distantes SMB pour la détection des mouvements latéraux.

Partager

PhantomFS — Faux fichiers. Vraie sécurité.

Faux fichiers. Vraie sécurité.
Système de fichiers virtuels honeypot pour Windows — attirez les attaquants dans un répertoire qui a l'air réel, puis prenez-les sur le fait.

MIT License Platform .NET 4.8 Sponsor


Qu'est-ce que PhantomFS ?

PhantomFS utilise le système de fichiers projeté Windows (ProjFS) pour afficher un répertoire virtuel rempli de fichiers leurres convaincants — rapports financiers, clés SSH, identifiants API, feuilles de calcul RH, NDA — qui n'existent qu'en mémoire. Aucune donnée n'est jamais écrite sur le disque tant qu'un attaquant (ou une menace interne) n'en ouvre un.

Au moment où un fichier est touché, PhantomFS :

  • Écrit une entrée dans le journal des événements Windows (journal Application, source PhantomFS)
  • Déclenche une notification Toast sur la session de bureau active
  • Enregistre le nom exact du fichier, l'horodatage et le contexte du processus
  • Lorsqu'il est accédé via un partage réseau — capture le nom d'utilisateur SMB et l'adresse source

Comme les utilisateurs légitimes n'ont aucune raison d'ouvrir des fichiers qu'ils n'ont pas placés là, chaque alerte est de haute fiabilité. Pas de réglage, pas de ML, pas de dépendances cloud — juste un pilote Windows natif et un exécutable unique.


Fonctionnalités

FonctionnalitéDétails
Leurres sans empreinteLes fichiers sont projetés à la demande — rien n'est écrit sur le disque sauf si un attaquant lit un fichier
Journal des événements WindowsID d'événement 1001 (lecture de fichier), 1002 (création d'espace réservé), 1003 (démarrage), 1004 (arrêt)
Alertes ToastNotification de bureau immédiate via Windows PowerShell — fonctionne même via RDP
Journalisation de session distanteNom d'utilisateur SMB et adresse source capturés via NetSessionEnum lorsque le PID 4 déclenche l'accès
Nettoyage automatiqueLes fichiers synthétiques matérialisés sont supprimés après un délai configurable ; retour à l'état virtuel lors du prochain accès
Modèles configurablesPDF, XLSX, DOCX, JSON, CSV, PEM, texte brut — tous servis à partir de modèles XML dans la configuration
Refroidissement par fichierLimitation configurable (15 s par défaut) pour éviter une avalanche d'alertes lorsqu'un outil lit plusieurs blocs
Liste de fichiers synthétiquesListe XML prête à l'emploi de noms de fichiers convaincants avec des tailles d'octets réalistes
Exécutable uniquePhantomFS.exe + PhantomFS.exe.config — pas d'installateur requis

Prérequis

  • Windows 10 version 1809 (Build 17763) ou ultérieure — Windows 11 recommandé
  • .NET Framework 4.8
  • Fonctionnalité optionnelle Système de fichiers projeté Windows activée (Enable-WindowsOptionalFeature -Online -FeatureName Client-ProjFS -NoRestart)
  • Privilèges d'administrateur pour démarrer la racine virtuelle

Démarrage rapide

Commandes simples (recommandées)

  1. Téléchargez PhantomFS-v1.1.0-x64.zip depuis Releases et extrayez-le
  2. Exécutez en tant qu'administrateur — activez ProjFS, Enable-WindowsOptionalFeature -Online -FeatureName Client-ProjFS -NoRestart
  3. Exécutez .\PhantomFS.exe --virtroot C:\PhantomFS\Virtual\Documents --syntheticonly
  4. Parcourez C:\PhantomFS\Virtual\Documents dans l'Explorateur — vous verrez les fichiers leurres
  5. Ouvrez-en un — regardez la notification Toast se déclencher et vérifiez Observateur d'événements → Journaux Windows → Application

Configuration

Tous les paramètres se trouvent dans PhantomFS.exe.config. Toutes les clés sont facultatives — omettre une clé utilise la valeur par défaut indiquée dans le tableau.

Utilisez le Générateur de profil PhantomFS pour créer différents profils de configuration pour vos scénarios de déploiement :

Section <settings>

<settings>
  <enableEventLog>true</enableEventLog>
  <enableToast>true</enableToast>
  <alertOnOpen>true</alertOnOpen>
  <alertOnRead>true</alertOnRead>
  <toastCooldownSeconds>15</toastCooldownSeconds>
  <verbose>false</verbose>
  <virtRoot></virtRoot>
  <sourceRoot></sourceRoot>
  <syntheticOnly>true</syntheticOnly>

  <!-- v1.1.0 — nettoyage automatique -->
  <autoCleanupEnabled>true</autoCleanupEnabled>
  <autoCleanupDelaySeconds>300</autoCleanupDelaySeconds>

  <!-- v1.1.0 — journalisation de session distante -->
  <resolveRemoteIPs>true</resolveRemoteIPs>
</settings>
CléValeur par défautDepuisDescription
enableEventLogtrue1.0.0Écriture dans le journal des événements Windows (Application)
enableToasttrue1.0.0Envoi d'une notification Toast sur le bureau
alertOnOpentrue1.0.0Alerte lors de la première création d'un espace réservé (parcours du répertoire)
alertOnReadtrue1.0.0Alerte lorsque les données du fichier sont réellement lues
toastCooldownSeconds151.0.0Secondes minimales entre les Toasts pour le même chemin de fichier
verbosefalse1.0.0Sortie console supplémentaire pour le diagnostic
virtRoot(argument 1)1.0.0Remplacement du chemin racine virtuel depuis la configuration plutôt que la ligne de commande
sourceRoot(vide)1.0.0Répertoire de sauvegarde réel facultatif — laisser vide pour le mode synthétique uniquement
syntheticOnlytrue1.0.0Servir uniquement les fichiers listés dans <syntheticFileList>
autoCleanupEnabledtrue1.1.0Supprimer les fichiers synthétiques matérialisés après le délai et revenir à l'état virtuel
autoCleanupDelaySeconds3001.1.0Secondes après la matérialisation avant la suppression du fichier (le minuteur de nettoyage s'exécute toutes les 30 s)
resolveRemoteIPstrue1.1.0Résolution DNS du nom d'hôte client SMB en adresse IP ; définir sur false si la latence de résolution est inacceptable

Journalisation de session distante

Lorsqu'un fichier est accédé via un partage SMB, PhantomFS détecte le PID 4 (le processus Système Windows / pilote SMB noyau) comme appelant et appelle automatiquement NetSessionEnum pour identifier l'utilisateur distant. L'entrée du journal des événements et la notification Toast incluront :

PhantomFS — Lecture du contenu d'un fichier leurre
Fichier : Documents\Rapport_Financier_T4_2024.pdf
Processus : Système (PID 4)
Distant : CORP\jsmith @ DESKTOP-A1B2C3D  [192.168.1.45]

Prérequis pour la journalisation distante :

  • Le service Serveur doit être en cours d'exécution (il démarre automatiquement dès qu'un partage est actif)
  • PhantomFS doit être exécuté sur la machine hébergeant le partage
  • resolveRemoteIPs nécessite que la machine cliente soit résolvable via DNS

Comportement du nettoyage automatique

Catégories