
Escáner SSL/TLS rápido que descubre conjuntos de cifrado, protocolos y vulnerabilidades compatibles (Heartbleed, POODLE, CRIME) con análisis de cadena de certificados y enumeración de intercambio de claves.
sslscan versión 2 ya ha sido lanzada. Esto incluye una reescritura importante del código de escaneo del backend, lo que significa que ya no depende de la versión de OpenSSL para muchas comprobaciones. Esto significa que es posible soportar protocolos heredados (SSLv2 y SSLv3), así como soportar TLSv1.3, independientemente de la versión de OpenSSL contra la que se haya compilado.
Esto ha sido posible en gran parte gracias al trabajo de jtesta, quien ha sido responsable de la mayor parte de la reescritura del backend.
Otros cambios clave incluyen:
--http, ya que estaba rota y tenía muy poco uso desde el principio.Se ha realizado un cambio potencialmente incompatible en la salida XML en la versión 2.0.0-beta4. Anteriormente, se podían devolver múltiples elementos <certificate> (uno por defecto y un segundo si se usaba --show-certificate).
Los cambios clave son:
<certificates> que contendrá los elementos .<certificate><certificate> tienen un nuevo atributo type, que puede ser:
short para la salida por defecto.full para cuando se usa --show-certificate.<signature-algorithm> en un <certificate> ya no contiene el prefijo "Signature Algorithm:", ni el espaciado y la nueva línea.Si está usando la salida XML, es posible que necesite hacer cambios en su analizador.
Este es un fork de la versión de sslscan de ioerror (cuyo README original se incluye a continuación) por rbsec ([email protected]).
Los cambios clave son los siguientes:
--show-certificate).--failed).--ipv6).--no-compression).--no-ciphersuites.--no-colour.--no-heartbleed).--rdp (crédito a skettler).--sleep para pausar entre solicitudes.--no-preferred.--show-client-cas.--no-cipher-details.--cipher-details.--starttls-ldap.--sni-name (crédito a Ken).--iana-names--show-certificatesSe recomienda ignorar la instalación del sistema de OpenSSL y compilar estáticamente contra su propia versión. Aunque esto da como resultado un binario sslscan que consume más recursos (tamaño de archivo, consumo de memoria, etc.), permite realizar algunas comprobaciones adicionales como la compresión TLS. Tenga en cuenta que a partir de sslscan versión 2.2.0, la versión mínima de OpenSSL requerida por sslscan es 3.5.0 (LTS), por lo que si su distribución incluye una versión anterior, la compilación contra ella no funcionará y tendrá que realizar una compilación estática.
apt install git zlib1g-dev make gcc
Luego ejecute
make static
Esto clonará el repositorio de OpenSSL, y configurará/compilará/probará OpenSSL antes de compilar sslscan.
Tenga en cuenta: Por defecto, OpenSSL se compila con gcc sin más personalización. Para compilar con clang, instale las dependencias de compilación usando los comandos a continuación.
apt install git zlib1g-dev make clang
Luego ejecute
make static CC=clang
Puede verificar si tiene una versión de OpenSSL enlazada estáticamente comprobando si la versión listada por sslscan --version tiene el sufijo -static.
Asegúrese de que su instalación local de Docker sea funcional y construya el contenedor con:
make docker
O manualmente con:
docker build -t sslscan:sslscan .
Luego puede ejecutar sslscan con:
docker run --rm -ti sslscan:sslscan --help
Gracias a un parche de jtesta, sslscan ahora se puede compilar en Windows. Esto puede hacerse de forma nativa o mediante compilación cruzada desde Linux. Consulte INSTALL para obtener instrucciones.
Tenga en cuenta que sslscan fue escrito originalmente para Linux y no ha sido probado extensamente en Windows. Por lo tanto, la versión de Windows debe considerarse experimental.
Los binarios de Windows compilados de forma cruzada están disponibles en la página de lanzamientos de GitHub.
Hay soporte experimental para compilación estática en macOS (anteriormente llamado OS X), sin embargo, esto debe considerarse no compatible. Es posible que necesite instalar las dependencias necesarias para compilar OpenSSL desde el código fuente en macOS (anteriormente llamado OS X). Una vez que lo haya hecho, simplemente ejecute:
make static
Este es un fork de sslscan.c para soportar mejor STARTTLS.
La página de inicio original de sslscan es:
http://www.titania.co.uk
sslscan fue originalmente escrito por:
Ian Ventura-Whiting
La página de inicio actual de este fork (hasta que el upstream fusione un parche finalizado) es:
http://www.github.com/ioerror/sslscan
La mayor parte de la configuración del protocolo pre-TLS se inspiró en el programa s_client.c de OpenSSL. El objetivo de este fork es eventualmente fusionarse con el proyecto original después de pulir la configuración de STARTTLS.
Parte del código de configuración de OpenSSL fue tomado del programa Tor de The Tor Project. Por lo tanto, es apropiado cumplir con la licencia BSD diciendo: Copyright (c) 2007-2010, The Tor Project, Inc.