Skip to content

Commit

Permalink
Disabled checking of the minimum and maximum length of the password c…
Browse files Browse the repository at this point in the history
…andidate in attack-mode 9 because they are incompatible
  • Loading branch information
jsteube committed Aug 30, 2021
1 parent 534bfd3 commit cb93875
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 4 deletions.
7 changes: 6 additions & 1 deletion docs/changes.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,13 @@
## Bugs
##

- Fixed out-of-boundary reads in attack mode 9 that were caused by a missing work item limit in the refactored autotune engine
- Fixed out-of-boundary reads in attack-mode 9 that were caused by a missing work item limit in the refactored autotune engine

##
## Technical
##

- Disabled checking of the minimum and maximum length of the password candidate in attack-mode 9 because they are incompatible

* changes v6.2.3 -> v6.2.4

Expand Down
12 changes: 10 additions & 2 deletions src/interface.c
Original file line number Diff line number Diff line change
Expand Up @@ -438,8 +438,16 @@ int hashconfig_init (hashcat_ctx_t *hashcat_ctx)
hashconfig->kernel_threads_min = default_kernel_threads_min (hashconfig, user_options, user_options_extra);
hashconfig->kernel_threads_max = default_kernel_threads_max (hashconfig, user_options, user_options_extra);

if (module_ctx->module_pw_max != MODULE_DEFAULT) hashconfig->pw_max = module_ctx->module_pw_max (hashconfig, user_options, user_options_extra);
if (module_ctx->module_pw_min != MODULE_DEFAULT) hashconfig->pw_min = module_ctx->module_pw_min (hashconfig, user_options, user_options_extra);
if (user_options->attack_mode == ATTACK_MODE_ASSOCIATION)
{
// we can't reject password candidates based on plugin specific password length boundaries, because they are not checked inside count_words()
}
else
{
if (module_ctx->module_pw_max != MODULE_DEFAULT) hashconfig->pw_max = module_ctx->module_pw_max (hashconfig, user_options, user_options_extra);
if (module_ctx->module_pw_min != MODULE_DEFAULT) hashconfig->pw_min = module_ctx->module_pw_min (hashconfig, user_options, user_options_extra);
}

if (module_ctx->module_salt_max != MODULE_DEFAULT) hashconfig->salt_max = module_ctx->module_salt_max (hashconfig, user_options, user_options_extra);
if (module_ctx->module_salt_min != MODULE_DEFAULT) hashconfig->salt_min = module_ctx->module_salt_min (hashconfig, user_options, user_options_extra);
if (module_ctx->module_kernel_accel_min != MODULE_DEFAULT) hashconfig->kernel_accel_min = module_ctx->module_kernel_accel_min (hashconfig, user_options, user_options_extra);
Expand Down
2 changes: 1 addition & 1 deletion src/straight.c
Original file line number Diff line number Diff line change
Expand Up @@ -236,7 +236,7 @@ int straight_ctx_update_loop (hashcat_ctx_t *hashcat_ctx)

if ((status_ctx->words_cnt / straight_ctx->kernel_rules_cnt) != hashes->salts_cnt)
{
event_log_error (hashcat_ctx, "Wordlist %s word count is not in sync with salt count", straight_ctx->dict);
event_log_error (hashcat_ctx, "Number of words in wordlist '%s' is not in sync with number of unique salts", straight_ctx->dict);
event_log_error (hashcat_ctx, "Words: %" PRIu64 ", salts: %d", status_ctx->words_cnt / straight_ctx->kernel_rules_cnt, hashes->salts_cnt);

return -1;
Expand Down

0 comments on commit cb93875

Please sign in to comment.