Skip to content

Compromised password blocking

The Compromised password blocking plugin checks passwords against the Have I Been Pwned database of known breaches when passwords are created, updated, or optionally on every login. Users with a compromised password are blocked until they reset it.

The plugin uses the k-Anonymity API — the full password is never sent outside Moodle.

  • Checks passwords on creation and update
  • Optional check on every login
  • k-Anonymity API — no full password ever leaves Moodle
  • Blocks access until a compromised password is replaced
  1. Install the plugin.
  2. Log in as admin — ensure you can reset your administrator password via email if needed.
  3. Enable the Password policy setting and review password requirements.
  4. Navigate to Site administration > Plugins > Authentication > Compromised password blocking.
  5. Enable Detect compromised passwords.
  6. Optionally enable Check password on login.

This plugin has no dependencies. Download the release package from the tags page and install it under Site administration ▸ Plugins ▸ Install plugins, or use Git:

For Moodle 5.1.x and later, clone the plugin into public/admin/tool/mupwned instead. Use MOODLE_500_STABLE for Moodle 5.1.x and later.

Terminal window
git clone -b MOODLE_405_STABLE https://github.com/moodle/moodle.git
cd moodle
git clone -b MOODLE_405_STABLE https://github.com/mutms/moodle-tool_mupwned.git admin/tool/mupwned

Then continue with the standard Moodle installation.