John the Ripper

From Wikipedia, the free encyclopedia

John the Ripper
o
Jack, John the Ripper's mascot.
Developed by Alexander Peslyak (Solar Designer)
Latest release 1.7.0.2 / March 23, 2006 (2006-03-23); 814 days ago
Preview release 1.7.2 / May 22, 2006 (2006-05-22); 754 days ago
OS Cross-platform
Genre Password cracking
License GNU General Public License
Website http://www.openwall.com/john/

John the Ripper is a free password cracking software tool. Initially developed for the UNIX operating system, it currently runs on fifteen different platforms (11 architecture-specific flavors of Unix, DOS, Win32, BeOS, and OpenVMS). It is one of the most popular password testing/breaking programs as it combines a number of password crackers into one package, autodetects password hash types, and includes a customizable cracker. It can be run against various encrypted password formats including several crypt password hash types most commonly found on various Unix flavors (based on DES, MD5, or Blowfish), Kerberos AFS, and Windows NT/2000/XP/2003 LM hash. Additional modules have extended its ability to include MD4-based password hashes and passwords stored in LDAP, MySQL and others.

Contents

[edit] Sample output

Here is a sample output in a Debian GNU/Linux environment.

root@0[john-1.6.37]# cat pass.txt
user:AZl.zWwxIh15Q
root@0[john-1.6.37]# john -w:password.lst pass.txt
Loaded 1 password hash (Traditional DES [24/32 4K])
example         (user)
guesses: 1  time: 0:00:00:00 100%  c/s: 752  trying: 12345 - pookie

[edit] Attack types

One of the modes John can use is the dictionary attack. It takes text string samples (usually from a file, called a wordlist, containing words found in a dictionary), encrypting it in the same format as the password being examined (including both the encryption algorithm and key), and comparing the output to the encrypted string. It can also perform a variety of alterations to the dictionary words and try these. Many of these alterations are also used in John's single attack mode, which modifies an associated plaintext (such as a username with an encrypted password) and checks the variations against the encrypted hashes.

John also offers a brute force mode. In this type of attack, the program goes through all the possible plaintexts, hashing each one and comparing it to the input hash. John uses character frequency tables to try plaintexts containing more frequently-used characters first. This method is useful for cracking passwords which do not appear in dictionary wordlists, but it does take a long time (for all practical purposes, forever) to run.

[edit] See also

[edit] External links