bruteforce-salted-openssl(1)

NAME

   bruteforce-salted-openssl  -  try  to  find  the  passphrase  for files
   encrypted with OpenSSL

SYNOPSIS

   bruteforce-salted-openssl [options] <filename>

DESCRIPTION

   bruteforce-salted-openssl tries to find the passphrase or password of a
   file that was encrypted with the openssl command. It can be used in two
   ways:

          *  Try all the possible passwords given a charset.

          *  Try all the passwords in a file (dictionary).

   bruteforce-salted-openssl has the following features:

          *  You can specify the number of threads to use when cracking  a
             file.

          *  The  program  should  be  able  to  use  all  the digests and
             symmetric  ciphers  available  with  the  OpenSSL   libraries
             installed on your system.

          *  Sending  a USR1 signal to a running bruteforce-salted-openssl
             process makes it print progress and continue.

          *  There are an exhaustive mode and a dictionary mode.

   In the exhaustive mode the program tries to decrypt the file by  trying
   all  possible  passwords. It is especially useful if you know something
   about the password (i.e. you forgot a part of your password  but  still
   remember  most of it). Finding the password of the file without knowing
   anything about it would take way too much time (unless the password  is
   really  short  and/or  weak).  There  are  some command line options to
   specify:

          *  The minimum password length to try.

          *  The maximum password length to try.

          *  The beginning of the password.

          *  The end of the password.

          *  The character set to use (among the characters of the current
             locale).

   In  dictionary mode the program tries to decrypt the file by trying all
   the passwords contained in a file. The file must have one password  per
   line.

OPTIONS

   -1     Stop the program after finding the first password candidate.

   -a     List the available cipher and digest algorithms.

   -B <file>
          Search  using binary passwords (instead of character passwords).
          Write candidates to <file>.

   -b <string>
          Beginning of the password. The default value is "".

   -c <cipher>
          Cipher for decryption. The default value is aes-256-cbc.

   -d <digest>
          Digest for key and initialization  vector  generation.  Default:
          md5.

   -e <string>
          End of the password. Default: "".

   -f <file>
          Read the passwords from a file instead of generating them.

   -h     Show help and quit.

   -L <n> Limit the maximum number of tested passwords to <n>.

   -l <length>
          Minimum  password  length (beginning and end included). Default:
          1.

   -M <string>
          Consider the decryption as successful when the data starts  with
          <string>.   Without this option, the decryption is considered as
          successful  when  the  data  contains  mostly  printable   ASCII
          characters (at least 90%).

   -m <length>
          Maximum  password  length (beginning and end included). Default:
          8.

   -N     Ignore decryption errors (similar to openssl -nopad).

   -p <n> Print a message every <n> passwords tested.

   -s <string>
          Password     character      set.      Default      value      is
          "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"

   -t <n> Number of threads to use. Default: 1.

   Note:  Sending  a  USR1  signal  to a running bruteforce-salted-openssl
   process makes it print progress info to standard error and continue.

LIMITATIONS

   The program considers  decrypted  data  as  correct  if  it  is  mainly
   composed  of printable ASCII characters (at least 90%). If the file you
   want to decrypt doesn't contain plain text, you will have to either use
   the  -M  option, or modify the 'valid_data' function in the source code
   to match your needs.

   If the file you want to decrypt is big, you should use the -N option on
   a  truncated  version  of  the file (to avoid decrypting the whole file
   with each password).

EXAMPLES

   Try to find the password of an aes256 encrypted file using  4  threads,
   trying only passwords with 5 characters:

       $ bruteforce-salted-openssl -t 4 -l 5 -m 5 -c aes256 encrypted.file

   Try  to  find the password of an aes256 encrypted file using 4 threads,
   trying  only  passwords  with  5  characters  and  print  the  password
   currently tried every 100000 attempts:

       $ bruteforce-salted-openssl -t 4 -l 5 -m 5 -c aes256 -p 100000 encrypted.file

   Try  to  find  the  password  of a des3 encrypted file using 8 threads,
   trying only passwords with 9 to 11 characters, beginning  with  "AbCD",
   ending with "Ef", and containing only letters:

       $ bruteforce-salted-openssl -t 8 -l 9 -m 11 -c des3 -b "AbCD" -e "Ef" -s "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" encrypted.file

   Try  to  find the password of an aes256 encrypted file using 6 threads,
   trying the passwords contained in a dictionary file:

       $ bruteforce-salted-openssl -t 6 -f dictionary.txt -c aes256 encrypted-file

   Show the list of available algorithms:

       $ bruteforce-salted-openssl -a

   If the program finds a candidate password 'pwd', you  can  decrypt  the
   data using the 'openssl' command:

       $ openssl enc -d -aes256 -salt -in encrypted.file -out decrypted.file -k pwd

DONATIONS

   If  you  find  this program useful and want to make a donation, you can
   send coins to one of the following addresses:

   *  Peercoin: PWFNV1Cvq7nQBRyRueuYzwmDNXUGpgNkBC

   *  Bitcoin: 1F1ZfM7XtggHsShK4vwuy9zv98a9wt7nXx

AUTHOR

   bruteforce-salted-openssl was written by  Guillaume  LE  VAILLANT.  For
   contact, use the email <[email protected]> or go to
   https://github.com/glv2/bruteforce-salted-openssl.

   This  manual  page  was   written   by   Joao   Eriberto   Mota   Filho
   <[email protected]>  for  the  Debian  project  (but  may  be used by
   others).



Opportunity


Personal Opportunity - Free software gives you access to billions of dollars of software at no cost. Use this software for your business, personal use or to develop a profitable skill. Access to source code provides access to a level of capabilities/information that companies protect though copyrights. Open source is a core component of the Internet and it is available to you. Leverage the billions of dollars in resources and capabilities to build a career, establish a business or change the world. The potential is endless for those who understand the opportunity.

Business Opportunity - Goldman Sachs, IBM and countless large corporations are leveraging open source to reduce costs, develop products and increase their bottom lines. Learn what these companies know about open source and how open source can give you the advantage.


Free Software


Free Software provides computer programs and capabilities at no cost but more importantly, it provides the freedom to run, edit, contribute to, and share the software. The importance of free software is a matter of access, not price. Software at no cost is a benefit but ownership rights to the software and source code is far more significant.

Free Office Software - The Libre Office suite provides top desktop productivity tools for free. This includes, a word processor, spreadsheet, presentation engine, drawing and flowcharting, database and math applications. Libre Office is available for Linux or Windows.


Free Books


The Free Books Library is a collection of thousands of the most popular public domain books in an online readable format. The collection includes great classical literature and more recent works where the U.S. copyright has expired. These books are yours to read and use without restrictions.

Source Code - Want to change a program or know how it works? Open Source provides the source code for its programs so that anyone can use, modify or learn how to write those programs themselves. Visit the GNU source code repositories to download the source.


Education


Study at Harvard, Stanford or MIT - Open edX provides free online courses from Harvard, MIT, Columbia, UC Berkeley and other top Universities. Hundreds of courses for almost all major subjects and course levels. Open edx also offers some paid courses and selected certifications.

Linux Manual Pages - A man or manual page is a form of software documentation found on Linux/Unix operating systems. Topics covered include computer programs (including library and system calls), formal standards and conventions, and even abstract concepts.