
Audite les serveurs SSH pour les groupes d'échange de clés Diffie-Hellman faibles en testant plusieurs configurations client, identifiant les points de terminaison vulnérables à Logjam avec une analyse détaillée de scan.
Cet outil crée des connexions SSH vers un serveur et parcourt différentes configurations client afin de vérifier si le serveur autorise un échange de clés Diffie-Hellman (DH) utilisant un groupe faible. Notre objectif est que cet outil aide à évaluer les serveurs SSH pour détecter les paramètres d'échange de clés DH faibles.
Veuillez noter que cet outil teste un ensemble limité de configurations, ce qui peut entraîner la non-détection de certaines configurations faibles. De plus, le serveur peut bloquer les connexions avant la fin de l'analyse.
Consultez la page d'information Logjam pour des suggestions sur la façon de configurer les serveurs SSH afin de les protéger, ainsi que leurs clients, contre les attaques exploitant les échanges de clés DH utilisant un groupe faible.
Pour l'article de blog original, visitez https://www.levelblue.com/blogs/spiderlabs-blog/ssh-weak-diffie-hellman-group-identification-tool/.
podman build -t ssh-weak-dh .
docker build --build-arg UID=$(id -u) --build-arg GID=$(id -g) -t ssh-weak-dh .
Exécutez l'une des commandes suivantes :
podman run --userns=keep-id:uid=65532,gid=65532 --name ssh-weak-dh --rm -v "$(pwd)/logs/":/logs/ ssh-weak-dh host [port]
docker run --name ssh-weak-dh --rm -v "$(pwd)/logs/":/logs/ ssh-weak-dh host [port]
host : nom d'hôte ou adresse IP du serveur SSH.port : port du serveur SSH facultatif (par défaut 22).Les résultats de l'analyse seront affichés sur stdout. Les résultats détaillés sont enregistrés dans le répertoire ./logs/ sous un sous-dossier nommé host-port.
L'outil d'analyse appelle le script ssh-weak-dh-analyze.py pour analyser les résultats d'analyse stockés dans le sous-dossier mentionné ci-dessus.
Le script d'analyse est un outil autonome qui peut être exécuté comme suit :
# Get a container shell:
podman run --userns=keep-id:uid=65532,gid=65532 --name ssh-weak-dh --rm -v "$(pwd)/logs/":/logs/ -it --entrypoint bash ssh-weak-dh
docker run --name ssh-weak-dh --rm -v "$(pwd)/logs/":/logs/ -it --entrypoint bash ssh-weak-dh
# Run the analysis script on logged scan results:
./ssh-weak-dh-analyze.py /logs/scanme.example.com-22/
Arrêter un conteneur en cours d'exécution :
podman stop ssh-weak-dh
docker stop ssh-weak-dh
Ce projet est sous licence GNU General Public License v2.0. Voir LICENSE pour plus de détails.
Copyright (C) 2015-2026 Fabian Foerg / Gotham Digital Science