Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Secret Service Integration: fix all exposed entries are returned if search with empty terms #4008

Merged
merged 1 commit into from
Dec 28, 2019

Conversation

Aetf
Copy link
Contributor

@Aetf Aetf commented Dec 11, 2019

Type of change

  • ✅ Bug fix (non-breaking change which fixes an issue)

Description and Context

When using secret-tool or any other client to search the database via secret service API, KeePassXC will return all exposed entries if the searching terms contain only Password.

Example: secret-tool search --all Password abc

The intended behavior is to not allow searching by password at all. Because the terms are passed in clear text which is insecure. In the implementation, any term matching Password is skipped. But if that is the only term, an empty term list is passed to EntrySearcher, which will return all entries.

This fix checks if the term list is empty and return not found if it is.

Testing strategy

Tested manually by

secret-tool search --all Password abc

Nothing should be returned.

Checklist:

  • ✅ I have read the CONTRIBUTING document. [REQUIRED]
  • ✅ My code follows the code style of this project. [REQUIRED]
  • ✅ All new and existing tests passed. [REQUIRED]
  • ✅ I have compiled and verified my code with -DWITH_ASAN=ON. [REQUIRED]

@Aetf
Copy link
Contributor Author

Aetf commented Dec 28, 2019

Ping. @droidmonkey I'm not sure if you are going to merge this in 2.5.2?

@droidmonkey
Copy link
Member

Yes I will, sorry it wasn't tagged properly

@droidmonkey droidmonkey merged commit 3ffeab4 into keepassxreboot:release/2.5.2 Dec 28, 2019
droidmonkey added a commit that referenced this pull request Jan 4, 2020
Added

- Browser: Show UI warning when entering invalid URLs [#3912]
- Browser: Option to use an entry only for HTTP auth [#3927]

Changed

- Disable the user interface when merging or saving the database [#3991]
- Ability to hide protected attribute after reveal [#3877]
- Remove mention of "snaps" in Windows and macOS [#3879]
- CLI: Merge parameter for source database key file (--key-file-from) [#3961]
- Improve GUI tests reliability on Hi-DPI displays [#4075]
- Disable deprecation warnings to allow building with Qt 5.14+ [#4075]
- OPVault: Use 'otp' attribute for TOTP field imports [#4075]

Fixed

- Fix crashes when saving a database to cloud storage [#3991]
- Fix crash when pressing enter twice while opening database [#3885]
- Fix handling of HTML when displayed in the entry preview panel [#3910]
- Fix start minimized to tray on Linux [#3899]
- Fix Auto Open with key file only databases [#4075]
- Fix escape key closing the standalone password generator [#3892]
- macOS: Fix monospace font usage in password field and notes [#4075]
- macOS: Fix building on macOS 10.9 to 10.11 [#3946]
- Fix TOTP setup dialog not closing on database lock [#4075]
- Browser: Fix condition where additional URLs are ignored [#4033]
- Browser: Fix subdomain matching to return only relevant site entries [#3854]
- Secret Service: Fix multiple crashes and incompatibilities [#3871, #4009, #4074]
- Secret Service: Fix searching of entries [#4008, #4036]
- Secret Service: Fix behavior when exposed group is recycled [#3914]
- CLI: Release the database instance before exiting interactive mode [#3889]
- Fix (most) memory leaks in tests [#3922]
@Aetf Aetf deleted the fdo-fix-search branch January 6, 2020 18:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants