Introducción

Introducción

Para aquellos de ustedes que aún no han oído hablar de John the Ripper (por la presente llamado John para Brevity), es una herramienta de agrietamiento de contraseña gratuita escrita principalmente en C. Antes de continuar, debemos decirle que aunque confiamos en nuestros lectores, no alentamos ni toleraremos ninguna actividad maliciosa que se pueda realizar utilizando esta herramienta o cualquier otra herramienta de la que hablemos en el pasado. Las herramientas relacionadas con la seguridad a menudo son como una espada de doble filo, ya que pueden usarse para bien, pero también para cosas malas. Entonces, aunque puede sonar tentador, le recomendamos que se abstenga de cualquier actividad dañina, si no es por nada más, solo porque tiene buenas oportunidades de aterrizar en una celda de la cárcel. Este artículo tratará con John desde la perspectiva de un administrador del sistema, por lo que esperamos que tenga un conocimiento intermedio sobre su sistema Linux, cualquier distribución que pueda ser y que sea una persona consciente de la seguridad con conocimiento de seguridad básico. Sin embargo, este artículo podría atraerle también si es un usuario local que quiere aprender sobre este tipo de cosas, pero tenga en cuenta: algunos de los comandos presentados a continuación le pedirán una gran cantidad de tiempo de su CPU, por lo que tal vez sea mejor Si tenía una máquina de prueba y/o mucho tiempo y paciencia, porque los intentos de agrietamiento de contraseña pueden llevar días, incluso en una máquina relativamente nueva. Como de costumbre, consulte nuestro nuevo foro de Linux para obtener ayuda o información adicional.

Instalación de John

Aunque, al menos en las distribuciones que probamos, el paquete llamado Simply "John" con Gentoo haciendo una excepción y nombrándolo "Johntheripper", lo facilitaremos y le mostraremos cómo instalarlo en varias distribuciones conocidas.

Debian

Debian difiere de otras distribuciones que ofrecen a John en sus repositorios porque ofrece una buena página manual, aunque Upstream no tiene una. Para instalar, simplemente escriba

 # Aptitud Instalar John 


Fedora

En Fedora, también es tan simple como hacer

 # yum install John 

Arch Linux

 # Pacman -S John 

OpenSuse Linux

# Zypper install John 

GENTOO

Como dijimos, el paquete de Gentoo se nombra de manera diferente a lo que otros ofrecen, así que aquí tendrá que ejecutar

 # emerge Johntheripper

Flogware

Aunque no parece haber un paquete de John en los repositorios oficiales, hay un SlackBuild que pone a John instalado en su sistema (esto se probó en Slackware 13.37).

Aunque le dimos solo algunos ejemplos sobre cómo puede obtener a John en su sistema Linux, muchos de los ejemplos presentados se ejecutarán si tiene otro sistema operativo instalado: además del código fuente, el proyecto ofrece el programa para Beos, Microsoft Windows, Solaris o Mac OS X. Pero para nuestro artículo, como dice el título, probamos los ejemplos en Linux.

Usando a John the Ripper

No debe preocuparse por los archivos de configuración críptica, ya que John está listo para usar con los indicadores de línea de comandos apropiados sin otro esfuerzo en su parte. Sin embargo, una advertencia: como ya notó, les decimos a nuestros lectores cuándo deben usar privilegios raíz y cuándo no deberían. Excepto cuando se indica, se le recomienda utilizar su usuario cotidiano normal (u otro, si lo prefiere, pero no debería tener súper derechos de usuario). En mi sistema Debian, John está disponible como/usr/sbin/John, por lo que si no lo encuentra, le recomendamos que use dónde es y escriba el camino completo al ejecutar John sin privilegios (o simplemente puede crear un alias).



La forma más sencilla de mojar los pies es escribir

 $/usr/sbin/John -pest 

por hacer algunas pruebas y puntos de referencia sobre las capacidades de John. Si no tiene idea de qué son Kerberos, MD5, Des o Blowfish, le recomendamos que comience a leer algunos libros de seguridad básicos, porque, como dijimos antes, necesita algunos antecedentes de seguridad/administración. Ahora, creemos un archivo de texto en formato de contraseña (:) con un hash válido, por supuesto, y haga que John funcione. Simplemente puede copiar a un usuario de /etc /shadow, pero recomendamos algo más simple, porque suponemos que desea ver los resultados lo más rápido que pueda. Así que crea un archivo llamado contraseña.txt en algún lugar dentro de tu /casa y pon esto en él:

myuser: azl.zwwxih15q

Guarde el archivo, luego simplemente aliméntelo a John sin argumentos (por ahora):

 $/usr/sbin/John contraseña.TXT 

Debemos repetir nuestra advertencia: el agrietamiento de la contraseña es un proceso intensivo y largo de la CPU, por lo que dependiendo de su sistema, eso podría llevar bastante tiempo. Sin embargo, esto también depende de lo que desee lograr, porque si su poderosa CPU ha estado crujiendo en la (s) contraseña (s) durante días sin resultado, es seguro decir que es una buena contraseña. Pero si la contraseña es realmente crítica, deje el sistema hasta que John termine su trabajo para asegurarse de que todo esté bien. Como dijimos antes, esto podría llevar muchos días.

Ahora, si tiene un cuadro poderoso con el único propósito de probar contraseñas, que siempre es algo bueno dado los medios, puede probar sus contraseñas de la vida real con John. Una forma es usar /etc /sombra directamente, pero le recomendamos que tome un curso algo diferente. Tenga en cuenta que esto se aplica a los sistemas utilizando contraseñas de sombra, y todas las distribuciones modernas de Linux. John ofrece una ingeniosa utilidad llamada Unshadow, que usaremos para crear un archivo a partir de nuestros archivos passwd y sombra:

 # unshadow /etc /passwd /etc /shadow> mypasswd.TXT 

Ahora asegúrate de que mypasswd.TXT está disponible para su usuario normal y hacer

 $/usr/sbin/John mypasswd.TXT 

John intentará primero el modo de grieta única, luego el modo de lista de palabras, luego incremental. En términos de John, un modo es un método que utiliza para descifrar las contraseñas. Como saben, hay muchos tipos de ataques: ataques de diccionario, ataques de fuerza bruta, etc. Bueno, esto es más o menos cuáles son los modos de John. Como algunos de ustedes podrían haberse dado cuenta, el modo de lista de palabras es básicamente un ataque de diccionario. Además de estos tres modos enumerados anteriormente, John también admite otro llamado modo externo. Puede seleccionar qué modo usar, por ejemplo, -single, -external, etc. Le recomendamos que consulte la documentación en OpenWall.com para una buena pero breve descripción de cada modo. Pero, por supuesto, te diremos, en resumen, lo que hace cada modo.

La documentación de John the Ripper recomienda comenzar con el modo de crack único, principalmente porque es más rápido e incluso más rápido si usa múltiples archivos de contraseña a la vez. El modo incremental es el modo más potente disponible, ya que intentará varias combinaciones al agrietarse, y puede elegir qué tipo de modo (modo aplicado a la opción incremental), incluido el suyo. El modo externo, como lo indica el nombre, utilizará funciones personalizadas que usted mismo escribe, mientras que el modo de lista de palabras toma una lista de palabras especificada como un argumento a la opción (puede ser un archivo con una lista de palabras escritas una por línea, o stdin) e intenta un simple ataque de diccionario en contraseñas.

Si John tiene éxito al descifrar una de las contraseñas, escribirá a ~/.John/John.maceta. Sin embargo, ese archivo no es legible por humanos, por lo que puede leer contraseñas agrietadas con

 $/usr/sbin/John --show mypasswd.TXT

Para verificar si la contraseña de root se rompió, filtre por UID:

 $/usr/sbin/John --show --users = 0 mypasswd.TXT

Por supuesto, John sabe sobre comodines y múltiples archivos:

 $/usr/sbin/John --show --users = 0 *passwd *


Del mismo modo que puede filtrar por el usuario, también puede filtrar por grupo, utilizando el indicador -grups, y ese filtrado también está disponible al agrietarse. Ir más al modo de lista de palabras, así es como puede usarlo con las reglas de desglose incorporadas habilitadas:

 $/usr/sbin/John - -WordList = passwd.LST -Rules passwd.TXT

John también le permite crear múltiples sesiones con nombre, lo cual es práctico, porque dado que John puede tomar mucho tiempo para completar una tarea, más tarde puede ver todas las sesiones que se ejecutan para decidir cuál matar. La opción para sesiones nombradas es -session = taskname y puede usar -status o -status = taskname para ver todas o ciertas sesiones. Pero hay más: puede restaurar sesiones o particulares por nombre usando -restore o -restore = taskname. Algunos ejemplos:

 $/usr/sbin/John --session = allRules --wordList = All.LST -reglas mypasswd.txt $/usr/sbin/John - -status = allRules $ ps aux | Grep John #get The Pid of the John Session Usted desea matar $ Kill Hup $ PID_OF_JOHN_SESSION_TO_KILL $/USR/SBIN/John - -Restore = AllRules 

Aquí hay algunos ejemplos de uso de modo incremental con John:

 $/usr/sbin/John - -Incremental mypasswd.txt $/usr/sbin/John --incremental = alfa mypasswd.TXT 

Por supuesto, esto no es un reemplazo de la documentación de John. Aunque, como dijimos, no ofrece una página manual, encontrará mucha documentación en su página ', así como un wiki útil. Por ejemplo, notará que incluso si está ejecutando John en una máquina multiprocesador, usará solo un núcleo, generalmente el primero. Puede abordar este problema leyendo la documentación y siguiendo las instrucciones allí.

Conclusión

Sentimos que podría ser mejor que terminemos este artículo con una pequeña palabra sobre ética. Aunque muy bien podría no ser su caso, hay aquellos pocos que han visto piratas informáticos demasiadas veces y piensan en agrietarse (en lugar de piratear) como una actividad genial. Solo le sugerimos que intente usar su conocimiento para siempre, no para algo que tenga 99.8% de fallar y obtener un buen historial criminal. Divertirse.

Tutoriales de Linux relacionados:

  • Cómo descifrar la contraseña con cremallera en Kali Linux
  • Lista de las mejores herramientas de Kali Linux para pruebas de penetración y ..
  • Cosas para instalar en Ubuntu 20.04
  • Cosas que hacer después de instalar Ubuntu 20.04 fossa focal Linux
  • Cosas que hacer después de instalar Ubuntu 22.04 Jellyfish de Jammy ..
  • Cosas para instalar en Ubuntu 22.04
  • Ubuntu 20.04 Guía
  • Sistema colgado de Linux? Cómo escapar a la línea de comando y ..
  • Una introducción a la automatización, herramientas y técnicas de Linux
  • Mint 20: Mejor que Ubuntu y Microsoft Windows?