mandiant / gocrack

GoCrack is a management frontend for password cracking tools written in Go
MIT License
1.12k stars 240 forks source link

Use the Potfile defined in the worker config #23

Closed h3ku closed 6 years ago

tankbusta commented 6 years ago

The potfile was at one point a thing but then disabled (and should have been removed from the config). Bad Things™ can happen when you share a potfile and can potentially have more than 1 process writing to it at the same time.

Also, if you have gocrack workers on multiple machines - they will not benefit from a shared potfile. Ultimately, we could implement the same type of functionality by reading the incoming hashes when it's uploaded via the API and remove & note previously cracked passwords.

h3ku commented 6 years ago

Yep, I think that the potfile should be implemented at Server level, not Worker, for example, saved with the Task Files or something like that.

If you work with non salted hashes is not a problem to start from cero a new task, but when you have salted hashes if you start a new task with another dictionary you lost a lot of performance breaking hashes that you already broke.

Basically what you said at the end sound like a good solution.

tankbusta commented 6 years ago

If you don't mind @h3ku, I'd like to hold off on this for now until we can do it the proper way. I can't say when I'll get around to it as it's approaching the holiday season here and I got a bunch of other stuff on my plate but we can document it and remove the configuration option for now.

Thoughts?

Edit: We'll create an issue and document the "ideal/correct" way to add a potfile-like feature if we close this up

h3ku commented 6 years ago

Yep, I agree, if someone wants to use it on a personal fork assuming the problems of the potfile solution it's easy to implement. But for the main project, in my opinion, the best option is to wait for a better implementation.