CVE-2026-111879
DBI versions before 1.656 for Perl hang on a later open of a DBD::DBM table because a failed open_data does not release the table's lock
DBI versions before 1.656 for Perl hang on a later open of a DBD::DBM table because a failed open_data does not release the table's lock.
open_data creates the table's lock file and takes an exclusive flock on it for a CREATE, before the checks that can croak: a dbm_mldbm value that is not a module name, a failing tie, or a missing data file. The croak unwinds before the table object is blessed, so nothing releases the lock, and the meta data holding the open descriptor stays cached on the database handle.
The dbm_mldbm and dbm_type values come from the DSN or the connect attributes, so a caller that chooses the serializer or the storage backend can trigger the failure.
The flock has no timeout, so a later open of that table (even through a separate database handle) blocks for as long as the handle holding the stale lock lives, in the same process or any other.
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
- Low
- Integrity
- Low
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used
6.5
DBI versions before 1.656 for Perl hang on a later open of a DBD::DBM table because a failed open_data does not release the table's lock
DBI versions before 1.656 for Perl hang on a later open of a DBD::DBM table because a failed open_data does not release the table's lock.
open_data creates the table's lock file and takes an exclusive flock on it for a CREATE, before the checks that can croak: a dbm_mldbm value that is not a module name, a failing tie, or a missing data file. The croak unwinds before the table object is blessed, so nothing releases the lock, and the meta data holding the open descriptor stays cached on the database handle.
The dbm_mldbm and dbm_type values come from the DSN or the connect attributes, so a caller that chooses the serializer or the storage backend can trigger the failure.
The flock has no timeout, so a later open of that table (even through a separate database handle) blocks for as long as the handle holding the stale lock lives, in the same process or any other.
- Record
CVE-2026-111879- CVSS 3.1
- 6.5 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N - Weakness
- CWE-667
- Updated
- 2026-11-02
EUVDEUVD-2026-106354
6.5
DBI versions before 1.656 for Perl hang on a later open of a DBD::DBM table because a failed open_data does not release the table's lock.
open_data creates the table's lock file and takes an exclusive flock on it for a CREATE, before the checks that can croak: a dbm_mldbm value that is not a module name, a failing tie, or a missing data file. The croak unwinds before the table object is blessed, so nothing releases the lock, and the meta data holding the open descriptor stays cached on the database handle.
The dbm_mldbm and dbm_type values come from the DSN or the connect attributes, so a caller that chooses the serializer or the storage backend can trigger the failure.
The flock has no timeout, so a later open of that table (even through a separate database handle) blocks for as long as the handle holding the stale lock lives, in the same process or any other.
- Record
EUVD-2026-106354- CVSS 3.1
- 6.5 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N - Updated
- 2026-11-02
NVD
6.5
DBI versions before 1.656 for Perl hang on a later open of a DBD::DBM table because a failed open_data does not release the table's lock.
open_data creates the table's lock file and takes an exclusive flock on it for a CREATE, before the checks that can croak: a dbm_mldbm value that is not a module name, a failing tie, or a missing data file. The croak unwinds before the table object is blessed, so nothing releases the lock, and the meta data holding the open descriptor stays cached on the database handle.
The dbm_mldbm and dbm_type values come from the DSN or the connect attributes, so a caller that chooses the serializer or the storage backend can trigger the failure.
The flock has no timeout, so a later open of that table (even through a separate database handle) blocks for as long as the handle holding the stale lock lives, in the same process or any other.
- Record
CVE-2026-111879- CVSS 3.1
- 6.5 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N - Weakness
- CWE-667
- Updated
- 2026-11-02
OSVBELL-CVE-2026-111879
6.5
- Record
BELL-CVE-2026-111879- CVSS 3.1
- 6.5 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N - Updated
- 2026-11-02
OSV
6.5
DBI versions before 1.656 for Perl hang on a later open of a DBD::DBM table because a failed open_data does not release the table's lock
DBI versions before 1.656 for Perl hang on a later open of a DBD::DBM table because a failed open_data does not release the table's lock.
open_data creates the table's lock file and takes an exclusive flock on it for a CREATE, before the checks that can croak: a dbm_mldbm value that is not a module name, a failing tie, or a missing data file. The croak unwinds before the table object is blessed, so nothing releases the lock, and the meta data holding the open descriptor stays cached on the database handle.
The dbm_mldbm and dbm_type values come from the DSN or the connect attributes, so a caller that chooses the serializer or the storage backend can trigger the failure.
The flock has no timeout, so a later open of that table (even through a separate database handle) blocks for as long as the handle holding the stale lock lives, in the same process or any other.
- Record
CVE-2026-111879- CVSS 3.1
- 6.5 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N - Weakness
- CWE-667
- Updated
- 2026-11-02
OSVDEBIAN-CVE-2026-111879
6.5
DBI versions before 1.656 for Perl hang on a later open of a DBD::DBM table because a failed open_data does not release the table's lock. open_data creates the table's lock file and takes an exclusive flock on it for a CREATE, before the checks that can croak: a dbm_mldbm value that is not a module name, a failing tie, or a missing data file. The croak unwinds before the table object is blessed, so nothing releases the lock, and the meta data holding the open descriptor stays cached on the database handle. The dbm_mldbm and dbm_type values come from the DSN or the connect attributes, so a caller that chooses the serializer or the storage backend can trigger the failure. The flock has no timeout, so a later open of that table (even through a separate database handle) blocks for as long as the handle holding the stale lock lives, in the same process or any other.
- Record
DEBIAN-CVE-2026-111879- CVSS 3.1
- 6.5 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N - Updated
- 2026-11-02
Show 4 moreShow less
OSVUBUNTU-CVE-2026-111879
6.5
DBI versions before 1.656 for Perl hang on a later open of a DBD::DBM table because a failed open_data does not release the table's lock. open_data creates the table's lock file and takes an exclusive flock on it for a CREATE, before the checks that can croak: a dbm_mldbm value that is not a module name, a failing tie, or a missing data file. The croak unwinds before the table object is blessed, so nothing releases the lock, and the meta data holding the open descriptor stays cached on the database handle. The dbm_mldbm and dbm_type values come from the DSN or the connect attributes, so a caller that chooses the serializer or the storage backend can trigger the failure. The flock has no timeout, so a later open of that table (even through a separate database handle) blocks for as long as the handle holding the stale lock lives, in the same process or any other.
- Record
UBUNTU-CVE-2026-111879- CVSS 3.1
- 6.5 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N - Updated
- 2026-11-03
OSVAZL-110061 No score
CVE-2026-111879 affecting package perl-DBI for versions less than 1.656-1
DBI versions before 1.656 for Perl hang on a later open of a DBD::DBM table because a failed open_data does not release the table's lock.
open_data creates the table's lock file and takes an exclusive flock on it for a CREATE, before the checks that can croak: a dbm_mldbm value that is not a module name, a failing tie, or a missing data file. The croak unwinds before the table object is blessed, so nothing releases the lock, and the meta data holding the open descriptor stays cached on the database handle.
The dbm_mldbm and dbm_type values come from the DSN or the connect attributes, so a caller that chooses the serializer or the storage backend can trigger the failure.
The flock has no timeout, so a later open of that table (even through a separate database handle) blocks for as long as the handle holding the stale lock lives, in the same process or any other.
- Record
AZL-110061- Updated
- 2026-11-02
OSVMGASA-2026-0551 No score
Updated perl-DBI package fixes security vulnerabilities
dbi_profile(): crash (type confusion) when a database handle is destroyed while its Profile Path contains {attr} elements. (CVE-2026-108518) Failed DBD::DBM file creation left lock files in place. (CVE-2026-111879)
- Record
MGASA-2026-0551- Updated
- 2026-11-02
OSVopenSUSE-SU-2026:12201-1 No score
perl-DBI-1.656.0-1.1 on GA media
These are all security issues fixed in the perl-DBI-1.656.0-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2026:12201-1- Updated
- 2026-11-02
Affected packages
| Package | Affected | Fixed |
|---|---|---|
perl-DBIAzure Linux:3 |
before 1.656-1 | 1.656-1 |
perl-dbiAlpaquita:23 |
1.643-r4 and later | None known |
perl-dbiAlpaquita:25 |
1.647-r0 and later | None known |
perl-dbiAlpaquita:stream |
1.643-r3 up to 1.656-r0 | 1.656-r0 |
libdbi-perlDebian:12 |
All versions, plus listed versions 1.643-41.643-4+deb12u11.643-4+deb12u21.643-4+deb12u31.644-1 Show 13 moreShow less1.645-11.647-11.648-11.649-11.650-11.651-11.652-11.652-21.652-2~deb13u11.653-11.654-11.655-11.656-1 |
None known |
libdbi-perlDebian:13 |
All versions, plus listed versions 1.647-11.647-1+deb13u11.648-11.649-11.650-1 Show 8 moreShow less1.651-11.652-11.652-21.652-2~deb13u11.653-11.654-11.655-11.656-1 |
None known |
libdbi-perlDebian:14 |
before 1.656-1, plus listed versions 1.647-11.648-11.649-11.650-11.651-1 Show 6 moreShow less1.652-11.652-21.652-2~deb13u11.653-11.654-11.655-1 |
1.656-1 |
perl-DBIMageia:10 From an advisory covering 2 CVEs |
before 1.656.0-1.mga10 | 1.656.0-1.mga10 |
libdbi-perlUbuntu:Pro:14.04:LTS |
All versions, plus listed versions 1.627-11.628-11.630-11.630-1ubuntu0.1~esm11.630-1ubuntu0.1~esm4 Show 4 moreShow less1.630-1ubuntu0.1~esm51.630-1ubuntu0.1~esm61.630-1ubuntu0.1~esm81.630-1ubuntu0.1~esm9 |
None known |
libdbi-perlUbuntu:Pro:16.04:LTS |
All versions, plus listed versions 1.633-11.634-11.634-1build11.634-1ubuntu0.11.634-1ubuntu0.2 Show 4 moreShow less1.634-1ubuntu0.2+esm11.634-1ubuntu0.2+esm21.634-1ubuntu0.2+esm41.634-1ubuntu0.2+esm5 |
None known |
Show 7 moreShow less
| Package | Affected | Fixed |
|---|---|---|
libdbi-perlUbuntu:Pro:18.04:LTS |
All versions, plus listed versions 1.637-11.639-11.640-11.640-1ubuntu0.11.640-1ubuntu0.2 Show 4 moreShow less1.640-1ubuntu0.31.640-1ubuntu0.3+esm11.640-1ubuntu0.3+esm31.640-1ubuntu0.3+esm4 |
None known |
libdbi-perlUbuntu:Pro:20.04:LTS |
All versions, plus listed versions 1.642-11.642-1build11.643-11.643-1ubuntu0.11.643-1ubuntu0.1+esm11.643-1ubuntu0.1+esm31.643-1ubuntu0.1+esm4 |
None known |
libdbi-perlUbuntu:22.04:LTS |
All versions, plus listed versions 1.643-3build21.643-3build31.643-3ubuntu0.11.643-3ubuntu0.31.643-3ubuntu0.4 |
None known |
libdbi-perlUbuntu:24.04:LTS |
All versions, plus listed versions 1.643-41.643-4build11.643-4build21.643-4build31.643-4ubuntu0.11.643-4ubuntu0.31.643-4ubuntu0.4 |
None known |
libdbi-perlUbuntu:26.10 |
All versions, plus listed versions 1.647-1build11.648-11.651-11.652-2 |
None known |
libdbi-perlUbuntu:26.04:LTS |
All versions, plus listed versions 1.647-11.647-1build11.647-1ubuntu0.26.04.11.647-1ubuntu0.26.04.31.647-1ubuntu0.26.04.4 |
None known |
perl-DBIopenSUSE:Tumbleweed From an advisory covering 2 CVEs |
before 1.656.0-1.1 | 1.656.0-1.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected | ||
| facts | OSV | |
| first indexed | CVE List, EUVD, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-111879 is a medium vulnerability (CVSS 6.5) in perl-DBI, published October 20, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.33%, the 25th percentile. Fixed in perl-DBI 1.656-1.
References
github.com/perl5-dbi/dbi/security/advisories/GHSA-8cx8-9vj9-9x7j
github.com/perl5-dbi/dbi/commit/99bbf2ab9d137e6f042a770bd3bbba3bc0b3a901.patch
metacpan.org/release/HMBRAND/DBI-1.656/changes
openwall.com/lists/oss-security/2026/10/20/38
nvd.nist.gov/vuln/detail/CVE-2026-111879
docs.bell-sw.com/security/cves/CVE-2026-111879
Show 13 moreShow less
cpan.org/modules
github.com/CVEProject/cvelistV5/tree/main/cves/2026/111xxx/CVE-2026-111879.json
github.com/perl5-dbi/dbi
security-tracker.debian.org/tracker/CVE-2026-111879
advisories.mageia.org/MGASA-2026-0551.html
bugs.mageia.org/show_bug.cgi?id=36556
openwall.com/lists/oss-security/2026/10/20/37
github.com/perl5-dbi/dbi/security/advisories/GHSA-7393-6f8r-fhh3
ubuntu.com/security/CVE-2026-111879
cve.org/CVERecord?id=CVE-2026-111879
lists.security.metacpan.org/cve-announce/msg/44513053
suse.com/security/cve/CVE-2026-108518
suse.com/security/cve/CVE-2026-111879