Skip to content

mhmistry/DICTATOR

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DICTATOR

AI-enabled custom password dictionary generator for brute-force attack simulation

DICTATOR is an educational cybersecurity + Generative AI project that demonstrates how AI can generate highly personalized password dictionaries for simulated brute-force attacks.

The project highlights password vulnerabilities using ethical simulations and aims to raise awareness about weak password practices and poor password hygiene.


Features

  • AI-powered dictionary generation using Ollama

  • Personalized password generation based on user-provided information

  • Platform-specific password policy inference

  • Hybrid dictionary generation using:

    • Database retrieval
    • AI-generated variants
  • Large-scale password wordlist support (~15M entries)

  • Automatic dictionary export as .txt


Tech Stack

  • Python
  • Django
  • SQLite
  • Ollama
  • Llama 3.1 8B
  • HTML / CSS

Project Workflow

Step 1: User Input Collection

The user provides information related to a hypothetical password:

  • Platform (Google, Instagram, etc.)
  • Username
  • Password length
  • Specific characters
  • Character types
  • Owner name
  • Date of birth
  • Additional personal information

Step 2: Policy Inference

AI infers likely password policy based on platform.

Examples:

  • Minimum password length
  • Required character types
  • Common platform restrictions

Step 3: Database Retrieval

The system searches a large SQLite database containing millions of real-world password entries.

Filtering is based on:

  • Length constraints
  • Specific characters
  • Character types
  • User-related information

Step 4: AI Variant Generation

Llama 3.1 8B generates additional personalized password candidates using contextual inputs.

Examples:

  • Name variations
  • DOB combinations
  • Character substitutions
  • Mixed patterns

Step 5: Dictionary Generation

Database matches and AI-generated passwords are merged, cleaned, deduplicated, and exported into a custom dictionary.

Output:

  • custom_dict.txt

Setup Instructions

Clone Repository

git clone <repo-url>
cd DICTATOR

Create Virtual Environment

python -m venv venv

Windows:

venv\Scripts\activate

Linux/Mac:

source venv/bin/activate

Install Dependencies

pip install -r requirements.txt

Run Ollama

ollama serve

Pull model:

ollama pull llama3.1:8b

Start Server

python manage.py runserver

Open browser:

http://127.0.0.1:8000/

Wordlist Setup

Create a folder named:

wordlists/

Place all password wordlists inside this folder.

Example:

wordlists/
├── rockyou.txt
├── common_1m.txt
├── darkweb_10k.txt
├── names.txt

DICTATOR automatically detects and loads all .txt files inside the wordlists/ folder.

No manual configuration is required.

Merge Wordlists

Run:

python merge_wordlists.py

This automatically:

  • Detects all .txt files in wordlists/
  • Merges them
  • Removes duplicates
  • Creates:
master_wordlist.txt

Load Into Database

Run:

python manage.py load_wordlist master_wordlist.txt

This imports the merged password dataset into SQLite for fast querying.

About

DICTATOR is an AI-enabled tool that generates custom password dictionaries that can be used for brute-force attacks.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors