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
Outils/GitHubGitHub/s1lkys/cve-2023-30367-mremoteng-password-dumper
Cassage de Mots de PasseCriminalistique MémoireAnalyse des VulnérabilitésExploitationTests d'Intrusion
GitHubs1lkys/cve-2023-30367-mremoteng-password-dumper

CVE-2023-30367-mRemoteNG-password-dumper

PoC original pour CVE-2023-30367

Voir le dépôt

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
161il y a 2 ansPas encore vérifié

mRemoteNG <= v1.77.3.1784-NB Password Dumper (CVE-2023-30367)

Le Multi-Remote Next Generation Connection Manager (mRemoteNG) est un logiciel libre qui permet aux utilisateurs de stocker et de gérer des configurations de connexions multi-protocoles pour se connecter à distance à des systèmes.

Les fichiers de configuration de mRemoteNG peuvent être stockés cryptés sur le disque. Les versions de mRemoteNG <= v1.76.20 et <= 1.77.3-dev chargent les fichiers de configuration en texte clair en mémoire (après les avoir déchiffrés si nécessaire) au démarrage de l'application, même si aucune connexion n'a encore été établie. Cela permet aux attaquants d'accéder au contenu des fichiers de configuration en texte clair via un dump mémoire et ainsi de compromettre les identifiants utilisateur lorsqu'aucune clé de cryptage de mot de passe personnalisée n'a été définie. Cela contourne également le paramètre de cryptage du fichier de configuration de connexion en vidant les configurations déjà déchiffrées de la mémoire.

Cette vulnérabilité a été assignée sous CVE-2023-30367. Testée avec mRemoteNG 1.77.3.1784-NB et mRemoteNG 1.76.20 sur Windows 11 (allemand).

La découverte a été confirmée par Dimitrij Gorodeckij, l'un des développeurs de mRemoteNG, ici. Un correctif est encore en développement. Merci encore à Dimitrij Gorodeckij pour sa réponse rapide et sa coopération ! Espérons qu'il sera corrigé bientôt !

Que pouvez-vous faire ?

1. Utilisez des mots de passe/clés de cryptage de mot de passe de configuration forts (longs) : En cas de dump mémoire, un attaquant accéderait aux fichiers de configuration en texte clair mais devrait quand même forcer brutalement la clé de cryptage des mots de passe. Malheureusement, l'activation de l'option de cryptage du fichier de connexion n'aide pas à prévenir cette attaque car les fichiers de configuration de connexion de mRemoteNG sont déchiffrés à l'exécution.

2. Mettez à jour mRemoteNG vers une version supérieure à v1.77.3.1784-NB lorsqu'un correctif sera publié.

3. Pour empêcher l'exécution malveillante, par exemple de mRemoteNGDumper.exe, une liste blanche d'applications devrait être appliquée.

Note

Veuillez noter que le cryptage du mot de passe de configuration et le cryptage du fichier de connexion sont des paramètres différents. Le cryptage du mot de passe de configuration est utilisé pour crypter le mot de passe dans le fichier de configuration uniquement, tandis que le cryptage du fichier de connexion est utilisé pour crypter l'ensemble du fichier de configuration. Cette exploitation contourne le cryptage du fichier de connexion en vidant les configurations déjà déchiffrées de la mémoire. Celles-ci contiennent toujours des mots de passe cryptés qui peuvent être déchiffrés avec la clé par défaut mR3m. Si une clé/mot de passe de cryptage de mot de passe de configuration personnalisée a été définie, un attaquant devrait toujours deviner la clé personnalisée. (Voir la section mremoteng-decrypt.py)

Configuration

  1. Installez .NET (la plupart des systèmes d'exploitation majeurs sont pris en charge).
  2. Clonez le dépôt : git clone https://github.com/S1lkys/CVE-2023-30367-mRemoteNG-password-dumper.git ou téléchargez-le depuis GitHub
  3. Entrez dans le répertoire du projet mRemoteNG-password-dumper
  4. Ouvrez la solution avec VisualStudio et compilez en utilisant .Net 4.8.1

La manière la plus simple de tester cela manuellement sur Windows est de créer un dump de processus en utilisant le gestionnaire de tâches de Windows en cliquant droit sur le processus mRemoteNG et en sélectionnant "Créer un fichier de dump". Le dump peut être ouvert dans VisualStudio Code. Recherchez ensuite vos valeurs de connexion configurées.

Preuve de concept manuelle

  1. Créez une nouvelle configuration de connexion, définissez le nom d'hôte, le nom d'utilisateur et le mot de passe.
  2. Activez le cryptage du fichier disque pour les fichiers de configuration.
  3. Redémarrez mRemoteNG
  4. Utilisez le Gestionnaire de tâches / Processhacker / Procdump ou tout autre outil capable de créer des minidumps d'un processus pour créer un minidump.
  5. Examinez le fichier minidump et recherchez "<Node Name=" qui indique le début du fichier de configuration de connexion de mRemoteNG.

mRemoteNGDumper.exe

mRemoteNG Password Dumper est un outil simple de preuve de概念 utilisé pour vider les fichiers de configuration de la mémoire de mRemoteNG. Aucune exécution de code sur le système cible n'est nécessaire, seulement un dump mémoire. C'est une POC rapide, donc probablement pas très fiable ni robuste. Veuillez créer une pull request si vous trouvez un problème et le corrigez.

Les fichiers de configuration sont actuellement codés en dur comme ceci : (\<Node)(.*)(?=\/>)\/>

  1. Démarrez mRemoteNG et entrez un mot de passe de déchiffrement de fichier si nécessaire.
  2. Exécutez mRemoteNGDumper.exe dans une session de terminal. Les fichiers de configuration vidés sont sauvegardés dans un dossier nommé "dump".
  3. Déchiffrez/Forcez brutalement les fichiers vidés ou les chaînes de mots de passe ayant des mots de passe personnalisés avec mremoteng_decrypt.py (Voir la section mremoteng-decrypt.py)

mRemoteNG_Decrypt.py

J'ai ajouté une fonctionnalité de brute force à mremoteng-decrypt (Voir les remerciements). Cela peut être utilisé pour forcer brutalement les clés de cryptage de mot de passe/configuration personnalisées de mRemoteNG. Si aucune clé personnalisée n'a été configurée, le script déchiffrera la configuration avec la clé par défaut mR3m. Ce script peut également être utilisé pour déchiffrer des fichiers de configuration avec des mots de passe de cryptage personnalisés. Voir aussi Démo.

mremoteng_decrypt

Déchiffrer un fichier de configuration avec un mot de passe de cryptage personnalisé 123 : python3 mremoteng_decrypt.py -rf "C:\Users\mbzra\source\repos\mRemoteNG Dumper\dump\extracted_Configfile_mRemoteNG_0_09.07.2023.11.01_confCons.xml" -p 123

Déchiffrer une chaîne de mot de passe avec un mot de passe de cryptage personnalisé 123 : python3 mremoteng_decrypt.py -s "QHrcb7I0KHi6YLFXxv93jenrUmNj5qO30zTM9qXqRUd7ImVm5/ROU7CLQ5u7+7+iOiFrY2BtZSpJ8RrR3jV6LoE=" -p 123

Déchiffrer une chaîne de mot de passe sans mot de passe de cryptage personnalisé : python3 mremoteng_decrypt.py -s "yW0Ypq/cTcwfHwYxIiHgczcsIKU+jWlfnZBcTdKQImsMbBnP3SLv2h75Z7IAbkFOsD2YzBo2wGk2fhDLpRFH2y8="

Utilisation du brute force : python3 mremoteng_decrypt.py -s "[mot de passe de configuration crypté extrait]" -b y -w [chemin vers la wordlist]

Exemple de brute force : python3 mremoteng_decrypt.py -s "QHrcb7I0KHi6YLFXxv93jenrUmNj5qO30zTM9qXqRUd7ImVm5/ROU7CLQ5u7+7+iOiFrY2BtZSpJ8RrR3jV6LoE=" -b y -w .\wordli.txt

Devriez-vous vous inquiéter ?

Cela dépend de votre modèle de menace. Si votre ordinateur est déjà infecté par un logiciel malveillant qui s'exécute en arrière-plan avec les privilèges de votre utilisateur, cette découverte n'aggrave pas vraiment votre situation. Cependant, il pourrait être plus facile pour le malware d'être furtif et d'éviter l'antivirus, car contrairement à KeeTheft ou KeeFarce, aucune injection de processus ou autre type d'exécution de code n'est nécessaire.

Si vous avez des raisons de soupçonner que quelqu'un pourrait obtenir un accès à votre ordinateur et effectuer une analyse médico-légale, cela pourrait être problématique.

Si vous utilisez le cryptage du fichier de configuration avec un mot de passe fort et que votre système est propre, vous devriez être tranquille. Personne ne peut voler vos mots de passe à distance via Internet avec cette seule découverte.

Démo

Demo

Remerciements aux projets connexes

  • Déchiffreur de mot de passe mRemoteNG en Python par kmahyyg que j'ai modifié pour ajouter la fonctionnalité de brute force.
  • Dump de mot de passe maître Keepass par vdohney où j'ai volé ce fichier README.md que j'ai adapté à mes besoins.

Références

  • https://www.secuvera.de/advisories/secuvera-SA-2023-01.txt
  • https://github.com/mRemoteNG/mRemoteNG/issues/2420
  • https://cve.mitre.org/cgi-bin/cvename.cgi?name=2023-30367
  • https://cwe.mitre.org/data/definitions/316.html
  • https://www.first.org/cvss/calculator/3.1#CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:H/I:N/A:N
Télécharger l’outil