after-the-sunrise / brutus

Brute-force password cracker. 'You forgot your password too?'

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

brutus

Build Status Coverage Status

Overview

'Brutus, so you forgot your password too?'

Brutus is a brute-force attack password cracker tool, which simply generates a sequence of words following the predefined character combination, and attempts to decrypt the file with each password until the correct one is found.

Needless to say, brute-force is NOT one of the most efficient algorithm out there, so keep in mind that this tool is limited to be functional with simple passwords.

Feature

Brutus currently supports the following file formats:

  • *.zip
  • *.pdf
  • *.txt

Note that *.txt is to be used for testing purpose, which tries to match the clear-text value written in the text file. This is intended to be used for measuring the speed of password generation.

Complexity of the password can be optionally specified, such as min/max number of characters and types of characters (lower-case, upper-case, numbers, etc).

Execution parameters can also be specified, which includes the number of concurrent threads to use, and time-out in case if the password is not found within the specified time interval.

See the Configuration section of this documentation for the list of configurable parameters.

Usage

Prerequisites

  • JDK 1.8 or later
  • Maven 3 or later
  • Internet connection for downloading dependencies.

Preparation

Download the sources, and build the project to sanity check the environment. Make sure that the build and test passes.

git clone "https://github.com/after-the-sunrise/brutus.git" "brutus"

cd brutus && mvn clean test

Execution

Execute the application with Exec Maven Plugin, specifying the file to decrypt. The file name's extension (cf: .txt, .zip) is used to automatically determine and switch the decryption logic.

mvn exec:java -Dexec.args="-in /path/to/the/file.zip"

To configure the maximum length of password to attempt, specify the -max parameter.

mvn exec:java -Dexec.args="-in /path/to/the/file.zip -max 8"

Configuration

For the list of configurable parameters, refer to the '--help' option.

mvn exec:java -Dexec.args="--help"

About

Brute-force password cracker. 'You forgot your password too?'

License:GNU Affero General Public License v3.0


Languages

Language:Java 100.0%