Simple Machines Community Forum

Customizing SMF => Modifications and Packages => Topic started by: SleePy on March 01, 2022, 03:01:12 PM

Title: Have-I-Been-Pwned
Post by: SleePy on March 01, 2022, 03:01:12 PM
[Link to the mod](https://custom.simplemachines.org/index.php?mod=4306)

This enables checking passwords against the [Have-I-Been-Pwned](https://haveibeenpwned.com/Passwords) database.  Passwords are only checked on registration and when changed on the profile.

Additionally this can attempt to check the password from the browser using the same API

SMF 2.1.0 or higher only!
PHP 7.3 or higher only
Title: Re: Have-I-Been-Pwned
Post by: Shades. on March 01, 2022, 05:39:22 PM
Nice! 8)

What's the differences between "Enable Server based Have-I-Been-Pwned Checks" and "Enable Client based Have-I-Been-Pwned Checks" and should I have them both checked?
Title: Re: Have-I-Been-Pwned
Post by: SleePy on March 04, 2022, 10:29:37 PM
Server side will have the server submit the checks to the api.  While client side will let the browser submit the checks.  The client side thus can do a more real time check while the server side is performed upon submission.  You can run both.
Title: Re: Have-I-Been-Pwned
Post by: Shades. on March 05, 2022, 04:43:30 AM
Quote from: SleePy on March 04, 2022, 10:29:37 PMServer side will have the server submit the checks to the api.  While client side will let the browser submit the checks.  The client side thus can do a more real time check while the server side is performed upon submission.  You can run both.
Ok thanks! Nice mod! 8)
Title: Re: Have-I-Been-Pwned
Post by: landyvlad on December 20, 2022, 08:33:37 PM
Just saw this - it's be good if there was a way to periodically check peoples accounts/passwords as a matter of course (i.e. not just on change/registration). Is that even possible?
Title: Re: Have-I-Been-Pwned
Post by: SleePy on December 21, 2022, 09:21:27 PM
You can register your email to be notified if it shows up in a breach.  You can register your domains you own to be notified if any email on them have a listing.  There isn't one to tell you that your password has been found in a recent breach.  You can follow Troy Hunt's blog and he will post about any new disclosures.  You can then test your password again to see if it was breached.

As your password is in a one way hash, there is no way to take these hashes and compare it against your password hash.  The password must be typed in for the API to work as it only sends partial passwords over the API.