Skip to content

v0.1.4

Latest
Compare
Choose a tag to compare
@dorian-bucaille dorian-bucaille released this 01 May 22:16
· 32 commits to main since this release

GPUCrack 0.1.4

Features

  • NTLM rainbow table generation on GPU, with adjustable number of endpoints (mt) and characters used
  • Online attack on CPU
  • Tables are generated as non-compressed files (one file for start points, one file for endpoints)

Changelog

  • v0.1.4 (01/05/2022) -- Fixed a critical bug which made tables less efficient than they should. Multiple tables can now be generated. Revised and improved argument handling for the online phase. Added an installer (bash script) to facilitate the program setup.
  • v0.1.3 (05/03/2022) -- Added table filtration. Drastically improved file writing speed. User can now specify the cracked passwords' character length when generating tables. Changed function calls. Improved prints and debugs.
  • v0.1.2 (28/02/2022) -- Added coverage test on online phase. Improved online phase speed. Changed number of characters to 5 for offline phase in order to test the program on virtually any machine.
  • v0.1.1 (21/02/2022) -- Fixed memory leak and stack smashing issue in online phase
  • v0.1.0 (20/02/2022) -- Initial release

How to build

  1. Download GPUCrack_X.X.X.zip and extract it.

  2. Open a terminal in GPUCrack_X.X.X, and run: ./install.sh. Follow along with the installer.
    If it prompts you with this error:

How to use

To generate a table (offline attack), execute this command:
./generateTable c n mt <path>, where:

  • c is the passwords' length (in characters)
  • n is the number of tables to generate
  • mt is the number of end points to be generated
  • (optional) path is the path to the start and end points files to create.

This will create n separate files at the specified path. Each of these files contains filtered start and end points.

For example: ./generateTable 4 4 12 full4

To crack a password (online attack), you can use the files you just generated.

Usage:
./online -t <path> [-p <password>] [-h <hash>] [-c <nbCoverage>] [-m <hashFile>] [-d], where:
-t is the path to the table (without '_start_N.bin')
-p : plain text cracking. is the plain-text password you're looking to crack.
-h : single hash cracking. is the hash you're looking to crack.
-c : coverage test. is the number of passwords you want to crack to test the table's coverage.
-m : multiple hashes. is the text file containing all the hashes you're looking to crack.
-d : debug mode. Prints false alerts and more details about the cracking process.

For example: ./online -t full4 -p test to try to crack the password test with the tables you just generated
or ./online -t table4 -m hashes4.txt if you want to crack a bunch of passwords using the provided table