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
CVE-2020-0688 — Scanner de vulnérabilités pour CVE-2020-0688 | Kitploit
Outils/GitHubGitHub/cert-lv/cve-2020-0688
ReconnaissanceScanners de VulnérabilitésExploitationCollecte d'InformationsSécurité WebTests d'Intrusion
GitHubcert-lv/cve-2020-0688

CVE-2020-0688

Scanner de vulnérabilités pour CVE-2020-0688

Voir le dépôt
81il y a 6 ansPas 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

Identifier les serveurs Exchange vulnérables à CVE-2020-0688

CVE-2020-0688 est une vulnérabilité critique dans Microsoft Exchange due à l'utilisation de clés statiques. Bien que l'exploitation nécessite des informations d'identification valides (au niveau d'un utilisateur de messagerie) et que le risque d'exploitation de masse soit faible, cette vulnérabilité peut être très utile dans des attaques ciblées car elle conduit à une exécution de code à distance (RCE) au niveau SYSTEM.

Plus d'informations :

  • https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2020-0688
  • https://www.thezdi.com/blog/2020/2/24/cve-2020-0688-remote-code-execution-on-microsoft-exchange-server-through-fixed-cryptographic-keys
  • https://www.tenable.com/blog/cve-2020-0688-microsoft-exchange-server-static-key-flaw-could-lead-to-remote-code-execution

Notes sur les faux négatifs

Il y a plusieurs sources connues de faux négatifs (serveurs Exchange vulnérables qui ne seront pas détectés par ce script) :

  1. Les serveurs Exchange potentiels sont présélectionnés en identifiant les hôtes qui ont à la fois le port 25 et 443 ouverts. Si certaines configurations bloquent l'un de ces ports, ils ne seront pas détectés.

  2. zmap est optimisé pour la vitesse et la scalabilité au détriment de la précision. Typiquement, plusieurs exécutions consécutives de zmap donnent des résultats légèrement différents. En conséquence, plusieurs exécutions de ce script montreront des résultats légèrement différents également.

    Je ne sais pas si cela est dû purement à la congestion du réseau ou à un code défectueux. Les pull-requests avec des correctifs/contournements sont les bienvenues !

  3. Nous n'essayons pas d'être discrets ici, donc certains pare-feu pourraient simplement nous bloquer comme un robot.

  4. Étant donné que nous n'effectuons aucune empreinte numérique sophistiquée et que nous nous appuyons uniquement sur la version que le serveur Exchange rapporte lui-même, nous sommes limités aux trois premiers champs du numéro de version.

    Par exemple, la dernière mise à jour cumulative pour Exchange Server 2019 est 15.2.529.5 qui a été publiée en décembre et est vulnérable. La dernière mise à jour contenant le correctif est 15.2.529.8. Les deux se rapportent comme version 15.2.529, donc le script supposera que le serveur est patché même s'il n'a pas la dernière mise à jour installée et est vulnérable.

    En pratique, il semble qu'il y ait soit des administrateurs Exchange qui mettent à jour leurs systèmes dès que les correctifs sortent, soit ceux qui vivent selon le principe "si ça marche, n'y touchez pas". Il n'y a pas de juste milieu.

Prérequis

zmap, Python >= 3.5, modules :

  • dnspython
  • pyOpenSSL
  • requests

Vous pouvez les installer globalement avec :

root@kitploit:~
$ sudo dnf install zmap python3-gevent python3-dns python3-pyOpenSSL

ou :

root@kitploit:~
$ sudo apt install zmap python3-gevent python3-dns python3-openssl

Les modules Python peuvent également être installés localement, via virtualenv :

root@kitploit:~
$ virtualenv -p python3 CVE-2020-0688
$ . ./CVE-2020-0688/bin/activate
$ pip install -r ./requirements.txt

Utilisation

Pour une analyse de base, tout ce dont vous avez besoin est un fichier contenant des IP/sous-réseaux (au format CIDR) à analyser :

root@kitploit:~
$ ./scan.py ~/my_networks.txt output.csv

La sortie sera écrite dans un format CSV avec les colonnes suivantes :

IPVersion ExchangeNom du serveurPTRNom commun (du certificat TLS)

Optionnellement, vous pouvez demander à afficher les informations sur tous les serveurs Exchange trouvés :

root@kitploit:~
$ ./scan.py -f ~/my_networks.txt output.csv

Dans ce cas, il y aura une colonne supplémentaire pour indiquer si le serveur est vulnérable ou non :

IPVersion ExchangeVulnérable ?Nom du serveurPTRNom commun (du certificat TLS)

Vous pouvez également fournir un fichier d'IP/sous-réseaux mis sur liste noire (option -b), modifier le nombre de tâches parallèles (-p) ou la durée des timeouts (-t) :

root@kitploit:~
$ # ./scan.py -h
usage: scan.py [-h] [-b BLACKLIST] [-f] [-p PARALLEL] [-t TIMEOUT]
               input output

Identify Exchange servers vulnerable to CVE-2020-0688.

positional arguments:
  input                 Input file, each line contains one IP/subnet
  output                File to save the results (in CSV format)

optional arguments:
  -h, --help            show this help message and exit
  -b BLACKLIST, --blacklist BLACKLIST
                        File containing IPs/subnets to avoid
  -f, --full            Don't filter seemingly up-to-date Exchange servers
  -p PARALLEL, --parallel PARALLEL
                        How many requests to send in parallel (default: 1000)
  -t TIMEOUT, --timeout TIMEOUT
                        Timeout (seconds) to use for network connections
                        (default: 5)
Télécharger l’outil