mirror of
https://github.com/hashcat/hashcat.git
synced 2024-11-05 06:58:56 +00:00
Fixed invalid ETA if --limit was specified, several salts are in a hash list and some of them were found in a potfile
This commit is contained in:
parent
84fcea9592
commit
a82fce2c8f
@ -25,11 +25,12 @@
|
||||
## Bugs
|
||||
##
|
||||
|
||||
- Fixed 'E' rule in pure kernel mode which was ignoring letters that are in positions that are multiples of 4
|
||||
- Fixed access violation in hashconfig_destroy if hashcat_ctx_t is only partially initialized
|
||||
- Fixed 'E' rule in pure kernel mode which was ignoring letters that are in positions that are multiples of 4
|
||||
- Fixed false negative in hash-mode 15900 (DPAPI masterkey file v2) if password was longer than 64 characters
|
||||
- Fixed hashcat_ctx leak and refactor module and kernel existence checks
|
||||
- Fixed integer overflow in Recovered/Time status view column caused by division > 0 but < 1
|
||||
- Fixed invalid ETA if --limit was specified, several salts are in a hash list and some of them were found in a potfile
|
||||
- Fixed memory leak in iconv_ctx and iconv_tmp in backend.c
|
||||
- Fixed missing option to automatically disable kernel cache in -m 25600 and -m 25800
|
||||
- Fixed out-of-boundary write in slow candidates mode in combinator attack
|
||||
|
30
src/status.c
30
src/status.c
@ -1261,9 +1261,10 @@ u64 status_get_progress_cur (const hashcat_ctx_t *hashcat_ctx)
|
||||
|
||||
u64 status_get_progress_ignore (const hashcat_ctx_t *hashcat_ctx)
|
||||
{
|
||||
const hashes_t *hashes = hashcat_ctx->hashes;
|
||||
const status_ctx_t *status_ctx = hashcat_ctx->status_ctx;
|
||||
const user_options_t *user_options = hashcat_ctx->user_options;
|
||||
const hashes_t *hashes = hashcat_ctx->hashes;
|
||||
const status_ctx_t *status_ctx = hashcat_ctx->status_ctx;
|
||||
const user_options_t *user_options = hashcat_ctx->user_options;
|
||||
const user_options_extra_t *user_options_extra = hashcat_ctx->user_options_extra;
|
||||
|
||||
if (user_options->attack_mode == ATTACK_MODE_ASSOCIATION)
|
||||
{
|
||||
@ -1273,6 +1274,27 @@ u64 status_get_progress_ignore (const hashcat_ctx_t *hashcat_ctx)
|
||||
return 0;
|
||||
}
|
||||
|
||||
u64 words_cnt = status_ctx->words_cnt;
|
||||
|
||||
if (user_options->limit)
|
||||
{
|
||||
const combinator_ctx_t *combinator_ctx = hashcat_ctx->combinator_ctx;
|
||||
const mask_ctx_t *mask_ctx = hashcat_ctx->mask_ctx;
|
||||
const straight_ctx_t *straight_ctx = hashcat_ctx->straight_ctx;
|
||||
|
||||
words_cnt = MIN (user_options->limit, status_ctx->words_base);
|
||||
|
||||
if (user_options->slow_candidates == true)
|
||||
{
|
||||
// nothing to do
|
||||
}
|
||||
else
|
||||
{
|
||||
if (user_options_extra->attack_kern == ATTACK_KERN_STRAIGHT) words_cnt *= straight_ctx->kernel_rules_cnt;
|
||||
else if (user_options_extra->attack_kern == ATTACK_KERN_COMBI) words_cnt *= combinator_ctx->combs_cnt;
|
||||
else if (user_options_extra->attack_kern == ATTACK_KERN_BF) words_cnt *= mask_ctx->bfs_cnt;
|
||||
}
|
||||
}
|
||||
// Important for ETA only
|
||||
|
||||
u64 progress_ignore = 0;
|
||||
@ -1285,7 +1307,7 @@ u64 status_get_progress_ignore (const hashcat_ctx_t *hashcat_ctx)
|
||||
+ status_ctx->words_progress_rejected[salt_pos]
|
||||
+ status_ctx->words_progress_restored[salt_pos];
|
||||
|
||||
const u64 left = status_ctx->words_cnt - all;
|
||||
const u64 left = words_cnt - all;
|
||||
|
||||
progress_ignore += left;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user