CVE-2024-10977
Estado: ModificadaBaja (3.7)—
Client use of server error message in PostgreSQL allows a server not trusted under current SSL or GSS settings to furnish arbitrary non-NUL bytes to the libpq application. For example, a man-in-the-middle attacker could send a long error message that a human or screen-scraper user of psql mistakes for valid query results. This is probably not a concern for clients where the user interface unambiguously indicates the boundary between one error message and other text. Versions before PostgreSQL 17.1, 16.5, 15.9, 14.14, 13.17, and 12.21 are affected.
CVSS
- Versión: 3.1
- Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N
- Puntuación base: 3.7
Probabilidad de explotación (EPSS)
- Probabilidad de explotación en los próximos 30 días: 0.37%
- Percentil entre todas las CVEs puntuadas: 29
- Fecha de la puntuación: 6/10/2026
EPSS (Exploit Prediction Scoring System, de FIRST) estima la probabilidad de que una vulnerabilidad sea explotada en 30 días. Complementa a CVSS (impacto) y a CISA KEV (explotación confirmada).
Tecnologías afectadas (1)
CWE
- CWE-348
- CWE-345
Referencias
JSON original (NVD)
Mostrar
{
"id": "CVE-2024-10977",
"cveTags": [],
"metrics": {
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"id": "CVE-2024-10977",
"role": "CISA Coordinator",
"options": [
{
"exploitation": "none"
},
{
"automatable": "no"
},
{
"technicalImpact": "partial"
}
],
"version": "2.0.3",
"timestamp": "2024-11-14T18:53:39.616679Z"
}
}
],
"cvssMetricV31": [
{
"type": "Secondary",
"source": "f86ef6dc-4d3a-42ad-8f28-e6d5547a5007",
"cvssData": {
"scope": "UNCHANGED",
"version": "3.1",
"baseScore": 3.1,
"attackVector": "NETWORK",
"baseSeverity": "LOW",
"vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N",
"integrityImpact": "LOW",
"userInteraction": "REQUIRED",
"attackComplexity": "HIGH",
"availabilityImpact": "NONE",
"privilegesRequired": "NONE",
"confidentialityImpact": "NONE"
},
"impactScore": 1.4,
"exploitabilityScore": 1.6
},
{
"type": "Primary",
"source": "nvd@nist.gov",
"cvssData": {
"scope": "UNCHANGED",
"version": "3.1",
"baseScore": 3.7,
"attackVector": "NETWORK",
"baseSeverity": "LOW",
"vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N",
"integrityImpact": "LOW",
"userInteraction": "NONE",
"attackComplexity": "HIGH",
"availabilityImpact": "NONE",
"privilegesRequired": "NONE",
"confidentialityImpact": "NONE"
},
"impactScore": 1.4,
"exploitabilityScore": 2.2
}
]
},
"affected": [
{
"source": "f86ef6dc-4d3a-42ad-8f28-e6d5547a5007",
"affectedData": [
{
"vendor": "n/a",
"product": "PostgreSQL",
"versions": [
{
"status": "affected",
"version": "17",
"lessThan": "17.1",
"versionType": "rpm"
},
{
"status": "affected",
"version": "16",
"lessThan": "16.5",
"versionType": "rpm"
},
{
"status": "affected",
"version": "15",
"lessThan": "15.9",
"versionType": "rpm"
},
{
"status": "affected",
"version": "14",
"lessThan": "14.14",
"versionType": "rpm"
},
{
"status": "affected",
"version": "13",
"lessThan": "13.17",
"versionType": "rpm"
},
{
"status": "affected",
"version": "0",
"lessThan": "12.21",
"versionType": "rpm"
}
],
"defaultStatus": "unaffected"
}
]
}
],
"published": "2024-11-14T13:15:04.023",
"references": [
{
"url": "https://www.postgresql.org/support/security/CVE-2024-10977/",
"tags": [
"Vendor Advisory"
],
"source": "f86ef6dc-4d3a-42ad-8f28-e6d5547a5007"
},
{
"url": "https://lists.debian.org/debian-lts-announce/2024/11/msg00011.html",
"source": "af854a3a-2127-422b-91ae-364da2661108"
}
],
"vulnStatus": "Modified",
"weaknesses": [
{
"type": "Secondary",
"source": "f86ef6dc-4d3a-42ad-8f28-e6d5547a5007",
"description": [
{
"lang": "en",
"value": "CWE-348"
}
]
},
{
"type": "Primary",
"source": "nvd@nist.gov",
"description": [
{
"lang": "en",
"value": "CWE-345"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "Client use of server error message in PostgreSQL allows a server not trusted under current SSL or GSS settings to furnish arbitrary non-NUL bytes to the libpq application. For example, a man-in-the-middle attacker could send a long error message that a human or screen-scraper user of psql mistakes for valid query results. This is probably not a concern for clients where the user interface unambiguously indicates the boundary between one error message and other text. Versions before PostgreSQL 17.1, 16.5, 15.9, 14.14, 13.17, and 12.21 are affected."
},
{
"lang": "es",
"value": "El uso del mensaje de error del servidor por parte del cliente en PostgreSQL permite que un servidor que no es de confianza según la configuración actual de SSL o GSS proporcione bytes arbitrarios que no sean NUL a la aplicación libpq. Por ejemplo, un atacante intermediario podría enviar un mensaje de error largo que un usuario humano o un usuario de psql que rastree la pantalla confunda con resultados de consulta válidos. Probablemente esto no sea un problema para los clientes en los que la interfaz de usuario indica de forma inequívoca el límite entre un mensaje de error y otro texto. Las versiones anteriores a PostgreSQL 17.1, 16.5, 15.9, 14.14, 13.17 y 12.21 se ven afectadas."
}
],
"lastModified": "2026-06-17T06:56:49.087",
"configurations": [
{
"nodes": [
{
"negate": false,
"cpeMatch": [
{
"criteria": "cpe:2.3:a:postgresql:postgresql:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "433D59A0-8811-4DDB-A9F7-D85C62F905CC",
"versionEndExcluding": "12.21",
"versionStartIncluding": "12.0"
},
{
"criteria": "cpe:2.3:a:postgresql:postgresql:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "380F8048-FBE5-4606-93A3-915CFD229317",
"versionEndExcluding": "13.17",
"versionStartIncluding": "13.0"
},
{
"criteria": "cpe:2.3:a:postgresql:postgresql:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "FACF31C7-3B20-4BAE-A596-9C59D67406D8",
"versionEndExcluding": "14.14",
"versionStartIncluding": "14.0"
},
{
"criteria": "cpe:2.3:a:postgresql:postgresql:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "DF12F1A2-3179-4DAC-B728-038B94954DC7",
"versionEndExcluding": "15.9",
"versionStartIncluding": "15.0"
},
{
"criteria": "cpe:2.3:a:postgresql:postgresql:*:*:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "353CBD91-FC28-4DA3-B79A-F4F4DC80FA93",
"versionEndExcluding": "16.5",
"versionStartIncluding": "16.0"
},
{
"criteria": "cpe:2.3:a:postgresql:postgresql:17.0:-:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "554F297F-6688-4242-9618-40A3A017D246"
},
{
"criteria": "cpe:2.3:a:postgresql:postgresql:17.0:beta1:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "2012E2E6-9A7A-4EA8-AE7C-5CB3486CE9DA"
},
{
"criteria": "cpe:2.3:a:postgresql:postgresql:17.0:beta2:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "354785D4-62F8-49C6-BFE6-D7AFEF7BE28F"
},
{
"criteria": "cpe:2.3:a:postgresql:postgresql:17.0:beta3:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "EB5B99AA-AEDF-4730-824E-3A09D47B19DE"
},
{
"criteria": "cpe:2.3:a:postgresql:postgresql:17.0:rc1:*:*:*:*:*:*",
"vulnerable": true,
"matchCriteriaId": "9C88EECA-C66E-4FCF-BA4A-7581516B2471"
}
],
"operator": "OR"
}
]
}
],
"sourceIdentifier": "f86ef6dc-4d3a-42ad-8f28-e6d5547a5007"
}