DuoBreak stores Duo Mobile credentials in a password-protected .duo vault and supports:
- Duo Mobile Push — normal push approval.
- Verified Duo Push — push approval requiring the code specified by Duo.
- Duo Mobile Passcode — counter-based passcodes.
-
Clone this repository and install the required Python packages:
git clone https://github.com/JesseNaser/DuoBreak.git cd DuoBreak pip install -r requirements.txt -
(for macOS only!) Install dependencies:
brew install zbar sudo ln -s $(brew --prefix zbar)/lib/libzbar.dylib /usr/local/lib/libzbar.dylib -
Run the
duobreak.pyscript:python duobreak.py -
Follow the on-screen instructions to create a new password-protected vault for storing your authentication keys.
-
On your computer, go to the Duo webpage and add a new device.
-
Save the QR code image given by the webpage as a PNG file.
-
In the DuoBreak script, choose "Add a key" from the main menu. Enter a nickname for the new key and provide the file path to the saved QR code image.
-
The script will automatically activate the new key and store it securely in your vault.
To authenticate, choose "Keys" from the main menu and select the key you want to use. You can choose to authenticate using Duo Push or Duo Passcodes.
This project is licensed under the AGPL 3.0 or later license. Please see the LICENSE file for more information.