Skip to content

Scripts

9 Topics 42 Posts

Share and discuss scripts that help automate hash cracking and related tasks. Zero tolerance for malicious content.
Follow Posting Template:
https://forum.hashpwn.net/post/68

  • Hashcat Rule Ranker – GPU-accelerated ranking of Hashcat rules

    2
    0 Votes
    2 Posts
    24 Views
    A1131A
    On the results of ranker x1.greedy vs a1131.greedy rulesets # head x1.greedy_top50000.rule : T0 T2 T4 T6 T8 TA TC $1 $2 l x12 c'1$s18 “A$p t T0 T6 TA $3 T0 T5 TA 1 $2 $3 R2 -9x35 ^f # head a1131.greedy.25000.rule : l T0 $1 K ] $1 $2 $3 $4 $2 +2 # head a1131.greedy_top50000.r1.rule : ] $a [$1 [$9 [$8 [$7 [$4 [$3 [ [ $6 [ [ $5 As can be seen above, the rules obtained using the ranker (with CELF) are not only diverse, but also deliver very similar results at the identical cut-offs of 10k / 25k / 50k. Rule Hit rate Size AVG Time Eff. a1131.greedy.10000.rule 22.75% 10 000 25 352 2.275 x1.greedy_top10000.rule 22.56% 10 001 501.44 2.2558 a1131.greedy.25000.rule 28.60% 25 000 31 879 1.144 x1.greedy_top25000.rule 28.46% 25 001 25 832.06 1.1384 a1131.greedy_top50000.r1.rule 33.60% 50 001 16 987.14 0.672 x1.greedy_top50000.rule 33.05% 50 001 21 051.92 0.661 Ranker + CELF generates rulesets with very similar effectiveness (differences of only 0.14–0.55 pp), while being more diverse and less redundant. At the 10k/25k/50k cut-offs the results are practically equivalent. Full Benchmark
  • rulest - GPU Rules Extractor

    25
    0 Votes
    25 Posts
    2k Views
    A1131A
    Benchmark comparison (same corpus) Single-run results on base = hashmob.mini, target = hashmob.medium (time-to-result comparison of obtaining similar rule counts: hcrt.pages.dev/debug_rules_efficiency Full benchmark table: Google Sheet) Ruleset Cover Size Eff. rulest.greedy.150000.rule 36.12% 150000 0.2408 rulest.freq.150000.rule 28.02% 150000 0.1868 rulest.greedy.50000.rule 29.78% 50000 0.5956 rulest.freq.50000.rule 20.25% 50000 0.4050 rulest.greedy.25000.rule 24.91% 25000 0.9964 rulest.freq.25000.rule 15.99% 25000 0.6396 rulest.greedy.10000.rule 19.71% 10000 1.971 rulest.freq.10000.rule 11.44% 10000 1.144 rulest.greedy.1500.rule 10.45% 1500 6.9667 rulest.freq.1500.rule 4.61% 1500 3.0733 rulest.greedy.250.rule 5.06% 250 20.24 rulest.freq.250.rule 1.73% 250 6.92 rulest.greedy.64.rule 2.10% 64 32.8125 rulest.freq.64.rule 0.88% 64 13.75
  • RCR - RuleFlow Chain Runner

    hashcat hashcat rules rules generator
    1
    0 Votes
    1 Posts
    119 Views
    No one has replied
  • Concentrator - Unified Hashcat Rule Processor

    6
    0 Votes
    6 Posts
    880 Views
    A1131A
    Using concentrator on debugged Hashcat rules
  • Emails rules extractor

    3
    0 Votes
    3 Posts
    944 Views
    A1131A
    https://hcrt.pages.dev/email-rule-extractor
  • Quick Way to Crack VB 2611 Salts

    2
    0 Votes
    2 Posts
    1k Views
    A1131A
    #!/bin/bash # simple script to save your time on file operations while cracking vBulletin < 3.8.5 hashes without salts using hashcat # popular types of vBulletin salt - ?a?a?a, ?h?h?h?h?h?h, ?d?d?d?d?d # download hashgen - https://github.com/cyclone-github/hashgen (used to convert $[HEX] hashes with colon-containing salts and generating hashed wordlist) # Function to read file paths with validation read_file_path() { local prompt="$1" local result_var="$2" local path while true; do read -r -p "$prompt" path if [ -f "$path" ]; then # Use eval to set the variable passed by name eval "$result_var=\"$path\"" break else echo "ERROR: File not found: $path. Please try again." fi done } echo "--- Interactive vBulletin Salt Cracker Configuration ---" # --- Input Acquisition --- # 1. Hash list path read_file_path "Enter the path to the hash list (e.g., hashlists/main.txt): " HASHLIST_PATH # 2. Wordlist path read_file_path "Enter the path to the wordlist (e.g., wordlists/top1000.txt): " WORDLIST_PATH # 3. Mask (optional, with default value) read -r -p "Enter the mask for salt cracking (e.g., ?h?h?h?h?h?h) [Default: ?a?a?a]: " CRACKING_MASK if [ -z "$CRACKING_MASK" ]; then CRACKING_MASK="?a?a?a" fi # Generate dynamic paths WORDLIST_BASENAME=$(basename "$WORDLIST_PATH") HASHED_WORDLIST_PATH="md5_wordlists/${WORDLIST_BASENAME}.md5" echo "--- Settings Confirmed ---" echo "Hash List: $HASHLIST_PATH" echo "Word List: $WORDLIST_PATH" echo "Mask: $CRACKING_MASK" echo "Hashed Word List Output: $HASHED_WORDLIST_PATH" echo "------------------------------" sleep 2s # --- Tool Verification --- if ! command -v hashcat &> /dev/null; then echo "ERROR: hashcat not found. Ensure it is in your PATH." exit 1 fi if [ ! -f ./hashgen ]; then echo "ERROR: The ./hashgen file was not found. Ensure it is in the current directory and is executable." exit 1 fi # --- STEP 1: Potfile Cleanup --- echo "--- STEP 1: Cleaning potfile ---" if [ -f "hashed.pot" ]; then echo "Creating backup: hashed.pot -> hashed.pot.bak" cat hashed.pot >> hashed.pot.bak 2>/dev/null else echo "hashed.pot not found, skipping backup." fi echo '' > hashed.pot sleep 3s # --- STEP 2: Generate Hashed Wordlist --- echo "--- STEP 2: Generating hashed wordlist ---" mkdir -p md5_wordlists ./hashgen -m 0 -w "$WORDLIST_PATH" -o "$HASHED_WORDLIST_PATH" sleep 3s # --- STEP 3: Crack Salts --- echo "--- STEP 3: Cracking salts (Mode -m0 -a6) ---" hashcat -d1 -m0 -a6 -w4 --hwmon-temp-abort=95 --potfile-path=hashed.pot "$HASHLIST_PATH" "$HASHED_WORDLIST_PATH" "$CRACKING_MASK" --remove sleep 3s # --- STEP 4: Prepare Hashes for Wordlist Cracking --- echo "--- STEP 4: Preparing hashes for cracking (m2611 format) ---" sleep 3s # 1. Process NON-HEX lines (already cracked passwords) # Corrected format: HASH:PLAINTEXT (Single colon) grep -v HEX hashed.pot | sed 's/^\(.\{65\}\)/\1:/' | cut -d: -f1,3 | sed -E 's/^(.{32}):(.*)$/\1:\2/' > 2611_to_crack.txt sleep 3s echo "Converting HEX strings" # 2. Convert HEX strings grep HEX hashed.pot | cut -d: -f2 > hex.tmp grep HEX hashed.pot | cut -d: -f1 > hash.txt ./hashgen -m plaintext -w hex.tmp -o hex.txt sleep 3s # 3. Combine HEX hashes and append to 2611_to_crack.txt # Corrected format: HASH:HEX_SALT (Single colon) paste -d : hash.txt hex.txt | sed -E 's/^(.{32}):(.*)$/\1:\2/' >> 2611_to_crack.txt sleep 3s echo "Deleting temporary files" # 4. Remove temporary files rm -f ./{hash.txt,hex.txt,hex.tmp} sleep 3s # --- STEP 5: Crack Hashes with Wordlist (Mode -m2611) --- echo "--- STEP 5: Cracking hashes with wordlist -a0 -m2611 ---" hashcat -d1 -m2611 -a0 -w4 --potfile-path=hashcat.pot.salted 2611_to_crack.txt "$WORDLIST_PATH" sleep 3s # --- STEP 6: Export Cracked Hashes --- echo "--- STEP 6: Writing/Appending last cracked hashes into file ---" hashcat -d1 -m2611 -a0 -w4 -O --hwmon-temp-abort=95 --hwmon-disable --potfile-path=hashcat.pot.salted 2611_to_crack.txt --show > 2611_cracked.txt sleep 3s echo "Done." Preview
  • This topic is deleted!

    1
    0 Votes
    1 Posts
    43 Views
    No one has replied
  • Nvidia CUDA-toolkit linux installer script

    1
    2 Votes
    1 Posts
    553 Views
    No one has replied
  • Vast.ai Hashtopolis Agent Setup Script

    1
    1 Votes
    1 Posts
    610 Views
    No one has replied