Desbloquear un PDF con pdfcrack, la mejor opción para Linux
Como prometimos hace unos días, hoy os traemos un tutorial con el que podremos desbloquear un PDF bloqueado con contraseña. Lógicamente, lo explicado en este artículo será para recuperar una contraseña que hayamos perdido u olvidado, lo que podría significar la pérdida de datos de un PDF por culpa de nuestra mala memoria. El artículo que escribimos hace unos días era por comodidad, mientras que este es para poder acceder a un archivo al que no podemos acceder.
La herramienta de la que os vamos a hablar hoy se llama pdfcrack. Tenéis que tener en cuenta que este tipo de herramientas no hacen milagros y que, dependiendo de la fortaleza de una contraseña, puede que no la recupere nunca. El sistema usado para descifrar la contraseña es la fuerza bruta y el proceso es largo, no tanto por lo que tenemos que hacer sino por el tiempo que podría tardar en finalizar el trabajo. Os detallamos el proceso a continuación:
Cómo desbloquear un PDF con pdfcrack
Como el proceso será largo, pasamos directamente a explicar los pasos:
- pdfcrack está disponible en la mayoría de los repositorios oficiales de las diferentes distribuciones de Linux. En Ubuntu y derivados se puede instalar con el comando “sudo apt install pdfcrack” sin las comillas.
- Una vez instalado, ejecutaremos la herramienta con el comando:
pdfcrack -f nombre_del_archivo.pdf
NOTA: para los despistados, cuando ponemos el nombre de un archivo nos referimos a la ruta completa. Esto significa que o bien nos metemos en su directorio en el terminal antes de ejecutar el proceso con solo el nombre del archivo o bien lo arrastramos al terminal y en distribuciones como Ubuntu le quitamos las comillas.
El proceso puede ser muy largo, y más teniendo en cuenta que pdfcrack sólo usa un procesador. Eso sí, puede usar el 100% del mismo. Para acelerar el proceso, podemos añadirle caracteres para probar, para lo que usaremos la opción -c. Esto le dará un punto de partida y puede ser útil si siempre usamos un patrón. Por ejemplo, el siguiente comando sería si yo usara contraseñas con la palabra “coche” y números.
pdfcrack -f nombre_del_archivo.pdf -c coche1234
Si, por la razón que sea, queremos parar el proceso podemos hacerlo con Ctrl+C. En el momento lo pulsemos, pdfcrack intentará salvar el estado del proceso, lo que significa que podremos seguirlo más adelante. El archivo del proceso suele guardarse con el nombre “savedstat.sav” en nuestra carpeta personal y para seguirlo usaremos la opción -1. El comando quedaría así:
pdfcrack -f nombre_del_archivo.pdf -1 savedstate.sav
Otra opción que podemos configurarle es el número mínimo de caracteres. Teniendo en cuenta que nos conocemos, podemos saber qué solemos poner en las contraseñas. Yo, por ejemplo, suelo usar los generadores de mis dispositivos o el !bang de DuckDuckGo diseñado para generar contraseñas aleatorias. En el segundo caso, le suelo poner 12. La opción es -n=longitud, donde “longitud” es el número de caracteres. El comando quedaría así:
pdfcrack -f nombre_del_archivo.pdf -n=12
Si en vez de “-n” ponemos “-m”, le estaremos diciendo cuántos caracteres tendrá como máximo. El el siguiente ejemplo le indico que como máximo tiene que tener 20:
pdfcrack -f nombre_del_archivo.pdf -m=20
Combinando opciones de pdfcrack
Como muchas herramientas del terminal, pdfcrack nos permite combinar opciones para facilitar el proceso de desbloquear un pdf. Para ello solo hay que dejar un espacio entre opción y opción. Un ejemplo sería el siguiente:
pdfcrack -f nombre_del_archivo.pdf -m=20 -n=12 -c 100690
Con el comando anterior le habremos dicho que:
- La contraseña tiene un mínimo de 12 caracteres.
- El máximo que debe combinar son 20 caracteres.
- La contraseña tiene en algún punto los caracteres “100690”. No es necesario que estén ordenados.
Como hemos explicado, esto puede valer si solemos usar un sistema para generar nuestras contraseñas. Hasta hace unos años donde fue noticia que habían hackeado a Yahoo!, yo usaba un sistema en el que añadía mi fecha de nacimiento. Si yo hubiera nacido el 10 de junio de 1990 y usara esos números, añadiéndoselos facilitaría mucho el proceso.
Otras opciones disponibles son:
- -w: para abrir un archivo de texto en donde le configuremos varias palabras. Esto es lo que se conoce como un diccionario. Muchas herramientas que usan la fuerza bruta para descifrar contraseñas cuentan con un diccionario u opción para añadírselo.
- -o: para que trabaje con la contraseña de un dueño.
- -p: proporciona la contraseña de un usuario para facilitar a obtener la contraseña de un dueño.
- -s: la permutación está limitada a cambiar la primera palabra por mayúsculas.
- -b: nos mostrará unos benchmarks para ver el rendimiento de pdfcrack durante el proceso.
Todo esto aparece si ejecutamos el comando “pdfcrack” sin añadirle ninguna opción ni archivo. Es lo mismo que en otros programas si añadimos “help”, “?” o algo similar.
Desbloquear un pdf más rápido
El problema de pdfcrack es que solo hace uso de un procesador. ¿Lo bueno? Que podemos lanzar hasta tres procesos con tres núcleos diferentes, todo en la misma ventana del terminal. Para ello, como en otros comandos del terminal, añadiremos la letra “&” entre comandos. Por ejemplo:
pdfcrack -f prueba.pdf & pdfcrack -f prueba.pdf -c ccoeh & pdfcrack -f prueba.pdf -c 100690 -n=5
Con lo anterior, una de las opciones buscará en general, la segunda buscará con las letras “ccoeh” y la tercera con los números “100690”.
En el ejemplo que os traigo, yo he protegido el archivo “prueba.pdf “con la contraseña “coche” (de ahí las letras de arriba). Como veis, lo ha conseguido gracias a la segunda opción que le he indicado. En un caso en el que le ponemos las letras que debe tener, el resultado es instantáneo, no dura ni un segundo en un ordenador no muy potente.
Una vez hemos terminado, si queremos asegurarnos de que pdfcrack deja de ejecutarse, escribiremos el comando:
killall pdfcrack
En el caso de que sea algo muy importante, lo mejor que podemos hacer es lo de guardar las sesiones y continuarlas en otro momento. Esto nos permite apagar el ordenador siempre que queramos, por lo que, sin tiempo límite, no debería haber contraseña que se nos resistiera.
¿Ya sabes cómo desbloquear un PDF con esta potente herramienta?
El artículo Desbloquear un PDF con pdfcrack, la mejor opción para Linux ha sido originalmente publicado en Linux Adictos.