Nueva herramienta: PinPatrol, un add-on para Firefox

lunes, 25 de julio de 2016

Hemos creado una nueva herramienta para mejorar la experiencia de uso con HSTS y HPKP en Firefox. Es un add-on de Firefox que muestra esta información en formato "legible" por un humano. Es sencillo de usar y proporciona información útil sobre los datos relativos a HSTS y HPKP que almacena el navegador.


HSTS y HPKP

HTTP Strict Transport Security protocol (HSTS) puede convertir las peticiones HTTP en HTTPS desde el propio servidor. Si un servidor decide enviar una cabecera HSTS al navegador, cada visita posterior a ese domino idesde el navegador será automáticamente y de forma transparente, convertida a HTTPS desde el navegador, evitando peticiones no seguras desde el mismo comienzo de la conexión. La aplicación de HSTS es transparente el usuario, es el navegador el responsable de redirigir y recordar por cuánto tiempo los dominios deben ser visitados por HTTPS. El dominio transfiere la información HSTS a través de la cabecera "Strict-Transport-Security header".

La idea detrás del "certificate pinning" es ser capaz de detectar cuándo se ha modificado una cadena de confianza. Para conseguirlo, un certificado presente en una cadena de certificación necesita ser asociado (normalmente en el navegador) inequívocamente a un dominio específico. Por tanto un dominio A, www.elevenpaths.com, estará enlazado a un certificado o autoridad de certificación B. Si por cualquier razón una CA B’ diferente (que depende a su vez de una autoridad de certificación) intenta emitir un certificado asociado con el dominio A, se lanza una alarma. En general, cualquier modificación de la cadena de certificación es susceptible de tratarse de una alteración. Para eso sirve el HPKP (HTTP Public Key Pins).

La herramienta

Firefox soporta HSTS desde la version 4, y HPKP desde la 32. Presentamos una extensión de Firefox que muestra en formato legible el estado de HSTS (HTTP Strict Transport Security) y HPKP (HTTP Public Key Pins) de los dominios almacenados por el navegador. Firefox no dispone de una forma de verlo de forma nativa y tampoco documenta en exceso esta información.

Un ejemplo de lo que puede mostrar el complemento

Funcionalidad

La información proporcionada en la tabla es la almacenada por el navegador y “traducida” a un formato más legible por un humano.

  • Domain: Dominio protegido bajo HSTS o HPKP.
  • Score: Se trata de un valor interno de Firefox. Incrementa en uno cada día diferente (siempre que hayan pasado 24 horas) que se visita un dominio.
  • Date: El ultimo día que fue visitado un dominio. Se calcula por Firefox utilizando el número de días que han pasado desde el 01/01/70.
  • Expiration Date: Se trata del max-age de HSTS o HPKP, en otras palabras, cuándo caducará la entrada.
  • SecurityPrpierty: Es un valor interno de Firefox. SecurityPropertyUnset si 0, SecurityPropertySet si 1 o SecurityPropertyKnockout si vale 2.
  • IncludeSubdomains: Indica si HSTS o HPKP incluye la directiva de subdominios y todos quedan protegidos.
  • HPKP Pins: Lista de pines en la cabecera HPKP.

PinPatrol está disponible desde la página oficial de Mozilla. Esperamos que os sea de utilidad.

No hay comentarios:

Publicar un comentario