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

Only schedule non-empty username+password for retry #2792

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

bucienator
Copy link

When doAuthenticate function fails during connection, thread_data.username and thread_data.password variables are still empty.

Later, when BruteSocket's checkStatus is invoked, it tries to save those values for later retry. However, as both username and password are still empty at this point, retry_accounts will have a nil, nil item.

When this item is picked up in the next invocation of doAuthenticate, as both username and password are nil, initial_accounts_exhausted is set to true, and the scanning stops.

This change adds a condition, to only add a new item to retry_accounts in the checkStatus function, if either the username or the password is not nil.

When `doAuthenticate` function fails during connection,
`thread_data.username` and `thread_data.password` variables
are still empty.

Later, when `BruteSocket`'s `checkStatus` is invoked, it tries to save
those values for later retry. However, as both username and password
are still empty at this point, `retry_accounts` will have a `nil, nil`
item.

When this item is picked up in the next invocation of `doAuthenticate`,
as both username and password is `nil`, `initial_accounts_exhausted`
is set to true, and the scanning stops.

This change adds a condition, to only add a new item to `retry_accounts`
in the `checkStatus` function, if either the username or the password
is not `nil`.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant