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'
Post a Comment