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
OpenPetya — Un bootkit Proof-of-Concept inspiré par le ransomware Petya, écrit en Assembly, C et C++ | Kitploit
Outils/GitHubGitHub/iss4cf0ng/openpetya
Outils de Chiffrement/DéchiffrementRétro-ingénierieAnalyse ForensiqueAnalyse de MalwareCryptographieApprentissage et ÉducationExploitation de Binaires
GitHubiss4cf0ng/openpetya

OpenPetya

Un bootkit Proof-of-Concept inspiré par le ransomware Petya, écrit en Assembly, C et C++

Voir le dépôt
26043il y a 2 moisVérifié par Kitploit

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
Site web

OpenPetya

Un Proof-of-Concept de bootkit inspiré du rançongiciel Petya, écrit en Assembly, C et C++

Si vous trouvez ce projet utile ou instructif, j'apprécierais vraiment une ⭐ sur le dépôt. Votre soutien serait une grande motivation pour continuer à améliorer cet outil.

Aperçu

OpenPetya est un projet éducatif conçu pour étudier le fonctionnement interne des bootkits et des rançongiciels bas niveau.

Le projet se concentre sur :

  • un MBR de démarrage personnalisé
  • un processus de démarrage en plusieurs étapes
  • la transition vers le mode protégé
  • le chiffrement de la Master File Table (MFT) NTFS
  • la cryptographie basée sur Salsa20
  • la validation du mot de passe et le flux de restauration

OpenPetya n'est PAS destiné à être une réimplémentation exacte de Petya ou de NotPetya. Il s'agit plutôt d'un Proof-of-Concept simplifié conçu à des fins d'apprentissage et de recherche.

Il convient de mentionner qu'OpenPetya n'inclut pas de fonctionnalité de commande et contrôle (C2). De plus, OpenPetya stocke les données de sauvegarde MFT en clair dans des secteurs cachés après le chiffrement. Ce comportement est intentionnellement conçu à des fins éducatives car ces fonctionnalités sont relativement triviales par rapport au noyau du bootloader et aux mécanismes cryptographiques implémentés dans ce projet. Cependant, vous pouvez toujours modifier ou supprimer ces fonctionnalités si nécessaire.


Motivation du projet

Au cours des derniers mois, j'ai étudié :

  • l'analyse de logiciels malveillants
  • les bootloaders
  • les rootkits et les bootkits
  • les internes de Windows
  • les fondamentaux des systèmes d'exploitation
  • la programmation Assembly bas niveau

En recherchant Petya et NotPetya, j'ai réalisé que de nombreuses ressources en ligne n'expliquent que brièvement le flux de travail global sans démontrer le fonctionnement réel du processus de démarrage sous-jacent.

De plus, de nombreux projets existants liés à Petya s'appuient sur des binaires de bootloader extraits ou des composants originaux modifiés plutôt que d'implémenter la logique à partir de zéro.

Par conséquent, j'ai décidé de développer OpenPetya comme un projet pratique pour comprendre :

  • comment fonctionnent les bootkits MBR personnalisés
  • comment fonctionnent les bootloaders de deuxième étape
  • comment fonctionnent les flux de chiffrement de disque
  • comment sont implémentés les mécanismes de validation de mot de passe et de restauration

Le projet fait également partie de mes recherches en cours sur les bootkits, les logiciels malveillants bas niveau et les internes des systèmes d'exploitation.

Articles connexes :

  • Analyse de Petya
  • Analyse de NotPetya
  • MBR simple et bootloader
  • OpenBootloader
  • Notes sur les rootkits et les bootkits
  • Notes sur le langage Assembly PC
  • Notes sur la cryptographie sérieuse

Fonctionnalités

  • MBR personnalisé

    OpenPetya utilise un Master Boot Record (MBR) personnalisé pour charger la charge utile de deuxième étape.

  • Bootloader personnalisé de deuxième étape

    Le bootloader de deuxième étape contient les fonctionnalités principales du projet, notamment :

    • le chiffrement/déchiffrement Salsa20
    • la validation du mot de passe
    • la logique de restauration
    • l'interface utilisateur
  • Transition vers le mode protégé

    Le bootloader passe du mode réel 16 bits au mode protégé 32 bits avant d'exécuter la logique de plus haut niveau.

  • Chiffrement MFT

    Comme le Petya original, OpenPetya chiffre les parties critiques de la Master File Table (MFT) NTFS à l'aide de Salsa20.

  • Validation du mot de passe

    OpenPetya valide le mot de passe saisi avant le déchiffrement pour éviter une corruption irréversible causée par des clés invalides.

  • Restauration automatique

    Une fois le mot de passe correct saisi :

    • les données chiffrées sont restaurées
    • la chaîne de démarrage originale est récupérée
    • OpenPetya se supprime automatiquement

Composants

OpenPetya.exe

Application installateur et contrôleur en mode utilisateur.

Fonctions :

  • sélection du disque
  • installation
  • déclenchement du redémarrage
  • interface utilitaire

mbr.bin

Code MBR (Master Boot Record) personnalisé responsable de :

  • chargement de la deuxième étape
  • exécution précoce du démarrage

stage2.bin

La charge utile principale d'OpenPetya.

Responsabilités :

  • transition vers le mode protégé
  • opérations cryptographiques Salsa20
  • chiffrement/déchiffrement MFT
  • validation du mot de passe
  • restauration
  • interface au moment du démarrage

Flux de travail

Le flux de travail d'OpenPetya est résumé ci-dessous.

  1. Les utilisateurs installent OpenPetya à l'aide de OpenPetya.exe et choisissent un mot de passe.

  2. La machine est redémarrée manuellement ou via le mécanisme BSOD (via NtRaiseHardError) fourni par l'installateur.

  3. Pendant le démarrage, le MBR personnalisé charge la charge utile de deuxième étape.

  4. La charge utile de deuxième étape bascule le CPU en mode protégé.

  5. OpenPetya chiffre les parties sélectionnées de la Master File Table (MFT) NTFS.

  6. Après le chiffrement, la machine redémarre à nouveau.

  7. Une interface au moment du démarrage invite l'utilisateur à saisir le mot de passe.

  8. Si le mot de passe est correct :

    • les données chiffrées sont déchiffrées
    • la chaîne de démarrage originale est restaurée
    • OpenPetya se supprime automatiquement
  9. Windows démarre normalement à nouveau.

Contrairement au rançongiciel Petya original, OpenPetya ne tente pas de tromper les utilisateurs avec de faux écrans CHKDSK ou des comportements d'ingénierie sociale. Le projet est conçu uniquement à des fins éducatives et de recherche.


Construction

Vous pouvez construire le projet en utilisant les commandes ci-dessous.

root@kitploit:~
make            # Construire mbr.bin et stage2.bin
./build.exe     # Construire OpenPetya.exe

Utilisation

Avertissement : Exécutez-le dans votre machine virtuelle !

Les commandes ci-dessous montrent comment installer le MBR personnalisé et le bootloader de deuxième étape (des privilèges d'administrateur sont requis) :

root@kitploit:~
OpenPetya.exe --list
OpenPetya.exe --drive 0 --install mbr.bin stage2.bin

Notes techniques

Des explications détaillées sur :

  • le processus de démarrage MBR
  • le mode réel et le mode protégé
  • l'implémentation Salsa20
  • le flux de chiffrement MFT
  • la conception de bootkit
  • davantage de discussions sur Petya et NotPetya
  • comment utiliser les API non documentées (telles que NtRaiseHardError)

Sont documentées dans cet article.

Avertissement

Ce projet a été développé uniquement à des fins éducatives et de recherche.

Le but d'OpenPetya est d'étudier :

  • les bootkits
  • les internes des systèmes d'exploitation
  • les techniques de logiciels malveillants bas niveau
  • l'architecture des bootloaders

N'utilisez PAS ce projet pour des activités illégales ou contre des systèmes que vous ne possédez pas ou pour lesquels vous n'avez pas explicitement l'autorisation de tester.

L'auteur n'est PAS responsable de toute mauvaise utilisation de ce logiciel.

Démonstration (Windows 7)

Captures d'écran

Démo d'exécution

Projets futurs

  • Flux de restauration amélioré
  • Meilleur analyse NTFS
  • Simulation plus précise du comportement de Petya
  • Expériences UEFI
  • Recherche supplémentaire sur les bootkits
  • Mode graphique plein écran
  • Prise en charge de Windows 10

Remerciements

Merci d'avoir consulté ce projet. Les commentaires et suggestions sont les bienvenus.

Télécharger l’outil