Hashrat - a command-line brute force tool


Hashrat is a command-line utility that hashes things using md5, sha1/256/512, whirlpool and jh hash algorithms. It's written in C with few dependancies (basically just the standard C library). It can read input from standard in and hash it, either as a complete file, or line-by-line. It can recursively hash files on disk, either outputing hashes to stdout, or storing them in filesystem attributes, or in a memcached server. It can check files against a list of hashes supplied on stdin, or in the filesystem attributes of the files, or in a memcached server. It can find files that match a list supplied either on stdin, or uploaded to a memcached server. It has a 'cgi' mode that presents a web interface for hashing lines of text. It can pull files over ssh or http, to allow remote hashing/checking from another machine.
USAGE:
    hashrat [options] [paths]...


  Hash things:            hashrat [options] [paths to hash]
  Check hashes:           hashrat -c [options] [paths to hash]
  Find files matching:    hashrat -m [options] [paths to hash]
  Find duplicate files:  hashrat -dups [options] [paths to hash]



Options:
  --help          Print this help
  -help           Print this help
  -?              Print this help
  --version       Print program version
  -version        Print program version
 -type     Use hash algorithmn . Types can be chained together as a comma-seperated list.
  -md5            Use md5 hash algorithmn
  -sha1           Use sha1 hash algorithmn
  -sha256         Use sha256 hash algorithmn
  -sha512         Use sha512 hash algorithmn
  -whirl          Use whirlpool hash algorithmn
  -whirlpool      Use whirlpool hash algorithmn
  -jh224          Use jh-224 hash algorithmn
  -jh256          Use jh-256 hash algorithmn
  -jh384          Use jh-384 hash algorithmn
  -jh512          Use jh-512 hash algorithmn
  -hmac           HMAC using specified hash algorithm
  -8              Encode with octal instead of hex
  -10             Encode with decimal instead of hex
  -H              Encode with UPPERCASE hexadecimal
  -HEX            Encode with UPPERCASE hexadecimal
  -64             Encode with base64 instead of hex
  -base64         Encode with base64 instead of hex
  -i64            Encode with base64 with rearranged characters
  -p64            Encode with base64 with a-z,A-Z and _-, for best compatibility with 'allowed characters' in websites.
  -x64            Encode with XXencode style base64.
  -u64            Encode with UUencode style base64.
  -g64            Encode with GEDCOM style base64.
  -a85            Encode with ASCII85.
  -z85            Encode with ZEROMQ variant of ASCII85.
  -t              Output hashes in traditional md5sum, shaXsum format
  -trad           Output hashes in traditional md5sum, shaXsum format
  -bsd            Output hashes in bsdsum format
  -tag            Output hashes in bsdsum format
  --tag           Output hashes in bsdsum format
  -r              Recurse into directories when hashing files
  -f    Hash files listed in 
  -i     Only hash items matching 
  -x     Exclude items matching 
  -n      Truncate hashes to  bytes
  -c              CHECK hashes against list from file (or stdin)
  -cf             CHECK hashes but only show failures
  -C              CHECK files against list from file (or stdin) can spot new files
  -Cf             CHECK files but only show failures
  -m              MATCH files from a list read from stdin.
  -lm             Read hashes from stdin, upload them to a memcached server (requires the -memcached option).
  -X              In CHECK or MATCH mode only examine executable files.
  -exec           In CHECK or MATCH mode only examine executable files.
  -dups           Search for duplicate files.
  -memcached  Specify memcached server. (Overrides reading list from stdin if used with -m, -c or -cf).
  -mcd    Specify memcached server. (Overrides reading list from stdin if used with -m, -c or -cf).
  -h 
Hookscripts
hookscripts are passed the path of the appropriate file as an argument. In ‘find duplicates’ mode a second argument is passed, which is the duplicate file.
Hashrat can also detect if it's being run under any of the following names (e.g., via symlinks)
md5sum          run with '-trad -md5'
shasum          run with '-trad -sha1'
sha1sum         run with '-trad -sha1'
sha256sum       run with '-trad -sha256'
sha512sum       run with '-trad -sha512'
jh224sum        run with '-trad -jh224'
jh256sum        run with '-trad -jh256'
jh384sum        run with '-trad -jh384'
jh512sum        run with '-trad -jh512'
whirlpoolsum    run with '-trad -whirl'
hashrat.cgi     run in web-enabled 'cgi mode'

No comments

Note: Only a member of this blog may post a comment.

Powered by Blogger.