Top Related Projects
John the Ripper jumbo - advanced offline password cracker, which supports hundreds of hash and cipher types, and runs on many operating systems, CPUs, GPUs, and even some FPGAs
John the Ripper jumbo - advanced offline password cracker, which supports hundreds of hash and cipher types, and runs on many operating systems, CPUs, GPUs, and even some FPGAs
A tool for automating cracking methodologies through Hashcat from the TrustedSec team.
Hashtopolis - distributed password cracking with Hashcat
Common User Passwords Profiler (CUPP)
CeWL is a Custom Word List Generator
Quick Overview
Hashcat-utils is a collection of small utilities designed to work alongside the popular password cracking tool Hashcat. These utilities assist in various tasks related to password analysis, hash manipulation, and data preparation for password cracking operations. The project aims to enhance the functionality and efficiency of Hashcat by providing complementary tools.
Pros
- Enhances Hashcat's capabilities with specialized utilities
- Simplifies common tasks in password cracking workflows
- Lightweight and easy to use
- Actively maintained and updated
Cons
- Limited documentation for some utilities
- Requires command-line proficiency
- Some tools may have platform-specific dependencies
- Not all utilities are equally well-developed or maintained
Code Examples
As hashcat-utils is a collection of command-line utilities rather than a code library, there are no code examples in the traditional sense. Instead, here are a few example command-line usages:
# Example 1: Using combinator3 to generate word combinations
./combinator3 wordlist1.txt wordlist2.txt wordlist3.txt > combined_wordlist.txt
# Example 2: Using len to filter words by length
./len 8 16 < input_wordlist.txt > filtered_wordlist.txt
# Example 3: Using rli to remove lines from a file
./rli remove_list.txt < input_file.txt > output_file.txt
Getting Started
To get started with hashcat-utils:
-
Clone the repository:
git clone https://github.com/hashcat/hashcat-utils.git
-
Navigate to the project directory:
cd hashcat-utils/src
-
Compile the utilities:
make
-
The compiled utilities will be available in the
src
directory. You can now use them directly from the command line.
Note: Some utilities may require additional dependencies or have specific usage instructions. Refer to the project's README or individual utility documentation for more details.
Competitor Comparisons
John the Ripper jumbo - advanced offline password cracker, which supports hundreds of hash and cipher types, and runs on many operating systems, CPUs, GPUs, and even some FPGAs
Pros of John
- More comprehensive suite of password cracking tools and utilities
- Supports a wider range of hash types and encryption algorithms
- Active community and regular updates
Cons of John
- Generally slower performance compared to Hashcat
- More complex setup and configuration process
- Steeper learning curve for beginners
Code Comparison
John:
void john_register_one(struct fmt_main *format)
{
format->private.initialized = 0;
format->next = fmt_list;
fmt_list = format;
}
Hashcat-utils:
int main (int argc, char *argv[])
{
if (argc != 3)
{
fprintf (stderr, "usage: %s infile outfile\n", argv[0]);
return (-1);
}
// ... (code continues)
}
John is a more comprehensive password cracking tool with a wider range of features, while Hashcat-utils focuses on providing specific utilities to complement Hashcat's core functionality. John offers broader support for various hash types and encryption algorithms, making it versatile for different scenarios. However, Hashcat and its utilities generally provide better performance, especially when utilizing GPU acceleration.
The code snippets showcase the different approaches: John's code demonstrates its modular architecture for registering password formats, while Hashcat-utils' code shows a simpler, focused utility structure. This reflects the overall design philosophy of each project, with John being more extensive and Hashcat-utils being more specialized and performance-oriented.
John the Ripper jumbo - advanced offline password cracker, which supports hundreds of hash and cipher types, and runs on many operating systems, CPUs, GPUs, and even some FPGAs
Pros of John
- More comprehensive suite of password cracking tools and utilities
- Supports a wider range of hash types and encryption algorithms
- Active community and regular updates
Cons of John
- Generally slower performance compared to Hashcat
- More complex setup and configuration process
- Steeper learning curve for beginners
Code Comparison
John:
void john_register_one(struct fmt_main *format)
{
format->private.initialized = 0;
format->next = fmt_list;
fmt_list = format;
}
Hashcat-utils:
int main (int argc, char *argv[])
{
if (argc != 3)
{
fprintf (stderr, "usage: %s infile outfile\n", argv[0]);
return (-1);
}
// ... (code continues)
}
John is a more comprehensive password cracking tool with a wider range of features, while Hashcat-utils focuses on providing specific utilities to complement Hashcat's core functionality. John offers broader support for various hash types and encryption algorithms, making it versatile for different scenarios. However, Hashcat and its utilities generally provide better performance, especially when utilizing GPU acceleration.
The code snippets showcase the different approaches: John's code demonstrates its modular architecture for registering password formats, while Hashcat-utils' code shows a simpler, focused utility structure. This reflects the overall design philosophy of each project, with John being more extensive and Hashcat-utils being more specialized and performance-oriented.
A tool for automating cracking methodologies through Hashcat from the TrustedSec team.
Pros of hate_crack
- Provides a more user-friendly interface for password cracking
- Includes automated wordlist generation and rule application
- Offers session management and resumption capabilities
Cons of hate_crack
- Less versatile than hashcat-utils for general-purpose hash manipulation
- May have a steeper learning curve for users familiar with hashcat's command-line interface
- Potentially slower performance due to additional abstraction layers
Code Comparison
hate_crack:
def hate_crack():
print_banner()
check_dependencies()
menu_options = get_menu_options()
while True:
print_menu(menu_options)
hashcat-utils:
int main(int argc, char *argv[])
{
if (argc != 3)
{
fprintf (stderr, "usage: %s infile outfile\n", argv[0]);
return (-1);
}
hate_crack is a Python-based wrapper around hashcat, providing a more structured approach to password cracking. It offers additional features like automated wordlist generation and session management. However, it may be less flexible for advanced users who prefer direct control over hashcat.
hashcat-utils, on the other hand, is a collection of small utilities written in C, designed for specific hash manipulation tasks. It's more lightweight and can be easily integrated into custom scripts or workflows, but lacks the user-friendly interface and automated features of hate_crack.
Hashtopolis - distributed password cracking with Hashcat
Pros of Hashtopolis
- Provides a distributed cracking system for managing multiple agents
- Offers a web-based interface for easier task management and monitoring
- Supports integration with various cracking tools, not limited to Hashcat
Cons of Hashtopolis
- More complex setup and maintenance compared to simple command-line utilities
- Requires additional infrastructure (database, web server) to run
- May have a steeper learning curve for users familiar with basic command-line tools
Code Comparison
Hashcat-utils (example of a simple utility):
int main(int argc, char *argv[])
{
if (argc != 3)
{
fprintf (stderr, "usage: %s infile outfile\n", argv[0]);
return (-1);
}
// ... (file processing code)
}
Hashtopolis (example of API endpoint):
class TaskAPI extends AbstractAPI {
public function get($task = null) {
if ($task !== null) {
$this->checkTask($task);
$taskSet = new TaskSet();
$task = $taskSet->getTask($task);
return $this->sendResponse($task->getDataDict());
}
// ... (task listing code)
}
}
The code snippets illustrate the difference in complexity and scope between the two projects. Hashcat-utils focuses on simple, single-purpose command-line tools, while Hashtopolis provides a more comprehensive API-driven system for managing distributed cracking tasks.
Common User Passwords Profiler (CUPP)
Pros of CUPP
- Focused on generating custom wordlists based on user input
- Interactive mode for personalized password list creation
- Includes pre-built common password lists
Cons of CUPP
- Limited functionality compared to the broader scope of hashcat-utils
- Less actively maintained (last update over 2 years ago)
- Primarily designed for password list generation, lacking other password cracking utilities
Code Comparison
CUPP (Python):
def interactive():
print_logo()
print("\n[+] Insert the information about the victim to make a dictionary")
print("[+] If you don't know all the info, just hit enter when asked! ;)\n")
# ... (user input collection)
generate_wordlist_from_profile(profile)
hashcat-utils (C):
int main (int argc, char *argv[])
{
// ... (argument parsing)
if (argc < 2)
{
usage_big_print (argv[0]);
return (-1);
}
// ... (main functionality)
}
Summary
CUPP is a specialized tool for creating custom wordlists, offering an interactive mode and pre-built lists. It's user-friendly but has a narrower focus. hashcat-utils provides a broader range of password cracking utilities and is more actively maintained, but may have a steeper learning curve for beginners.
CeWL is a Custom Word List Generator
Pros of CeWL
- Specialized in generating custom wordlists from web content
- Offers more targeted and context-specific wordlist creation
- Includes features like metadata extraction and email address harvesting
Cons of CeWL
- Limited to web-based wordlist generation
- Less versatile compared to the broader utility set of hashcat-utils
- May require additional processing for use with password cracking tools
Code Comparison
CeWL (Ruby):
def parse_page(url, depth)
@depth = depth
@url = url
# ... (parsing logic)
end
hashcat-utils (C):
int main (int argc, char *argv[])
{
// ... (utility-specific logic)
}
CeWL focuses on web scraping and wordlist generation, while hashcat-utils provides a broader set of utilities for password cracking and manipulation. CeWL is written in Ruby, making it more accessible for scripting and integration with web-based tools. hashcat-utils, written in C, offers better performance for low-level operations and is more tightly integrated with the hashcat ecosystem.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
hashcat-utils
Hashcat-utils are a set of small utilities that are useful in advanced password cracking
Brief description
They all are packed into multiple stand-alone binaries.
All of these utils are designed to execute only one specific function.
Since they all work with STDIN and STDOUT you can group them into chains.
Detailed description
See the hashcat wiki page of hashcat-utils: https://hashcat.net/wiki/doku.php?id=hashcat_utils
Compile
Simply run make
Binary distribution
Binaries for Linux, Windows and OSX: https://github.com/hashcat/hashcat-utils/releases
Top Related Projects
John the Ripper jumbo - advanced offline password cracker, which supports hundreds of hash and cipher types, and runs on many operating systems, CPUs, GPUs, and even some FPGAs
John the Ripper jumbo - advanced offline password cracker, which supports hundreds of hash and cipher types, and runs on many operating systems, CPUs, GPUs, and even some FPGAs
A tool for automating cracking methodologies through Hashcat from the TrustedSec team.
Hashtopolis - distributed password cracking with Hashcat
Common User Passwords Profiler (CUPP)
CeWL is a Custom Word List Generator
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot