Action not permitted
Modal body text goes here.
Modal Title
Modal Body
CERTFR-2026-AVI-0269
Vulnerability from certfr_avis
De multiples vulnérabilités ont été découvertes dans Curl. Elles permettent à un attaquant de provoquer un déni de service à distance, une atteinte à la confidentialité des données et un contournement de la politique de sécurité.
Solutions
Se référer au bulletin de sécurité de l'éditeur pour l'obtention des correctifs (cf. section Documentation).
Impacted products
| Vendor | Product | Description | ||
|---|---|---|---|---|
| Curl | cURL et libcurl | Curl versions antérieures à 8.19.0 |
References
| Title | Publication Time | Tags | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
||||||||||||||
{
"$ref": "https://www.cert.ssi.gouv.fr/openapi.json",
"affected_systems": [
{
"description": "Curl versions ant\u00e9rieures \u00e0 8.19.0",
"product": {
"name": "cURL et libcurl",
"vendor": {
"name": "Curl",
"scada": false
}
}
}
],
"affected_systems_content": "",
"content": "## Solutions\n\nSe r\u00e9f\u00e9rer au bulletin de s\u00e9curit\u00e9 de l\u0027\u00e9diteur pour l\u0027obtention des correctifs (cf. section Documentation).",
"cves": [
{
"name": "CVE-2026-1965",
"url": "https://www.cve.org/CVERecord?id=CVE-2026-1965"
},
{
"name": "CVE-2026-3783",
"url": "https://www.cve.org/CVERecord?id=CVE-2026-3783"
},
{
"name": "CVE-2026-3805",
"url": "https://www.cve.org/CVERecord?id=CVE-2026-3805"
},
{
"name": "CVE-2026-3784",
"url": "https://www.cve.org/CVERecord?id=CVE-2026-3784"
}
],
"initial_release_date": "2026-03-11T00:00:00",
"last_revision_date": "2026-03-11T00:00:00",
"links": [],
"reference": "CERTFR-2026-AVI-0269",
"revisions": [
{
"description": "Version initiale",
"revision_date": "2026-03-11T00:00:00.000000"
}
],
"risks": [
{
"description": "D\u00e9ni de service \u00e0 distance"
},
{
"description": "Contournement de la politique de s\u00e9curit\u00e9"
},
{
"description": "Atteinte \u00e0 la confidentialit\u00e9 des donn\u00e9es"
}
],
"summary": "De multiples vuln\u00e9rabilit\u00e9s ont \u00e9t\u00e9 d\u00e9couvertes dans Curl. Elles permettent \u00e0 un attaquant de provoquer un d\u00e9ni de service \u00e0 distance, une atteinte \u00e0 la confidentialit\u00e9 des donn\u00e9es et un contournement de la politique de s\u00e9curit\u00e9.",
"title": "Multiples vuln\u00e9rabilit\u00e9s dans Curl",
"vendor_advisories": [
{
"published_at": "2026-03-11",
"title": "Bulletin de s\u00e9curit\u00e9 Curl CVE-2026-3805",
"url": "https://curl.se/docs/CVE-2026-3805.html"
},
{
"published_at": "2026-03-11",
"title": "Bulletin de s\u00e9curit\u00e9 Curl CVE-2026-1965",
"url": "https://curl.se/docs/CVE-2026-1965.html"
},
{
"published_at": "2026-03-11",
"title": "Bulletin de s\u00e9curit\u00e9 Curl CVE-2026-3784",
"url": "https://curl.se/docs/CVE-2026-3784.html"
},
{
"published_at": "2026-03-11",
"title": "Bulletin de s\u00e9curit\u00e9 Curl CVE-2026-3783",
"url": "https://curl.se/docs/CVE-2026-3783.html"
}
]
}
CVE-2026-1965 (GCVE-0-2026-1965)
Vulnerability from cvelistv5
Published
2026-03-11 10:08
Modified
2026-09-15 06:02
Severity ?
VLAI Severity ?
EPSS score ?
CWE
- CWE-305 - Authentication Bypass by Primary Weakness
Summary
libcurl can in some circumstances reuse the wrong connection when asked to do
an Negotiate-authenticated HTTP or HTTPS request.
libcurl features a pool of recent connections so that subsequent requests can
reuse an existing connection to avoid overhead.
When reusing a connection a range of criterion must first be met. Due to a
logical error in the code, a request that was issued by an application could
wrongfully reuse an existing connection to the same server that was
authenticated using different credentials. One underlying reason being that
Negotiate sometimes authenticates *connections* and not *requests*, contrary
to how HTTP is designed to work.
An application that allows Negotiate authentication to a server (that responds
wanting Negotiate) with `user1:password1` and then does another operation to
the same server also using Negotiate but with `user2:password2` (while the
previous connection is still alive) - the second request wrongly reused the
same connection and since it then sees that the Negotiate negotiation is
already made, it sends the request over that connection thinking it uses
the user2 credentials when it is in fact still using the connection
authenticated for user1...
The set of authentication methods to use is set with `CURLOPT_HTTPAUTH`.
Applications can disable libcurl's reuse of connections and thus mitigate this
problem, by using one of the following libcurl options to alter how
connections are or are not reused: `CURLOPT_FRESH_CONNECT`,
`CURLOPT_MAXCONNECTS` and `CURLMOPT_MAX_HOST_CONNECTIONS` (if using the
curl_multi API).
References
Impacted products
| Vendor | Product | Version | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| curl | curl |
Version: 7.10.6 ≤ Version: 8.15.0 ≤ Version: 8.17.0 ≤ |
||||||||||||
|
||||||||||||||
{
"containers": {
"adp": [
{
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "NONE",
"baseScore": 6.5,
"baseSeverity": "MEDIUM",
"confidentialityImpact": "NONE",
"integrityImpact": "HIGH",
"privilegesRequired": "LOW",
"scope": "UNCHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N",
"version": "3.1"
}
},
{
"other": {
"content": {
"id": "CVE-2026-1965",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "partial"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-03-11T14:31:56.061598Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-305",
"description": "CWE-305 Authentication Bypass by Primary Weakness",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-03-11T14:32:38.895Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "curl",
"vendor": "curl",
"versions": [
{
"lessThan": "8.14.2",
"status": "affected",
"version": "7.10.6",
"versionType": "semver"
},
{
"lessThan": "8.16.1",
"status": "affected",
"version": "8.15.0",
"versionType": "semver"
},
{
"lessThan": "8.19.0",
"status": "affected",
"version": "8.17.0",
"versionType": "semver"
}
]
},
{
"defaultStatus": "unaffected",
"product": "curl",
"repo": "https://github.com/curl/curl.git",
"vendor": "curl",
"versions": [
{
"lessThan": "f1a39f221d57354990e3eeeddc3404aede2aff70",
"status": "affected",
"version": "e56ae1426cb7a0a4a427cf8d6099a821fdaae428",
"versionType": "git"
}
]
},
{
"defaultStatus": "unaffected",
"product": "curl",
"vendor": "curl",
"versions": [
{
"status": "affected",
"version": "8.18.0"
},
{
"status": "affected",
"version": "8.17.0"
},
{
"status": "affected",
"version": "8.16.0"
},
{
"status": "affected",
"version": "8.15.0"
},
{
"status": "affected",
"version": "8.14.1"
},
{
"status": "affected",
"version": "8.14.0"
},
{
"status": "affected",
"version": "8.13.0"
},
{
"status": "affected",
"version": "8.12.1"
},
{
"status": "affected",
"version": "8.12.0"
},
{
"status": "affected",
"version": "8.11.1"
},
{
"status": "affected",
"version": "8.11.0"
},
{
"status": "affected",
"version": "8.10.1"
},
{
"status": "affected",
"version": "8.10.0"
},
{
"status": "affected",
"version": "8.9.1"
},
{
"status": "affected",
"version": "8.9.0"
},
{
"status": "affected",
"version": "8.8.0"
},
{
"status": "affected",
"version": "8.7.1"
},
{
"status": "affected",
"version": "8.7.0"
},
{
"status": "affected",
"version": "8.6.0"
},
{
"status": "affected",
"version": "8.5.0"
},
{
"status": "affected",
"version": "8.4.0"
},
{
"status": "affected",
"version": "8.3.0"
},
{
"status": "affected",
"version": "8.2.1"
},
{
"status": "affected",
"version": "8.2.0"
},
{
"status": "affected",
"version": "8.1.2"
},
{
"status": "affected",
"version": "8.1.1"
},
{
"status": "affected",
"version": "8.1.0"
},
{
"status": "affected",
"version": "8.0.1"
},
{
"status": "affected",
"version": "8.0.0"
},
{
"status": "affected",
"version": "7.88.1"
},
{
"status": "affected",
"version": "7.88.0"
},
{
"status": "affected",
"version": "7.87.0"
},
{
"status": "affected",
"version": "7.86.0"
},
{
"status": "affected",
"version": "7.85.0"
},
{
"status": "affected",
"version": "7.84.0"
},
{
"status": "affected",
"version": "7.83.1"
},
{
"status": "affected",
"version": "7.83.0"
},
{
"status": "affected",
"version": "7.82.0"
},
{
"status": "affected",
"version": "7.81.0"
},
{
"status": "affected",
"version": "7.80.0"
},
{
"status": "affected",
"version": "7.79.1"
},
{
"status": "affected",
"version": "7.79.0"
},
{
"status": "affected",
"version": "7.78.0"
},
{
"status": "affected",
"version": "7.77.0"
},
{
"status": "affected",
"version": "7.76.1"
},
{
"status": "affected",
"version": "7.76.0"
},
{
"status": "affected",
"version": "7.75.0"
},
{
"status": "affected",
"version": "7.74.0"
},
{
"status": "affected",
"version": "7.73.0"
},
{
"status": "affected",
"version": "7.72.0"
},
{
"status": "affected",
"version": "7.71.1"
},
{
"status": "affected",
"version": "7.71.0"
},
{
"status": "affected",
"version": "7.70.0"
},
{
"status": "affected",
"version": "7.69.1"
},
{
"status": "affected",
"version": "7.69.0"
},
{
"status": "affected",
"version": "7.68.0"
},
{
"status": "affected",
"version": "7.67.0"
},
{
"status": "affected",
"version": "7.66.0"
},
{
"status": "affected",
"version": "7.65.3"
},
{
"status": "affected",
"version": "7.65.2"
},
{
"status": "affected",
"version": "7.65.1"
},
{
"status": "affected",
"version": "7.65.0"
},
{
"status": "affected",
"version": "7.64.1"
},
{
"status": "affected",
"version": "7.64.0"
},
{
"status": "affected",
"version": "7.63.0"
},
{
"status": "affected",
"version": "7.62.0"
},
{
"status": "affected",
"version": "7.61.1"
},
{
"status": "affected",
"version": "7.61.0"
},
{
"status": "affected",
"version": "7.60.0"
},
{
"status": "affected",
"version": "7.59.0"
},
{
"status": "affected",
"version": "7.58.0"
},
{
"status": "affected",
"version": "7.57.0"
},
{
"status": "affected",
"version": "7.56.1"
},
{
"status": "affected",
"version": "7.56.0"
},
{
"status": "affected",
"version": "7.55.1"
},
{
"status": "affected",
"version": "7.55.0"
},
{
"status": "affected",
"version": "7.54.1"
},
{
"status": "affected",
"version": "7.54.0"
},
{
"status": "affected",
"version": "7.53.1"
},
{
"status": "affected",
"version": "7.53.0"
},
{
"status": "affected",
"version": "7.52.1"
},
{
"status": "affected",
"version": "7.52.0"
},
{
"status": "affected",
"version": "7.51.0"
},
{
"status": "affected",
"version": "7.50.3"
},
{
"status": "affected",
"version": "7.50.2"
},
{
"status": "affected",
"version": "7.50.1"
},
{
"status": "affected",
"version": "7.50.0"
},
{
"status": "affected",
"version": "7.49.1"
},
{
"status": "affected",
"version": "7.49.0"
},
{
"status": "affected",
"version": "7.48.0"
},
{
"status": "affected",
"version": "7.47.1"
},
{
"status": "affected",
"version": "7.47.0"
},
{
"status": "affected",
"version": "7.46.0"
},
{
"status": "affected",
"version": "7.45.0"
},
{
"status": "affected",
"version": "7.44.0"
},
{
"status": "affected",
"version": "7.43.0"
},
{
"status": "affected",
"version": "7.42.1"
},
{
"status": "affected",
"version": "7.42.0"
},
{
"status": "affected",
"version": "7.41.0"
},
{
"status": "affected",
"version": "7.40.0"
},
{
"status": "affected",
"version": "7.39.0"
},
{
"status": "affected",
"version": "7.38.0"
},
{
"status": "affected",
"version": "7.37.1"
},
{
"status": "affected",
"version": "7.37.0"
},
{
"status": "affected",
"version": "7.36.0"
},
{
"status": "affected",
"version": "7.35.0"
},
{
"status": "affected",
"version": "7.34.0"
},
{
"status": "affected",
"version": "7.33.0"
},
{
"status": "affected",
"version": "7.32.0"
},
{
"status": "affected",
"version": "7.31.0"
},
{
"status": "affected",
"version": "7.30.0"
},
{
"status": "affected",
"version": "7.29.0"
},
{
"status": "affected",
"version": "7.28.1"
},
{
"status": "affected",
"version": "7.28.0"
},
{
"status": "affected",
"version": "7.27.0"
},
{
"status": "affected",
"version": "7.26.0"
},
{
"status": "affected",
"version": "7.25.0"
},
{
"status": "affected",
"version": "7.24.0"
},
{
"status": "affected",
"version": "7.23.1"
},
{
"status": "affected",
"version": "7.23.0"
},
{
"status": "affected",
"version": "7.22.0"
},
{
"status": "affected",
"version": "7.21.7"
},
{
"status": "affected",
"version": "7.21.6"
},
{
"status": "affected",
"version": "7.21.5"
},
{
"status": "affected",
"version": "7.21.4"
},
{
"status": "affected",
"version": "7.21.3"
},
{
"status": "affected",
"version": "7.21.2"
},
{
"status": "affected",
"version": "7.21.1"
},
{
"status": "affected",
"version": "7.21.0"
},
{
"status": "affected",
"version": "7.20.1"
},
{
"status": "affected",
"version": "7.20.0"
},
{
"status": "affected",
"version": "7.19.7"
},
{
"status": "affected",
"version": "7.19.6"
},
{
"status": "affected",
"version": "7.19.5"
},
{
"status": "affected",
"version": "7.19.4"
},
{
"status": "affected",
"version": "7.19.3"
},
{
"status": "affected",
"version": "7.19.2"
},
{
"status": "affected",
"version": "7.19.1"
},
{
"status": "affected",
"version": "7.19.0"
},
{
"status": "affected",
"version": "7.18.2"
},
{
"status": "affected",
"version": "7.18.1"
},
{
"status": "affected",
"version": "7.18.0"
},
{
"status": "affected",
"version": "7.17.1"
},
{
"status": "affected",
"version": "7.17.0"
},
{
"status": "affected",
"version": "7.16.4"
},
{
"status": "affected",
"version": "7.16.3"
},
{
"status": "affected",
"version": "7.16.2"
},
{
"status": "affected",
"version": "7.16.1"
},
{
"status": "affected",
"version": "7.16.0"
},
{
"status": "affected",
"version": "7.15.5"
},
{
"status": "affected",
"version": "7.15.4"
},
{
"status": "affected",
"version": "7.15.3"
},
{
"status": "affected",
"version": "7.15.2"
},
{
"status": "affected",
"version": "7.15.1"
},
{
"status": "affected",
"version": "7.15.0"
},
{
"status": "affected",
"version": "7.14.1"
},
{
"status": "affected",
"version": "7.14.0"
},
{
"status": "affected",
"version": "7.13.2"
},
{
"status": "affected",
"version": "7.13.1"
},
{
"status": "affected",
"version": "7.13.0"
},
{
"status": "affected",
"version": "7.12.3"
},
{
"status": "affected",
"version": "7.12.2"
},
{
"status": "affected",
"version": "7.12.1"
},
{
"status": "affected",
"version": "7.12.0"
},
{
"status": "affected",
"version": "7.11.2"
},
{
"status": "affected",
"version": "7.11.1"
},
{
"status": "affected",
"version": "7.11.0"
},
{
"status": "affected",
"version": "7.10.8"
},
{
"status": "affected",
"version": "7.10.7"
},
{
"status": "affected",
"version": "7.10.6"
}
]
}
],
"credits": [
{
"lang": "en",
"type": "finder",
"value": "Zhicheng Chen"
},
{
"lang": "en",
"type": "remediation developer",
"value": "Daniel Stenberg"
}
],
"descriptions": [
{
"lang": "en",
"value": "libcurl can in some circumstances reuse the wrong connection when asked to do\nan Negotiate-authenticated HTTP or HTTPS request.\n\nlibcurl features a pool of recent connections so that subsequent requests can\nreuse an existing connection to avoid overhead.\n\nWhen reusing a connection a range of criterion must first be met. Due to a\nlogical error in the code, a request that was issued by an application could\nwrongfully reuse an existing connection to the same server that was\nauthenticated using different credentials. One underlying reason being that\nNegotiate sometimes authenticates *connections* and not *requests*, contrary\nto how HTTP is designed to work.\n\nAn application that allows Negotiate authentication to a server (that responds\nwanting Negotiate) with `user1:password1` and then does another operation to\nthe same server also using Negotiate but with `user2:password2` (while the\nprevious connection is still alive) - the second request wrongly reused the\nsame connection and since it then sees that the Negotiate negotiation is\nalready made, it sends the request over that connection thinking it uses\nthe user2 credentials when it is in fact still using the connection\nauthenticated for user1...\n\nThe set of authentication methods to use is set with `CURLOPT_HTTPAUTH`.\n\nApplications can disable libcurl\u0027s reuse of connections and thus mitigate this\nproblem, by using one of the following libcurl options to alter how\nconnections are or are not reused: `CURLOPT_FRESH_CONNECT`,\n`CURLOPT_MAXCONNECTS` and `CURLMOPT_MAX_HOST_CONNECTIONS` (if using the\ncurl_multi API)."
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-305",
"description": "Authentication Bypass by Primary Weakness",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-15T06:02:49.175Z",
"orgId": "2499f714-1537-4658-8207-48ae4bb9eae9",
"shortName": "curl"
},
"references": [
{
"url": "https://curl.se/docs/CVE-2026-1965.json"
},
{
"url": "https://curl.se/docs/CVE-2026-1965.html"
}
],
"title": "bad reuse of HTTP Negotiate connection",
"x_generator": {
"engine": "cvelib 1.8.0"
},
"x_osv": {
"affected": [
{
"ranges": [
{
"events": [
{
"introduced": "7.10.6"
},
{
"fixed": "8.14.2"
},
{
"introduced": "8.15.0"
},
{
"fixed": "8.16.1"
},
{
"introduced": "8.17.0"
},
{
"fixed": "8.19.0"
}
],
"type": "SEMVER"
},
{
"events": [
{
"introduced": "e56ae1426cb7a0a4a427cf8d6099a821fdaae428"
},
{
"fixed": "f1a39f221d57354990e3eeeddc3404aede2aff70"
}
],
"repo": "https://github.com/curl/curl.git",
"type": "GIT"
}
],
"versions": [
"8.18.0",
"8.17.0",
"8.16.0",
"8.15.0",
"8.14.1",
"8.14.0",
"8.13.0",
"8.12.1",
"8.12.0",
"8.11.1",
"8.11.0",
"8.10.1",
"8.10.0",
"8.9.1",
"8.9.0",
"8.8.0",
"8.7.1",
"8.7.0",
"8.6.0",
"8.5.0",
"8.4.0",
"8.3.0",
"8.2.1",
"8.2.0",
"8.1.2",
"8.1.1",
"8.1.0",
"8.0.1",
"8.0.0",
"7.88.1",
"7.88.0",
"7.87.0",
"7.86.0",
"7.85.0",
"7.84.0",
"7.83.1",
"7.83.0",
"7.82.0",
"7.81.0",
"7.80.0",
"7.79.1",
"7.79.0",
"7.78.0",
"7.77.0",
"7.76.1",
"7.76.0",
"7.75.0",
"7.74.0",
"7.73.0",
"7.72.0",
"7.71.1",
"7.71.0",
"7.70.0",
"7.69.1",
"7.69.0",
"7.68.0",
"7.67.0",
"7.66.0",
"7.65.3",
"7.65.2",
"7.65.1",
"7.65.0",
"7.64.1",
"7.64.0",
"7.63.0",
"7.62.0",
"7.61.1",
"7.61.0",
"7.60.0",
"7.59.0",
"7.58.0",
"7.57.0",
"7.56.1",
"7.56.0",
"7.55.1",
"7.55.0",
"7.54.1",
"7.54.0",
"7.53.1",
"7.53.0",
"7.52.1",
"7.52.0",
"7.51.0",
"7.50.3",
"7.50.2",
"7.50.1",
"7.50.0",
"7.49.1",
"7.49.0",
"7.48.0",
"7.47.1",
"7.47.0",
"7.46.0",
"7.45.0",
"7.44.0",
"7.43.0",
"7.42.1",
"7.42.0",
"7.41.0",
"7.40.0",
"7.39.0",
"7.38.0",
"7.37.1",
"7.37.0",
"7.36.0",
"7.35.0",
"7.34.0",
"7.33.0",
"7.32.0",
"7.31.0",
"7.30.0",
"7.29.0",
"7.28.1",
"7.28.0",
"7.27.0",
"7.26.0",
"7.25.0",
"7.24.0",
"7.23.1",
"7.23.0",
"7.22.0",
"7.21.7",
"7.21.6",
"7.21.5",
"7.21.4",
"7.21.3",
"7.21.2",
"7.21.1",
"7.21.0",
"7.20.1",
"7.20.0",
"7.19.7",
"7.19.6",
"7.19.5",
"7.19.4",
"7.19.3",
"7.19.2",
"7.19.1",
"7.19.0",
"7.18.2",
"7.18.1",
"7.18.0",
"7.17.1",
"7.17.0",
"7.16.4",
"7.16.3",
"7.16.2",
"7.16.1",
"7.16.0",
"7.15.5",
"7.15.4",
"7.15.3",
"7.15.2",
"7.15.1",
"7.15.0",
"7.14.1",
"7.14.0",
"7.13.2",
"7.13.1",
"7.13.0",
"7.12.3",
"7.12.2",
"7.12.1",
"7.12.0",
"7.11.2",
"7.11.1",
"7.11.0",
"7.10.8",
"7.10.7",
"7.10.6"
]
}
],
"aliases": [
"CVE-2026-1965"
],
"credits": [
{
"name": "Zhicheng Chen",
"type": "finder"
},
{
"name": "Daniel Stenberg",
"type": "remediation developer"
}
],
"database_specific": {
"CWE": {
"desc": "Authentication Bypass by Primary Weakness",
"id": "CWE-305"
},
"URL": "https://curl.se/docs/CVE-2026-1965.json",
"affects": "both",
"last_affected": "8.18.0",
"package": "curl",
"severity": "Medium",
"www": "https://curl.se/docs/CVE-2026-1965.html"
},
"details": "libcurl can in some circumstances reuse the wrong connection when asked to do\nan Negotiate-authenticated HTTP or HTTPS request.\n\nlibcurl features a pool of recent connections so that subsequent requests can\nreuse an existing connection to avoid overhead.\n\nWhen reusing a connection a range of criterion must first be met. Due to a\nlogical error in the code, a request that was issued by an application could\nwrongfully reuse an existing connection to the same server that was\nauthenticated using different credentials. One underlying reason being that\nNegotiate sometimes authenticates *connections* and not *requests*, contrary\nto how HTTP is designed to work.\n\nAn application that allows Negotiate authentication to a server (that responds\nwanting Negotiate) with `user1:password1` and then does another operation to\nthe same server also using Negotiate but with `user2:password2` (while the\nprevious connection is still alive) - the second request wrongly reused the\nsame connection and since it then sees that the Negotiate negotiation is\nalready made, it sends the request over that connection thinking it uses\nthe user2 credentials when it is in fact still using the connection\nauthenticated for user1...\n\nThe set of authentication methods to use is set with `CURLOPT_HTTPAUTH`.\n\nApplications can disable libcurl\u0027s reuse of connections and thus mitigate this\nproblem, by using one of the following libcurl options to alter how\nconnections are or are not reused: `CURLOPT_FRESH_CONNECT`,\n`CURLOPT_MAXCONNECTS` and `CURLMOPT_MAX_HOST_CONNECTIONS` (if using the\ncurl_multi API).",
"id": "CURL-CVE-2026-1965",
"modified": "2026-09-07T10:34:51.00Z",
"published": "2026-03-11T08:00:00.00Z",
"schema_version": "1.5.0",
"summary": "bad reuse of HTTP Negotiate connection"
}
}
},
"cveMetadata": {
"assignerOrgId": "2499f714-1537-4658-8207-48ae4bb9eae9",
"assignerShortName": "curl",
"cveId": "CVE-2026-1965",
"datePublished": "2026-03-11T10:08:52.431Z",
"dateReserved": "2026-02-05T11:00:50.882Z",
"dateUpdated": "2026-09-15T06:02:49.175Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-3784 (GCVE-0-2026-3784)
Vulnerability from cvelistv5
Published
2026-03-11 10:09
Modified
2026-09-15 06:02
Severity ?
VLAI Severity ?
EPSS score ?
CWE
- CWE-305 - Authentication Bypass by Primary Weakness
Summary
curl would wrongly reuse an existing HTTP proxy connection doing CONNECT to a
server, even if the new request uses different credentials for the HTTP proxy.
The proper behavior is to create or use a separate connection.
References
Impacted products
| Vendor | Product | Version | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| curl | curl |
Version: 7.7.0 ≤ Version: 8.15.0 ≤ Version: 8.17.0 ≤ |
||||||||||||
|
||||||||||||||
{
"containers": {
"adp": [
{
"providerMetadata": {
"dateUpdated": "2026-03-11T10:16:32.844Z",
"orgId": "af854a3a-2127-422b-91ae-364da2661108",
"shortName": "CVE"
},
"references": [
{
"url": "http://www.openwall.com/lists/oss-security/2026/03/11/3"
}
],
"title": "CVE Program Container"
},
{
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "NONE",
"baseScore": 6.5,
"baseSeverity": "MEDIUM",
"confidentialityImpact": "LOW",
"integrityImpact": "LOW",
"privilegesRequired": "NONE",
"scope": "UNCHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N",
"version": "3.1"
}
},
{
"other": {
"content": {
"id": "CVE-2026-3784",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "yes"
},
{
"Technical Impact": "partial"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-03-11T15:48:38.785522Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-305",
"description": "CWE-305 Authentication Bypass by Primary Weakness",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-03-11T15:48:41.725Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
},
{
"affected": [
{
"defaultStatus": "unknown",
"product": "RUGGEDCOM RST2428P",
"vendor": "Siemens",
"versions": [
{
"lessThan": "V4.0",
"status": "affected",
"version": "0",
"versionType": "custom"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-06-02T13:00:43.860Z",
"orgId": "0b142b55-0307-4c5a-b3c9-f314f3fb7c5e",
"shortName": "siemens-SADP"
},
"references": [
{
"url": "https://cert-portal.siemens.com/productcert/html/ssa-253495.html"
}
],
"x_adpType": "supplier"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "curl",
"vendor": "curl",
"versions": [
{
"lessThan": "8.14.2",
"status": "affected",
"version": "7.7.0",
"versionType": "semver"
},
{
"lessThan": "8.16.1",
"status": "affected",
"version": "8.15.0",
"versionType": "semver"
},
{
"lessThan": "8.19.0",
"status": "affected",
"version": "8.17.0",
"versionType": "semver"
}
]
},
{
"defaultStatus": "unaffected",
"product": "curl",
"repo": "https://github.com/curl/curl.git",
"vendor": "curl",
"versions": [
{
"lessThan": "5f13a7645e565c5c1a06f3ef86e97afb856fb364",
"status": "affected",
"version": "a1d6ad26100bc493c7b04f1301b1634b7f5aa8b4",
"versionType": "git"
}
]
},
{
"defaultStatus": "unaffected",
"product": "curl",
"vendor": "curl",
"versions": [
{
"status": "affected",
"version": "8.18.0"
},
{
"status": "affected",
"version": "8.17.0"
},
{
"status": "affected",
"version": "8.16.0"
},
{
"status": "affected",
"version": "8.15.0"
},
{
"status": "affected",
"version": "8.14.1"
},
{
"status": "affected",
"version": "8.14.0"
},
{
"status": "affected",
"version": "8.13.0"
},
{
"status": "affected",
"version": "8.12.1"
},
{
"status": "affected",
"version": "8.12.0"
},
{
"status": "affected",
"version": "8.11.1"
},
{
"status": "affected",
"version": "8.11.0"
},
{
"status": "affected",
"version": "8.10.1"
},
{
"status": "affected",
"version": "8.10.0"
},
{
"status": "affected",
"version": "8.9.1"
},
{
"status": "affected",
"version": "8.9.0"
},
{
"status": "affected",
"version": "8.8.0"
},
{
"status": "affected",
"version": "8.7.1"
},
{
"status": "affected",
"version": "8.7.0"
},
{
"status": "affected",
"version": "8.6.0"
},
{
"status": "affected",
"version": "8.5.0"
},
{
"status": "affected",
"version": "8.4.0"
},
{
"status": "affected",
"version": "8.3.0"
},
{
"status": "affected",
"version": "8.2.1"
},
{
"status": "affected",
"version": "8.2.0"
},
{
"status": "affected",
"version": "8.1.2"
},
{
"status": "affected",
"version": "8.1.1"
},
{
"status": "affected",
"version": "8.1.0"
},
{
"status": "affected",
"version": "8.0.1"
},
{
"status": "affected",
"version": "8.0.0"
},
{
"status": "affected",
"version": "7.88.1"
},
{
"status": "affected",
"version": "7.88.0"
},
{
"status": "affected",
"version": "7.87.0"
},
{
"status": "affected",
"version": "7.86.0"
},
{
"status": "affected",
"version": "7.85.0"
},
{
"status": "affected",
"version": "7.84.0"
},
{
"status": "affected",
"version": "7.83.1"
},
{
"status": "affected",
"version": "7.83.0"
},
{
"status": "affected",
"version": "7.82.0"
},
{
"status": "affected",
"version": "7.81.0"
},
{
"status": "affected",
"version": "7.80.0"
},
{
"status": "affected",
"version": "7.79.1"
},
{
"status": "affected",
"version": "7.79.0"
},
{
"status": "affected",
"version": "7.78.0"
},
{
"status": "affected",
"version": "7.77.0"
},
{
"status": "affected",
"version": "7.76.1"
},
{
"status": "affected",
"version": "7.76.0"
},
{
"status": "affected",
"version": "7.75.0"
},
{
"status": "affected",
"version": "7.74.0"
},
{
"status": "affected",
"version": "7.73.0"
},
{
"status": "affected",
"version": "7.72.0"
},
{
"status": "affected",
"version": "7.71.1"
},
{
"status": "affected",
"version": "7.71.0"
},
{
"status": "affected",
"version": "7.70.0"
},
{
"status": "affected",
"version": "7.69.1"
},
{
"status": "affected",
"version": "7.69.0"
},
{
"status": "affected",
"version": "7.68.0"
},
{
"status": "affected",
"version": "7.67.0"
},
{
"status": "affected",
"version": "7.66.0"
},
{
"status": "affected",
"version": "7.65.3"
},
{
"status": "affected",
"version": "7.65.2"
},
{
"status": "affected",
"version": "7.65.1"
},
{
"status": "affected",
"version": "7.65.0"
},
{
"status": "affected",
"version": "7.64.1"
},
{
"status": "affected",
"version": "7.64.0"
},
{
"status": "affected",
"version": "7.63.0"
},
{
"status": "affected",
"version": "7.62.0"
},
{
"status": "affected",
"version": "7.61.1"
},
{
"status": "affected",
"version": "7.61.0"
},
{
"status": "affected",
"version": "7.60.0"
},
{
"status": "affected",
"version": "7.59.0"
},
{
"status": "affected",
"version": "7.58.0"
},
{
"status": "affected",
"version": "7.57.0"
},
{
"status": "affected",
"version": "7.56.1"
},
{
"status": "affected",
"version": "7.56.0"
},
{
"status": "affected",
"version": "7.55.1"
},
{
"status": "affected",
"version": "7.55.0"
},
{
"status": "affected",
"version": "7.54.1"
},
{
"status": "affected",
"version": "7.54.0"
},
{
"status": "affected",
"version": "7.53.1"
},
{
"status": "affected",
"version": "7.53.0"
},
{
"status": "affected",
"version": "7.52.1"
},
{
"status": "affected",
"version": "7.52.0"
},
{
"status": "affected",
"version": "7.51.0"
},
{
"status": "affected",
"version": "7.50.3"
},
{
"status": "affected",
"version": "7.50.2"
},
{
"status": "affected",
"version": "7.50.1"
},
{
"status": "affected",
"version": "7.50.0"
},
{
"status": "affected",
"version": "7.49.1"
},
{
"status": "affected",
"version": "7.49.0"
},
{
"status": "affected",
"version": "7.48.0"
},
{
"status": "affected",
"version": "7.47.1"
},
{
"status": "affected",
"version": "7.47.0"
},
{
"status": "affected",
"version": "7.46.0"
},
{
"status": "affected",
"version": "7.45.0"
},
{
"status": "affected",
"version": "7.44.0"
},
{
"status": "affected",
"version": "7.43.0"
},
{
"status": "affected",
"version": "7.42.1"
},
{
"status": "affected",
"version": "7.42.0"
},
{
"status": "affected",
"version": "7.41.0"
},
{
"status": "affected",
"version": "7.40.0"
},
{
"status": "affected",
"version": "7.39.0"
},
{
"status": "affected",
"version": "7.38.0"
},
{
"status": "affected",
"version": "7.37.1"
},
{
"status": "affected",
"version": "7.37.0"
},
{
"status": "affected",
"version": "7.36.0"
},
{
"status": "affected",
"version": "7.35.0"
},
{
"status": "affected",
"version": "7.34.0"
},
{
"status": "affected",
"version": "7.33.0"
},
{
"status": "affected",
"version": "7.32.0"
},
{
"status": "affected",
"version": "7.31.0"
},
{
"status": "affected",
"version": "7.30.0"
},
{
"status": "affected",
"version": "7.29.0"
},
{
"status": "affected",
"version": "7.28.1"
},
{
"status": "affected",
"version": "7.28.0"
},
{
"status": "affected",
"version": "7.27.0"
},
{
"status": "affected",
"version": "7.26.0"
},
{
"status": "affected",
"version": "7.25.0"
},
{
"status": "affected",
"version": "7.24.0"
},
{
"status": "affected",
"version": "7.23.1"
},
{
"status": "affected",
"version": "7.23.0"
},
{
"status": "affected",
"version": "7.22.0"
},
{
"status": "affected",
"version": "7.21.7"
},
{
"status": "affected",
"version": "7.21.6"
},
{
"status": "affected",
"version": "7.21.5"
},
{
"status": "affected",
"version": "7.21.4"
},
{
"status": "affected",
"version": "7.21.3"
},
{
"status": "affected",
"version": "7.21.2"
},
{
"status": "affected",
"version": "7.21.1"
},
{
"status": "affected",
"version": "7.21.0"
},
{
"status": "affected",
"version": "7.20.1"
},
{
"status": "affected",
"version": "7.20.0"
},
{
"status": "affected",
"version": "7.19.7"
},
{
"status": "affected",
"version": "7.19.6"
},
{
"status": "affected",
"version": "7.19.5"
},
{
"status": "affected",
"version": "7.19.4"
},
{
"status": "affected",
"version": "7.19.3"
},
{
"status": "affected",
"version": "7.19.2"
},
{
"status": "affected",
"version": "7.19.1"
},
{
"status": "affected",
"version": "7.19.0"
},
{
"status": "affected",
"version": "7.18.2"
},
{
"status": "affected",
"version": "7.18.1"
},
{
"status": "affected",
"version": "7.18.0"
},
{
"status": "affected",
"version": "7.17.1"
},
{
"status": "affected",
"version": "7.17.0"
},
{
"status": "affected",
"version": "7.16.4"
},
{
"status": "affected",
"version": "7.16.3"
},
{
"status": "affected",
"version": "7.16.2"
},
{
"status": "affected",
"version": "7.16.1"
},
{
"status": "affected",
"version": "7.16.0"
},
{
"status": "affected",
"version": "7.15.5"
},
{
"status": "affected",
"version": "7.15.4"
},
{
"status": "affected",
"version": "7.15.3"
},
{
"status": "affected",
"version": "7.15.2"
},
{
"status": "affected",
"version": "7.15.1"
},
{
"status": "affected",
"version": "7.15.0"
},
{
"status": "affected",
"version": "7.14.1"
},
{
"status": "affected",
"version": "7.14.0"
},
{
"status": "affected",
"version": "7.13.2"
},
{
"status": "affected",
"version": "7.13.1"
},
{
"status": "affected",
"version": "7.13.0"
},
{
"status": "affected",
"version": "7.12.3"
},
{
"status": "affected",
"version": "7.12.2"
},
{
"status": "affected",
"version": "7.12.1"
},
{
"status": "affected",
"version": "7.12.0"
},
{
"status": "affected",
"version": "7.11.2"
},
{
"status": "affected",
"version": "7.11.1"
},
{
"status": "affected",
"version": "7.11.0"
},
{
"status": "affected",
"version": "7.10.8"
},
{
"status": "affected",
"version": "7.10.7"
},
{
"status": "affected",
"version": "7.10.6"
},
{
"status": "affected",
"version": "7.10.5"
},
{
"status": "affected",
"version": "7.10.4"
},
{
"status": "affected",
"version": "7.10.3"
},
{
"status": "affected",
"version": "7.10.2"
},
{
"status": "affected",
"version": "7.10.1"
},
{
"status": "affected",
"version": "7.10"
},
{
"status": "affected",
"version": "7.9.8"
},
{
"status": "affected",
"version": "7.9.7"
},
{
"status": "affected",
"version": "7.9.6"
},
{
"status": "affected",
"version": "7.9.5"
},
{
"status": "affected",
"version": "7.9.4"
},
{
"status": "affected",
"version": "7.9.3"
},
{
"status": "affected",
"version": "7.9.2"
},
{
"status": "affected",
"version": "7.9.1"
},
{
"status": "affected",
"version": "7.9"
},
{
"status": "affected",
"version": "7.8.1"
},
{
"status": "affected",
"version": "7.8"
},
{
"status": "affected",
"version": "7.7.3"
},
{
"status": "affected",
"version": "7.7.2"
},
{
"status": "affected",
"version": "7.7.1"
},
{
"status": "affected",
"version": "7.7"
}
]
}
],
"credits": [
{
"lang": "en",
"type": "finder",
"value": "Muhamad Arga Reksapati (HackerOne: nobcoder)"
},
{
"lang": "en",
"type": "remediation developer",
"value": "Stefan Eissing"
}
],
"descriptions": [
{
"lang": "en",
"value": "curl would wrongly reuse an existing HTTP proxy connection doing CONNECT to a\nserver, even if the new request uses different credentials for the HTTP proxy.\nThe proper behavior is to create or use a separate connection."
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-305",
"description": "Authentication Bypass by Primary Weakness",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-15T06:02:54.443Z",
"orgId": "2499f714-1537-4658-8207-48ae4bb9eae9",
"shortName": "curl"
},
"references": [
{
"url": "https://curl.se/docs/CVE-2026-3784.json"
},
{
"url": "https://curl.se/docs/CVE-2026-3784.html"
},
{
"url": "https://hackerone.com/reports/3584903"
}
],
"title": "wrong proxy connection reuse with credentials",
"x_generator": {
"engine": "cvelib 1.8.0"
},
"x_osv": {
"affected": [
{
"ranges": [
{
"events": [
{
"introduced": "7.7.0"
},
{
"fixed": "8.14.2"
},
{
"introduced": "8.15.0"
},
{
"fixed": "8.16.1"
},
{
"introduced": "8.17.0"
},
{
"fixed": "8.19.0"
}
],
"type": "SEMVER"
},
{
"events": [
{
"introduced": "a1d6ad26100bc493c7b04f1301b1634b7f5aa8b4"
},
{
"fixed": "5f13a7645e565c5c1a06f3ef86e97afb856fb364"
}
],
"repo": "https://github.com/curl/curl.git",
"type": "GIT"
}
],
"versions": [
"8.18.0",
"8.17.0",
"8.16.0",
"8.15.0",
"8.14.1",
"8.14.0",
"8.13.0",
"8.12.1",
"8.12.0",
"8.11.1",
"8.11.0",
"8.10.1",
"8.10.0",
"8.9.1",
"8.9.0",
"8.8.0",
"8.7.1",
"8.7.0",
"8.6.0",
"8.5.0",
"8.4.0",
"8.3.0",
"8.2.1",
"8.2.0",
"8.1.2",
"8.1.1",
"8.1.0",
"8.0.1",
"8.0.0",
"7.88.1",
"7.88.0",
"7.87.0",
"7.86.0",
"7.85.0",
"7.84.0",
"7.83.1",
"7.83.0",
"7.82.0",
"7.81.0",
"7.80.0",
"7.79.1",
"7.79.0",
"7.78.0",
"7.77.0",
"7.76.1",
"7.76.0",
"7.75.0",
"7.74.0",
"7.73.0",
"7.72.0",
"7.71.1",
"7.71.0",
"7.70.0",
"7.69.1",
"7.69.0",
"7.68.0",
"7.67.0",
"7.66.0",
"7.65.3",
"7.65.2",
"7.65.1",
"7.65.0",
"7.64.1",
"7.64.0",
"7.63.0",
"7.62.0",
"7.61.1",
"7.61.0",
"7.60.0",
"7.59.0",
"7.58.0",
"7.57.0",
"7.56.1",
"7.56.0",
"7.55.1",
"7.55.0",
"7.54.1",
"7.54.0",
"7.53.1",
"7.53.0",
"7.52.1",
"7.52.0",
"7.51.0",
"7.50.3",
"7.50.2",
"7.50.1",
"7.50.0",
"7.49.1",
"7.49.0",
"7.48.0",
"7.47.1",
"7.47.0",
"7.46.0",
"7.45.0",
"7.44.0",
"7.43.0",
"7.42.1",
"7.42.0",
"7.41.0",
"7.40.0",
"7.39.0",
"7.38.0",
"7.37.1",
"7.37.0",
"7.36.0",
"7.35.0",
"7.34.0",
"7.33.0",
"7.32.0",
"7.31.0",
"7.30.0",
"7.29.0",
"7.28.1",
"7.28.0",
"7.27.0",
"7.26.0",
"7.25.0",
"7.24.0",
"7.23.1",
"7.23.0",
"7.22.0",
"7.21.7",
"7.21.6",
"7.21.5",
"7.21.4",
"7.21.3",
"7.21.2",
"7.21.1",
"7.21.0",
"7.20.1",
"7.20.0",
"7.19.7",
"7.19.6",
"7.19.5",
"7.19.4",
"7.19.3",
"7.19.2",
"7.19.1",
"7.19.0",
"7.18.2",
"7.18.1",
"7.18.0",
"7.17.1",
"7.17.0",
"7.16.4",
"7.16.3",
"7.16.2",
"7.16.1",
"7.16.0",
"7.15.5",
"7.15.4",
"7.15.3",
"7.15.2",
"7.15.1",
"7.15.0",
"7.14.1",
"7.14.0",
"7.13.2",
"7.13.1",
"7.13.0",
"7.12.3",
"7.12.2",
"7.12.1",
"7.12.0",
"7.11.2",
"7.11.1",
"7.11.0",
"7.10.8",
"7.10.7",
"7.10.6",
"7.10.5",
"7.10.4",
"7.10.3",
"7.10.2",
"7.10.1",
"7.10",
"7.9.8",
"7.9.7",
"7.9.6",
"7.9.5",
"7.9.4",
"7.9.3",
"7.9.2",
"7.9.1",
"7.9",
"7.8.1",
"7.8",
"7.7.3",
"7.7.2",
"7.7.1",
"7.7"
]
}
],
"aliases": [
"CVE-2026-3784"
],
"credits": [
{
"name": "Muhamad Arga Reksapati (HackerOne: nobcoder)",
"type": "finder"
},
{
"name": "Stefan Eissing",
"type": "remediation developer"
}
],
"database_specific": {
"CWE": {
"desc": "Authentication Bypass by Primary Weakness",
"id": "CWE-305"
},
"URL": "https://curl.se/docs/CVE-2026-3784.json",
"affects": "both",
"issue": "https://hackerone.com/reports/3584903",
"last_affected": "8.18.0",
"package": "curl",
"severity": "Low",
"www": "https://curl.se/docs/CVE-2026-3784.html"
},
"details": "curl would wrongly reuse an existing HTTP proxy connection doing CONNECT to a\nserver, even if the new request uses different credentials for the HTTP proxy.\nThe proper behavior is to create or use a separate connection.",
"id": "CURL-CVE-2026-3784",
"modified": "2026-09-07T10:34:51.00Z",
"published": "2026-03-11T08:00:00.00Z",
"schema_version": "1.5.0",
"summary": "wrong proxy connection reuse with credentials"
}
}
},
"cveMetadata": {
"assignerOrgId": "2499f714-1537-4658-8207-48ae4bb9eae9",
"assignerShortName": "curl",
"cveId": "CVE-2026-3784",
"datePublished": "2026-03-11T10:09:21.418Z",
"dateReserved": "2026-03-08T05:09:52.279Z",
"dateUpdated": "2026-09-15T06:02:54.443Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-3805 (GCVE-0-2026-3805)
Vulnerability from cvelistv5
Published
2026-03-11 10:09
Modified
2026-09-15 06:02
Severity ?
VLAI Severity ?
EPSS score ?
CWE
- CWE-416 - Use After Free
Summary
When doing a second SMB request to the same host again, curl would wrongly use
a data pointer pointing into already freed memory.
References
Impacted products
{
"containers": {
"adp": [
{
"providerMetadata": {
"dateUpdated": "2026-03-11T10:16:34.391Z",
"orgId": "af854a3a-2127-422b-91ae-364da2661108",
"shortName": "CVE"
},
"references": [
{
"url": "http://www.openwall.com/lists/oss-security/2026/03/11/4"
}
],
"title": "CVE Program Container"
},
{
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "HIGH",
"baseScore": 7.5,
"baseSeverity": "HIGH",
"confidentialityImpact": "NONE",
"integrityImpact": "NONE",
"privilegesRequired": "NONE",
"scope": "UNCHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
"version": "3.1"
}
},
{
"other": {
"content": {
"id": "CVE-2026-3805",
"options": [
{
"Exploitation": "poc"
},
{
"Automatable": "yes"
},
{
"Technical Impact": "partial"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-03-11T15:45:10.217077Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-416",
"description": "CWE-416 Use After Free",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-03-11T15:45:38.820Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "curl",
"vendor": "curl",
"versions": [
{
"lessThan": "8.14.2",
"status": "affected",
"version": "8.13.0",
"versionType": "semver"
},
{
"lessThan": "8.16.1",
"status": "affected",
"version": "8.15.0",
"versionType": "semver"
},
{
"lessThan": "8.19.0",
"status": "affected",
"version": "8.17.0",
"versionType": "semver"
}
]
},
{
"defaultStatus": "unaffected",
"product": "curl",
"repo": "https://github.com/curl/curl.git",
"vendor": "curl",
"versions": [
{
"lessThan": "e090be9f73a7a71459ef678c7cc4b1f75e3ea883",
"status": "affected",
"version": "f4831daa9b2a97e8a2921d6b62cc4dfdd0d8646e",
"versionType": "git"
}
]
},
{
"defaultStatus": "unaffected",
"product": "curl",
"vendor": "curl",
"versions": [
{
"status": "affected",
"version": "8.18.0"
},
{
"status": "affected",
"version": "8.17.0"
},
{
"status": "affected",
"version": "8.16.0"
},
{
"status": "affected",
"version": "8.15.0"
},
{
"status": "affected",
"version": "8.14.1"
},
{
"status": "affected",
"version": "8.14.0"
},
{
"status": "affected",
"version": "8.13.0"
}
]
}
],
"credits": [
{
"lang": "en",
"type": "finder",
"value": "Daniel Wade"
},
{
"lang": "en",
"type": "remediation developer",
"value": "Stefan Eissing"
}
],
"descriptions": [
{
"lang": "en",
"value": "When doing a second SMB request to the same host again, curl would wrongly use\na data pointer pointing into already freed memory."
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-416",
"description": "Use After Free",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-15T06:02:55.871Z",
"orgId": "2499f714-1537-4658-8207-48ae4bb9eae9",
"shortName": "curl"
},
"references": [
{
"url": "https://curl.se/docs/CVE-2026-3805.json"
},
{
"url": "https://curl.se/docs/CVE-2026-3805.html"
},
{
"url": "https://hackerone.com/reports/3591944"
}
],
"title": "use after free in SMB connection reuse",
"x_generator": {
"engine": "cvelib 1.8.0"
},
"x_osv": {
"affected": [
{
"ranges": [
{
"events": [
{
"introduced": "8.13.0"
},
{
"fixed": "8.14.2"
},
{
"introduced": "8.15.0"
},
{
"fixed": "8.16.1"
},
{
"introduced": "8.17.0"
},
{
"fixed": "8.19.0"
}
],
"type": "SEMVER"
},
{
"events": [
{
"introduced": "f4831daa9b2a97e8a2921d6b62cc4dfdd0d8646e"
},
{
"fixed": "e090be9f73a7a71459ef678c7cc4b1f75e3ea883"
}
],
"repo": "https://github.com/curl/curl.git",
"type": "GIT"
}
],
"versions": [
"8.18.0",
"8.17.0",
"8.16.0",
"8.15.0",
"8.14.1",
"8.14.0",
"8.13.0"
]
}
],
"aliases": [
"CVE-2026-3805"
],
"credits": [
{
"name": "Daniel Wade",
"type": "finder"
},
{
"name": "Stefan Eissing",
"type": "remediation developer"
}
],
"database_specific": {
"CWE": {
"desc": "Use After Free",
"id": "CWE-416"
},
"URL": "https://curl.se/docs/CVE-2026-3805.json",
"affects": "both",
"issue": "https://hackerone.com/reports/3591944",
"last_affected": "8.18.0",
"package": "curl",
"severity": "Medium",
"www": "https://curl.se/docs/CVE-2026-3805.html"
},
"details": "When doing a second SMB request to the same host again, curl would wrongly use\na data pointer pointing into already freed memory.",
"id": "CURL-CVE-2026-3805",
"modified": "2026-09-07T10:34:51.00Z",
"published": "2026-03-11T08:00:00.00Z",
"schema_version": "1.5.0",
"summary": "use after free in SMB connection reuse"
}
}
},
"cveMetadata": {
"assignerOrgId": "2499f714-1537-4658-8207-48ae4bb9eae9",
"assignerShortName": "curl",
"cveId": "CVE-2026-3805",
"datePublished": "2026-03-11T10:09:37.729Z",
"dateReserved": "2026-03-08T16:07:39.817Z",
"dateUpdated": "2026-09-15T06:02:55.871Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-3783 (GCVE-0-2026-3783)
Vulnerability from cvelistv5
Published
2026-03-11 10:09
Modified
2026-09-15 06:02
Severity ?
VLAI Severity ?
EPSS score ?
CWE
- CWE-522 - Insufficiently Protected Credentials
Summary
When an OAuth2 bearer token is used for an HTTP(S) transfer, and that transfer
performs a redirect to a second URL, curl could leak that token to the second
hostname under some circumstances.
If the hostname that the first request is redirected to has information in the
used .netrc file, with either of the `machine` or `default` keywords, curl
would pass on the bearer token set for the first host also to the second one.
References
Impacted products
| Vendor | Product | Version | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| curl | curl |
Version: 7.33.0 ≤ Version: 8.15.0 ≤ Version: 8.17.0 ≤ |
||||||||||||
|
||||||||||||||
{
"containers": {
"adp": [
{
"providerMetadata": {
"dateUpdated": "2026-03-11T10:16:31.282Z",
"orgId": "af854a3a-2127-422b-91ae-364da2661108",
"shortName": "CVE"
},
"references": [
{
"url": "http://www.openwall.com/lists/oss-security/2026/03/11/2"
}
],
"title": "CVE Program Container"
},
{
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "NONE",
"baseScore": 5.3,
"baseSeverity": "MEDIUM",
"confidentialityImpact": "LOW",
"integrityImpact": "NONE",
"privilegesRequired": "NONE",
"scope": "UNCHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N",
"version": "3.1"
}
},
{
"other": {
"content": {
"id": "CVE-2026-3783",
"options": [
{
"Exploitation": "poc"
},
{
"Automatable": "yes"
},
{
"Technical Impact": "partial"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-03-11T14:25:28.836990Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-522",
"description": "CWE-522 Insufficiently Protected Credentials",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-03-11T14:26:10.788Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "curl",
"vendor": "curl",
"versions": [
{
"lessThan": "8.14.2",
"status": "affected",
"version": "7.33.0",
"versionType": "semver"
},
{
"lessThan": "8.16.1",
"status": "affected",
"version": "8.15.0",
"versionType": "semver"
},
{
"lessThan": "8.19.0",
"status": "affected",
"version": "8.17.0",
"versionType": "semver"
}
]
},
{
"defaultStatus": "unaffected",
"product": "curl",
"repo": "https://github.com/curl/curl.git",
"vendor": "curl",
"versions": [
{
"lessThan": "e3d7401a32a46516c9e5ee877e613e62ed35bddc",
"status": "affected",
"version": "06c1bea72faabb6fad4b7ef818aafaa336c9a7aa",
"versionType": "git"
}
]
},
{
"defaultStatus": "unaffected",
"product": "curl",
"vendor": "curl",
"versions": [
{
"status": "affected",
"version": "8.18.0"
},
{
"status": "affected",
"version": "8.17.0"
},
{
"status": "affected",
"version": "8.16.0"
},
{
"status": "affected",
"version": "8.15.0"
},
{
"status": "affected",
"version": "8.14.1"
},
{
"status": "affected",
"version": "8.14.0"
},
{
"status": "affected",
"version": "8.13.0"
},
{
"status": "affected",
"version": "8.12.1"
},
{
"status": "affected",
"version": "8.12.0"
},
{
"status": "affected",
"version": "8.11.1"
},
{
"status": "affected",
"version": "8.11.0"
},
{
"status": "affected",
"version": "8.10.1"
},
{
"status": "affected",
"version": "8.10.0"
},
{
"status": "affected",
"version": "8.9.1"
},
{
"status": "affected",
"version": "8.9.0"
},
{
"status": "affected",
"version": "8.8.0"
},
{
"status": "affected",
"version": "8.7.1"
},
{
"status": "affected",
"version": "8.7.0"
},
{
"status": "affected",
"version": "8.6.0"
},
{
"status": "affected",
"version": "8.5.0"
},
{
"status": "affected",
"version": "8.4.0"
},
{
"status": "affected",
"version": "8.3.0"
},
{
"status": "affected",
"version": "8.2.1"
},
{
"status": "affected",
"version": "8.2.0"
},
{
"status": "affected",
"version": "8.1.2"
},
{
"status": "affected",
"version": "8.1.1"
},
{
"status": "affected",
"version": "8.1.0"
},
{
"status": "affected",
"version": "8.0.1"
},
{
"status": "affected",
"version": "8.0.0"
},
{
"status": "affected",
"version": "7.88.1"
},
{
"status": "affected",
"version": "7.88.0"
},
{
"status": "affected",
"version": "7.87.0"
},
{
"status": "affected",
"version": "7.86.0"
},
{
"status": "affected",
"version": "7.85.0"
},
{
"status": "affected",
"version": "7.84.0"
},
{
"status": "affected",
"version": "7.83.1"
},
{
"status": "affected",
"version": "7.83.0"
},
{
"status": "affected",
"version": "7.82.0"
},
{
"status": "affected",
"version": "7.81.0"
},
{
"status": "affected",
"version": "7.80.0"
},
{
"status": "affected",
"version": "7.79.1"
},
{
"status": "affected",
"version": "7.79.0"
},
{
"status": "affected",
"version": "7.78.0"
},
{
"status": "affected",
"version": "7.77.0"
},
{
"status": "affected",
"version": "7.76.1"
},
{
"status": "affected",
"version": "7.76.0"
},
{
"status": "affected",
"version": "7.75.0"
},
{
"status": "affected",
"version": "7.74.0"
},
{
"status": "affected",
"version": "7.73.0"
},
{
"status": "affected",
"version": "7.72.0"
},
{
"status": "affected",
"version": "7.71.1"
},
{
"status": "affected",
"version": "7.71.0"
},
{
"status": "affected",
"version": "7.70.0"
},
{
"status": "affected",
"version": "7.69.1"
},
{
"status": "affected",
"version": "7.69.0"
},
{
"status": "affected",
"version": "7.68.0"
},
{
"status": "affected",
"version": "7.67.0"
},
{
"status": "affected",
"version": "7.66.0"
},
{
"status": "affected",
"version": "7.65.3"
},
{
"status": "affected",
"version": "7.65.2"
},
{
"status": "affected",
"version": "7.65.1"
},
{
"status": "affected",
"version": "7.65.0"
},
{
"status": "affected",
"version": "7.64.1"
},
{
"status": "affected",
"version": "7.64.0"
},
{
"status": "affected",
"version": "7.63.0"
},
{
"status": "affected",
"version": "7.62.0"
},
{
"status": "affected",
"version": "7.61.1"
},
{
"status": "affected",
"version": "7.61.0"
},
{
"status": "affected",
"version": "7.60.0"
},
{
"status": "affected",
"version": "7.59.0"
},
{
"status": "affected",
"version": "7.58.0"
},
{
"status": "affected",
"version": "7.57.0"
},
{
"status": "affected",
"version": "7.56.1"
},
{
"status": "affected",
"version": "7.56.0"
},
{
"status": "affected",
"version": "7.55.1"
},
{
"status": "affected",
"version": "7.55.0"
},
{
"status": "affected",
"version": "7.54.1"
},
{
"status": "affected",
"version": "7.54.0"
},
{
"status": "affected",
"version": "7.53.1"
},
{
"status": "affected",
"version": "7.53.0"
},
{
"status": "affected",
"version": "7.52.1"
},
{
"status": "affected",
"version": "7.52.0"
},
{
"status": "affected",
"version": "7.51.0"
},
{
"status": "affected",
"version": "7.50.3"
},
{
"status": "affected",
"version": "7.50.2"
},
{
"status": "affected",
"version": "7.50.1"
},
{
"status": "affected",
"version": "7.50.0"
},
{
"status": "affected",
"version": "7.49.1"
},
{
"status": "affected",
"version": "7.49.0"
},
{
"status": "affected",
"version": "7.48.0"
},
{
"status": "affected",
"version": "7.47.1"
},
{
"status": "affected",
"version": "7.47.0"
},
{
"status": "affected",
"version": "7.46.0"
},
{
"status": "affected",
"version": "7.45.0"
},
{
"status": "affected",
"version": "7.44.0"
},
{
"status": "affected",
"version": "7.43.0"
},
{
"status": "affected",
"version": "7.42.1"
},
{
"status": "affected",
"version": "7.42.0"
},
{
"status": "affected",
"version": "7.41.0"
},
{
"status": "affected",
"version": "7.40.0"
},
{
"status": "affected",
"version": "7.39.0"
},
{
"status": "affected",
"version": "7.38.0"
},
{
"status": "affected",
"version": "7.37.1"
},
{
"status": "affected",
"version": "7.37.0"
},
{
"status": "affected",
"version": "7.36.0"
},
{
"status": "affected",
"version": "7.35.0"
},
{
"status": "affected",
"version": "7.34.0"
},
{
"status": "affected",
"version": "7.33.0"
}
]
}
],
"credits": [
{
"lang": "en",
"type": "finder",
"value": "spectreglobalsec on hackerone"
},
{
"lang": "en",
"type": "remediation developer",
"value": "Daniel Stenberg"
}
],
"descriptions": [
{
"lang": "en",
"value": "When an OAuth2 bearer token is used for an HTTP(S) transfer, and that transfer\nperforms a redirect to a second URL, curl could leak that token to the second\nhostname under some circumstances.\n\nIf the hostname that the first request is redirected to has information in the\nused .netrc file, with either of the `machine` or `default` keywords, curl\nwould pass on the bearer token set for the first host also to the second one."
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-522",
"description": "Insufficiently Protected Credentials",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-15T06:02:52.569Z",
"orgId": "2499f714-1537-4658-8207-48ae4bb9eae9",
"shortName": "curl"
},
"references": [
{
"url": "https://curl.se/docs/CVE-2026-3783.json"
},
{
"url": "https://curl.se/docs/CVE-2026-3783.html"
},
{
"url": "https://hackerone.com/reports/3583983"
}
],
"title": "token leak with redirect and netrc",
"x_generator": {
"engine": "cvelib 1.8.0"
},
"x_osv": {
"affected": [
{
"ranges": [
{
"events": [
{
"introduced": "7.33.0"
},
{
"fixed": "8.14.2"
},
{
"introduced": "8.15.0"
},
{
"fixed": "8.16.1"
},
{
"introduced": "8.17.0"
},
{
"fixed": "8.19.0"
}
],
"type": "SEMVER"
},
{
"events": [
{
"introduced": "06c1bea72faabb6fad4b7ef818aafaa336c9a7aa"
},
{
"fixed": "e3d7401a32a46516c9e5ee877e613e62ed35bddc"
}
],
"repo": "https://github.com/curl/curl.git",
"type": "GIT"
}
],
"versions": [
"8.18.0",
"8.17.0",
"8.16.0",
"8.15.0",
"8.14.1",
"8.14.0",
"8.13.0",
"8.12.1",
"8.12.0",
"8.11.1",
"8.11.0",
"8.10.1",
"8.10.0",
"8.9.1",
"8.9.0",
"8.8.0",
"8.7.1",
"8.7.0",
"8.6.0",
"8.5.0",
"8.4.0",
"8.3.0",
"8.2.1",
"8.2.0",
"8.1.2",
"8.1.1",
"8.1.0",
"8.0.1",
"8.0.0",
"7.88.1",
"7.88.0",
"7.87.0",
"7.86.0",
"7.85.0",
"7.84.0",
"7.83.1",
"7.83.0",
"7.82.0",
"7.81.0",
"7.80.0",
"7.79.1",
"7.79.0",
"7.78.0",
"7.77.0",
"7.76.1",
"7.76.0",
"7.75.0",
"7.74.0",
"7.73.0",
"7.72.0",
"7.71.1",
"7.71.0",
"7.70.0",
"7.69.1",
"7.69.0",
"7.68.0",
"7.67.0",
"7.66.0",
"7.65.3",
"7.65.2",
"7.65.1",
"7.65.0",
"7.64.1",
"7.64.0",
"7.63.0",
"7.62.0",
"7.61.1",
"7.61.0",
"7.60.0",
"7.59.0",
"7.58.0",
"7.57.0",
"7.56.1",
"7.56.0",
"7.55.1",
"7.55.0",
"7.54.1",
"7.54.0",
"7.53.1",
"7.53.0",
"7.52.1",
"7.52.0",
"7.51.0",
"7.50.3",
"7.50.2",
"7.50.1",
"7.50.0",
"7.49.1",
"7.49.0",
"7.48.0",
"7.47.1",
"7.47.0",
"7.46.0",
"7.45.0",
"7.44.0",
"7.43.0",
"7.42.1",
"7.42.0",
"7.41.0",
"7.40.0",
"7.39.0",
"7.38.0",
"7.37.1",
"7.37.0",
"7.36.0",
"7.35.0",
"7.34.0",
"7.33.0"
]
}
],
"aliases": [
"CVE-2026-3783"
],
"credits": [
{
"name": "spectreglobalsec on hackerone",
"type": "finder"
},
{
"name": "Daniel Stenberg",
"type": "remediation developer"
}
],
"database_specific": {
"CWE": {
"desc": "Insufficiently Protected Credentials",
"id": "CWE-522"
},
"URL": "https://curl.se/docs/CVE-2026-3783.json",
"affects": "both",
"issue": "https://hackerone.com/reports/3583983",
"last_affected": "8.18.0",
"package": "curl",
"severity": "Medium",
"www": "https://curl.se/docs/CVE-2026-3783.html"
},
"details": "When an OAuth2 bearer token is used for an HTTP(S) transfer, and that transfer\nperforms a redirect to a second URL, curl could leak that token to the second\nhostname under some circumstances.\n\nIf the hostname that the first request is redirected to has information in the\nused .netrc file, with either of the `machine` or `default` keywords, curl\nwould pass on the bearer token set for the first host also to the second one.",
"id": "CURL-CVE-2026-3783",
"modified": "2026-09-07T10:34:51.00Z",
"published": "2026-03-11T08:00:00.00Z",
"schema_version": "1.5.0",
"summary": "token leak with redirect and netrc"
}
}
},
"cveMetadata": {
"assignerOrgId": "2499f714-1537-4658-8207-48ae4bb9eae9",
"assignerShortName": "curl",
"cveId": "CVE-2026-3783",
"datePublished": "2026-03-11T10:09:08.746Z",
"dateReserved": "2026-03-08T05:09:09.891Z",
"dateUpdated": "2026-09-15T06:02:52.569Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
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.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- 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…