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é.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
cheat-engine-undetectable — Academic Research Edition - T1 : évasion en mode utilisateur (obfuscation + passerelle syscall), T2 : pont noyau BYOVD, T3 : matériel DMA (travaux futurs). | Kitploit
Outils/GitHubGitHub/gmh5225/cheat-engine-undetectable
ExploitationRétro-ingénierieAnalyse de MalwareApprentissage et ÉducationRed TeamingExploitation de Binaires
GitHubgmh5225/cheat-engine-undetectable

cheat-engine-undetectable

Academic Research Edition - T1 : évasion en mode utilisateur (obfuscation + passerelle syscall), T2 : pont noyau BYOVD, T3 : matériel DMA (travaux futurs).

Voir le dépôt
88il 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

Cheat Engine Indétectable

Édition Recherche Académique — Cheat Engine modifié avec contournement anti-triche multi-niveaux pour l'éducation en cybersécurité et la recherche en rétro-ingénierie de niveau universitaire.

Avertissement : Ce projet est exclusivement destiné à la recherche académique, aux travaux universitaires et à l'éducation en cybersécurité. Il doit être détruit à la fin du semestre académique.


Architecture

┌─────────────────────────────────────────────────────────┐
│                    Cheat Engine 7.5                      │
│                   (Lazarus / FreePascal)                  │
├─────────────────────────────────────────────────────────┤
│  T1: Contournement en mode utilisateur                   │
│  ├─ Randomisation des noms fenêtre/processus/registre (-daltname)│
│  ├─ Suppression des métadonnées PE et renommage des sections │
│  ├─ Suppression de l'en-tête Rich et randomisation de l'horodatage │
│  ├─ Stubs d'appels système directs (contournement des hooks ntdll.dll) │
│  └─ Extraction dynamique des numéros d'appels système depuis le disque │
├─────────────────────────────────────────────────────────┤
│  T2: Pont noyau (BYOVD — WinNotify.sys)                  │
│  ├─ Détection anti-triche (10 moteurs)                   │
│  ├─ Pilote signé Microsoft (WinNotify.sys / signeddrv.sys)│
│  ├─ Lecture/écriture mémoire virtuelle noyau via IOCTL (sans mappage physique) │
│  ├─ Parcours de tables de pages basé sur CR3 pour tout processus │
│  ├─ Contournement KASLR via IOCTL de divulgation de l'adresse de base du noyau │
│  ├─ Contournement ObCallback (manipulation des structures du noyau) │
│  └─ Masquage de processus (déliaison de PsActiveProcessLinks) │
├─────────────────────────────────────────────────────────┤
│  T3: Matériel DMA [NON IMPLÉMENTÉ]                       │
│  └─ Périphérique PCIe FPGA pour contournement AC au niveau hyperviseur │
└─────────────────────────────────────────────────────────┘

Matrice de couverture

Anti-TricheTypeStratégieStatut
Warden (Blizzard)Mode utilisateurT1Fonctionnel
VAC (Valve)Mode utilisateurT1Fonctionnel
XIGNCODE3Pilote mode utilisateurT1Fonctionnel
EasyAntiCheatPilote noyauT2Nécessite WinNotify.sys
BattlEyePilote noyauT2Nécessite WinNotify.sys
nProtect GameGuardPilote noyauT2Nécessite WinNotify.sys
Ricochet (CoD)Pilote noyauT2Partiel
Vanguard (Riot)HyperviseurT3 (DMA)NON IMPLÉMENTÉ
Faceit / ESEANoyau + HyperviseurT3 (DMA)NON IMPLÉMENTÉ

Structure des fichiers

.
├── README.md
├── Build.ps1                     # Pipeline de compilation automatisé (clone CE, applique les correctifs, compile)
├── .gitignore
├── src/
│   ├── cheatengine.lpi           # Projet : métadonnées renommées, définition -daltname, sortie renommée
│   ├── cheatengine.lpr           # Principal : Application.Title dynamique
│   ├── NewKernelHandler.pas      # Cœur : intégration T1+T2, échange de pointeurs de fonction
│   ├── SyscallGateway.pas        # T1 : Stubs d'appels système directs (Read/Write/Open/VQE)
│   ├── AntiCheatDetector.pas     # T2 : Détection AC — processus, pilotes, services
│   ├── PhysicalMemory.pas        # T2 : Chargeur de pilote + lecture/écriture mémoire physique via IOCTL
│   ├── KernelBridge.pas          # T2 : Orchestrateur de contournement noyau + désactivation ObCallback
│   ├── StealthHiding.pas         # T2 : Masquage de processus via déliaison de PsActiveProcessLinks
│   ├── PEPatcher.ps1             # Mutation PE post-compilation
│   └── Build-Stealth.ps1         # Script de compilation autonome hérité
└── cheat-engine/                  # Source CE en amont (cloné par Build.ps1)

Comment ça fonctionne

Niveau 1 : Contournement en mode utilisateur

Obscurcissement de surface — Utilise la compilation conditionnelle intégrée de CE {$ifdef altname} :

  • Titre de fenêtre : "Runtime Modifier" au lieu de "Cheat Engine 7.5"
  • Clés de registre : \Software\Runtime Modifier\ au lieu de \Software\Cheat Engine\
  • Toutes les chaînes visibles par l'utilisateur : « Modification », « Code Table », etc.
  • Métadonnées PE : descriptions génériques de société/fichier, informations de version supprimées
  • Nom de sortie : sysdiag64.exe au lieu de cheatengine-x86_64.exe

Passerelle d'appels système — Le pilote noyau DBK de CE est désactivé (son hash de certificat est sur liste noire par EAC/BE). À la place, toutes les fonctions d'accès mémoire (ReadProcessMemory, WriteProcessMemory, VirtualQueryEx, OpenProcess) sont redirigées via des stubs d'instruction syscall directs :

  • Lit ntdll.dll depuis le disque avant que les hooks anti-triche ne soient actifs
  • Analyse la table d'exportation PE pour extraire les numéros d'appels système bruts
  • Génère des stubs d'assemblage : mov r10, rcx; mov eax, [syscall_num]; syscall; ret
  • Contourne les hooks en mode utilisateur dans ntdll.dll installés par EAC/BE

Niveau 2 : Pont noyau (BYOVD — WinNotify.sys)

Pour les anti-triches au niveau noyau qui bloquent la création de handles via ObRegisterCallbacks :

  1. Détection : Analyse les pilotes EAC/BE (EasyAntiCheat.sys, BEDaisy.sys) et les services
  2. Chargement du pilote : Charge WinNotify.sys / signeddrv.sys (signé Microsoft Authenticode, 2026, 0 détections VT) via le Gestionnaire de contrôle des services Windows
  3. Contournement KASLR (IOCTL 0x22200C) : Lit l'adresse de base de ntoskrnl.exe directement depuis la liste des modules chargés du noyau
  4. Lecture/écriture mémoire virtuelle noyau (IOCTL 0x222040/0x222044) : Lit/écrit n'importe quelle adresse virtuelle noyau — aucune traduction d'adresse physique requise
  5. Parcours EPROCESS : Trouve le processus System (PID=4), parcourt ActiveProcessLinks pour localiser le processus du jeu cible
  6. Parcours de tables de pages CR3 (IOCTL 0x222050/0x222054) : Utilise le DirectoryTableBase du jeu pour lire/écrire sa mémoire virtuelle via ses propres tables de pages
  7. Zéro handle requis : Pas de OpenProcess, pas de NtReadVirtualMemory — complètement invisible pour ObCallbacks
  8. Masquage de processus : Délie l'EPROCESS de CE de PsActiveProcessLinks

Niveau 3 : Matériel DMA (NON IMPLÉMENTÉ)

Pour les anti-triches au niveau hyperviseur (Vanguard, Faceit), un périphérique DMA PCIe serait nécessaire pour lire la RAM physique depuis le bus, contournant à la fois les protections du noyau et de l'hyperviseur. Documenté comme extension de recherche future.

Prérequis

  1. IDE Lazarus 3.x avec FreePascal 3.2.2 : https://www.lazarus-ide.org/
  2. Git pour cloner le dépôt CE en amont
  3. Privilèges administrateur (requis pour le chargement du pilote et l'accès aux processus)
  4. WinNotify.sys / signeddrv.sys — Pilote noyau signé Microsoft fournissant :
    • Lecture mémoire virtuelle noyau arbitraire (IOCTL 0x222040)
    • Écriture mémoire virtuelle noyau arbitraire (IOCTL 0x222044)
    • Parcours de tables de pages CR3 par processus (IOCTL 0x222050/0x222054)
    • À placer dans C:\Windows\System32\drivers\ ou à côté de l'exécutable compilé

Instructions de compilation

git clone https://github.com/NulledNah/cheat-engine-undetectable.git
cd cheat-engine-undetectable
.\Build.ps1 -Clean

# Si Lazarus n'est pas dans C:\lazarus :
.\Build.ps1 -Clean -LazarusPath "D:\lazarus"

Le script :

  1. Clone Cheat Engine en amont (s'il n'est pas présent)
  2. Copie les fichiers corrigés dans la source en amont
  3. Randomise les identifiants de compilation (version, numéro de build)
  4. Compile avec lazbuild en mode Release 64-Bit
  5. Exécute PEPatcher pour supprimer l'en-tête Rich, renommer les sections, randomiser l'horodatage
  6. Génère bin\sysdiag64.exe

Comportement à l'exécution

Télécharger l’outil