domingo, 31 de julio de 2022

Cuadernos de campo: ¿Qué es un archivo con extensión PFX?

 

¿Qué es un archivo con extensión PFX?

 

Un archivo con la extensión PFX es un certificado en formato PKCS#12.

En dicho certificado se encuentra guardado el certificado, el certificado intermedio de la autoridad necesario para una credibilidad del certificado y la clave privada para el certificado. Es decir, puedes imaginarte dicho certificado como un archivo con clave de acceso en el que está guardado todo lo que necesita para instalar el certificado o como una copia de seguridad de un certificado con clave privada de acceso (exportado desde Internet Explorer).

Importante, el archivo PFX está siempre protegido con una contraseña

NOTA:   ¿Cuándo se necesita crear un archivo PFX?

                Sobre todo de las siguientes situaciones:

  

·       Cuando instalamos el certificado en Windows Server (IIS) pero CSR request no fue creado en ISS.

·       Cuando se necesita el certificado para Windows Server pero no disponemos de IIS para generar CSR.

·     Cuando hemos creado CSR y guardado la clave privada, y necesitamos instalar el certificado en Windows Server.

·       Cuando tenemos el certificado Code Signing y necesitamos PFX para firmar.

 

 

¿Es posible averiguar la contraseña del certificado PFX?

 

Si, para ello podemos entre varias cosas realizar un ataque de diccionario con la herramienta: John The Ripper.

Para esto lo primero es preparar el archivo .PFX para que John lo entienda

Y ahora, dejamos que John haga su trabajo

Ahora que ya tenemos la contraseña del certificado, podemos extraer su contenido, para lo cual podemos seguir las indicaciones dadas en el siguiente enlace:

 https[:]//www.ibm.com/docs/en/arl/9.7?topic=certification-extracting-certificate-keys-from-pfx-file

Es decir:

1.- Extraemos la clave privada del certificado contenido en el archivo PFX (sin crackear)

 

NOTA: incluimos la opción: -nodes, la cual indica que no sé solicitará contraseñas de protección


Ahora, para poder manejar la clave privada en conjunción con el certificado, debemos quitarle la información inútil a la clave del mismo, es decir, debemos quitar los atributos que se muestran a continuación remarcados en rojo:

 


Para ello podemos eliminar dicha información del archivo o ejecutar el siguiente comando:

 

 
Con lo que ya nos habremos quitado la información inútil y podremos utilizar dicha clave sin necesidad de crackearla

2.- Extraemos el certificado contenido en el archivo PFX

A partir de aquí ya podremos utilizar el certificado y la clave del mismo, sin haberla crackeado,  para lo que se pueda, como por ejemplo: intentar conectarnos al servicio SSH con el certificado extraído.

 

En cualquier caso

Lo que hagas con la información es cosa tuya, no mía... pero ten conciencia