Every CVE Search/ Get API key

CVE-2025-7709

Out Of Bounds write in FTS5 Extension in SQLite

6.9 MediumFix available

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.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
High
Privileges needed
Low
User interaction
Active

What an attacker can affect

Confidentiality
None
Integrity
High
Availability
Low

Exploit likelihood

0.37%Up 0.3 points since Sep 9, 2025
90%50%10%1%

What each source reports

CVE List Score used 6.9

Out Of Bounds write in FTS5 Extension in SQLite

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.

Record
CVE-2025-7709
CVSS 4.0
6.9 MediumCVSS:4.0/AV:N/AC:H/AT:P/PR:L/UI:A/VC:N/VI:H/VA:L/SC:N/SI:H/SA:L
Weakness
CWE-190
Updated
2026-11-02
EUVDEUVD-2025-27137 6.9

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.

Record
EUVD-2025-27137
CVSS 4.0
6.9 MediumCVSS:4.0/AV:N/AC:H/AT:P/PR:L/UI:A/VC:N/VI:H/VA:L/SC:N/SI:H/SA:L
Updated
2026-11-02
NVD 6.9

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.

Record
CVE-2025-7709
CVSS 4.0
6.9 MediumCVSS:4.0/AV:N/AC:H/AT:P/PR:L/UI:A/VC:N/VI:H/VA:L/SC:N/SI:H/SA:L/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Weakness
CWE-190
Updated
2026-11-02
OSVDEBIAN-CVE-2025-7709 6.9

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.

Record
DEBIAN-CVE-2025-7709
CVSS 4.0
6.9 MediumCVSS:4.0/AV:N/AC:H/AT:P/PR:L/UI:A/VC:N/VI:H/VA:L/SC:N/SI:H/SA:L/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Updated
2026-11-02
OSVUBUNTU-CVE-2025-7709 6.9

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.

Record
UBUNTU-CVE-2025-7709
CVSS 4.0
6.9 MediumCVSS:4.0/AV:N/AC:H/AT:P/PR:L/UI:A/VC:N/VI:H/VA:L/SC:N/SI:H/SA:L
Updated
2026-11-02
OSV No score

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.

Record
CVE-2025-7709
Updated
2026-11-02
Show 13 moreShow less
OSVopenSUSE-SU-2026:10171-1 No score

lemon-3.51.2-1.1 on GA media

These are all security issues fixed in the lemon-3.51.2-1.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2026:10171-1
Updated
2026-11-02
OSVopenSUSE-SU-2026:20513-1 No score

Security update for sqlite3

This update for sqlite3 fixes the following issues:

Update sqlite3 to version 3.51.3:

Security issues:

  • 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).

Non security issue:

  • sqlite3 won't build when using --with icu (bsc#1248586).

Changelog:

Update to version 3.51.3:

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".
  • Improved resistance to database…
Record
openSUSE-SU-2026:20513-1
Updated
2026-11-02
OSVROOT-OS-DEBIAN-12-CVE-2025-7709 No score

CVE-2025-7709 in sqlite3 - Patched by Root

Root has patched CVE-2025-7709 in the sqlite3 package for Root:Debian:12. Multiple fixed versions available.

Record
ROOT-OS-DEBIAN-12-CVE-2025-7709
Updated
2026-11-03
OSVROOT-OS-DEBIAN-13-CVE-2025-7709 No score

CVE-2025-7709 in rootio-sqlite3 - Patched by Root

Root has patched CVE-2025-7709 in the rootio-sqlite3 package for Root:Debian:13. Multiple fixed versions available.

Record
ROOT-OS-DEBIAN-13-CVE-2025-7709
Updated
2026-11-02
OSVSUSE-SU-2026:0395-1 No score

Security update for sqlite3

This update for sqlite3 fixes the following issues:

  • Update to v3.51.2:
  • CVE-2025-7709: Fixed an integer overflow in the FTS5 extension. (bsc#1254670)
Record
SUSE-SU-2026:0395-1
Updated
2026-11-02
OSVSUSE-SU-2026:0432-1 No score

Security update for sqlite3

This update for sqlite3 fixes the following issues:

  • Update to v3.51.2:
  • CVE-2025-7709: Fixed an integer overflow in the FTS5 extension. (bsc#1254670)
Record
SUSE-SU-2026:0432-1
Updated
2026-11-02
OSVSUSE-SU-2026:0955-1 No score

Security update for sqlite3

This update for sqlite3 fixes the following issues:

Update to 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:

Record
SUSE-SU-2026:0955-1
Updated
2026-11-02
OSVSUSE-SU-2026:1065-1 No score

Security update for sqlite3

This update for sqlite3 fixes the following issues:

Update sqlite3 to 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:

Record
SUSE-SU-2026:1065-1
Updated
2026-11-02
OSVSUSE-SU-2026:20771-1 No score

Security update for sqlite3

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:

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".
Record
SUSE-SU-2026:20771-1
Updated
2026-11-02
OSVSUSE-SU-2026:20794-1 No score

Security update for sqlite3

This update for sqlite3 fixes the following issues:

Update to version 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:

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".
Record
SUSE-SU-2026:20794-1
Updated
2026-11-02
OSVSUSE-SU-2026:21095-1 No score

Security update for sqlite3

This update for sqlite3 fixes the following issues:

Update sqlite3 to version 3.51.3:

Security issues:

  • 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).

Non security issue:

  • sqlite3 won't build when using --with icu (bsc#1248586).

Changelog:

Update to version 3.51.3:

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".
  • Improved resistance to database…
Record
SUSE-SU-2026:21095-1
Updated
2026-11-02
OSVSUSE-SU-2026:21173-1 No score

Security update for sqlite3

This update for sqlite3 fixes the following issues:

Update sqlite3 to version 3.51.3:

Security issues:

  • 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).

Non security issue:

  • sqlite3 won't build when using --with icu (bsc#1248586).

Changelog:

Update to version 3.51.3:

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".
  • Improved resistance to database…
Record
SUSE-SU-2026:21173-1
Updated
2026-11-02
OSVUSN-7751-1 No score

sqlite3 vulnerability

It was discovered that the FTS5 SQLite extension incorrectly calculated certain array lengths. An attacker could use this issue to cause SQLite to crash, resulting in a denial of service, or possibly execute arbitrary code.

Record
USN-7751-1
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
sqlite
Alpaquita:25
3.49.2-r0 up to 3.50.3-r0
3.50.3-r0
sqlite
Alpaquita:stream
3.49.1-r0 up to 3.50.3-r0
3.50.3-r0
sqlite
BellSoft Hardened Containers:25
3.49.2-r0 up to 3.50.3-r0
3.50.3-r0
sqlite
BellSoft Hardened Containers:stream
3.49.1-r0 up to 3.50.3-r0
3.50.3-r0
sqlite3
Debian:12
All versions, plus listed versions
3.40.1-23.40.1-2+deb12u13.40.1-2+deb12u23.42.0-13.43.0-1
Show 24 moreShow less
3.43.1-13.43.2-13.44.0-13.44.2-13.45.0-13.45.1-13.45.2-13.45.3-13.45.3-2~exp13.46.0-13.46.1-13.46.1-23.46.1-2~exp3.46.1-33.46.1-43.46.1-53.46.1-63.46.1-73.46.1-83.46.1-93.53.2-13.53.3-13.53.4-13.53.4-2
None known
sqlite3
Debian:13
before 3.46.1-7+deb13u1, plus listed versions
3.46.1-7
3.46.1-7+deb13u1
sqlite3
Debian:14
before 3.46.1-8, plus listed versions
3.46.1-7
3.46.1-8
sqlite3
Root:Debian:12
before 3.40.1-2+deb12u2.root.io.8
3.40.1-2+deb12u2.root.io.83.40.1-2+deb12u2.root.io.73.40.1-2+deb12u2.root.io.63.40.1-2+deb12u2.root.io.93.40.1-2+deb12u2.root.io.103.40.1-2+deb12u2.aikido.113.40.1-2+deb12u2.aikido.12
rootio-sqlite3
Root:Debian:12
before 3.40.1-2+deb12u2.root.io.8
3.40.1-2+deb12u2.root.io.83.40.1-2+deb12u2.root.io.73.40.1-2+deb12u2.root.io.63.40.1-2+deb12u2.root.io.93.40.1-2+deb12u2.root.io.103.40.1-2+deb12u2.aikido.113.40.1-2+deb12u2.aikido.12
sqlite3
SUSE:Linux Enterprise Server LTSS Extended Security 12 SP5
before 3.51.2-9.44.1
3.51.2-9.44.1
Show 21 moreShow less
Affected packages
PackageAffectedFixed
sqlite3
SUSE:Linux Enterprise Micro 5.3
before 3.51.2-150000.3.36.1
3.51.2-150000.3.36.1
sqlite3
SUSE:Linux Enterprise Micro 5.4
before 3.51.2-150000.3.36.1
3.51.2-150000.3.36.1
sqlite3
SUSE:Linux Enterprise Micro 5.5
before 3.51.2-150000.3.36.1
3.51.2-150000.3.36.1
sqlite3
SUSE:Linux Enterprise Module for Basesystem 15 SP7
before 3.51.2-150000.3.36.1
3.51.2-150000.3.36.1
sqlite3
SUSE:Linux Enterprise Micro 5.2
before 3.51.2-150000.3.36.1
3.51.2-150000.3.36.1
sqlite3
openSUSE:Leap 15.6
before 3.51.2-150000.3.36.1
3.51.2-150000.3.36.1
sqlite3
SUSE:Linux Enterprise Server LTSS Extended Security 12 SP5
From an advisory covering 2 CVEs
before 3.51.3-9.47.1
3.51.3-9.47.1
sqlite3
SUSE:Linux Enterprise Micro 5.3
From an advisory covering 2 CVEs
before 3.51.3-150000.3.39.1
3.51.3-150000.3.39.1
sqlite3
SUSE:Linux Enterprise Micro 5.4
From an advisory covering 2 CVEs
before 3.51.3-150000.3.39.1
3.51.3-150000.3.39.1
sqlite3
SUSE:Linux Enterprise Micro 5.5
From an advisory covering 2 CVEs
before 3.51.3-150000.3.39.1
3.51.3-150000.3.39.1
sqlite3
SUSE:Linux Enterprise Module for Basesystem 15 SP7
From an advisory covering 2 CVEs
before 3.51.3-150000.3.39.1
3.51.3-150000.3.39.1
sqlite3
SUSE:Linux Enterprise Micro 5.2
From an advisory covering 2 CVEs
before 3.51.3-150000.3.39.1
3.51.3-150000.3.39.1
sqlite3
openSUSE:Leap 15.6
From an advisory covering 2 CVEs
before 3.51.3-150000.3.39.1
3.51.3-150000.3.39.1
sqlite3
SUSE:Linux Micro 6.1
From an advisory covering 2 CVEs
before 3.51.3-slfo.1.1_1.1
3.51.3-slfo.1.1_1.1
sqlite3
SUSE:Linux Micro 6.0
From an advisory covering 2 CVEs
before 3.51.3-1.1
3.51.3-1.1
sqlite3
SUSE:Linux Micro 6.2
From an advisory covering 2 CVEs
before 3.51.3-160000.1.1
3.51.3-160000.1.1
sqlite3
SUSE:Linux Enterprise Server 16.0
From an advisory covering 2 CVEs
before 3.51.3-160000.1.1
3.51.3-160000.1.1
sqlite3
SUSE:Linux Enterprise Server for SAP applications 16.0
From an advisory covering 2 CVEs
before 3.51.3-160000.1.1
3.51.3-160000.1.1
sqlite3
Ubuntu:24.04:LTS
before 3.45.1-1ubuntu2.5, plus listed versions
3.42.0-13.44.0-13.44.2-13.45.0-13.45.1-1
Show 5 moreShow less
3.45.1-1ubuntu13.45.1-1ubuntu23.45.1-1ubuntu2.13.45.1-1ubuntu2.33.45.1-1ubuntu2.4
3.45.1-1ubuntu2.5
sqlite3
openSUSE:Tumbleweed
before 3.51.2-1.1
3.51.2-1.1
sqlite3
openSUSE:Leap 16.0
From an advisory covering 2 CVEs
before 3.51.3-160000.1.1
3.51.3-160000.1.1

History

History
RecordedChangedSources
affected, facts
affectedOSV
affected
first indexedCVE List, EUVD, NVD, OSV

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

In short

CVE-2025-7709 is a medium vulnerability (CVSS 6.9) in Sqlite Fts5, published September 8, 2025. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.37%, the 31st percentile. Fixed in sqlite 3.50.3-r0.

References

Show 16 moreShow less
This page doesn't list everything

Left out here: the rest of 3 source descriptions. The JSON record has them.

MoveEnter Open