CVE-2025-5025 (GCVE-0-2025-5025)
Vulnerability from cvelistv5
Published
2025-05-28 06:29
Modified
2025-05-30 16:19
Severity ?
VLAI Severity ?
EPSS score ?
Summary
libcurl supports *pinning* of the server certificate public key for HTTPS transfers. Due to an omission, this check is not performed when connecting with QUIC for HTTP/3, when the TLS backend is wolfSSL. Documentation says the option works with wolfSSL, failing to specify that it does not for QUIC and HTTP/3. Since pinning makes the transfer succeed if the pin is fine, users could unwittingly connect to an impostor server without noticing.
References
► | URL | Tags | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Impacted products
Vendor | Product | Version | ||
---|---|---|---|---|
curl | curl |
Version: 8.13.0 ≤ 8.13.0 Version: 8.12.1 ≤ 8.12.1 Version: 8.12.0 ≤ 8.12.0 Version: 8.11.1 ≤ 8.11.1 Version: 8.11.0 ≤ 8.11.0 Version: 8.10.1 ≤ 8.10.1 Version: 8.10.0 ≤ 8.10.0 Version: 8.9.1 ≤ 8.9.1 Version: 8.9.0 ≤ 8.9.0 Version: 8.8.0 ≤ 8.8.0 Version: 8.7.1 ≤ 8.7.1 Version: 8.7.0 ≤ 8.7.0 Version: 8.6.0 ≤ 8.6.0 Version: 8.5.0 ≤ 8.5.0 |
{ "containers": { "adp": [ { "providerMetadata": { "dateUpdated": "2025-05-28T08:03:57.908Z", "orgId": "af854a3a-2127-422b-91ae-364da2661108", "shortName": "CVE" }, "references": [ { "url": "http://www.openwall.com/lists/oss-security/2025/05/28/5" } ], "title": "CVE Program Container" }, { "metrics": [ { "cvssV3_1": { "attackComplexity": "HIGH", "attackVector": "NETWORK", "availabilityImpact": "NONE", "baseScore": 4.8, "baseSeverity": "MEDIUM", "confidentialityImpact": "LOW", "integrityImpact": "LOW", "privilegesRequired": "NONE", "scope": "UNCHANGED", "userInteraction": "NONE", "vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N", "version": "3.1" } }, { "other": { "content": { "id": "CVE-2025-5025", "options": [ { "Exploitation": "poc" }, { "Automatable": "no" }, { "Technical Impact": "partial" } ], "role": "CISA Coordinator", "timestamp": "2025-05-30T16:19:34.842150Z", "version": "2.0.3" }, "type": "ssvc" } } ], "providerMetadata": { "dateUpdated": "2025-05-30T16:19:53.775Z", "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "shortName": "CISA-ADP" }, "title": "CISA ADP Vulnrichment" } ], "cna": { "affected": [ { "defaultStatus": "unaffected", "product": "curl", "vendor": "curl", "versions": [ { "lessThanOrEqual": "8.13.0", "status": "affected", "version": "8.13.0", "versionType": "semver" }, { "lessThanOrEqual": "8.12.1", "status": "affected", "version": "8.12.1", "versionType": "semver" }, { "lessThanOrEqual": "8.12.0", "status": "affected", "version": "8.12.0", "versionType": "semver" }, { "lessThanOrEqual": "8.11.1", "status": "affected", "version": "8.11.1", "versionType": "semver" }, { "lessThanOrEqual": "8.11.0", "status": "affected", "version": "8.11.0", "versionType": "semver" }, { "lessThanOrEqual": "8.10.1", "status": "affected", "version": "8.10.1", "versionType": "semver" }, { "lessThanOrEqual": "8.10.0", "status": "affected", "version": "8.10.0", "versionType": "semver" }, { "lessThanOrEqual": "8.9.1", "status": "affected", "version": "8.9.1", "versionType": "semver" }, { "lessThanOrEqual": "8.9.0", "status": "affected", "version": "8.9.0", "versionType": "semver" }, { "lessThanOrEqual": "8.8.0", "status": "affected", "version": "8.8.0", "versionType": "semver" }, { "lessThanOrEqual": "8.7.1", "status": "affected", "version": "8.7.1", "versionType": "semver" }, { "lessThanOrEqual": "8.7.0", "status": "affected", "version": "8.7.0", "versionType": "semver" }, { "lessThanOrEqual": "8.6.0", "status": "affected", "version": "8.6.0", "versionType": "semver" }, { "lessThanOrEqual": "8.5.0", "status": "affected", "version": "8.5.0", "versionType": "semver" } ] } ], "credits": [ { "lang": "en", "type": "finder", "value": "Hiroki Kurosawa" }, { "lang": "en", "type": "remediation developer", "value": "Stefan Eissing" } ], "descriptions": [ { "lang": "en", "value": "libcurl supports *pinning* of the server certificate public key for HTTPS transfers. Due to an omission, this check is not performed when connecting with QUIC for HTTP/3, when the TLS backend is wolfSSL. Documentation says the option works with wolfSSL, failing to specify that it does not for QUIC and HTTP/3. Since pinning makes the transfer succeed if the pin is fine, users could unwittingly connect to an impostor server without noticing." } ], "problemTypes": [ { "descriptions": [ { "description": "CWE-295 Improper Certificate Validation", "lang": "en" } ] } ], "providerMetadata": { "dateUpdated": "2025-05-28T06:29:51.915Z", "orgId": "2499f714-1537-4658-8207-48ae4bb9eae9", "shortName": "curl" }, "references": [ { "name": "json", "url": "https://curl.se/docs/CVE-2025-5025.json" }, { "name": "www", "url": "https://curl.se/docs/CVE-2025-5025.html" }, { "name": "issue", "url": "https://hackerone.com/reports/3153497" } ], "title": "No QUIC certificate pinning with wolfSSL" } }, "cveMetadata": { "assignerOrgId": "2499f714-1537-4658-8207-48ae4bb9eae9", "assignerShortName": "curl", "cveId": "CVE-2025-5025", "datePublished": "2025-05-28T06:29:51.915Z", "dateReserved": "2025-05-21T06:25:30.863Z", "dateUpdated": "2025-05-30T16:19:53.775Z", "state": "PUBLISHED" }, "dataType": "CVE_RECORD", "dataVersion": "5.1", "vulnerability-lookup:meta": { "nvd": "{\"cve\":{\"id\":\"CVE-2025-5025\",\"sourceIdentifier\":\"2499f714-1537-4658-8207-48ae4bb9eae9\",\"published\":\"2025-05-28T07:15:24.910\",\"lastModified\":\"2025-07-30T19:41:37.987\",\"vulnStatus\":\"Analyzed\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"libcurl supports *pinning* of the server certificate public key for HTTPS transfers. Due to an omission, this check is not performed when connecting with QUIC for HTTP/3, when the TLS backend is wolfSSL. Documentation says the option works with wolfSSL, failing to specify that it does not for QUIC and HTTP/3. Since pinning makes the transfer succeed if the pin is fine, users could unwittingly connect to an impostor server without noticing.\"},{\"lang\":\"es\",\"value\":\"libcurl admite la fijaci\u00f3n de la clave p\u00fablica del certificado del servidor para transferencias HTTPS. Debido a una omisi\u00f3n, esta comprobaci\u00f3n no se realiza al conectar con QUIC para HTTP/3, cuando el backend TLS es wolfSSL. La documentaci\u00f3n indica que la opci\u00f3n funciona con wolfSSL, pero no especifica que no funciona para QUIC ni HTTP/3. Dado que la fijaci\u00f3n permite que la transferencia se realice correctamente si la fijaci\u00f3n es correcta, los usuarios podr\u00edan conectarse sin darse cuenta a un servidor falso.\"}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"134c704f-9b21-4f2e-91b3-4a467353bcc0\",\"type\":\"Secondary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N\",\"baseScore\":4.8,\"baseSeverity\":\"MEDIUM\",\"attackVector\":\"NETWORK\",\"attackComplexity\":\"HIGH\",\"privilegesRequired\":\"NONE\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"LOW\",\"integrityImpact\":\"LOW\",\"availabilityImpact\":\"NONE\"},\"exploitabilityScore\":2.2,\"impactScore\":2.5}]},\"weaknesses\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"description\":[{\"lang\":\"en\",\"value\":\"CWE-295\"}]}],\"configurations\":[{\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:haxx:curl:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"8.5.0\",\"versionEndExcluding\":\"8.14.0\",\"matchCriteriaId\":\"D77CA285-7278-486A-84ED-8D9106766727\"}]}]}],\"references\":[{\"url\":\"https://curl.se/docs/CVE-2025-5025.html\",\"source\":\"2499f714-1537-4658-8207-48ae4bb9eae9\",\"tags\":[\"Vendor Advisory\"]},{\"url\":\"https://curl.se/docs/CVE-2025-5025.json\",\"source\":\"2499f714-1537-4658-8207-48ae4bb9eae9\",\"tags\":[\"Vendor Advisory\"]},{\"url\":\"https://hackerone.com/reports/3153497\",\"source\":\"2499f714-1537-4658-8207-48ae4bb9eae9\",\"tags\":[\"Exploit\",\"Issue Tracking\",\"Third Party Advisory\"]},{\"url\":\"http://www.openwall.com/lists/oss-security/2025/05/28/5\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Mailing List\",\"Third Party Advisory\"]}]}}", "vulnrichment": { "containers": "{\"adp\": [{\"title\": \"CVE Program Container\", \"references\": [{\"url\": \"http://www.openwall.com/lists/oss-security/2025/05/28/5\"}], \"providerMetadata\": {\"orgId\": \"af854a3a-2127-422b-91ae-364da2661108\", \"shortName\": \"CVE\", \"dateUpdated\": \"2025-05-28T08:03:57.908Z\"}}, {\"title\": \"CISA ADP Vulnrichment\", \"metrics\": [{\"cvssV3_1\": {\"scope\": \"UNCHANGED\", \"version\": \"3.1\", \"baseScore\": 4.8, \"attackVector\": \"NETWORK\", \"baseSeverity\": \"MEDIUM\", \"vectorString\": \"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N\", \"integrityImpact\": \"LOW\", \"userInteraction\": \"NONE\", \"attackComplexity\": \"HIGH\", \"availabilityImpact\": \"NONE\", \"privilegesRequired\": \"NONE\", \"confidentialityImpact\": \"LOW\"}}, {\"other\": {\"type\": \"ssvc\", \"content\": {\"id\": \"CVE-2025-5025\", \"role\": \"CISA Coordinator\", \"options\": [{\"Exploitation\": \"poc\"}, {\"Automatable\": \"no\"}, {\"Technical Impact\": \"partial\"}], \"version\": \"2.0.3\", \"timestamp\": \"2025-05-30T16:19:34.842150Z\"}}}], \"providerMetadata\": {\"orgId\": \"134c704f-9b21-4f2e-91b3-4a467353bcc0\", \"shortName\": \"CISA-ADP\", \"dateUpdated\": \"2025-05-30T16:19:16.382Z\"}}], \"cna\": {\"title\": \"No QUIC certificate pinning with wolfSSL\", \"credits\": [{\"lang\": \"en\", \"type\": \"finder\", \"value\": \"Hiroki Kurosawa\"}, {\"lang\": \"en\", \"type\": \"remediation developer\", \"value\": \"Stefan Eissing\"}], \"affected\": [{\"vendor\": \"curl\", \"product\": \"curl\", \"versions\": [{\"status\": \"affected\", \"version\": \"8.13.0\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"8.13.0\"}, {\"status\": \"affected\", \"version\": \"8.12.1\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"8.12.1\"}, {\"status\": \"affected\", \"version\": \"8.12.0\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"8.12.0\"}, {\"status\": \"affected\", \"version\": \"8.11.1\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"8.11.1\"}, {\"status\": \"affected\", \"version\": \"8.11.0\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"8.11.0\"}, {\"status\": \"affected\", \"version\": \"8.10.1\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"8.10.1\"}, {\"status\": \"affected\", \"version\": \"8.10.0\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"8.10.0\"}, {\"status\": \"affected\", \"version\": \"8.9.1\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"8.9.1\"}, {\"status\": \"affected\", \"version\": \"8.9.0\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"8.9.0\"}, {\"status\": \"affected\", \"version\": \"8.8.0\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"8.8.0\"}, {\"status\": \"affected\", \"version\": \"8.7.1\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"8.7.1\"}, {\"status\": \"affected\", \"version\": \"8.7.0\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"8.7.0\"}, {\"status\": \"affected\", \"version\": \"8.6.0\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"8.6.0\"}, {\"status\": \"affected\", \"version\": \"8.5.0\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"8.5.0\"}], \"defaultStatus\": \"unaffected\"}], \"references\": [{\"url\": \"https://curl.se/docs/CVE-2025-5025.json\", \"name\": \"json\"}, {\"url\": \"https://curl.se/docs/CVE-2025-5025.html\", \"name\": \"www\"}, {\"url\": \"https://hackerone.com/reports/3153497\", \"name\": \"issue\"}], \"descriptions\": [{\"lang\": \"en\", \"value\": \"libcurl supports *pinning* of the server certificate public key for HTTPS transfers. Due to an omission, this check is not performed when connecting with QUIC for HTTP/3, when the TLS backend is wolfSSL. Documentation says the option works with wolfSSL, failing to specify that it does not for QUIC and HTTP/3. Since pinning makes the transfer succeed if the pin is fine, users could unwittingly connect to an impostor server without noticing.\"}], \"problemTypes\": [{\"descriptions\": [{\"lang\": \"en\", \"description\": \"CWE-295 Improper Certificate Validation\"}]}], \"providerMetadata\": {\"orgId\": \"2499f714-1537-4658-8207-48ae4bb9eae9\", \"shortName\": \"curl\", \"dateUpdated\": \"2025-05-28T06:29:51.915Z\"}}}", "cveMetadata": "{\"cveId\": \"CVE-2025-5025\", \"state\": \"PUBLISHED\", \"dateUpdated\": \"2025-05-30T16:19:53.775Z\", \"dateReserved\": \"2025-05-21T06:25:30.863Z\", \"assignerOrgId\": \"2499f714-1537-4658-8207-48ae4bb9eae9\", \"datePublished\": \"2025-05-28T06:29:51.915Z\", \"assignerShortName\": \"curl\"}", "dataType": "CVE_RECORD", "dataVersion": "5.1" } } }
Loading…
Loading…
Sightings
Author | Source | Type | Date |
---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
- Confirmed: The vulnerability is confirmed from an analyst perspective.
- Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
- Patched: This vulnerability was successfully patched by the user reporting the sighting.
- Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
- Not confirmed: The user expresses doubt about the veracity of the vulnerability.
- Not patched: This vulnerability was not successfully patched by the user reporting the sighting.
Loading…
Loading…