
Scanner SSL/TLS rapide qui découvre les suites de chiffrement, protocoles et vulnérabilités supportés (Heartbleed, POODLE, CRIME) avec analyse de la chaîne de certificats et énumération des échanges de clés.
La version 2 de sslscan est maintenant publiée. Elle inclut une réécriture majeure du code de scan back-end, ce qui signifie qu'elle ne dépend plus de la version d'OpenSSL pour de nombreux contrôles. Il est ainsi possible de supporter les protocoles anciens (SSLv2 et SSLv3), ainsi que TLSv1.3, quelle que soit la version d'OpenSSL avec laquelle elle a été compilée.
Cette avancée a été rendue possible en grande partie par le travail de jtesta, qui a été responsable de la majeure partie de la réécriture du back-end.
Les autres changements clés sont les suivants :
--http, car elle était cassée et très peu utilisée.Un changement potentiellement cassant a été apporté à la sortie XML dans la version 2.0.0-beta4. Auparavant, plusieurs éléments <certificate> pouvaient être renvoyés (un par défaut, et un second si --show-certificate était utilisé).
Les changements clés sont :
<certificates> qui contiendra les éléments <certificate>.<certificate> ont un nouvel attribut type, qui peut être soit :
short pour la sortie par défaut.full lorsque --show-certificate est utilisé.<signature-algorithm> dans un <certificate> ne contient plus le préfixe « Signature Algorithm: », ni les espaces et le saut de ligne.Si vous utilisez la sortie XML, vous devrez peut-être modifier votre analyseur.
Ceci est un fork de la version d'ioerror de sslscan (dont le readme original est inclus ci-dessous) par rbsec ([email protected]).
Les changements clés sont les suivants :
--show-certificate).--failed).--ipv6).--no-compression).--no-ciphersuites.--no-colour.--no-heartbleed).--rdp (crédit skettler).Il est recommandé d'ignorer l'installation système d'OpenSSL et de construire statiquement avec votre propre version. Bien que cela aboutisse à un binaire sslscan plus lourd (taille de fichier, consommation mémoire, etc.), cela permet d'effectuer des vérifications supplémentaires comme la compression TLS. Notez qu'à partir de la version 2.2.0 de sslscan, la version minimale requise d'OpenSSL est 3.5.0 (LTS) ; si votre distribution fournit une version plus ancienne, la construction avec celle-ci ne fonctionnera pas et vous devrez effectuer une construction statique.
Pour compiler votre propre version d'OpenSSL, vous devrez probablement installer les dépendances de construction d'OpenSSL. Les commandes ci-dessous peuvent être utilisées pour cela sur Debian.
apt install git zlib1g-dev make gcc
Exécutez ensuite
make static
Cela clonera le dépôt OpenSSL, et configurera/compilera/testera OpenSSL avant de compiler sslscan.
Veuillez noter : Par défaut, OpenSSL est compilé avec gcc sans personnalisation supplémentaire. Pour compiler avec clang, installez les dépendances de construction avec les commandes ci-dessous.
apt install git zlib1g-dev make clang
Exécutez ensuite
make static CC=clang
Vous pouvez vérifier si vous avez une version d'OpenSSL liée statiquement en regardant si la version indiquée par sslscan --version a le suffixe -static.
Assurez-vous que votre installation locale de Docker est fonctionnelle, puis construisez le conteneur avec :
make docker
Ou manuellement avec :
docker build -t sslscan:sslscan .
Vous pouvez ensuite exécuter sslscan avec :
docker run --rm -ti sslscan:sslscan --help
Grâce à un correctif de jtesta, sslscan peut désormais être compilé sous Windows. Cela peut être fait soit nativement, soit par compilation croisée depuis Linux. Voir INSTALL pour les instructions.
Notez que sslscan a été écrit à l'origine pour Linux et n'a pas été largement testé sous Windows. Par conséquent, la version Windows doit être considérée comme expérimentale.
Des binaires Windows pré-construits par compilation croisée sont disponibles sur la page des versions GitHub.
Il existe une prise en charge expérimentale pour la construction statique sous macOS (anciennement OS X), mais celle-ci doit être considérée comme non supportée. Vous devrez peut-être installer toutes les dépendances nécessaires pour compiler OpenSSL à partir des sources sur macOS (anciennement OS X). Une fois cela fait, exécutez simplement :
make static
Ceci est un fork de sslscan.c pour mieux supporter STARTTLS.
La page d'origine de sslscan est :
http://www.titania.co.uk
sslscan a été écrit à l'origine par :
Ian Ventura-Whiting
La page actuelle de ce fork (en attendant que le correctif final soit fusionné en amont) est :
http://www.github.com/ioerror/sslscan
La plupart de la configuration du protocole pré-TLS a été inspirée par le programme s_client.c d'OpenSSL. L'objectif de ce fork est de fusionner éventuellement avec le projet original une fois que la configuration STARTTLS sera peaufinée.
Une partie du code de configuration OpenSSL a été empruntée au programme Tor de The Tor Project. Il est donc probablement approprié de se conformer à la licence BSD en indiquant : Copyright (c) 2007-2010, The Tor Project, Inc.
--sleep pour marquer une pause entre les requêtes.--no-preferred.--show-client-cas.--no-cipher-details.--cipher-details.--starttls-ldap.--sni-name (crédit Ken).--iana-names.--show-certificates.