<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Ssl on Karpoke - Just Another Blog</title><link>http://karpoke.ignaciocano.com/tags/ssl/</link><description>Recent content in Ssl on Karpoke - Just Another Blog</description><generator>Hugo -- 0.159.0</generator><language>es</language><lastBuildDate>Fri, 29 Mar 2013 22:54:00 +0100</lastBuildDate><atom:link href="http://karpoke.ignaciocano.com/tags/ssl/index.xml" rel="self" type="application/rss+xml"/><item><title>SSLyze</title><link>http://karpoke.ignaciocano.com/2013/03/29/sslyze/</link><pubDate>Fri, 29 Mar 2013 22:54:00 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2013/03/29/sslyze/</guid><description>&lt;p&gt;&lt;a href="https://github.com/iSECPartners/sslyze"&gt;SSLyze&lt;/a&gt; es una herramienta para analizar la configuración SSL de un
servidor, diseñada para ser rápida y exhaustiva.&lt;/p&gt;
&lt;p&gt;Un ejemplo de uso:&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;$ python sslyze --regular localhost:443
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; REGISTERING AVAILABLE PLUGINS
-----------------------------
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; PluginCertInfo
PluginSessionRenegotiation
PluginCompression
PluginSessionResumption
PluginOpenSSLCipherSuites
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; CHECKING HOST(S) AVAILABILITY
-----------------------------
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; localhost:443 =&amp;gt; 127.0.0.1:443
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; SCAN RESULTS FOR LOCALHOST:443 - 127.0.0.1:443
-----------------------------------------------------------------
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; * Compression :
Compression Support: Disabled
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; * Session Renegotiation :
Client-initiated Renegotiations: Rejected
Secure Renegotiation: Supported
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; * Certificate :
Validation w/ Mozilla&amp;#39;s CA Store: Certificate is NOT Trusted: self signed certificate in certificate chain
Hostname Validation: OK - Common Name Matches
SHA1 Fingerprint: 12C4EC1C16807D8654269FBE5E0A8DBFBF1244CC
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; 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
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt;Unhandled exception when processing --sslv2:
utils.ctSSL.errors.ctSSLFeatureNotAvailable - SSLv2 disabled.
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; * Session Resumption :
With Session IDs: Supported (5 successful, 0 failed, 0 errors, 5 total attempts).
With TLS Session Tickets: Supported
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; * TLSV1_1 Cipher Suites :
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; Rejected Cipher Suite(s): Hidden
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; Preferred Cipher Suite:
RC4-SHA 128 bits HTTP 302 Found - /
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; 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 - /
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; Undefined - An unexpected error happened: None
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; * TLSV1_2 Cipher Suites :
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; Rejected Cipher Suite(s): Hidden
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; Preferred Cipher Suite:
AES128-GCM-SHA256 128 bits HTTP 302 Found - /
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; 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 - /
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; Undefined - An unexpected error happened: None
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; * SSLV3 Cipher Suites :
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; Rejected Cipher Suite(s): Hidden
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; Preferred Cipher Suite:
RC4-SHA 128 bits HTTP 302 Found - /
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; 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 - /
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; Undefined - An unexpected error happened: None
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; * TLSV1 Cipher Suites :
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; Rejected Cipher Suite(s): Hidden
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; Preferred Cipher Suite:
RC4-SHA 128 bits HTTP 302 Found - /
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; 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 - /
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; Undefined - An unexpected error happened: None
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex="0"&gt;&lt;code&gt; SCAN COMPLETED IN 16.95 S
-------------------------
&lt;/code&gt;&lt;/pre&gt;</description></item><item><title>Subdominios dinámicos en un alojamiento con dominio dinámico en OVH</title><link>http://karpoke.ignaciocano.com/2012/12/15/subdominios-dinamicos-en-un-alojamiento-con-dominio-dinamico-en-ovh/</link><pubDate>Sat, 15 Dec 2012 01:05:00 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2012/12/15/subdominios-dinamicos-en-un-alojamiento-con-dominio-dinamico-en-ovh/</guid><description>&lt;p&gt;Lo que se pretende es conseguir una manera rápida y sencilla de poner
sitios web &lt;em&gt;online&lt;/em&gt;. 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 &lt;code&gt;web1&lt;/code&gt;, automáticamente será
accesible desde &lt;code&gt;web1.example.com&lt;/code&gt;.&lt;/p&gt;</description></item><item><title>Forzar el uso de SSL/HTTPS de un directorio en Apache2 mediante .htaccess y mod_rewrite</title><link>http://karpoke.ignaciocano.com/2012/05/10/forzar-el-uso-de-sslhttps-de-un-directorio-en-apache2-mediante-htaccess-y-mod_rewrite/</link><pubDate>Thu, 10 May 2012 15:35:00 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2012/05/10/forzar-el-uso-de-sslhttps-de-un-directorio-en-apache2-mediante-htaccess-y-mod_rewrite/</guid><description>&lt;p&gt;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 &lt;code&gt;.htaccess&lt;/code&gt; que contenga:&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Así, si por ejemplo, queremos que la ruta &lt;code&gt;http://localhost/secure/&lt;/code&gt; se
acceda de forma segura, suponiendo que el &lt;code&gt;DocumentRoot&lt;/code&gt; apunta a
&lt;code&gt;/var/www&lt;/code&gt;:&lt;/p&gt;</description></item><item><title>TLSSLed v1.2</title><link>http://karpoke.ignaciocano.com/2011/10/23/tlssled-v1-2/</link><pubDate>Sun, 23 Oct 2011 15:45:00 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2011/10/23/tlssled-v1-2/</guid><description>&lt;p&gt;&lt;a href="http://www.taddong.com/en/lab.html#TLSSLED"&gt;TLSSLed&lt;/a&gt; es un &lt;em&gt;script&lt;/em&gt; cuya finalidad es evaluar la seguridad de
SSL/TLS de un servidor web. Se basa en el escáner de SSL/TLS, &lt;code&gt;sslscan&lt;/code&gt;,
el cual a su vez se basa en la librería &lt;code&gt;openssl&lt;/code&gt;, 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.&lt;/p&gt;</description></item><item><title>HTTP Strict Transport Security</title><link>http://karpoke.ignaciocano.com/2011/09/11/http-strict-transport-security/</link><pubDate>Sun, 11 Sep 2011 17:37:00 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2011/09/11/http-strict-transport-security/</guid><description>&lt;p&gt;&lt;a href="http://en.wikipedia.org/wiki/HTTP_Strict_Transport_Security"&gt;HTTP Strict Transport Security&lt;/a&gt; (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 &lt;code&gt;Strict-Transport-Security&lt;/code&gt;, en donde
se especifica el periodo durante el cual las conexiones seguras son
obligatorias.&lt;/p&gt;
&lt;p&gt;Si una web proporciona acceso seguro (HTTPS) pero accedemos de forma no
segura (HTTP) &lt;a href="http://hacks.mozilla.org/2010/08/firefox-4-http-strict-transport-security-force-https/"&gt;podría suceder que nos redirija a la versión segura&lt;/a&gt;,
sin embargo, ya se había iniciado una conversación sin cifrar. Este
comportamiento puede ser explotado por un ataque &lt;em&gt;Man-In-The-Middle&lt;/em&gt;.&lt;/p&gt;</description></item><item><title>sslh, compartiendo el puerto 443</title><link>http://karpoke.ignaciocano.com/2011/07/30/sslh-compartiendo-el-puerto-443/</link><pubDate>Sat, 30 Jul 2011 19:21:00 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2011/07/30/sslh-compartiendo-el-puerto-443/</guid><description>&lt;p&gt;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 &lt;a href="http://dischord.org/blog/2010/08/25/multiplexing-ssh-and-ssl/"&gt;ya tenemos un
servidor web&lt;/a&gt; escuchando en el puerto 443?&lt;/p&gt;</description></item><item><title>Usando una conexión segura en el panel de control de Wordpress</title><link>http://karpoke.ignaciocano.com/2011/06/14/usando-una-conexion-segura-en-el-panel-de-control-de-wordpress/</link><pubDate>Tue, 14 Jun 2011 14:17:00 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2011/06/14/usando-una-conexion-segura-en-el-panel-de-control-de-wordpress/</guid><description>&lt;p&gt;Si tenemos &lt;a href="http://karpoke.ignaciocano.com/2010/12/30/la-infame-actualizacion-de-wordpress-en-15-segundos/"&gt;instalado un WordPress&lt;/a&gt; y queremos &lt;a href="http://rackerhacker.com/2009/07/31/requiring-ssl-encryption-for-wordpress-administration/"&gt;iniciar sesión a
través de una conexión segura&lt;/a&gt;, deberemos modificar el fichero
&lt;code&gt;/usr/share/wordpress/wp-config.php&lt;/code&gt; y añadir:&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;define(&amp;#39;FORCE_SSL_LOGIN&amp;#39;, true);
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Si queremos que se use la conexión segura en todo el panel de control,
en lugar de lo anterior, añadiremos:&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;define(&amp;#39;FORCE_SSL_ADMIN&amp;#39;, true);
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Para que esto funcione, es necesario que &lt;a href="http://karpoke.ignaciocano.com/2011/06/14/configurar-apache-para-servir-conexiones-seguras/"&gt;Apache esté configurado para
servir conexiones seguras&lt;/a&gt;.&lt;/p&gt;
&lt;hr&gt;
&lt;h4 id="actualización-a-13-de-julio-de-2013"&gt;Actualización a 13 de julio de 2013&lt;/h4&gt;
&lt;p&gt;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 &lt;em&gt;cookie&lt;/em&gt; de sesión y alguien en la misma red podría
llegar a capturarla si no es así.&lt;/p&gt;</description></item><item><title>Configurar Apache para servir conexiones seguras</title><link>http://karpoke.ignaciocano.com/2011/06/14/configurar-apache-para-servir-conexiones-seguras/</link><pubDate>Tue, 14 Jun 2011 14:13:00 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2011/06/14/configurar-apache-para-servir-conexiones-seguras/</guid><description>&lt;p&gt;Si tenemos Apache, y queremos configurarlo para que se pueda navegar de
forma segura por nuestro sitio utilizando el protocolo HTTPS,
necesitamos:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;crear las claves que se utilizarán para cifrar la conexión,&lt;/li&gt;
&lt;li&gt;configurar &lt;code&gt;mod_ssl&lt;/code&gt;, el módulo de Apache para usar conexiones&lt;/li&gt;
&lt;/ul&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;seguras,
&lt;/code&gt;&lt;/pre&gt;&lt;ul&gt;
&lt;li&gt;y permitir la conexión por el puerto 443.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="crear-las-claves-de-cifrado"&gt;Crear las claves de cifrado&lt;/h2&gt;
&lt;p&gt;Vamos a generar un par de claves RSA triple DES de 2048 bits en el
directorio &lt;code&gt;/etc/ssl&lt;/code&gt;:&lt;/p&gt;</description></item><item><title>Cifrar el contenido de Dropbox</title><link>http://karpoke.ignaciocano.com/2011/04/21/cifrar-el-contenido-de-dropbox/</link><pubDate>Thu, 21 Apr 2011 13:37:00 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2011/04/21/cifrar-el-contenido-de-dropbox/</guid><description>&lt;p&gt;A raíz del cambio en los términos del servicio de Dropbox, en el cual se
afirma que le &lt;a href="http://www.businessinsider.com/dropbox-updates-security-terms-of-service-to-say-it-can-decrpyt-files-if-the-government-asks-it-to-2011-4?op=1"&gt;entregará tus ficheros al gobierno de Estados Unidos&lt;/a&gt;,
si éste se lo pide, o la noticia de que es posible &lt;a href="http://www.hispasec.com/unaaldia/4558"&gt;saltarse las
restricciones&lt;/a&gt;, 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.&lt;/p&gt;
&lt;p&gt;Utilizaremos &lt;code&gt;ecryptfs&lt;/code&gt; para cifrar un directorio, y todo su contenido,
dentro del directorio de &lt;a href="http://karpoke.ignaciocano.com/2011/03/30/multiples-cuentas-de-dropbox-en-ubuntu-maverick-meerkat/"&gt;una de nuestras cuentas de Dropbox&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Sa Nostra y SSL</title><link>http://karpoke.ignaciocano.com/2010/10/25/sa-nostra-y-ssl/</link><pubDate>Mon, 25 Oct 2010 11:50:00 +0100</pubDate><guid>http://karpoke.ignaciocano.com/2010/10/25/sa-nostra-y-ssl/</guid><description>&lt;p&gt;Leyendo la comparativa de &lt;a href="http://www.securitybydefault.com/2010/10/bancos-y-ssl-quien-aprueba.html"&gt;SbD&lt;/a&gt; sobre el uso de SSL por parte de los
bancos online, estos son los resultados de Sa Nostra:&lt;/p&gt;
&lt;p&gt;URL: &lt;a href="https://linea.sanostra.es"&gt;https://linea.sanostra.es&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="verificación-sslv2"&gt;Verificación SSLv2&lt;/h2&gt;
&lt;p&gt;Comando:&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;$ openssl s_client -ssl2 -connect linea.sanostra.es:443
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Bien: no da soporte&lt;/p&gt;
&lt;h2 id="tipo-de-certificado-normalev"&gt;Tipo de certificado (Normal/EV)&lt;/h2&gt;
&lt;p&gt;Esto lo podemos comprobar a través del navegador.
Mal: Tiene un certificado SSL sin Validación Extendida.&lt;/p&gt;
&lt;h2 id="longitud-de-la-clave-rsa-del-certificado"&gt;Longitud de la clave RSA del certificado&lt;/h2&gt;
&lt;p&gt;Comando:&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;$ openssl s_client -connect linea.sanostra.es:443
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Mal: La clave es de 1024 bits.&lt;/p&gt;</description></item></channel></rss>