SUSE-SU-2026:20771-1
Vulnerability from csaf_suse - Published: 2026-03-23 09:46 - Updated: 2026-03-23 09:46Summary
Security update for sqlite3
Severity
Moderate
Notes
Title of the patch: Security update for sqlite3
Description of the patch: This update for sqlite3 fixes the following issues:
Update to sqlite3 3.51.3:
- CVE-2025-7709: Integer Overflow in FTS5 Extension (bsc#1254670).
- CVE-2025-70873: SQLite zipfile extension may disclose uninitialized heap memory during inflation (bsc#1259619).
Changelog:
Update to version 3.51.3:
* Fix the WAL-reset database corruption bug:
https://sqlite.org/wal.html#walresetbug
* Other minor bug fixes.
Update to version 3.51.2:
* Fix an obscure deadlock in the new broken-posix-lock detection
logic.
* Fix multiple problems in the EXISTS-to-JOIN optimization.
Update to version 3.51.1:
* Fix incorrect results from nested EXISTS queries caused by the
optimization in item 6b in the 3.51.0 release.
* Fix a latent bug in fts5vocab virtual table, exposed by new
optimizations in the 3.51.0 release
Update to version 3.51.0:
* New macros in sqlite3.h:
- SQLITE_SCM_BRANCH -> the name of the branch from which the
source code is taken.
- SQLITE_SCM_TAGS -> space-separated list of tags on the source
code check-in.
- SQLITE_SCM_DATETIME -> ISO-8601 date and time of the source
* Two new JSON functions, jsonb_each() and jsonb_tree() work the
same as the existing json_each() and json_tree() functions
except that they return JSONB for the "value" column when the
"type" is 'array' or 'object'.
* The carray and percentile extensions are now built into the
amalgamation, though they are disabled by default and must be
activated at compile-time using the -DSQLITE_ENABLE_CARRAY
and/or -DSQLITE_ENABLE_PERCENTILE options, respectively.
* Enhancements to TCL Interface:
- Add the -asdict flag to the eval command to have it set the
row data as a dict instead of an array.
- User-defined functions may now break to return an SQL NULL.
* CLI enhancements:
- Increase the precision of ".timer" to microseconds.
- Enhance the "box" and "column" formatting modes to deal with
double-wide characters.
- The ".imposter" command provides read-only imposter tables
that work with VACUUM and do not require the --unsafe-testing
option.
- Add the --ifexists option to the CLI command-line option and
to the .open command.
- Limit columns widths set by the ".width" command to 30,000 or
less, as there is not good reason to have wider columns, but
supporting wider columns provides opportunity to malefactors.
* Performance enhancements:
- Use fewer CPU cycles to commit a read transaction.
- Early detection of joins that return no rows due to one or
more of the tables containing no rows.
- Avoid evaluation of scalar subqueries if the result of the
subquery does not change the result of the overall expression.
- Faster window function queries when using
"BETWEEN :x FOLLOWING AND :y FOLLOWING" with a large :y.
* Add the PRAGMA wal_checkpoint=NOOP; command and the
SQLITE_CHECKPOINT_NOOP argument for sqlite3_wal_checkpoint_v2().
* Add the sqlite3_set_errmsg() API for use by extensions.
* Add the sqlite3_db_status64() API, which works just like the
existing sqlite3_db_status() API except that it returns 64-bit
results.
* Add the SQLITE_DBSTATUS_TEMPBUF_SPILL option to the
sqlite3_db_status() and sqlite3_db_status64() interfaces.
* In the session extension add the sqlite3changeset_apply_v3()
interface.
* For the built-in printf() and the format() SQL function, omit
the leading '-' from negative floating point numbers if the '+'
flag is omitted and the "#" flag is present and all displayed
digits are '0'. Use '%#f' or similar to avoid outputs like
'-0.00' and instead show just '0.00'.
* Improved error messages generated by FTS5.
* Enforce STRICT typing on computed columns.
* Improved support for VxWorks
* JavaScript/WASM now supports 64-bit WASM. The canonical builds
continue to be 32-bit but creating one's own 64-bit build is
now as simple as running "make".
Patchnames: SUSE-SLE-Micro-6.1-455
Terms of use: CSAF 2.0 data is provided by SUSE under the Creative Commons License 4.0 with Attribution (CC-BY-4.0).
4.3 (Medium)
Vendor Fix
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
5.4 (Medium)
Vendor Fix
To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or "zypper patch".
References
{
"document": {
"aggregate_severity": {
"namespace": "https://www.suse.com/support/security/rating/",
"text": "moderate"
},
"category": "csaf_security_advisory",
"csaf_version": "2.0",
"distribution": {
"text": "Copyright 2024 SUSE LLC. All rights reserved.",
"tlp": {
"label": "WHITE",
"url": "https://www.first.org/tlp/"
}
},
"lang": "en",
"notes": [
{
"category": "summary",
"text": "Security update for sqlite3",
"title": "Title of the patch"
},
{
"category": "description",
"text": "This update for sqlite3 fixes the following issues:\n\nUpdate to sqlite3 3.51.3:\n\n- CVE-2025-7709: Integer Overflow in FTS5 Extension (bsc#1254670).\n- CVE-2025-70873: SQLite zipfile extension may disclose uninitialized heap memory during inflation (bsc#1259619).\n\nChangelog:\n\nUpdate to version 3.51.3:\n\n * Fix the WAL-reset database corruption bug:\n https://sqlite.org/wal.html#walresetbug\n * Other minor bug fixes.\n \nUpdate to version 3.51.2:\n \n * Fix an obscure deadlock in the new broken-posix-lock detection\n logic.\n * Fix multiple problems in the EXISTS-to-JOIN optimization.\n \nUpdate to version 3.51.1:\n\n * Fix incorrect results from nested EXISTS queries caused by the\n optimization in item 6b in the 3.51.0 release.\n * Fix a latent bug in fts5vocab virtual table, exposed by new\n optimizations in the 3.51.0 release\n \nUpdate to version 3.51.0:\n * New macros in sqlite3.h:\n - SQLITE_SCM_BRANCH -\u003e the name of the branch from which the\n source code is taken.\n - SQLITE_SCM_TAGS -\u003e space-separated list of tags on the source\n code check-in.\n - SQLITE_SCM_DATETIME -\u003e ISO-8601 date and time of the source\n * Two new JSON functions, jsonb_each() and jsonb_tree() work the\n same as the existing json_each() and json_tree() functions\n except that they return JSONB for the \"value\" column when the\n \"type\" is \u0027array\u0027 or \u0027object\u0027.\n * The carray and percentile extensions are now built into the\n amalgamation, though they are disabled by default and must be\n activated at compile-time using the -DSQLITE_ENABLE_CARRAY\n and/or -DSQLITE_ENABLE_PERCENTILE options, respectively.\n * Enhancements to TCL Interface:\n - Add the -asdict flag to the eval command to have it set the\n row data as a dict instead of an array.\n - User-defined functions may now break to return an SQL NULL.\n * CLI enhancements:\n - Increase the precision of \".timer\" to microseconds.\n - Enhance the \"box\" and \"column\" formatting modes to deal with\n double-wide characters.\n - The \".imposter\" command provides read-only imposter tables\n that work with VACUUM and do not require the --unsafe-testing\n option.\n - Add the --ifexists option to the CLI command-line option and\n to the .open command.\n - Limit columns widths set by the \".width\" command to 30,000 or\n less, as there is not good reason to have wider columns, but\n supporting wider columns provides opportunity to malefactors.\n * Performance enhancements:\n - Use fewer CPU cycles to commit a read transaction.\n - Early detection of joins that return no rows due to one or\n more of the tables containing no rows.\n - Avoid evaluation of scalar subqueries if the result of the\n subquery does not change the result of the overall expression.\n - Faster window function queries when using\n \"BETWEEN :x FOLLOWING AND :y FOLLOWING\" with a large :y.\n * Add the PRAGMA wal_checkpoint=NOOP; command and the\n SQLITE_CHECKPOINT_NOOP argument for sqlite3_wal_checkpoint_v2().\n * Add the sqlite3_set_errmsg() API for use by extensions.\n * Add the sqlite3_db_status64() API, which works just like the\n existing sqlite3_db_status() API except that it returns 64-bit\n results.\n * Add the SQLITE_DBSTATUS_TEMPBUF_SPILL option to the\n sqlite3_db_status() and sqlite3_db_status64() interfaces.\n * In the session extension add the sqlite3changeset_apply_v3()\n interface.\n * For the built-in printf() and the format() SQL function, omit\n the leading \u0027-\u0027 from negative floating point numbers if the \u0027+\u0027\n flag is omitted and the \"#\" flag is present and all displayed\n digits are \u00270\u0027. Use \u0027%#f\u0027 or similar to avoid outputs like\n \u0027-0.00\u0027 and instead show just \u00270.00\u0027.\n * Improved error messages generated by FTS5.\n * Enforce STRICT typing on computed columns.\n * Improved support for VxWorks\n * JavaScript/WASM now supports 64-bit WASM. The canonical builds\n continue to be 32-bit but creating one\u0027s own 64-bit build is\n now as simple as running \"make\".\n",
"title": "Description of the patch"
},
{
"category": "details",
"text": "SUSE-SLE-Micro-6.1-455",
"title": "Patchnames"
},
{
"category": "legal_disclaimer",
"text": "CSAF 2.0 data is provided by SUSE under the Creative Commons License 4.0 with Attribution (CC-BY-4.0).",
"title": "Terms of use"
}
],
"publisher": {
"category": "vendor",
"contact_details": "https://www.suse.com/support/security/contact/",
"name": "SUSE Product Security Team",
"namespace": "https://www.suse.com/"
},
"references": [
{
"category": "external",
"summary": "SUSE ratings",
"url": "https://www.suse.com/support/security/rating/"
},
{
"category": "self",
"summary": "URL of this CSAF notice",
"url": "https://ftp.suse.com/pub/projects/security/csaf/suse-su-2026_20771-1.json"
},
{
"category": "self",
"summary": "URL for SUSE-SU-2026:20771-1",
"url": "https://www.suse.com/support/update/announcement/2026/suse-su-202620771-1/"
},
{
"category": "self",
"summary": "E-Mail link for SUSE-SU-2026:20771-1",
"url": "https://lists.suse.com/pipermail/sle-security-updates/2026-March/024863.html"
},
{
"category": "self",
"summary": "SUSE Bug 1254670",
"url": "https://bugzilla.suse.com/1254670"
},
{
"category": "self",
"summary": "SUSE Bug 1259619",
"url": "https://bugzilla.suse.com/1259619"
},
{
"category": "self",
"summary": "SUSE CVE CVE-2025-70873 page",
"url": "https://www.suse.com/security/cve/CVE-2025-70873/"
},
{
"category": "self",
"summary": "SUSE CVE CVE-2025-7709 page",
"url": "https://www.suse.com/security/cve/CVE-2025-7709/"
}
],
"title": "Security update for sqlite3",
"tracking": {
"current_release_date": "2026-03-23T09:46:42Z",
"generator": {
"date": "2026-03-23T09:46:42Z",
"engine": {
"name": "cve-database.git:bin/generate-csaf.pl",
"version": "1"
}
},
"id": "SUSE-SU-2026:20771-1",
"initial_release_date": "2026-03-23T09:46:42Z",
"revision_history": [
{
"date": "2026-03-23T09:46:42Z",
"number": "1",
"summary": "Current version"
}
],
"status": "final",
"version": "1"
}
},
"product_tree": {
"branches": [
{
"branches": [
{
"branches": [
{
"category": "product_version",
"name": "libsqlite3-0-3.51.3-slfo.1.1_1.1.aarch64",
"product": {
"name": "libsqlite3-0-3.51.3-slfo.1.1_1.1.aarch64",
"product_id": "libsqlite3-0-3.51.3-slfo.1.1_1.1.aarch64"
}
}
],
"category": "architecture",
"name": "aarch64"
},
{
"branches": [
{
"category": "product_version",
"name": "libsqlite3-0-3.51.3-slfo.1.1_1.1.ppc64le",
"product": {
"name": "libsqlite3-0-3.51.3-slfo.1.1_1.1.ppc64le",
"product_id": "libsqlite3-0-3.51.3-slfo.1.1_1.1.ppc64le"
}
}
],
"category": "architecture",
"name": "ppc64le"
},
{
"branches": [
{
"category": "product_version",
"name": "libsqlite3-0-3.51.3-slfo.1.1_1.1.s390x",
"product": {
"name": "libsqlite3-0-3.51.3-slfo.1.1_1.1.s390x",
"product_id": "libsqlite3-0-3.51.3-slfo.1.1_1.1.s390x"
}
}
],
"category": "architecture",
"name": "s390x"
},
{
"branches": [
{
"category": "product_version",
"name": "libsqlite3-0-3.51.3-slfo.1.1_1.1.x86_64",
"product": {
"name": "libsqlite3-0-3.51.3-slfo.1.1_1.1.x86_64",
"product_id": "libsqlite3-0-3.51.3-slfo.1.1_1.1.x86_64"
}
}
],
"category": "architecture",
"name": "x86_64"
},
{
"branches": [
{
"category": "product_name",
"name": "SUSE Linux Micro 6.1",
"product": {
"name": "SUSE Linux Micro 6.1",
"product_id": "SUSE Linux Micro 6.1",
"product_identification_helper": {
"cpe": "cpe:/o:suse:sl-micro:6.1"
}
}
}
],
"category": "product_family",
"name": "SUSE Linux Enterprise"
}
],
"category": "vendor",
"name": "SUSE"
}
],
"relationships": [
{
"category": "default_component_of",
"full_product_name": {
"name": "libsqlite3-0-3.51.3-slfo.1.1_1.1.aarch64 as component of SUSE Linux Micro 6.1",
"product_id": "SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.aarch64"
},
"product_reference": "libsqlite3-0-3.51.3-slfo.1.1_1.1.aarch64",
"relates_to_product_reference": "SUSE Linux Micro 6.1"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "libsqlite3-0-3.51.3-slfo.1.1_1.1.ppc64le as component of SUSE Linux Micro 6.1",
"product_id": "SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.ppc64le"
},
"product_reference": "libsqlite3-0-3.51.3-slfo.1.1_1.1.ppc64le",
"relates_to_product_reference": "SUSE Linux Micro 6.1"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "libsqlite3-0-3.51.3-slfo.1.1_1.1.s390x as component of SUSE Linux Micro 6.1",
"product_id": "SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.s390x"
},
"product_reference": "libsqlite3-0-3.51.3-slfo.1.1_1.1.s390x",
"relates_to_product_reference": "SUSE Linux Micro 6.1"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "libsqlite3-0-3.51.3-slfo.1.1_1.1.x86_64 as component of SUSE Linux Micro 6.1",
"product_id": "SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.x86_64"
},
"product_reference": "libsqlite3-0-3.51.3-slfo.1.1_1.1.x86_64",
"relates_to_product_reference": "SUSE Linux Micro 6.1"
}
]
},
"vulnerabilities": [
{
"cve": "CVE-2025-70873",
"ids": [
{
"system_name": "SUSE CVE Page",
"text": "https://www.suse.com/security/cve/CVE-2025-70873"
}
],
"notes": [
{
"category": "general",
"text": "An information disclosure issue in the zipfileInflate function in the zipfile extension in SQLite v3.51.1 and earlier allows attackers to obtain heap memory via supplying a crafted ZIP file.",
"title": "CVE description"
}
],
"product_status": {
"recommended": [
"SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.aarch64",
"SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.ppc64le",
"SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.s390x",
"SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.x86_64"
]
},
"references": [
{
"category": "external",
"summary": "CVE-2025-70873",
"url": "https://www.suse.com/security/cve/CVE-2025-70873"
},
{
"category": "external",
"summary": "SUSE Bug 1259619 for CVE-2025-70873",
"url": "https://bugzilla.suse.com/1259619"
}
],
"remediations": [
{
"category": "vendor_fix",
"details": "To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or \"zypper patch\".\n",
"product_ids": [
"SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.aarch64",
"SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.ppc64le",
"SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.s390x",
"SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.x86_64"
]
}
],
"scores": [
{
"cvss_v3": {
"baseScore": 4.3,
"baseSeverity": "MEDIUM",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N",
"version": "3.1"
},
"products": [
"SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.aarch64",
"SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.ppc64le",
"SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.s390x",
"SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.x86_64"
]
}
],
"threats": [
{
"category": "impact",
"date": "2026-03-23T09:46:42Z",
"details": "moderate"
}
],
"title": "CVE-2025-70873"
},
{
"cve": "CVE-2025-7709",
"ids": [
{
"system_name": "SUSE CVE Page",
"text": "https://www.suse.com/security/cve/CVE-2025-7709"
}
],
"notes": [
{
"category": "general",
"text": "An integer overflow exists in the FTS5 https://sqlite.org/fts5.html extension. It occurs when the size of an array of tombstone pointers is calculated and truncated into a 32-bit integer. A pointer to partially controlled data can then be written out of bounds.",
"title": "CVE description"
}
],
"product_status": {
"recommended": [
"SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.aarch64",
"SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.ppc64le",
"SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.s390x",
"SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.x86_64"
]
},
"references": [
{
"category": "external",
"summary": "CVE-2025-7709",
"url": "https://www.suse.com/security/cve/CVE-2025-7709"
},
{
"category": "external",
"summary": "SUSE Bug 1254670 for CVE-2025-7709",
"url": "https://bugzilla.suse.com/1254670"
}
],
"remediations": [
{
"category": "vendor_fix",
"details": "To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or \"zypper patch\".\n",
"product_ids": [
"SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.aarch64",
"SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.ppc64le",
"SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.s390x",
"SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.x86_64"
]
}
],
"scores": [
{
"cvss_v3": {
"baseScore": 5.4,
"baseSeverity": "MEDIUM",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:L",
"version": "3.1"
},
"products": [
"SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.aarch64",
"SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.ppc64le",
"SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.s390x",
"SUSE Linux Micro 6.1:libsqlite3-0-3.51.3-slfo.1.1_1.1.x86_64"
]
}
],
"threats": [
{
"category": "impact",
"date": "2026-03-23T09:46:42Z",
"details": "moderate"
}
],
"title": "CVE-2025-7709"
}
]
}
Loading…
Loading…
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
Loading…
Loading…