
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 pour vérifier si le serveur autorise un échange de clés Diffie-Hellman (DH) utilisant un groupe faible. Nous visons à ce que notre outil aide à évaluer les serveurs SSH pour les paramètres d'échange de clés DH faibles.
Veuillez noter que cet outil teste un ensemble limité de configurations, ce qui pourrait 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'info Logjam pour des suggestions sur la configuration des serveurs SSH afin de les protéger, ainsi que leurs clients, des attaques exploitant les échanges de clés DH utilisant un groupe faible.
Pour le billet de blog original, visitez https://blog.gdssecurity.com/labs/2015/8/3/ssh-weak-diffie-hellman-group-identification-tool.html.
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 optionnel (par défaut 22).Les résultats du scan seront affichés sur stdout. Les résultats détaillés sont sauvegardés dans le répertoire ./logs/ sous un sous-dossier nommé host-port.
L'outil de scan appelle le script ssh-weak-dh-analyze.py pour analyser les résultats du scan stockés dans le sous-dossier susmentionné.
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