CVE-2026-29089 (GCVE-0-2026-29089)
Vulnerability from cvelistv5 – Published: 2026-03-06 17:06 – Updated: 2026-03-11 03:56
VLAI?
Title
TimescaleDB uses untrusted search path during extension upgrade
Summary
TimescaleDB is a time-series database for high-performance real-time analytics packaged as a Postgres extension. From version 2.23.0 to 2.25.1, PostgreSQL uses the search_path setting to locate unqualified database objects (tables, functions, operators). If the search_path includes user-writable schemas a malicious user can create functions in that schema that shadow builtin postgres functions and will be called instead of the postgres functions leading to arbitrary code execution during extension upgrade. This issue has been patched in version 2.25.2.
Severity ?
8.8 (High)
CWE
- CWE-426 - Untrusted Search Path
Assigner
References
| URL | Tags | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
||||||||||||||
Impacted products
| Vendor | Product | Version | ||
|---|---|---|---|---|
| timescale | timescaledb |
Affected:
>= 2.23.0, < 2.25.2
|
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-29089",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-03-10T00:00:00+00:00",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-03-11T03:56:36.996Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"product": "timescaledb",
"vendor": "timescale",
"versions": [
{
"status": "affected",
"version": "\u003e= 2.23.0, \u003c 2.25.2"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "TimescaleDB is a time-series database for high-performance real-time analytics packaged as a Postgres extension. From version 2.23.0 to 2.25.1, PostgreSQL uses the search_path setting to locate unqualified database objects (tables, functions, operators). If the search_path includes user-writable schemas a malicious user can create functions in that schema that shadow builtin postgres functions and will be called instead of the postgres functions leading to arbitrary code execution during extension upgrade. This issue has been patched in version 2.25.2."
}
],
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "LOCAL",
"availabilityImpact": "HIGH",
"baseScore": 8.8,
"baseSeverity": "HIGH",
"confidentialityImpact": "HIGH",
"integrityImpact": "HIGH",
"privilegesRequired": "LOW",
"scope": "CHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H",
"version": "3.1"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-426",
"description": "CWE-426: Untrusted Search Path",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-03-06T17:06:34.486Z",
"orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"shortName": "GitHub_M"
},
"references": [
{
"name": "https://github.com/timescale/timescaledb/security/advisories/GHSA-vgp2-jj5c-828m",
"tags": [
"x_refsource_CONFIRM"
],
"url": "https://github.com/timescale/timescaledb/security/advisories/GHSA-vgp2-jj5c-828m"
},
{
"name": "https://github.com/timescale/timescaledb/pull/9331",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/timescale/timescaledb/pull/9331"
},
{
"name": "https://github.com/timescale/timescaledb/commit/9a8f7f8bdeb99e6abae0786ffe526791a8628ce3",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/timescale/timescaledb/commit/9a8f7f8bdeb99e6abae0786ffe526791a8628ce3"
},
{
"name": "https://github.com/timescale/timescaledb/releases/tag/2.25.2",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/timescale/timescaledb/releases/tag/2.25.2"
}
],
"source": {
"advisory": "GHSA-vgp2-jj5c-828m",
"discovery": "UNKNOWN"
},
"title": "TimescaleDB uses untrusted search path during extension upgrade"
}
},
"cveMetadata": {
"assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"assignerShortName": "GitHub_M",
"cveId": "CVE-2026-29089",
"datePublished": "2026-03-06T17:06:34.486Z",
"dateReserved": "2026-03-03T21:54:06.707Z",
"dateUpdated": "2026-03-11T03:56:36.996Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2",
"vulnerability-lookup:meta": {
"nvd": "{\"cve\":{\"id\":\"CVE-2026-29089\",\"sourceIdentifier\":\"security-advisories@github.com\",\"published\":\"2026-03-06T18:16:19.967\",\"lastModified\":\"2026-03-18T18:50:46.093\",\"vulnStatus\":\"Analyzed\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"TimescaleDB is a time-series database for high-performance real-time analytics packaged as a Postgres extension. From version 2.23.0 to 2.25.1, PostgreSQL uses the search_path setting to locate unqualified database objects (tables, functions, operators). If the search_path includes user-writable schemas a malicious user can create functions in that schema that shadow builtin postgres functions and will be called instead of the postgres functions leading to arbitrary code execution during extension upgrade. This issue has been patched in version 2.25.2.\"},{\"lang\":\"es\",\"value\":\"TimescaleDB es una base de datos de series temporales para an\u00e1lisis en tiempo real de alto rendimiento empaquetada como una extensi\u00f3n de Postgres. Desde la versi\u00f3n 2.23.0 hasta la 2.25.1, PostgreSQL utiliza la configuraci\u00f3n search_path para localizar objetos de base de datos no calificados (tablas, funciones, operadores). Si el search_path incluye esquemas escribibles por el usuario, un usuario malintencionado puede crear funciones en ese esquema que ocultan funciones integradas de postgres y ser\u00e1n llamadas en lugar de las funciones de postgres, lo que lleva a la ejecuci\u00f3n de c\u00f3digo arbitrario durante la actualizaci\u00f3n de la extensi\u00f3n. Este problema ha sido parcheado en la versi\u00f3n 2.25.2.\"}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"security-advisories@github.com\",\"type\":\"Secondary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H\",\"baseScore\":8.8,\"baseSeverity\":\"HIGH\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"CHANGED\",\"confidentialityImpact\":\"HIGH\",\"integrityImpact\":\"HIGH\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":2.0,\"impactScore\":6.0}]},\"weaknesses\":[{\"source\":\"security-advisories@github.com\",\"type\":\"Primary\",\"description\":[{\"lang\":\"en\",\"value\":\"CWE-426\"}]}],\"configurations\":[{\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:timescale:timescaledb:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"2.23.0\",\"versionEndExcluding\":\"2.25.2\",\"matchCriteriaId\":\"70D5A15A-A908-4113-B8BA-AC0A17166F76\"}]}]}],\"references\":[{\"url\":\"https://github.com/timescale/timescaledb/commit/9a8f7f8bdeb99e6abae0786ffe526791a8628ce3\",\"source\":\"security-advisories@github.com\",\"tags\":[\"Patch\"]},{\"url\":\"https://github.com/timescale/timescaledb/pull/9331\",\"source\":\"security-advisories@github.com\",\"tags\":[\"Issue Tracking\",\"Patch\"]},{\"url\":\"https://github.com/timescale/timescaledb/releases/tag/2.25.2\",\"source\":\"security-advisories@github.com\",\"tags\":[\"Product\",\"Release Notes\"]},{\"url\":\"https://github.com/timescale/timescaledb/security/advisories/GHSA-vgp2-jj5c-828m\",\"source\":\"security-advisories@github.com\",\"tags\":[\"Mitigation\",\"Vendor Advisory\"]}]}}",
"vulnrichment": {
"containers": "{\"adp\": [{\"title\": \"CISA ADP Vulnrichment\", \"metrics\": [{\"other\": {\"type\": \"ssvc\", \"content\": {\"id\": \"CVE-2026-29089\", \"role\": \"CISA Coordinator\", \"options\": [{\"Exploitation\": \"none\"}, {\"Automatable\": \"no\"}, {\"Technical Impact\": \"total\"}], \"version\": \"2.0.3\", \"timestamp\": \"2026-03-06T17:57:04.059018Z\"}}}], \"providerMetadata\": {\"orgId\": \"134c704f-9b21-4f2e-91b3-4a467353bcc0\", \"shortName\": \"CISA-ADP\", \"dateUpdated\": \"2026-03-06T17:57:12.804Z\"}}], \"cna\": {\"title\": \"TimescaleDB uses untrusted search path during extension upgrade\", \"source\": {\"advisory\": \"GHSA-vgp2-jj5c-828m\", \"discovery\": \"UNKNOWN\"}, \"metrics\": [{\"cvssV3_1\": {\"scope\": \"CHANGED\", \"version\": \"3.1\", \"baseScore\": 8.8, \"attackVector\": \"LOCAL\", \"baseSeverity\": \"HIGH\", \"vectorString\": \"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H\", \"integrityImpact\": \"HIGH\", \"userInteraction\": \"NONE\", \"attackComplexity\": \"LOW\", \"availabilityImpact\": \"HIGH\", \"privilegesRequired\": \"LOW\", \"confidentialityImpact\": \"HIGH\"}}], \"affected\": [{\"vendor\": \"timescale\", \"product\": \"timescaledb\", \"versions\": [{\"status\": \"affected\", \"version\": \"\u003e= 2.23.0, \u003c 2.25.2\"}]}], \"references\": [{\"url\": \"https://github.com/timescale/timescaledb/security/advisories/GHSA-vgp2-jj5c-828m\", \"name\": \"https://github.com/timescale/timescaledb/security/advisories/GHSA-vgp2-jj5c-828m\", \"tags\": [\"x_refsource_CONFIRM\"]}, {\"url\": \"https://github.com/timescale/timescaledb/pull/9331\", \"name\": \"https://github.com/timescale/timescaledb/pull/9331\", \"tags\": [\"x_refsource_MISC\"]}, {\"url\": \"https://github.com/timescale/timescaledb/commit/9a8f7f8bdeb99e6abae0786ffe526791a8628ce3\", \"name\": \"https://github.com/timescale/timescaledb/commit/9a8f7f8bdeb99e6abae0786ffe526791a8628ce3\", \"tags\": [\"x_refsource_MISC\"]}, {\"url\": \"https://github.com/timescale/timescaledb/releases/tag/2.25.2\", \"name\": \"https://github.com/timescale/timescaledb/releases/tag/2.25.2\", \"tags\": [\"x_refsource_MISC\"]}], \"descriptions\": [{\"lang\": \"en\", \"value\": \"TimescaleDB is a time-series database for high-performance real-time analytics packaged as a Postgres extension. From version 2.23.0 to 2.25.1, PostgreSQL uses the search_path setting to locate unqualified database objects (tables, functions, operators). If the search_path includes user-writable schemas a malicious user can create functions in that schema that shadow builtin postgres functions and will be called instead of the postgres functions leading to arbitrary code execution during extension upgrade. This issue has been patched in version 2.25.2.\"}], \"problemTypes\": [{\"descriptions\": [{\"lang\": \"en\", \"type\": \"CWE\", \"cweId\": \"CWE-426\", \"description\": \"CWE-426: Untrusted Search Path\"}]}], \"providerMetadata\": {\"orgId\": \"a0819718-46f1-4df5-94e2-005712e83aaa\", \"shortName\": \"GitHub_M\", \"dateUpdated\": \"2026-03-06T17:06:34.486Z\"}}}",
"cveMetadata": "{\"cveId\": \"CVE-2026-29089\", \"state\": \"PUBLISHED\", \"dateUpdated\": \"2026-03-11T03:56:36.996Z\", \"dateReserved\": \"2026-03-03T21:54:06.707Z\", \"assignerOrgId\": \"a0819718-46f1-4df5-94e2-005712e83aaa\", \"datePublished\": \"2026-03-06T17:06:34.486Z\", \"assignerShortName\": \"GitHub_M\"}",
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
}
}
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…