CVE-2023-32784
In KeePass 2.x before 2.54, it is possible to recover the cleartext master password from a memory...
In KeePass 2.x before 2.54, it is possible to recover the cleartext master password from a memory dump, even when a workspace is locked or no longer running. The memory dump can be a KeePass process dump, swap file (pagefile.sys), hibernation file (hiberfil.sys), or RAM dump of the entire system. The first character cannot be recovered. In 2.54, there is different API usage and/or random string insertion for mitigation.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- None
- Availability
- None
Exploit likelihood
What each source reports
NVD Score used
7.5
In KeePass 2.x before 2.54, it is possible to recover the cleartext master password from a memory dump, even when a workspace is locked or no longer running. The memory dump can be a KeePass process dump, swap file (pagefile.sys), hibernation file (hiberfil.sys), or RAM dump of the entire system. The first character cannot be recovered. In 2.54, there is different API usage and/or random string insertion for mitigation.
- Record
CVE-2023-32784- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-319
- Updated
- 2026-11-02
CVE List
7.5
In KeePass 2.x before 2.54, it is possible to recover the cleartext master password from a memory dump, even when a workspace is locked or no longer running. The memory dump can be a KeePass process dump, swap file (pagefile.sys), hibernation file (hiberfil.sys), or RAM dump of the entire system. The first character cannot be recovered. In 2.54, there is different API usage and/or random string insertion for mitigation.
- Record
CVE-2023-32784- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-319
- Updated
- 2026-11-02
EUVDEUVD-2023-37007
7.5
In KeePass 2.x before 2.54, it is possible to recover the cleartext master password from a memory dump, even when a workspace is locked or no longer running. The memory dump can be a KeePass process dump, swap file (pagefile.sys), hibernation file (hiberfil.sys), or RAM dump of the entire system. The first character cannot be recovered. In 2.54, there is different API usage and/or random string insertion for mitigation.
- Record
EUVD-2023-37007- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-03
GitHub AdvisoriesGHSA-f4c7-5p8v-p7jh
7.5
In KeePass 2.x before 2.54, it is possible to recover the cleartext master password from a memory...
In KeePass 2.x before 2.54, it is possible to recover the cleartext master password from a memory dump, even when a workspace is locked or no longer running. The memory dump can be a KeePass process dump, swap file (pagefile.sys), hibernation file (hiberfil.sys), or RAM dump of the entire system. The first character cannot be recovered. In 2.54, there is different API usage and/or random string insertion for mitigation.
- Record
GHSA-f4c7-5p8v-p7jh- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-319
- Updated
- 2026-11-02
OSV
7.5
In KeePass 2.x before 2.54, it is possible to recover the cleartext master password from a memory dump, even when a workspace is locked or no longer running. The memory dump can be a KeePass process dump, swap file (pagefile.sys), hibernation file (hiberfil.sys), or RAM dump of the entire system. The first character cannot be recovered. In 2.54, there is different API usage and/or random string insertion for mitigation.
- Record
CVE-2023-32784- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
OSVDEBIAN-CVE-2023-32784
7.5
In KeePass 2.x before 2.54, it is possible to recover the cleartext master password from a memory dump, even when a workspace is locked or no longer running. The memory dump can be a KeePass process dump, swap file (pagefile.sys), hibernation file (hiberfil.sys), or RAM dump of the entire system. The first character cannot be recovered. In 2.54, there is different API usage and/or random string insertion for mitigation.
- Record
DEBIAN-CVE-2023-32784- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
Show 5 moreShow less
OSVUBUNTU-CVE-2023-32784
7.5
In KeePass 2.x before 2.54, it is possible to recover the cleartext master password from a memory dump, even when a workspace is locked or no longer running. The memory dump can be a KeePass process dump, swap file (pagefile.sys), hibernation file (hiberfil.sys), or RAM dump of the entire system. The first character cannot be recovered. In 2.54, there is different API usage and/or random string insertion for mitigation.
- Record
UBUNTU-CVE-2023-32784- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
OSVMGASA-2023-0221 No score
Updated keepass packages fix security vulnerability
Allows an attacker, who has write access to the XML configuration file, to obtain the cleartext passwords by adding an export trigger. Disputed by vendor due to level of access required. (CVE-2023-24055) Possible to recover the cleartext master password from a memory dump, even when a workspace is locked or no longer running (CVE-2023-32784)
- Record
MGASA-2023-0221- Updated
- 2026-11-02
OSVopenSUSE-SU-2023:0157-1 No score
Security update for keepass
This update for keepass fixes the following issues:
Update to 2.54
-
Security:
- Improved process memory protection of secure edit controls (CVE-2023-32784, boo#1211397).
-
New Features:
- Triggers, global URL overrides, password generator profiles and a few more settings are now stored in the enforced configuration file.
- Added dialog 'Enforce Options (All Users)' (menu 'Tools' → 'Advanced Tools' → 'Enforce Options'), which facilitates storing certain options in the enforced configuration file.
- In report dialogs, passwords (and other sensitive data) are now hidden using asterisks by default (if hiding is activated in the main window); the hiding can be toggled using the new '***' button in the toolbar.
- The 'Print' command in most report dialogs now requires the 'Print' application policy flag, and the master key must be entered if the 'Print - No Key Repeat' application policy flag is deactivated.
- The 'Export' command in most report dialogs now requires the 'Export' application policy flag, and the master key must be entered.
- Single line edit dialogs now support hiding the value using asterisks.
- Commands that require elevation now have a shield icon like on Windows.
- TrlUtil: added 'Move Selected Unused Text to Dialog Control' command.
-
Improvements:
- The content mode of the configuration elements '/Configuration/Application/TriggerSystem', '/Configuration/Integration/UrlSchemeOverrides' and '/Configuration/PasswordGenerator/UserProfiles' is now 'Replace' by default.
- The built-in override for the 'ssh' URI scheme is now deactivated by default (it can be activated in the 'URL Overrides' dialog).
- When opening the password generator dialog without a derived profile, the '(Automatically generated passwords for new entries)' profile is now selected by default, if profiles are enabled (otherwise the default profile is used).
- The clipboard workarounds are now disabled by default (they are not needed anymore on most systems).
- Improved clipboard clearing.
- Improved starting of an elevated process.
-
Bugfixes:
- In report dialogs, the 'Print' and 'Export' commands now always use the actual data (in previous versions, asterisks were printed/exported when the application policy flag 'Unhide Passwords' was turned off).
-
Update to 2.53.1
- When testing a KDF ('Test' button in the database settings dialog), KeePass now spawns a child process that performs the KDF computation (which allows to cancel the test more cleanly in the case of excessive parameters; security is unaffected, because dummy data is used for the test).
- Removed the 'Export - No Key Repeat' application policy flag; KeePass now always asks for the current master key when trying to export data.
- Minor other improvements.
-
Update to 2.53
-
New Features:
- For each entry listed on the 'History' tab page of the entry dialog, the fields modified with respect to the previous entry are displayed.
- Added 'Compare' button on the 'History' tab page of the entry dialog; when two (not necessarily consecutive) history entries are selected, clicking the button shows a detailed comparison (with values, etc.).
- When editing an entry, the history entry list of the entry dialog now contains an entry called 'Dialog (unsaved)', which represents all data entered in the current dialog (other tab pages).
- When editing an entry, the history entry list of the entry dialog now contains an entry called 'Current (TIME)', which is the entry that is currently stored in the database (without any changes made in the current dialog).
- Added 'History' command in the 'Find' main menu; it lists all entry modifications (sorted by time).
- Added filter box in most report dialogs (last modified entries, history, large entries, similar password clusters, password quality, history entry comparison, database file search, ...).
- Added 'Print' button in most…
-
- Record
openSUSE-SU-2023:0157-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2023:0163-1 No score
Security update for keepass
This update for keepass fixes the following issues:
-
Update to 2.54
-
Security:
- Improved process memory protection of secure edit controls (CVE-2023-32784, boo#1211397).
-
New Features:
- Triggers, global URL overrides, password generator profiles and a few more settings are now stored in the enforced configuration file.
- Added dialog 'Enforce Options (All Users)' (menu 'Tools' → 'Advanced Tools' → 'Enforce Options'), which facilitates storing certain options in the enforced configuration file.
- In report dialogs, passwords (and other sensitive data) are now hidden using asterisks by default (if hiding is activated in the main window); the hiding can be toggled using the new '***' button in the toolbar.
- The 'Print' command in most report dialogs now requires the 'Print' application policy flag, and the master key must be entered if the 'Print - No Key Repeat' application policy flag is deactivated.
- The 'Export' command in most report dialogs now requires the 'Export' application policy flag, and the master key must be entered.
- Single line edit dialogs now support hiding the value using asterisks.
- Commands that require elevation now have a shield icon like on Windows.
- TrlUtil: added 'Move Selected Unused Text to Dialog Control' command.
-
Improvements:
- The content mode of the configuration elements '/Configuration/Application/TriggerSystem', '/Configuration/Integration/UrlSchemeOverrides' and '/Configuration/PasswordGenerator/UserProfiles' is now 'Replace' by default.
- The built-in override for the 'ssh' URI scheme is now deactivated by default (it can be activated in the 'URL Overrides' dialog).
- When opening the password generator dialog without a derived profile, the '(Automatically generated passwords for new entries)' profile is now selected by default, if profiles are enabled (otherwise the default profile is used).
- The clipboard workarounds are now disabled by default (they are not needed anymore on most systems).
- Improved clipboard clearing.
- Improved starting of an elevated process.
-
Bugfixes:
- In report dialogs, the 'Print' and 'Export' commands now always use the actual data (in previous versions, asterisks were printed/exported when the application policy flag 'Unhide Passwords' was turned off).
-
- Record
openSUSE-SU-2023:0163-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2024:12982-1 No score
keepass-2.54-1.1 on GA media
These are all security issues fixed in the keepass-2.54-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2024:12982-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
keepass2Debian:12 |
All versions, plus listed versions 2.47+dfsg-22.57+dfsg-12.57+dfsg-1~bpo12+12.57+dfsg-22.57+dfsg-32.57+dfsg-42.60+dfsg-1 |
None known |
keepass2Debian:13 |
All versions, plus listed versions 2.57+dfsg-32.57+dfsg-42.60+dfsg-1 |
None known |
keepass2Debian:14 |
All versions, plus listed versions 2.57+dfsg-32.57+dfsg-42.60+dfsg-1 |
None known |
keepassMageia:8 From an advisory covering 2 CVEs |
before 2.54-1.mga8 | 2.54-1.mga8 |
keepass2Ubuntu:16.04:LTS |
All versions, plus listed versions 2.29+dfsg-12.30+dfsg-12.30+dfsg-22.31+dfsg-12.32+dfsg-1 |
None known |
keepass2Ubuntu:18.04:LTS |
All versions, plus listed versions 2.36+dfsg-12.37+dfsg-12.38+dfsg-1 |
None known |
keepass2Ubuntu:20.04:LTS |
All versions, plus listed versions 2.41+dfsg-12.43+dfsg-12.44+dfsg-1 |
None known |
keepass2Ubuntu:22.04:LTS |
All versions, plus listed versions 2.47+dfsg-2 |
None known |
keepass2Ubuntu:24.04:LTS |
All versions, plus listed versions 2.47+dfsg-2 |
None known |
keepass2Ubuntu:25.10 |
All versions, plus listed versions 2.57+dfsg-3 |
None known |
Show 7 moreShow less
| Package | Affected | Fixed |
|---|---|---|
keepass2Ubuntu:26.10 |
All versions, plus listed versions 2.60+dfsg-1 |
None known |
keepass2Ubuntu:26.04:LTS |
All versions, plus listed versions 2.57+dfsg-32.57+dfsg-42.60+dfsg-1 |
None known |
keepassSUSE:Package Hub 15 SP4 |
before 2.54-bp154.2.3.1 | 2.54-bp154.2.3.1 |
keepassopenSUSE:Leap 15.4 |
before 2.54-bp154.2.3.1 | 2.54-bp154.2.3.1 |
keepassSUSE:Package Hub 15 SP5 |
before 2.54-bp155.2.3.1 | 2.54-bp155.2.3.1 |
keepassopenSUSE:Leap 15.5 |
before 2.54-bp155.2.3.1 | 2.54-bp155.2.3.1 |
keepassopenSUSE:Tumbleweed |
before 2.54-1.1 | 2.54-1.1 |
Public exploits
Links only. Every CVE stores no exploit code.
| Source | Link | Date |
|---|---|---|
| PoC in GitHub | vdohney/keepass-password-dumper | 2023-05-01 |
| PoC in GitHub | CTM1/CVE-2023-32784-keepass-linux | 2023-05-17 |
| PoC in GitHub | und3sc0n0c1d0/BruteForce-to-KeePass | 2023-05-20 |
| PoC in GitHub | z-jxy/keepass_dump | 2023-05-22 |
| PoC in GitHub | hau-zy/KeePass-dump-py | 2023-06-04 |
| PoC in GitHub | dawnl3ss/CVE-2023-32784 | 2023-08-30 |
| PoC in GitHub | mister-turtle/cve-2023-32784 | 2024-02-01 |
| PoC in GitHub | Cmadhushanka/CVE-2023-32784-Exploitation | 2024-07-10 |
| PoC in GitHub | dev0558/CVE-2023-32784-EXPLOIT-REPORT | 2024-12-04 |
| PoC in GitHub | G4sp4rCS/CVE-2023-32784-password-combinator-fixer | 2025-03-31 |
Show 4 moreShow less
| Source | Link | Date |
|---|---|---|
| PoC in GitHub | super-oof/keepass2-password-finder | 2026-03-24 |
| PoC in GitHub | Amperclock/CVE-2023-32784-kdbxpassdmp | 2026-05-25 |
| PoC in GitHub | areebashoaib42/KeePass-CVE-2023-32784-Exploitation-and-Defense | 2026-06-03 |
| PoC in GitHub | Pugazhendii22/keepass-exfil-forensics | 2026-08-14 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, exploits, facts | ||
| aliases | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV, PoC in GitHub |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2023-32784 is a high vulnerability (CVSS 7.5) in Keepass, published May 15, 2023. Public exploit code exists. EPSS puts the chance of exploitation in the next 30 days at 4.40%, the 91st percentile. Fixed in keepass 2.54-bp154.2.3.1.
References
github.com/vdohney/keepass-password-dumper
sourceforge.net/p/keepass/discussion/329220/thread/f3438e6283
github.com/keepassxreboot/keepassxc/discussions/9433
nvd.nist.gov/vuln/detail/CVE-2023-32784
github.com/advisories/GHSA-f4c7-5p8v-p7jh
security-tracker.debian.org/tracker/CVE-2023-32784
Show 9 moreShow less
advisories.mageia.org/MGASA-2023-0221.html
bugs.mageia.org/show_bug.cgi?id=31935
amp.thehackernews.com/thn/2023/05/keepass-exploit-allows-attackers-to.html
ubuntu.com/security/CVE-2023-32784
cve.org/CVERecord?id=CVE-2023-32784
lists.opensuse.org/archives/list/[email protected]/thread/YO3KDTWTM4LYCKXITB6HKBAPXRJFQLJ6
bugzilla.suse.com/1211397
suse.com/security/cve/CVE-2023-32784
lists.opensuse.org/archives/list/[email protected]/thread/CFQRNEAN42U36FDY44HBZDRFMS7QLMMZ
Left out here: the rest of 1 source description. The JSON record has them.