Skip to content
Snippets Groups Projects
  1. Mar 09, 2024
    • Jonathan White's avatar
    • Jonathan White's avatar
      bbd16048
    • varjolintu's avatar
      Add basic documentation for Passkeys · 976c6914
      varjolintu authored
      976c6914
    • Jonathan White's avatar
      Update Changelog · cde88546
      Jonathan White authored
      cde88546
    • Jonathan White's avatar
      Prevent byte-by-byte and attachment inference side channel attacks · fff1b49f
      Jonathan White authored
      Attack - KeeShare attachments can be inferred because of attachment de-duplication.
      
      Solution - Prevent de-duplication of normal database entry attachments with those entry attachments synchronized/associated with a KeeShare database. This is done using the KeeShare database UUID injected into the hash calculation of the attachment prior to de-dupe. The attachments themselves are not modified in any way.
      
      --------
      
      Attack - Side channel byte-by-byte inference due to compression de-duplication of data between a KeeShare database and it's parent.
      
      Solution - Generate a random array between 64 and 512 bytes, convert to hex, and store in the database custom data.
      
      --------
      
      Attack vector assumptions:
      1. Compression is enabled
      2. The attacker has access to a KeeShare database actively syncing with the victim's database
      3. The victim's database is unlocked and syncing
      4. The attacker can see the exact size of the victim's database after saving, and syncing, the KeeShare database
      
      Thank you to Andrés Fábrega from Cornell University for theorizing and informing us of this attack vector.
      fff1b49f
    • Jonathan White's avatar
      Add 1Password 1PUX and Bitwarden JSON Importers · 18cfbf72
      Jonathan White authored
      * Closes #7545 - Support 1Password 1PUX import format based on https://support.1password.com/1pux-format/
      
      * Closes #8367 - Support Bitwarden JSON import format (both unencrypted and encrypted) based on https://bitwarden.com/help/encrypted-export/
      
      * Fixes #9577 - OPVault import when fields have the same name or type
      
      * Introduce the import wizard to handle all import tasks (CSV, KDBX1, OPVault, 1PUX, JSON)
      
      * Clean up CSV parser code to make it much more efficient and easier to read
      
      * Combine all importer tests (except CSV) into one test file
      18cfbf72
    • Jonathan White's avatar
      Minor changes to Group API to make it more explicit · 6f112b11
      Jonathan White authored
      * Include check for group as recycle bin directly into the Group::isRecycled() function
      
      * Return the original root group from Database::setRootGroup(...) to force memory management transfer
      6f112b11
    • Jonathan White's avatar
      Fix spacing of QGroupBox's · ee1268c5
      Jonathan White authored
      * Previously our base style sheet added roughly 20px of margin to the top and bottom of all QGroupBox. This caused visual errors where that margin was not needed/desired. 
      * Transferred padding to the specific layouts instead where it belongs.
      ee1268c5
    • Sami Vänttinen's avatar
      Skip a few Passkeys tests with Botan <= 2.14 (#10360) · d78a6b60
      Sami Vänttinen authored
      
      Botan version less than 2.14.0 miscalculates ECDSA signatures. 
      
      ---------
      
      Co-authored-by: default avatarJonathan White <support@dmapps.us>
      d78a6b60
    • Janek Bevendorff's avatar
      Set test locale to C · 63b18084
      Janek Bevendorff authored
      63b18084
    • Jonathan White's avatar
      Fix TouchID not being shown after lid close · 7d0dc671
      Jonathan White authored
      Fixes #8945
      Fixes #10315
      7d0dc671
    • Jonathan White's avatar
      f20b5314
    • Jonathan White's avatar
      Add vcpkg manifest with build dependencies · 28d096a8
      Jonathan White authored
      Also bump minimum CMake release
      28d096a8
    • varjolintu's avatar
      Fix macOS crash on Accent Color change · 350931b7
      varjolintu authored
      350931b7
    • Jonathan White's avatar
      Passkeys improvements (#10318) · b7a1c620
      Jonathan White authored
      Refactors the Passkey implementation to include more checks and a structure that is more aligned with the official specification.
      Notable changes:
      - _BrowserService_ no longer does the checks by itself. A new class _BrowserPasskeysClient_ constructs the relevant objects, acting as a client. _BrowserService_ only acts as a bridge between the client and _BrowserPasskeys_ (authenticator) and calls the relevant popups for user interaction.
      - A new helper class _PasskeyUtils_ includes the actual checks and parses the objects.
      - _BrowserPasskeys_ is pretty much intact, but some functions have been moved to PasskeyUtils.
      - Fixes Ed25519 encoding in _BrowserCBOR_.
      - Adds new error messages.
      - User confirmation for Passkey retrieval is also asked even if `discouraged` is used. This goes against the specification, but currently there's no other way to verify the user.
      - `cross-platform` is also accepted for compatibility. This could be removed if there's a potential issue with it.
      - Extension data is now handled correctly during Authentication.
      - Allowed and excluded credentials are now handled correctly.
      - `KPEX_PASSKEY_GENERATED_USER_ID` is renamed to `KPEX_PASSKEY_CREDENTIAL_ID`
      - Adds a new option "Allow localhost with Passkeys" to Browser Integration -> Advanced tab. By default it's not allowed to access HTTP sites, but `http://localhost` can be allowed for debugging and testing purposes for local servers.
      - Add tag `Passkey` to a Passkey entry, or an entry with an imported Passkey.
      
      Fixes #10287.
      b7a1c620
  2. Feb 04, 2024
  3. Jan 30, 2024
Loading