Skip to content

KeePassXC becomes unresponsive shortly after launch if a YubiKey is plugged in #11998

@archer-321

Description

@archer-321

Have you searched for an existing issue?

  • Yes, I tried searching and reviewed the pinned issues

Brief Summary

KeePassXC becomes unresponsive after launch for a couple of seconds if multiple database files are opened and a YubiKey is plugged in.
This freeze doesn't happen if no YubiKey is plugged in.

The time the app is unresponsive scales with the number of automatically opened database files. With four empty test databases, the program becomes unresponsive for about 4 seconds. My actual database files make KeePassXC freeze for about 10 seconds.

I've bisected the problem to 0b32cf3.
In particular, commenting out the lock in src/keys/drivers/YubiKey.cpp:109 makes the problem go away.
Unfortunately, I don't know enough about KeePassXC's code base to provide a patch. Simply removing the lock likely isn't an option.

This problem might be related to #11852. I tried searching for other related issues but didn't find any. I'm sorry if this particular bug is already tracked somewhere.

Steps to Reproduce

  1. Launch KeePassXC with 0b32cf3 applied.
  2. Open four or more different database files (you don't have to unlock them).
  3. Quit KeePassXC.
  4. Ensure a YubiKey is plugged in.
  5. Launch KeePassXC again. This time, the UI freezes for a couple of seconds.

Expected Versus Actual Behavior

Expected behaviour: KeePassXC doesn't freeze.
Observed behaviour: KeePassXC becomes unresponsive for a couple of seconds.

KeePassXC Debug Information

KeePassXC - Version 2.7.9-snapshot
Build Type: Snapshot
Revision: 0b32cf3

Qt 5.15.16
Debugging mode is disabled.

Operating system: Arch Linux
CPU architecture: x86_64
Kernel: linux 6.13.5-arch1-1

Enabled extensions:
- Auto-Type
- Browser Integration
- Passkeys
- SSH Agent
- KeeShare
- YubiKey
- Secret Service Integration

Cryptographic libraries:
- Botan 3.7.1

Operating System

Linux

Linux Desktop Environment

Gnome

Linux Windowing System

Wayland

Metadata

Metadata

Assignees

Type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions