Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release v3.1 #19

Merged
merged 13 commits into from
Nov 30, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
51 changes: 22 additions & 29 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,38 +13,31 @@ Want to make the ***$HEX[1234]*** Hashcat output readable? Have a look at [hex-t

There is a separate repo with support for Apple Silicon based systems. Find it over here: [hash-cracker-apple-silicon](https://github.com/crypt0rr/hash-cracker-apple-silicon)

## Installation

```plain
git clone https://github.com/crypt0rr/hash-cracker
```

For the current implementation of PACK, python2 is required, also install `pip install pyenchant==3.0.0a1`. If you don't have python2 (ofc), you are not able to use option 12 and 13.

## Usage

```plain
hash-cracker v3.0 by crypt0rr (https://github.com/crypt0rr)

Checking if requirements are met:
[+] Hashcat is installed
[+] common-substr is executable
[+] Python2 available
[+] expander is executable
[+] Potfile "hash-cracker.pot" present

0. Exit
1. Brute force
2. Light rules
3. Heavy rules
4. Enter specific word/name/company
5. Enter specific word/name/company (bruteforce)
6. Hybrid
7. Toggle-case
8. Combinator
9. Iterate results
10. Prefix suffix (advise: first run steps above)
11. Common substring (advise: first run steps above)
12. PACK rulegen (read option 99)
13. PACK mask (read option 99)
14. Fingerprint attack
15. Directory of wordlists plain and then with OneRuleToRuleThemAll
16. Username iteration (read option 99, only NTLM)
99. Show info about modules

Please enter number OR type 'search' to find hashtypes:
./hash-cracker [FLAG]
```

## Flags

Note: flags are optional, by default hash-cracker will run with optimized kernels enabled.

```plain
-n / --no-limit
Disable the use of optimized kernels (limits password length)
-m / --module-info
Display information around modules/options
-s [hash-name] / --search [hash-name]
Will search local DB for hash module. E.g. '-s ntlm'
```

## Version log
Expand Down
8 changes: 8 additions & 0 deletions VERSION.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# Version log

## v3.1 - To speed or not to speed #kernels

* Optimized kernels are used by default but can be disabled with the `-n` or `--no-limit` flag
* Help menu implemented
* Moved search functionality
* Added Markov-chain password generator based on [bujimuji/markov-passwords](https://github.com/bujimuji/markov-passwords)
* Added [Dutch OpenTaal wordlist](https://github.com/OpenTaal/opentaal-wordlist/blob/master/wordlist.txt)

## v3.0 - 🚀

Besides some small changes you can now chose if you want to run things with a single or multiple word lists. As you can imagine, this will take much longer, but it is worth it.
Expand Down
41 changes: 28 additions & 13 deletions hash-cracker.sh
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
#!/bin/bash
# Copyright crypt0rr

function main () {
echo -e "hash-cracker v3.0 by crypt0rr (https://github.com/crypt0rr)\n"
function hash-cracker () {
echo -e "Checking if requirements are met:"
source scripts/requirements.sh
menu
Expand All @@ -21,14 +20,14 @@ function menu () {
echo "9. Iterate results"
echo "10. Prefix suffix (advise: first run steps above)"
echo "11. Common substring (advise: first run steps above)"
echo "12. PACK rulegen (read option 99)"
echo "13. PACK mask (read option 99)"
echo "12. PACK rulegen"
echo "13. PACK mask"
echo "14. Fingerprint attack"
echo "15. Directory of word lists plain and then with OneRuleToRuleThemAll"
echo "16. Username iteration (read option 99, only NTLM)"
echo -e "99. Show info about modules\n"
echo "16. Username iteration (only complete NTDS)"
echo -e "17. Markov-chain passwords generator\n"

read -p "Please enter number OR type 'search' to find hashtypes: " START
read -p "Please enter job number: " START
if [[ "$START" = "0" ]] || [[ "$START" = "exit" ]]; then
echo "Bye..."; exit 1
elif [[ $START = '1' ]]; then
Expand Down Expand Up @@ -63,14 +62,30 @@ function menu () {
source scripts/processors/multiple-wordlists.sh
elif [[ $START = '16' ]]; then
source scripts/processors/usernameaspassword.sh
elif [[ $START = '99' ]]; then
bash scripts/showinfo.sh
elif [[ $START = 'search' ]]; then
source scripts/extensions/search.sh
elif [[ $START = '17' ]]; then
source scripts/processors/markov-generator.sh
else
echo -e "Not valid, try again\n"; menu
fi
main
hash-cracker
}

main
echo -e "hash-cracker v3.1 by crypt0rr (https://github.com/crypt0rr)\n"

NOP=$1

if [ "$1" == '-h' ] || [ "$1" == '--help' ]; then
echo -e "Note: flags are optional, by default hash-cracker will run with optimized kernels enabled."
echo -e "\nUsage: ./hash-cracker [FLAG]"
echo -e "\nFlags:"
echo -e "\t-n / --no-limit\n\t\t Disable the use of optimized kernels (un-limits password length)"
echo -e "\t-m / --module-info\n\t\t Display information around modules/options"
echo -e "\t-s [hash-name] / --search [hash-name]\n\t\t Will search local DB for hash module. E.g. '-s ntlm'"
elif [ "$1" == '-m' ] || [ "$1" == '--module-info' ]; then
bash scripts/showinfo.sh
elif [ "$1" == '-s' ] || [ "$1" == '--search' ]; then
TYPELIST="scripts/extensions/hashtypes"
grep -i $2 $TYPELIST | sort
else
hash-cracker
fi
Binary file added scripts/extensions/mkpass
Binary file not shown.
52 changes: 26 additions & 26 deletions scripts/processors/bruteforce.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,30 +6,30 @@ source scripts/selectors/hashtype.sh
source scripts/selectors/hashlist.sh

# Logic
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?a?a?a?a?a' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?l?l?l?l?l?l?l?l' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?u?u?u?u?u?u?u?u' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?d?d?d?d?d?d?d?d?d?d' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?1?1?1?1?1?1?1' -1 '?l?d?u' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?1?1?1?1?2?2?2?2?a' -1 '?l?u' -2 '?d' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?1?1?1?1?2?2?2?2' -1 '?d' -2 '?l?u' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?1?1?1?1?1?1?d?d' -1 '?l?u' -2 '?d' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?l?l?l?l?l?d?d?d?d' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?u?u?lul?u?d?d?d?d' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?l?l?l?l?l?d?d?d?d' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?u?u?u?u?u?d?d?d?d' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?l?l?l?l?l?l?d?d?d' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?u?u?u?u?u?u?d?d?d' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?d?d?d?d?d?l?l?l?l' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?d?d?d?d?d?u?u?u?u' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?l?l?d?d?d?d?d?d?d' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?u?u?d?d?d?d?d?d?d' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?l?l?d?d?d?d?l?l' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?u?u?d?d?d?d?u?u' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?l?d?d?l?d?d?l?d?d' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?u?d?d?u?d?d?u?d?d' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?d?d?d?d?d?d?d?d?l?l' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?d?d?d?d?d?d?d?d?u?u' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?d?d?l?d?d?l?d?d?l' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?d?d?u?d?d?u?d?d?u' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?a?a?a?a?a' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?l?l?l?l?l?l?l?l' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?u?u?u?u?u?u?u?u' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?d?d?d?d?d?d?d?d?d?d' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?1?1?1?1?1?1?1' -1 '?l?d?u' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?1?1?1?1?2?2?2?2?a' -1 '?l?u' -2 '?d' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?1?1?1?1?2?2?2?2' -1 '?d' -2 '?l?u' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?1?1?1?1?1?1?d?d' -1 '?l?u' -2 '?d' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?l?l?l?l?l?d?d?d?d' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?u?u?lul?u?d?d?d?d' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?l?l?l?l?l?d?d?d?d' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?u?u?u?u?u?d?d?d?d' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?l?l?l?l?l?l?d?d?d' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?u?u?u?u?u?u?d?d?d' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?d?d?d?d?d?l?l?l?l' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?d?d?d?d?d?u?u?u?u' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?l?l?d?d?d?d?d?d?d' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?u?u?d?d?d?d?d?d?d' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?l?l?d?d?d?d?l?l' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?u?u?d?d?d?d?u?u' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?l?d?d?l?d?d?l?d?d' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?u?d?d?u?d?d?u?d?d' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?d?d?d?d?d?d?d?d?l?l' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?d?d?d?d?d?d?d?d?u?u' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?d?d?l?d?d?l?d?d?l' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a3 '?d?d?u?d?d?u?d?d?u' --increment
echo -e "\nmBrute force processing done\n"
2 changes: 1 addition & 1 deletion scripts/processors/combinator.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,5 @@ source scripts/selectors/hashlist.sh
source scripts/selectors/multiple-wordlist.sh

# Logic
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a1 $WORDLIST $WORDLIST2
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a1 $WORDLIST $WORDLIST2
echo -e "\nCombinator processing done\n"
4 changes: 2 additions & 2 deletions scripts/processors/commonsubstring.sh
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,5 @@ source scripts/selectors/hashlist.sh
# Logic
cat $POTFILE | awk -F: '{print $NF}' | tee tmp_pwonly &>/dev/null > tmp_substring; rm tmp_pwonly
cat tmp_substring | awk -F: '{print $NF}' | sort | tee tmp_passwords &>/dev/null && ./scripts/extensions/common-substr -n -f tmp_passwords > tmp_allsubstrings && rm tmp_passwords tmp_substring
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a1 tmp_allsubstrings tmp_allsubstrings
rm tmp_allsubstrings; echo -e "\nSubstring processing done\n"; main
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a1 tmp_allsubstrings tmp_allsubstrings
rm tmp_allsubstrings; echo -e "\nSubstring processing done\n"
2 changes: 1 addition & 1 deletion scripts/processors/fingerprint.sh
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,6 @@ source scripts/selectors/hashlist.sh
# Logic
cat $POTFILE | awk -F: '{print $NF}' | sort -u | tee tmp_pwonly &>/dev/null
./scripts/extensions/hashcat-utils/bin/expander.bin < tmp_pwonly | sort -u > tmp_expanded && rm tmp_pwonly
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a 1 tmp_expanded tmp_expanded
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a 1 tmp_expanded tmp_expanded
rm tmp_expanded
echo -e "\nFingerprint attack done\n"
4 changes: 2 additions & 2 deletions scripts/processors/heavy.sh
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ source scripts/rules/rules.config
RULELIST=($tenKrules $fbfull $NSAKEYv2 $fordyv1 $pantag $OUTD $techtrip2 $williamsuper $digits3 $dive $robotmyfavorite)

# Logic
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST $WORDLIST
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST $WORDLIST
for RULE in ${RULELIST[*]}; do
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST $WORDLIST -r $RULE --loopback
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST $WORDLIST -r $RULE --loopback
done
echo -e "\nDefault processing with heavy rules done\n"
12 changes: 6 additions & 6 deletions scripts/processors/hybrid.sh
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,10 @@ elif [[ $MODE = [Mm] ]]; then
fi

# Logic
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a6 $WORDLIST -j c '?s?d?d?d?d' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a6 $WORDLIST -j c '?d?d?d?d?s' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a6 $WORDLIST -j c '?a?a' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a6 $WORDLIST '?s?d?d?d?d' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a6 $WORDLIST '?d?d?d?d?s' --increment
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a6 $WORDLIST '?a?a' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a6 $WORDLIST -j c '?s?d?d?d?d' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a6 $WORDLIST -j c '?d?d?d?d?s' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a6 $WORDLIST -j c '?a?a' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a6 $WORDLIST '?s?d?d?d?d' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a6 $WORDLIST '?d?d?d?d?s' --increment
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST -a6 $WORDLIST '?a?a' --increment
echo -e "\nHybrid processing done\n"
2 changes: 1 addition & 1 deletion scripts/processors/iterate.sh
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ RULELIST=($rule3 $robotmyfavorite $fbfull $tenKrules $NSAKEYv2 $fordyv1 $pantag
# Logic
for RULE in ${RULELIST[*]}; do
cat $POTFILE | awk -F: '{print $NF}' | sort -u | tee tmp_pwonly &>/dev/null
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST tmp_pwonly -r $RULE --loopback
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST tmp_pwonly -r $RULE --loopback
done
rm tmp_pwonly
echo -e "\nIteration processing done\n"
4 changes: 2 additions & 2 deletions scripts/processors/light.sh
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ source scripts/rules/rules.config
RULELIST=($rule3 $rockyou30000 $ORTRTA $fbtop $OUTD $TOXICSP $passwordpro $d3ad0ne $d3adhob0 $generated2 $toprules2020 $digits1 $digits2 $hob064 $leetspeak $toggles1 $toggles2)

# Logic
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST $WORDLIST
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST $WORDLIST
for RULE in ${RULELIST[*]}; do
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST $WORDLIST -r $RULE --loopback
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST $WORDLIST -r $RULE --loopback
done
echo -e "\nDefault processing with light rules done\n"
44 changes: 44 additions & 0 deletions scripts/processors/markov-generator.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
#!/bin/bash
# Copyright crypt0rr

# Requirements
source scripts/selectors/hashtype.sh
source scripts/selectors/hashlist.sh

# Rules
source scripts/rules/rules.config
RULELIST=($rule3 $rockyou30000 $ORTRTA $fbfull $pantag $OUTD $techtrip2 $TOXICSP $passwordpro $d3ad0ne $d3adhob0 $generated2 $toprules2020 $hob064 $leetspeak)

# Logic
read -p "Use potfile (p) or wordlist (w): " LIST

if [ "$LIST" == 'p' ]; then
LIST=$POTFILE
elif [ "$LIST" == 'w' ]; then
source scripts/selectors/wordlist.sh
LIST=$WORDLIST
else
echo -e "Try again...\n"; hash-cracker
fi

read -p "Minimum password (length) character limit: " NGRAM
read -p "Amount of passwords to create: " AMOUNT

cat $LIST | awk -F: '{print $NF}' | sort -u | tee tmp_pwonly &>/dev/null
./scripts/extensions/mkpass -infile tmp_pwonly -ngram $NGRAM -m $AMOUNT | tee tmp_pwcreated &>/dev/null && rm tmp_pwonly

read -p "Use rules? (y/n): " USERULES

if [[ $USERULES =~ ^[Yy]$ ]]; then
for RULE in ${RULELIST[*]}; do
$HASHCAT $KERNEL --bitmap-max=24 --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST tmp_pwcreated -r $RULE --loopback
done
rm tmp_pwcreated
elif [[ $USERULES =~ ^[Nn]$ ]]; then
$HASHCAT $KERNEL --bitmap-max=24 --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST tmp_pwcreated
rm tmp_pwcreated
else
echo -e "Try again...\n"
fi

echo -e "\nMarkov-chain processing done\n"
4 changes: 2 additions & 2 deletions scripts/processors/multiple-wordlists.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ source scripts/rules/rules.config
RULELIST=($ORTRTA)

# Logic
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST $WORDLIST
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST $WORDLIST
for RULE in ${RULELIST[*]}; do
$HASHCAT -O --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST $WORDLIST -r $RULE --loopback
$HASHCAT $KERNEL --bitmap-max=24 --hwmon-disable --potfile-path=$POTFILE -m$HASHTYPE $HASHLIST $WORDLIST -r $RULE --loopback
done
echo -e "\nMultiple wordlists done\n"
Loading