Git Product home page Git Product logo

extreme_breach_masks's Introduction

Extreme_Breach_Masks

A set of prioritized Hashcat masks intelligently developed from terabytes of password breach datasets and organized by run time.

Goal

To improve the efficiency of password cracking using Hashcat mask attacks by prioritizing masks with the highest password cracking probability in the shortest possible time using high volumes of password breach data.

Background

Inspired by the work of golem445 who compiled a set of password hashcat password masks using real-world data. I took this a step further by building a set of prioritized Hashcat masks using an enormous password breach dataset that I have been personally compiling and curating.

Methodology

  1. Compiled every available password breach dataset that I could find -- terabytes of data! Wordlists include everything readily google-able and torrent-able. Noteable inclusions are: crackstation.net, seclists, rockyou, COMB, breach-parse... and many, many more.
  2. Combined the wordlists in a way that they were generally sorted by password usage commonality.
  3. Deduplicated the wordlist without re-sorting (important to retain the commonality order) using this tool: https://github.com/nil0x42/duplicut
  4. Ran the wordlist through the statsgen.py tool to convert the wordlist into a counted set of password masks: https://github.com/iphelix/pack
python statsgen.py breach_wordlist.txt -o masks.statsgen
  1. Ran the resulting statsgen.py output through maskgen.py to generate .hcmask files that are efficently ordered and seperated by run time. The run time duration assumes a hashing speed of 56,636,300,000 keys per second. This was determiend based on the performance of 1x Nvidia GTX1080Ti cracking NTLM hashes in Hashcat. Example command below:
python maskgen.py --optindex -o ./1-hour_8.hcmask --minlength=8 --maxlength=8 --pps 56636300000 --targettime 3600 masks.statsgen
  1. Repeated step #5 with various execution times to generate files optimized for various run times.

Usage

The .hcmask files above describe passwords of differing character lengths, each sorted by efficiency, and formatted for use by the Hashcat password cracking tool. Depending on your situation, you might want to focus on passwords of a specific length only vs the entire set. You should select the hcmask file optimized for your desired time frame. The statsgen file is included if you want to re-sort and generate your own hcmask files; however, I had to pair it down to only 8-14 characters and 7zip it because the full version was too large for github. Recognize that this type of brute force mask attack can take a long time and should be performed last after you have exhausted more targeted methods. My recommended password cracking attack order is below:

  1. Backup/Clear your hashcat potfile for the new set of hashes because mixing previous results gets confusing and if the potfile gets too large it can slow down the cracking process.
  2. Basic dictionary attack with your favorite wordlist... ie rockyou.txt
hashcat.exe -d <include_gpu_numbers> -m 1000 -w 4 -a 0 --session <name_your_session> <ntlm_hashes.txt> <rockyou.txt> -O
  1. Brute force all permutations 1-7 character length passwords... this does not take long given the minimal keyspace of this group.
hashcat.exe --increment --increment-min=1 -d <include_gpu_numbers> -m 1000 -w 4 -a 3 --session <name_your_session> <ntlm_hashes.txt> ?a?a?a?a?a?a?a -O
  1. Targeted dictionary attack... create a custom lowercase wordlist using CeWL and add local sports teams, city names, mascots, etc and apply the best64.rule
hashcat.exe -d <include_gpu_numbers> -m 1000 -w 4 -a 0 --session <name_your_session> <ntlm_hashes.txt> <custom_wordlist.txt> -r best64.rule -O
  1. Analyze the set of cracked passwords for potential patterns, run targeted attacks which reflect those patterns.
  2. BIG dictionary attack... run the passwords through the largest wordlist you have.
  3. Analyze any newly cracked passwords for potential patterns, run targeted attacks which reflect those patterns.
  4. Use this repository of work and run the "duration_characters.hcmask" according to your needs.

Example Hashcat Command for Using the .hcmask to Crack NTLM Hashes

hashcat.exe -d <include_gpu_numbers> -m 1000 -w 4 -a 3 --session <name_your_session> <ntlm_hashes.txt> 1-day_8-14.hcmask -O

Extra flags that might be necessary to make Hashcat work on your system. NOTE: These are dangerous, and should only be used very rarely!

--force | Force Hashcat to stop bothering you and just crack the damn passwords.
--hwmon-disable | Hashcat will throttle based on temp readings... ignore this and go for broke!

extreme_breach_masks's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

extreme_breach_masks's Issues

Discouraged flags

--force and -hwmon-disable are both complex, and or dangerous, and should only be used very rarely. Please drop them from general guidance. Thanks!

Some masks take longer than expected

Hey, thank you for this amazing work and providing the mask files.
However, I noticed that some of the masks take way longer than what the foldername suggests.
This is especially true for the mask files with character length 11 to 16. Looking into the files you can see that the keyspace is (in most cases) just all-digits and the mask is the same in every folder (e.g. ?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d on the 16 character files).
So instead of taking a minute, using the 1-minute_16.hcmask will actually run for about 4 days (ony my hardware).

This is likely a pack issue and needs to be solved there, but since it seems that the project was abandoned, one probably has to do some kind of (manual) verification on the mask files and such "invalid" entries must be deleted from the file.
I know that this could also be achieved "on the run" with something like timeout 1min hashcat [...] or hashcat [...] --runtime 60 but this would end the whole cracking process and I think it would be better if the masks in the files actually fit the file name.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.