---
id: CVE-2025-29087
title: >-
  In SQLite 3.44.0 through 3.49.0 before 3.49.1, the concat_ws() SQL function
  can cause memory to be written beyond the end of a malloc-allocated buffer
summary: >-
  In SQLite 3.44.0 through 3.49.0 before 3.49.1, the concat_ws() SQL function
  can cause memory to be written beyond the end of a malloc-allocated buffer. If
  the separator argument is attacker-controlled and has a large string (e.g.,
  2MB or…
severity: low
cvss: 3.2
cvssVector: 'CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:C/C:N/I:N/A:L'
cwe:
  - CWE-190
vendor: sqlite
product: sqlite
affected:
  - 'sqlite >= 3.44.0, < 3.49.1'
patched:
  - sqlite 3.49.1
published: '2025-04-07'
updated: '2026-10-15'
sourceUpdated: '2026-10-15T02:17:47.313'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2025-29087'
references:
  - url: 'https://gist.github.com/ylwango613/a44a29f1ef074fa783e29f04a0afd62a'
    label: cve@mitre.org
  - url: 'https://sqlite.org/releaselog/3_49_1.html'
    label: cve@mitre.org
  - url: 'https://www.sqlite.org/cves.html'
    label: cve@mitre.org
  - url: 'https://cert-portal.siemens.com/productcert/html/ssa-398330.html'
    label: 0b142b55-0307-4c5a-b3c9-f314f3fb7c5e
  - url: 'https://cert-portal.siemens.com/productcert/html/ssa-994087.html'
    label: 0b142b55-0307-4c5a-b3c9-f314f3fb7c5e
tags:
  - nvd
  - cve.org
epss: 0.00517
epssPercentile: 0.42565
ingestedAt: '2026-10-15T03:30:12.809Z'
ssvc:
  exploitation: none
  automatable: 'yes'
  technicalImpact: total
  timestamp: '2025-04-08T13:27:16.707351Z'
---

## Overview

In SQLite 3.44.0 through 3.49.0 before 3.49.1, the concat_ws() SQL function can cause memory to be written beyond the end of a malloc-allocated buffer. If the separator argument is attacker-controlled and has a large string (e.g., 2MB or more), an integer overflow occurs in calculating the size of the result buffer, and thus malloc may not allocate enough memory.

## Affected

- `sqlite >= 3.44.0, < 3.49.1`

## Remediation

Upgrade past the affected range:

- `sqlite 3.49.1`
