Every CVE Search/ Get API key

CVE-2026-108518

DBI versions before 1.656 for Perl crash via type confusion in dbi_profile when a database handle is destroyed under a Profile Path with an {attr} element

2.9 LowFix available

DBI versions before 1.656 for Perl crash via type confusion in dbi_profile when a database handle is destroyed under a Profile Path with an {attr} element.

An {attr} element names a database handle attribute, which dbi_profile reads from the handle's inner hash. It expects the inner handle as a reference and dereferences it, but a handle that is being destroyed hands back the inner hash itself, so the dereference yields the hash's bucket array. A type check on that pointer usually fails and the call goes unprofiled. When the memory it addresses passes the check, the attribute lookup dereferences a NULL or invalid pointer and the process dies on SIGSEGV.

The Path is set by the application, by the Profile handle attribute, or by the DBI_PROFILE environment variable, so DBI_PROFILE={ImplementorClass} can crash an unmodified program.

Attack profile

How easy it is to exploit

Attack vector
Local
Complexity
High
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
None
Integrity
None
Availability
Low

Exploit likelihood

0.25%Unchanged since Oct 21, 2026
90%50%10%1%

What each source reports

CVE List Score used 2.9

DBI versions before 1.656 for Perl crash via type confusion in dbi_profile when a database handle is destroyed under a Profile Path with an {attr} element

DBI versions before 1.656 for Perl crash via type confusion in dbi_profile when a database handle is destroyed under a Profile Path with an {attr} element.

An {attr} element names a database handle attribute, which dbi_profile reads from the handle's inner hash. It expects the inner handle as a reference and dereferences it, but a handle that is being destroyed hands back the inner hash itself, so the dereference yields the hash's bucket array. A type check on that pointer usually fails and the call goes unprofiled. When the memory it addresses passes the check, the attribute lookup dereferences a NULL or invalid pointer and the process dies on SIGSEGV.

The Path is set by the application, by the Profile handle attribute, or by the DBI_PROFILE environment variable, so DBI_PROFILE={ImplementorClass} can crash an unmodified program.

Record
CVE-2026-108518
CVSS 3.1
2.9 LowCVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
Weakness
CWE-843
Updated
2026-11-02
EUVDEUVD-2026-106230 2.9

DBI versions before 1.656 for Perl crash via type confusion in dbi_profile when a database handle is destroyed under a Profile Path with an {attr} element.

An {attr} element names a database handle attribute, which dbi_profile reads from the handle's inner hash. It expects the inner handle as a reference and dereferences it, but a handle that is being destroyed hands back the inner hash itself, so the dereference yields the hash's bucket array. A type check on that pointer usually fails and the call goes unprofiled. When the memory it addresses passes the check, the attribute lookup dereferences a NULL or invalid pointer and the process dies on SIGSEGV.

The Path is set by the application, by the Profile handle attribute, or by the DBI_PROFILE environment variable, so DBI_PROFILE={ImplementorClass} can crash an unmodified program.

Record
EUVD-2026-106230
CVSS 3.1
2.9 LowCVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
Updated
2026-11-02
NVD 2.9

DBI versions before 1.656 for Perl crash via type confusion in dbi_profile when a database handle is destroyed under a Profile Path with an {attr} element.

An {attr} element names a database handle attribute, which dbi_profile reads from the handle's inner hash. It expects the inner handle as a reference and dereferences it, but a handle that is being destroyed hands back the inner hash itself, so the dereference yields the hash's bucket array. A type check on that pointer usually fails and the call goes unprofiled. When the memory it addresses passes the check, the attribute lookup dereferences a NULL or invalid pointer and the process dies on SIGSEGV.

The Path is set by the application, by the Profile handle attribute, or by the DBI_PROFILE environment variable, so DBI_PROFILE={ImplementorClass} can crash an unmodified program.

Record
CVE-2026-108518
CVSS 3.1
2.9 LowCVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
Weakness
CWE-843
Updated
2026-11-02
OSVBELL-CVE-2026-108518 2.9
Record
BELL-CVE-2026-108518
CVSS 3.1
2.9 LowCVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
Updated
2026-11-02
OSV 2.9

DBI versions before 1.656 for Perl crash via type confusion in dbi_profile when a database handle is destroyed under a Profile Path with an {attr} element

DBI versions before 1.656 for Perl crash via type confusion in dbi_profile when a database handle is destroyed under a Profile Path with an {attr} element.

An {attr} element names a database handle attribute, which dbi_profile reads from the handle's inner hash. It expects the inner handle as a reference and dereferences it, but a handle that is being destroyed hands back the inner hash itself, so the dereference yields the hash's bucket array. A type check on that pointer usually fails and the call goes unprofiled. When the memory it addresses passes the check, the attribute lookup dereferences a NULL or invalid pointer and the process dies on SIGSEGV.

The Path is set by the application, by the Profile handle attribute, or by the DBI_PROFILE environment variable, so DBI_PROFILE={ImplementorClass} can crash an unmodified program.

Record
CVE-2026-108518
CVSS 3.1
2.9 LowCVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
Weakness
CWE-843
Updated
2026-11-02
OSVDEBIAN-CVE-2026-108518 2.9

DBI versions before 1.656 for Perl crash via type confusion in dbi_profile when a database handle is destroyed under a Profile Path with an {attr} element. An {attr} element names a database handle attribute, which dbi_profile reads from the handle's inner hash. It expects the inner handle as a reference and dereferences it, but a handle that is being destroyed hands back the inner hash itself, so the dereference yields the hash's bucket array. A type check on that pointer usually fails and the call goes unprofiled. When the memory it addresses passes the check, the attribute lookup dereferences a NULL or invalid pointer and the process dies on SIGSEGV. The Path is set by the application, by the Profile handle attribute, or by the DBI_PROFILE environment variable, so DBI_PROFILE={ImplementorClass} can crash an unmodified program.

Record
DEBIAN-CVE-2026-108518
CVSS 3.1
2.9 LowCVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
Updated
2026-11-02
Show 8 moreShow less
OSVOESA-2026-4597 4.7

perl-DBI security update

The DBI is the standard database interface module for Perl. It defines a set of methods, variables and conventions that provide a consistent database interface independent of the actual database being used. It is important to remember that the DBI is just an interface. The DBI is a layer of "glue" between an application and one or more database driver modules. It is the driver modules which do most of the real work. The DBI provides a standard interface and framework for the drivers to operate within.

Security Fix(es):

DBI versions before 1.656 for Perl crash via type confusion in dbi_profile when a database handle is destroyed under a Profile Path with an {attr} element.

An {attr} element names a database handle attribute, which dbi_profile reads from the handle's inner hash. It expects the inner handle as a reference and dereferences it, but a handle that is being destroyed hands back the inner hash itself, so the dereference yields the hash's bucket array. A type check on that pointer usually fails and the call goes unprofiled. When the memory it addresses passes the check, the attribute lookup dereferences a NULL or invalid pointer and the process dies on SIGSEGV.

The Path is set by the application, by the Profile handle attribute, or by the DBI_PROFILE environment variable, so DBI_PROFILE={ImplementorClass} can crash an unmodified program.(CVE-2026-108518)

Record
OESA-2026-4597
CVSS 3.1
4.7 MediumCVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVOESA-2026-4598 4.7

perl-DBI security update

The DBI is the standard database interface module for Perl. It defines a set of methods, variables and conventions that provide a consistent database interface independent of the actual database being used. It is important to remember that the DBI is just an interface. The DBI is a layer of "glue" between an application and one or more database driver modules. It is the driver modules which do most of the real work. The DBI provides a standard interface and framework for the drivers to operate within.

Security Fix(es):

DBI versions before 1.656 for Perl crash via type confusion in dbi_profile when a database handle is destroyed under a Profile Path with an {attr} element.

An {attr} element names a database handle attribute, which dbi_profile reads from the handle's inner hash. It expects the inner handle as a reference and dereferences it, but a handle that is being destroyed hands back the inner hash itself, so the dereference yields the hash's bucket array. A type check on that pointer usually fails and the call goes unprofiled. When the memory it addresses passes the check, the attribute lookup dereferences a NULL or invalid pointer and the process dies on SIGSEGV.

The Path is set by the application, by the Profile handle attribute, or by the DBI_PROFILE environment variable, so DBI_PROFILE={ImplementorClass} can crash an unmodified program.(CVE-2026-108518)

Record
OESA-2026-4598
CVSS 3.1
4.7 MediumCVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVOESA-2026-4599 4.7

perl-DBI security update

The DBI is the standard database interface module for Perl. It defines a set of methods, variables and conventions that provide a consistent database interface independent of the actual database being used. It is important to remember that the DBI is just an interface. The DBI is a layer of "glue" between an application and one or more database driver modules. It is the driver modules which do most of the real work. The DBI provides a standard interface and framework for the drivers to operate within.

Security Fix(es):

DBI versions before 1.656 for Perl crash via type confusion in dbi_profile when a database handle is destroyed under a Profile Path with an {attr} element.

An {attr} element names a database handle attribute, which dbi_profile reads from the handle's inner hash. It expects the inner handle as a reference and dereferences it, but a handle that is being destroyed hands back the inner hash itself, so the dereference yields the hash's bucket array. A type check on that pointer usually fails and the call goes unprofiled. When the memory it addresses passes the check, the attribute lookup dereferences a NULL or invalid pointer and the process dies on SIGSEGV.

The Path is set by the application, by the Profile handle attribute, or by the DBI_PROFILE environment variable, so DBI_PROFILE={ImplementorClass} can crash an unmodified program.(CVE-2026-108518)

Record
OESA-2026-4599
CVSS 3.1
4.7 MediumCVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVOESA-2026-4600 4.7

perl-DBI security update

The DBI is the standard database interface module for Perl. It defines a set of methods, variables and conventions that provide a consistent database interface independent of the actual database being used. It is important to remember that the DBI is just an interface. The DBI is a layer of "glue" between an application and one or more database driver modules. It is the driver modules which do most of the real work. The DBI provides a standard interface and framework for the drivers to operate within.

Security Fix(es):

DBI versions before 1.656 for Perl crash via type confusion in dbi_profile when a database handle is destroyed under a Profile Path with an {attr} element.

An {attr} element names a database handle attribute, which dbi_profile reads from the handle's inner hash. It expects the inner handle as a reference and dereferences it, but a handle that is being destroyed hands back the inner hash itself, so the dereference yields the hash's bucket array. A type check on that pointer usually fails and the call goes unprofiled. When the memory it addresses passes the check, the attribute lookup dereferences a NULL or invalid pointer and the process dies on SIGSEGV.

The Path is set by the application, by the Profile handle attribute, or by the DBI_PROFILE environment variable, so DBI_PROFILE={ImplementorClass} can crash an unmodified program.(CVE-2026-108518)

Record
OESA-2026-4600
CVSS 3.1
4.7 MediumCVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVUBUNTU-CVE-2026-108518 2.9

DBI versions before 1.656 for Perl crash via type confusion in dbi_profile when a database handle is destroyed under a Profile Path with an {attr} element. An {attr} element names a database handle attribute, which dbi_profile reads from the handle's inner hash. It expects the inner handle as a reference and dereferences it, but a handle that is being destroyed hands back the inner hash itself, so the dereference yields the hash's bucket array. A type check on that pointer usually fails and the call goes unprofiled. When the memory it addresses passes the check, the attribute lookup dereferences a NULL or invalid pointer and the process dies on SIGSEGV. The Path is set by the application, by the Profile handle attribute, or by the DBI_PROFILE environment variable, so DBI_PROFILE={ImplementorClass} can crash an unmodified program.

Record
UBUNTU-CVE-2026-108518
CVSS 3.1
2.9 LowCVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
Updated
2026-11-03
OSVAZL-110058 No score

CVE-2026-108518 affecting package perl-DBI for versions less than 1.656-1

DBI versions before 1.656 for Perl crash via type confusion in dbi_profile when a database handle is destroyed under a Profile Path with an {attr} element.

An {attr} element names a database handle attribute, which dbi_profile reads from the handle's inner hash. It expects the inner handle as a reference and dereferences it, but a handle that is being destroyed hands back the inner hash itself, so the dereference yields the hash's bucket array. A type check on that pointer usually fails and the call goes unprofiled. When the memory it addresses passes the check, the attribute lookup dereferences a NULL or invalid pointer and the process dies on SIGSEGV.

The Path is set by the application, by the Profile handle attribute, or by the DBI_PROFILE environment variable, so DBI_PROFILE={ImplementorClass} can crash an unmodified program.

Record
AZL-110058
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

Affected packages
PackageAffectedFixed
perl-DBI
Azure Linux:3
before 1.656-1
1.656-1
perl-dbi
Alpaquita:23
1.643-r4 and later None known
perl-dbi
Alpaquita:25
1.647-r0 and later None known
perl-dbi
Alpaquita:stream
1.643-r3 up to 1.656-r0
1.656-r0
libdbi-perl
Debian:12
All versions, plus listed versions
1.643-41.643-4+deb12u11.643-4+deb12u21.643-4+deb12u31.644-1
Show 13 moreShow less
1.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-perl
Debian:13
All versions, plus listed versions
1.647-11.647-1+deb13u11.648-11.649-11.650-1
Show 8 moreShow less
1.651-11.652-11.652-21.652-2~deb13u11.653-11.654-11.655-11.656-1
None known
libdbi-perl
Debian:14
before 1.656-1, plus listed versions
1.647-11.648-11.649-11.650-11.651-1
Show 6 moreShow less
1.652-11.652-21.652-2~deb13u11.653-11.654-11.655-1
1.656-1
perl-DBI
Mageia:10
From an advisory covering 2 CVEs
before 1.656.0-1.mga10
1.656.0-1.mga10
perl-DBI
openEuler:24.03-LTS-SP1
before 1.643-13.oe2403sp1
1.643-13.oe2403sp1
perl-DBI
openEuler:24.03-LTS-SP3
before 1.643-13.oe2403sp3
1.643-13.oe2403sp3
Show 11 moreShow less
Affected packages
PackageAffectedFixed
perl-DBI
openEuler:24.03-LTS-SP4
before 1.648-9.oe2403sp4
1.648-9.oe2403sp4
perl-DBI
openEuler:22.03-LTS-SP4
before 1.643-13.oe2203sp4
1.643-13.oe2203sp4
libdbi-perl
Ubuntu: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 less
1.630-1ubuntu0.1~esm51.630-1ubuntu0.1~esm61.630-1ubuntu0.1~esm81.630-1ubuntu0.1~esm9
None known
libdbi-perl
Ubuntu: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 less
1.634-1ubuntu0.2+esm11.634-1ubuntu0.2+esm21.634-1ubuntu0.2+esm41.634-1ubuntu0.2+esm5
None known
libdbi-perl
Ubuntu: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 less
1.640-1ubuntu0.31.640-1ubuntu0.3+esm11.640-1ubuntu0.3+esm31.640-1ubuntu0.3+esm4
None known
libdbi-perl
Ubuntu: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-perl
Ubuntu: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-perl
Ubuntu: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-perl
Ubuntu:26.10
All versions, plus listed versions
1.647-1build11.648-11.651-11.652-2
None known
libdbi-perl
Ubuntu: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-DBI
openSUSE:Tumbleweed
From an advisory covering 2 CVEs
before 1.656.0-1.1
1.656.0-1.1

History

History
RecordedChangedSources
affected
factsOSV
first indexedCVE List, EUVD, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2026-108518 is a low vulnerability (CVSS 2.9) 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.25%, the 17th percentile. Fixed in perl-DBI 1.656-1.

References

Show 17 moreShow less
MoveEnter Open