{"id":"UBUNTU-CVE-2025-29087","details":"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.","modified":"2026-04-22T19:14:51.204212Z","published":"2025-04-07T20:15:00Z","related":["USN-7528-1"],"upstream":["CVE-2025-29087"],"references":[{"type":"REPORT","url":"https://ubuntu.com/security/CVE-2025-29087"},{"type":"REPORT","url":"https://www.cve.org/CVERecord?id=CVE-2025-29087"},{"type":"REPORT","url":"https://gist.github.com/ylwango613/a44a29f1ef074fa783e29f04a0afd62a"},{"type":"ADVISORY","url":"https://ubuntu.com/security/notices/USN-7528-1"}],"affected":[{"package":{"name":"sqlite3","ecosystem":"Ubuntu:24.04:LTS","purl":"pkg:deb/ubuntu/sqlite3@3.45.1-1ubuntu2.3?arch=source&distro=noble"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.45.1-1ubuntu2.3"}]}],"versions":["3.42.0-1","3.44.0-1","3.44.2-1","3.45.0-1","3.45.1-1","3.45.1-1ubuntu1","3.45.1-1ubuntu2","3.45.1-1ubuntu2.1"],"ecosystem_specific":{"availability":"No subscription required","binaries":[{"binary_name":"lemon","binary_version":"3.45.1-1ubuntu2.3"},{"binary_name":"libsqlite3-0","binary_version":"3.45.1-1ubuntu2.3"},{"binary_name":"libsqlite3-tcl","binary_version":"3.45.1-1ubuntu2.3"},{"binary_name":"sqlite3","binary_version":"3.45.1-1ubuntu2.3"},{"binary_name":"sqlite3-tools","binary_version":"3.45.1-1ubuntu2.3"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2025/UBUNTU-CVE-2025-29087.json"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:C/C:N/I:N/A:L"},{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"},{"type":"Ubuntu","score":"medium"}]}