All Projects → seanbreckenridge → keepassxc-pwned

seanbreckenridge / keepassxc-pwned

Licence: MIT license
Check your keepassxc database against previously breached haveibeenpwned passwords

Programming Languages

python
139335 projects - #7 most used programming language
Makefile
30231 projects
shell
77523 projects

Projects that are alternatives of or similar to keepassxc-pwned

qute-keepassxc
Qutebrowser userscript to fetch credentials from KeepassXC password database
Stars: ✭ 44 (+76%)
Mutual labels:  password, keepass, keepassxc
Keepassxc
KeePassXC is a cross-platform community-driven port of the Windows application “Keepass Password Safe”.
Stars: ✭ 11,623 (+46392%)
Mutual labels:  password, keepass, keepassxc
Hibp
A composer package to verify if a password was previously used in a breach using Have I Been Pwned API.
Stars: ✭ 126 (+404%)
Mutual labels:  password, haveibeenpwned
Passpwn
See if your passwords in pass has been breached.
Stars: ✭ 130 (+420%)
Mutual labels:  password, haveibeenpwned
Cupp
The most common form of authentication is the combination of a username and a password or passphrase. If both match values stored within a locally stored table, the user is authenticated for a connection. Password strength is a measure of the difficulty involved in guessing or breaking the password through cryptographic techniques or library-based automated testing of alternate values.
Stars: ✭ 2,493 (+9872%)
Mutual labels:  password, password-strength
Keepass4web
An application that serves KeePass database entries on a web frontend
Stars: ✭ 115 (+360%)
Mutual labels:  password, keepass
Keeweb
Free cross-platform password manager compatible with KeePass
Stars: ✭ 10,587 (+42248%)
Mutual labels:  password, keepass
React Password Strength
A password strength indicator field for use in React projects
Stars: ✭ 167 (+568%)
Mutual labels:  password, password-strength
Kaonashi
Wordlist, rules and masks from Kaonashi project (RootedCON 2019)
Stars: ✭ 353 (+1312%)
Mutual labels:  password, password-strength
Python Scripts
Collection of Various Python Script's.💻
Stars: ✭ 195 (+680%)
Mutual labels:  password, password-strength
Password Strength
Angular UI library to illustrate and validate a password's strength with material design - Angular V9 supported
Stars: ✭ 186 (+644%)
Mutual labels:  password, password-strength
keevault
Kee Vault is a password manager for your web browser. Password databases (Vaults) are encrypted using the KeePass storage format before being sent to a remote server for synchronisation across any modern device/browser
Stars: ✭ 57 (+128%)
Mutual labels:  password, keepass
Android Complexify
An Android library which makes checking the quality of user's password a breeze.
Stars: ✭ 111 (+344%)
Mutual labels:  password, password-strength
Probable Wordlists
Version 2 is live! Wordlists sorted by probability originally created for password generation and testing - make sure your passwords aren't popular!
Stars: ✭ 7,312 (+29148%)
Mutual labels:  password, password-strength
Passwordstrengthbundle
Symfony Password strength and blacklisting validator bundle
Stars: ✭ 123 (+392%)
Mutual labels:  password, password-strength
Passgan
A Deep Learning Approach for Password Guessing (https://arxiv.org/abs/1709.00440)
Stars: ✭ 704 (+2716%)
Mutual labels:  password, password-strength
H8mail
Email OSINT & Password breach hunting tool, locally or using premium services. Supports chasing down related email
Stars: ✭ 2,163 (+8552%)
Mutual labels:  password, haveibeenpwned
Pwned
An easy, Ruby way to use the Pwned Passwords API.
Stars: ✭ 290 (+1060%)
Mutual labels:  password, haveibeenpwned
Bewgor
Bull's Eye Wordlist Generator - Does your password rely on predictable patterns of accessible info?
Stars: ✭ 333 (+1232%)
Mutual labels:  password, password-strength
Huge
Simple user-authentication solution, embedded into a small framework.
Stars: ✭ 2,125 (+8400%)
Mutual labels:  password, password-hash

KeepassXC-Pwned

Project Status

The functionality to check passwords again the HIBP database has been built into keepassxc since version 2.6.0 (Database > Database Reports > HIBP). This project should still work on keepassxc versions <2.6.0, though fails due to what I assume is a change in the specification for the keepassxc-cli export post version 2.6.0. I don't plan to update this to work with keepassxc 2.6.0 seeing as the functionality this offered is now built-in. This can still be used as a utility module to check passwords against the HIBP database:

In python code:

from keepassxc_pwned import check_password
check_password("password")

Note: check_password doesn't attempt to do any rate limiting.

or, by entering the password manually:

$ python3 -m keepassxc_pwned
Password to check:
Found password 1054 times!

I'll leave this project un-archived in case someone wishes to contribute changes, but I don't see a glaring reason to.


This checks a KeePassXC database against previously cracked haveibeenpwned passwords.

Requirements

  • keepassxc-cli binary (typically installed with KeePassXC)
  • python 3.6 or above

Install

pip3 install keepassxc-pwned

Run

Run: keepassxc_pwned ~/database.kdbx

Usage: keepassxc_pwned [OPTIONS] DATABASE

  Check a keepassxc database against previously cracked haveibeenpwned
  passwords

Options:
  -p, --plaintext       Print breached passwords in plaintext; defaults to
                        sha1 hashes.

  -k, --key-file PATH   Key file for the database
  -v, --verbose         Print debug messages
  -q, --quiet           Don't print status messages, just the summary
  --keepassxc-cli PATH  Specify a different location for the keepassxc-cli
                        binary

  --help                Show this message and exit.

Sample Run:

$ keepassxc_pwned ~/Documents/updated_database.kdbx
Insert password for /home/sean/Documents/updated_database.kdbx:
Checking password for Amazon...
Checking password for Github...
Checking password for Netflix...
Checking password for Steam...
Checking password for letterboxd...
Checking password for linkedin...
Checking password for minecraft...
Found password for 'minecraft' 3 times in the dataset!
Checking password for soundcloud...
Checking password for stackoverflow...
Checking password for wikipedia...
Found 1 previously breached password:
minecraft:5BAA61E4C9B93F3F0682250B6CF8331B7EE68FD8:3

Privacy concerns

This tool only transmits the first 5 characters of the SHA-1 hash of your passwords. You can read more about that here.

Troubleshooting

If keepassxc-cli is named something else on your installation of KeepassXC, specify the full path by providing the --keepassxc-cli flag, like: keepassxc_pwned --keepassxc-cli "$(which keepassxc.cli)" ~/Documents/updated_database.kdbx

If you get the following error while using keepassxc-cli:

dyld: Library not loaded: /usr/local/opt/quazip/lib/libquazip.1.dylib
  Referenced from: /usr/local/bin/keepassxc-cli
  Reason: image not found
Abort trap: 6

... installing quazip should fix that:

  • brew install quazip (Mac)

  • sudo apt install libquazip-dev (Linux)

If keepassxc-cli fails with an error message like "Invalid Command extract.", the command was changed in KeePassXC 2.5.0, and is now called export. Upgrade KeePassXC to the latest version, and try again.

Tests

  • Clone this repository
  • Install dev dependencies: pip3 install -r requirements-dev.txt
  • mypy keepassxc_pwned
  • pytest
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].