# CrackerJack | Web GUI for Hashcat

**URL:** <https://onehack.st/t/crackerjack-web-gui-for-hashcat/173032>\
**Category:** Tools & Scripts\
**Tags:** tools, programming, cracking\
**Created:** [February 18, 2021, 1:23pm UTC](https://onehack.st/t/crackerjack-web-gui-for-hashcat/173032 "2021-02-18T13:23:33Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![PlayBoy83](https://onehack.st/user_avatar/onehack.st/playboy83/32/164314_2.png) [@PlayBoy83](https://onehack.st/u/PlayBoy83)\
**Post date:** [February 18, 2021, 1:23pm UTC](https://onehack.st/t/crackerjack-web-gui-for-hashcat/173032/1 "2021-02-18T13:23:33Z")

</div>

![image](https://onehack.st/uploads/default/original/3X/7/c/7c0f7f01e71af23b37f523d98b2aa6c34a61830d.png)

Web Interface for Hashcat by [Context Information Security](https://www.contextis.com/en/)

**Demo / Start Cracking in Under 5 Minutes**

**Introduction**

CrackerJack is a Web GUI for [Hashcat](https://hashcat.net/hashcat/) developed in Python.

**Architecture**

This project aims to keep the GUI and Hashcat independent. In a nutshell, here’s how it works:

- User uploads hashes, selects wordlist/rules/mask etc, and clicks “start”.
- Web server spawns a new [screen](https://www.gnu.org/software/screen/).
  - Generates the hashcat command based on the settings.
  - Runs the command in the screen.
  - Monitors the screen’s output, parses it, and displays in the GUI.

This allows CrackerJack to be future-proof as it ties to the input/output of Hashcat. Also, if the GUI is not working for whatever reason, hashcat will keep running.

**Features**

- Minimal dependencies
  - Uses [sqlite3](https://www.sqlite.org/index.html), [screen](https://www.gnu.org/software/screen/), and hashcat.

- Complete hashcat session management.
  - Start/stop/pause/restore running sessions.
  - Terminate cracking jobs after a specific date/time.

- Web interface for mask generation (?a?l?u).
- Web Push notifications when a password is cracked.
- Swagger 2.0 API.
- Create wordlists from already cracked passwords and feed back into the cracking session.
- Session history to track which attacks you have already performed.
- Multi-user support (local and/or LDAP).
- Wordlist/Mask/Rule support.
- Multiple theme support ([Bootswatch](https://bootswatch.com/)).
- Straight-forward setup.
  - Entire configuration is via the GUI. No need for manually editing config files.
  - Run locally on Linux and Windows (WSL).
  - Install on a server using ansible scripts (Ubuntu 14/16/18 and CentOS 7/8).
  - Easy backups – all user data are in the `./data` directory.

- Troubleshoot sessions via SSH.

**Limitations**

- Not a solution for queueing jobs – it’s only for on-demand password cracking.
- Not meant to be a replacement for command-line usage. It’s complimentary and only supports basic and most common cracking tasks.
- Will not install any GPU drivers. The main assumption is that you have a cracking rig already setup and are looking for a Web GUI.
- Wordlists and rules should already be present on the system.

**Contribution**

As we maintain an internal tracker as well, before contributing please create an issue to discuss before implementing any features/changes.

# Screenshots

## Running Session

[![](https://github.com/ctxis/crackerjack/raw/master/screenshots/cj-running.png)](https://github.com/ctxis/crackerjack/blob/master/screenshots/cj-running.png)

## Dashboard

[![](https://github.com/ctxis/crackerjack/raw/master/screenshots/cj-dashboard.png)](https://github.com/ctxis/crackerjack/blob/master/screenshots/cj-dashboard.png)

## Session

[![](https://github.com/ctxis/crackerjack/raw/master/screenshots/cj-session.png)](https://github.com/ctxis/crackerjack/blob/master/screenshots/cj-session.png)

## Selecting Hashes

[![](https://github.com/ctxis/crackerjack/raw/master/screenshots/cj-hashes.png)](https://github.com/ctxis/crackerjack/blob/master/screenshots/cj-hashes.png)

## HashType Options

[![](https://github.com/ctxis/crackerjack/raw/master/screenshots/cj-hashtype.png)](https://github.com/ctxis/crackerjack/blob/master/screenshots/cj-hashtype.png)

## Wordlist Selection

[![](https://github.com/ctxis/crackerjack/raw/master/screenshots/cj-wordlist.png)](https://github.com/ctxis/crackerjack/blob/master/screenshots/cj-wordlist.png)

## Mask Generation

[![](https://github.com/ctxis/crackerjack/raw/master/screenshots/cj-mask.png)](https://github.com/ctxis/crackerjack/blob/master/screenshots/cj-mask.png)

## General Session Settings

[![](https://github.com/ctxis/crackerjack/raw/master/screenshots/cj-settings.png)](https://github.com/ctxis/crackerjack/blob/master/screenshots/cj-settings.png)

## GitHub:

> **[GitHub - ctxis/crackerjack: CrackerJack / Hashcat Web Interface / Context...](https://github.com/ctxis/crackerjack)**
>
> CrackerJack / Hashcat Web Interface / Context Information Security
