SSLyze

SSLyze es una herramienta para analizar la configuración SSL de un servidor, diseñada para ser rápida y exhaustiva. Un ejemplo de uso: $ python sslyze --regular localhost:443 REGISTERING AVAILABLE PLUGINS ----------------------------- PluginCertInfo PluginSessionRenegotiation PluginCompression PluginSessionResumption PluginOpenSSLCipherSuites CHECKING HOST(S) AVAILABILITY ----------------------------- localhost:443 => 127.0.0.1:443 SCAN RESULTS FOR LOCALHOST:443 - 127.0.0.1:443 ----------------------------------------------------------------- * Compression : Compression Support: Disabled * Session Renegotiation : Client-initiated Renegotiations: Rejected Secure Renegotiation: Supported * Certificate : Validation w/ Mozilla's CA Store: Certificate is NOT Trusted: self signed certificate in certificate chain Hostname Validation: OK - Common Name Matches SHA1 Fingerprint: 12C4EC1C16807D8654269FBE5E0A8DBFBF1244CC Common Name: localhost Issuer: /C=ES/ST=IB/O=Localhost CA/CN=localhost/emailAddress=postmaster@localhost Serial Number: F525610B96987DAE Not Before: Mar 20 10:31:07 2013 GMT Not After: Mar 20 10:31:07 2014 GMT Signature Algorithm: sha1WithRSAEncryption Key Size: 2048 Unhandled exception when processing --sslv2: utils.ctSSL.errors.ctSSLFeatureNotAvailable - SSLv2 disabled. * Session Resumption : With Session IDs: Supported (5 successful, 0 failed, 0 errors, 5 total attempts). With TLS Session Tickets: Supported * TLSV1_1 Cipher Suites : Rejected Cipher Suite(s): Hidden Preferred Cipher Suite: RC4-SHA 128 bits HTTP 302 Found - / Accepted Cipher Suite(s): CAMELLIA256-SHA 256 bits HTTP 302 Found - / AES256-SHA 256 bits HTTP 302 Found - / DES-CBC3-SHA 168 bits HTTP 302 Found - / RC4-SHA 128 bits HTTP 302 Found - / CAMELLIA128-SHA 128 bits HTTP 302 Found - / AES128-SHA 128 bits HTTP 302 Found - / Undefined - An unexpected error happened: None * TLSV1_2 Cipher Suites : Rejected Cipher Suite(s): Hidden Preferred Cipher Suite: AES128-GCM-SHA256 128 bits HTTP 302 Found - / Accepted Cipher Suite(s): CAMELLIA256-SHA 256 bits HTTP 302 Found - / AES256-SHA256 256 bits HTTP 302 Found - / AES256-SHA 256 bits HTTP 302 Found - / AES256-GCM-SHA384 256 bits HTTP 302 Found - / DES-CBC3-SHA 168 bits HTTP 302 Found - / RC4-SHA 128 bits HTTP 302 Found - / CAMELLIA128-SHA 128 bits HTTP 302 Found - / AES128-SHA256 128 bits HTTP 302 Found - / AES128-SHA 128 bits HTTP 302 Found - / AES128-GCM-SHA256 128 bits HTTP 302 Found - / Undefined - An unexpected error happened: None * SSLV3 Cipher Suites : Rejected Cipher Suite(s): Hidden Preferred Cipher Suite: RC4-SHA 128 bits HTTP 302 Found - / Accepted Cipher Suite(s): CAMELLIA256-SHA 256 bits HTTP 302 Found - / AES256-SHA 256 bits HTTP 302 Found - / DES-CBC3-SHA 168 bits HTTP 302 Found - / RC4-SHA 128 bits HTTP 302 Found - / CAMELLIA128-SHA 128 bits HTTP 302 Found - / AES128-SHA 128 bits HTTP 302 Found - / Undefined - An unexpected error happened: None * TLSV1 Cipher Suites : Rejected Cipher Suite(s): Hidden Preferred Cipher Suite: RC4-SHA 128 bits HTTP 302 Found - / Accepted Cipher Suite(s): CAMELLIA256-SHA 256 bits HTTP 302 Found - / AES256-SHA 256 bits HTTP 302 Found - / DES-CBC3-SHA 168 bits HTTP 302 Found - / RC4-SHA 128 bits HTTP 302 Found - / CAMELLIA128-SHA 128 bits HTTP 302 Found - / AES128-SHA 128 bits HTTP 302 Found - / Undefined - An unexpected error happened: None SCAN COMPLETED IN 16.95 S -------------------------

March 29, 2013 · 3 min · 504 palabras · Nacho Cano

Subdominios dinámicos en un alojamiento con dominio dinámico en OVH

Lo que se pretende es conseguir una manera rápida y sencilla de poner sitios web online. Una vez configurado el servidor web y el servidor DNS, lo único que tendremos que hacer para tener accesible un nuevo sitio web será colocarlo en un directorio concreto del servidor y podremos acceder a él a través del subdominio con el nombre del directorio. Por ejemplo, si creamos la web web1, automáticamente será accesible desde web1.example.com. ...

December 15, 2012 · 4 min · 643 palabras · Nacho Cano

Forzar el uso de SSL/HTTPS de un directorio en Apache2 mediante .htaccess y mod_rewrite

Si queremos que el acceso a un directorio concreto, es decir, que afecte únicamente la ruta relativa en la URL que accede a ese directorio, se realice mediante una conexión segura, suponiendo que ya tenemos configurado el servidor de forma adecuada, basta incluir en ese directorio un fichero .htaccess que contenga: RewriteEngine On RewriteCond %{HTTPS} off RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} Así, si por ejemplo, queremos que la ruta http://localhost/secure/ se acceda de forma segura, suponiendo que el DocumentRoot apunta a /var/www: ...

May 10, 2012 · 1 min · 94 palabras · Nacho Cano

TLSSLed v1.2

TLSSLed es un script cuya finalidad es evaluar la seguridad de SSL/TLS de un servidor web. Se basa en el escáner de SSL/TLS, sslscan, el cual a su vez se basa en la librería openssl, y en el comando openssl s_client. Entre las comprobaciones que realiza se incluyen comprobar si el servidor soporta SSLv2, cifrado NULL, cifrados débiles por la longitud de su clave (40 ó 56 bits), la disponibilidad de cifrados fuertes, como AES, si el certificado está firmado con MD5 y si permite la renegociación de SSL/TLS. ...

October 23, 2011 · 3 min · 537 palabras · Nacho Cano

HTTP Strict Transport Security

HTTP Strict Transport Security (HSTS) es un mecanismo de seguridad web donde el servidor exige que las conexiones se realicen únicamente mediante conexiones seguras. El servidor informa de esta política de seguridad utilizando la cabecera Strict-Transport-Security, en donde se especifica el periodo durante el cual las conexiones seguras son obligatorias. Si una web proporciona acceso seguro (HTTPS) pero accedemos de forma no segura (HTTP) podría suceder que nos redirija a la versión segura, sin embargo, ya se había iniciado una conversación sin cifrar. Este comportamiento puede ser explotado por un ataque Man-In-The-Middle. ...

September 11, 2011 · 2 min · 270 palabras · Nacho Cano

sslh, compartiendo el puerto 443

Podemos tener varios motivos para tener escuchando nuestro servicio de SSH en el puerto 443. Ya sea porque queremos evitarnos los continuos intentos de conexión que sufrimos por tener el servicio escuchando en el puerto 22 o porque desde donde estemos, ya sea en el trabajo o en un hotel, no estén permitidas las conexiones que no sean al puerto 80 o 443. Pero, ¿y si ya tenemos un servidor web escuchando en el puerto 443? ...

July 30, 2011 · 4 min · 790 palabras · Nacho Cano

Usando una conexión segura en el panel de control de Wordpress

Si tenemos instalado un WordPress y queremos iniciar sesión a través de una conexión segura, deberemos modificar el fichero /usr/share/wordpress/wp-config.php y añadir: define('FORCE_SSL_LOGIN', true); Si queremos que se use la conexión segura en todo el panel de control, en lugar de lo anterior, añadiremos: define('FORCE_SSL_ADMIN', true); Para que esto funcione, es necesario que Apache esté configurado para servir conexiones seguras. Actualización a 13 de julio de 2013 Si hemos iniciado sesión y navegamos por nuestra página web, deberíamos asegurarnos de que seguimos usando una conexión segura, ya que estamos enviando nuestra cookie de sesión y alguien en la misma red podría llegar a capturarla si no es así. ...

June 14, 2011 · 1 min · 144 palabras · Nacho Cano

Configurar Apache para servir conexiones seguras

Si tenemos Apache, y queremos configurarlo para que se pueda navegar de forma segura por nuestro sitio utilizando el protocolo HTTPS, necesitamos: crear las claves que se utilizarán para cifrar la conexión, configurar mod_ssl, el módulo de Apache para usar conexiones seguras, y permitir la conexión por el puerto 443. Crear las claves de cifrado Vamos a generar un par de claves RSA triple DES de 2048 bits en el directorio /etc/ssl: ...

June 14, 2011 · 7 min · 1309 palabras · Nacho Cano

Cifrar el contenido de Dropbox

A raíz del cambio en los términos del servicio de Dropbox, en el cual se afirma que le entregará tus ficheros al gobierno de Estados Unidos, si éste se lo pide, o la noticia de que es posible saltarse las restricciones, y que nuestra cuenta sea usada en otra máquina sin necesidad de conocer nuestra contraseña, se nos podría ocurrir cifrar los datos que subimos a nuestra cuenta. Utilizaremos ecryptfs para cifrar un directorio, y todo su contenido, dentro del directorio de una de nuestras cuentas de Dropbox. ...

April 21, 2011 · 4 min · 764 palabras · Nacho Cano

Sa Nostra y SSL

Leyendo la comparativa de SbD sobre el uso de SSL por parte de los bancos online, estos son los resultados de Sa Nostra: URL: https://linea.sanostra.es Verificación SSLv2 Comando: $ openssl s_client -ssl2 -connect linea.sanostra.es:443 Bien: no da soporte Tipo de certificado (Normal/EV) Esto lo podemos comprobar a través del navegador. Mal: Tiene un certificado SSL sin Validación Extendida. Longitud de la clave RSA del certificado Comando: $ openssl s_client -connect linea.sanostra.es:443 Mal: La clave es de 1024 bits. ...

October 25, 2010 · 1 min · 108 palabras · Nacho Cano