Nueva herramienta: PinPatrol para Chrome, algo más que un plugin, una herramienta forense

miércoles, 2 de noviembre de 2016


En julio, creamos una nueva herramienta para mejorar la experiencia de uso con HPKP y HSTS en Firefox. Ahora es el momento de Chrome. PinPatrol para Chrome muestra esta información de forma mucho más sencilla de entender. Es muy fácil de usar y proporciona información muy útil acerca de los datos de HSTS y HPKP en tu navegador... o en cualquier otro. Al llevarlo a Chrome, se ha convertido no solo en una simple extensión de Chrome, sino en una pequeña herramienta de forense para interpretar los datos HPKP y HSTS de cualquier usuario de Chrome.

Como Firefox, Chrome almacena la información HPKP y HSTS en texto claro. Pero sus estrategias son muy diferentes. Las principales diferencias son:
  • Chrome almacena la información en un fichero Json.
  • En vez de almacenar el dominio en texto claro, calcula un hash con un formato estándar, para ofrecer cierta "privacidad" a los usuarios.
  • Utiliza report_uri para el protocolo HPKP (Firefox todavía no lo soporta).

La forma en la que se calcula el hash de los dominios está documentada. Este es un ejemplo. Así es como almacena Chrome la información en bruto:



Chrome dispone de una funcionalidad integrada de gestión de HSTS y pines (chrome://net-internals/#hsts) pero definitivamente no es la mejor manera de vigilar los dominios visitados.

Existe otra diferencia importante en la manera en la que trabaja Chrome. No permite que las extensiones abran ficheros en el perfil del usuario, así que para analizar el fichero donde se almacena la información (%localappdata%\Google\Chrome\User Data\Default\TransportSecurity en el caso de Windows) es necesario que se arrastre a la zona de análisis. Esto se convierte en una ventaja para utilizar la extensión como herramienta forense y poder arrastrar ahí cualquier fichero en bruto y será interpretado.


Otra funcionalidad interesante que hemos añadido es la posibilidad de "deshashear" los dominios. Si un dominio se encuentra en el repositorio de HSTS y HPKP, significa que se ha visitado. Así que debería estar en el historial del navegador. Lo que la herramienta hace es tomar los dominios del histórico visitados y calcular su hash. Si ese hash coincide con alguno de los hashes en la lista de HSTS y HPKP, se "traduce" para que quede "des-hasheado".



PinPatrol toma los dominios del historial, calcula su hash y los compara contra los hashes de los dominios en HSTS y HPKP

Pero, ¿por qué tantos dominios se quedan sin "des-hashear"? Algunas razones:

  • El historial ha sido borrado y los dominios ya no están allí, pero sí en el repositorio  HSTS/HPKP.
  • Algunas visitas a algunos dominios con HSTS y HPKP se pueden realizar en bambalinas de una web como parte de sus APIs, sistema de anuncios y no quedar almacenadas en el historial.
Aquí un pequeño ejemplo de cómo utilizarlo.




La herramienta está disponible desde el Store de extensiones oficial de Chrome, en esta dirección: https://chrome.google.com/webstore/detail/pinpatrol/jenmooahjheolakpacikdlloalfaihef/

Esperamos que os sea útil.

1 comentario:

  1. Mediante esta herramienta podemos visualizar las contraseñas usas en dichos dominios?

    ResponderEliminar