cURL up to 8.18.0 Negotiate-authenticated Request authentication bypass
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 5.9 | $0-$5k | 0.00 |
Summary
A vulnerability identified as problematic has been detected in cURL. Affected by this issue is some unknown functionality of the component Negotiate-authenticated Request Handler. Performing a manipulation results in authentication bypass. This vulnerability was named CVE-2026-1965. The attack may be initiated remotely. There is no available exploit. You should upgrade the affected component.
Details
A vulnerability, which was classified as problematic, was found in cURL. This affects some unknown functionality of the component Negotiate-authenticated Request Handler. The manipulation with an unknown input leads to a authentication bypass vulnerability. CWE is classifying the issue as CWE-305. The authentication algorithm is sound, but the implemented mechanism can be bypassed as the result of a separate weakness that is primary to the authentication error. This is going to have an impact on confidentiality, integrity, and availability. The summary by CVE is:
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 just 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).
The weakness was presented by Zhicheng Chen. The advisory is shared at curl.se. This vulnerability is uniquely identified as CVE-2026-1965 since 02/05/2026. The exploitability is told to be difficult. It is possible to initiate the attack remotely. No form of authentication is needed for exploitation. Neither technical details nor an exploit are publicly available.
The vulnerability scanner Nessus provides a plugin with the ID 302096 (SUSE SLES15 / openSUSE 15 Security Update : curl (SUSE-SU-2026:0885-1)), which helps to determine the existence of the flaw in a target environment.
Upgrading eliminates this vulnerability.
The vulnerability is also documented in the databases at Tenable (302096) and CERT Bund (WID-SEC-2026-0690). If you want to get the best quality for vulnerability data then you always have to consider VulDB.
Affected
- Open Source cURL
Product
Type
Name
Version
- 7.0
- 7.1
- 7.2
- 7.3
- 7.4
- 7.5
- 7.6
- 7.7
- 7.8
- 7.9
- 7.10
- 7.10.0
- 7.10.1
- 7.10.2
- 7.10.3
- 7.10.4
- 7.10.5
- 7.10.6
- 7.10.7
- 7.10.8
- 7.11
- 7.11.0
- 7.11.1
- 7.11.2
- 7.12
- 7.12.0
- 7.12.1
- 7.12.2
- 7.12.3
- 7.13
- 7.13.0
- 7.13.1
- 7.13.2
- 7.14
- 7.14.0
- 7.14.1
- 7.15
- 7.15.0
- 7.15.1
- 7.15.2
- 7.15.3
- 7.15.4
- 7.15.5
- 7.16
- 7.16.0
- 7.16.1
- 7.16.2
- 7.16.3
- 7.16.4
- 7.17
- 7.17.0
- 7.17.1
- 7.18
- 7.18.0
- 7.18.1
- 7.18.2
- 7.19
- 7.19.0
- 7.19.1
- 7.19.2
- 7.19.3
- 7.19.4
- 7.19.5
- 7.19.6
- 7.19.7
- 7.20
- 7.20.0
- 7.20.1
- 7.21
- 7.21.0
- 7.21.1
- 7.21.2
- 7.21.3
- 7.21.4
- 7.21.5
- 7.21.6
- 7.21.7
- 7.22
- 7.22.0
- 7.23
- 7.23.0
- 7.23.1
- 7.24
- 7.24.0
- 7.25
- 7.25.0
- 7.26
- 7.26.0
- 7.27
- 7.27.0
- 7.28
- 7.28.0
- 7.28.1
- 7.29
- 7.29.0
- 7.30
- 7.30.0
- 7.31
- 7.31.0
- 7.32
- 7.32.0
- 7.33
- 7.33.0
- 7.34
- 7.34.0
- 7.35
- 7.35.0
- 7.36
- 7.36.0
- 7.37
- 7.37.0
- 7.37.1
- 7.38
- 7.38.0
- 7.39
- 7.39.0
- 7.40
- 7.40.0
- 7.41
- 7.41.0
- 7.42
- 7.42.0
- 7.42.1
- 7.43
- 7.43.0
- 7.44
- 7.44.0
- 7.45
- 7.45.0
- 7.46
- 7.46.0
- 7.47
- 7.47.0
- 7.47.1
- 7.48
- 7.48.0
- 7.49
- 7.49.0
- 7.49.1
- 7.50
- 7.50.0
- 7.50.1
- 7.50.2
- 7.50.3
- 7.51
- 7.51.0
- 7.52
- 7.52.0
- 7.52.1
- 7.53
- 7.53.0
- 7.53.1
- 7.54
- 7.54.0
- 7.54.1
- 7.55
- 7.55.0
- 7.55.1
- 7.56
- 7.56.0
- 7.56.1
- 7.57
- 7.57.0
- 7.58
- 7.58.0
- 7.59
- 7.59.0
- 7.60
- 7.60.0
- 7.61
- 7.61.0
- 7.61.1
- 7.62
- 7.62.0
- 7.63
- 7.63.0
- 7.64
- 7.64.0
- 7.64.1
- 7.65
- 7.65.0
- 7.65.1
- 7.65.2
- 7.65.3
- 7.66
- 7.66.0
- 7.67
- 7.67.0
- 7.68
- 7.68.0
- 7.69
- 7.69.0
- 7.69.1
- 7.70
- 7.70.0
- 7.71
- 7.71.0
- 7.71.1
- 7.72
- 7.72.0
- 7.73
- 7.73.0
- 7.74
- 7.74.0
- 7.75
- 7.75.0
- 7.76
- 7.76.0
- 7.76.1
- 7.77
- 7.77.0
- 7.78
- 7.78.0
- 7.79
- 7.79.0
- 7.79.1
- 7.80
- 7.80.0
- 7.81
- 7.81.0
- 7.82
- 7.82.0
- 7.83
- 7.83.0
- 7.83.1
- 7.84
- 7.84.0
- 7.85
- 7.85.0
- 7.86
- 7.86.0
- 7.87
- 7.87.0
- 7.88.0
- 7.88.1
- 8.0
- 8.0.0
- 8.0.1
- 8.1
- 8.1.0
- 8.1.1
- 8.1.2
- 8.2
- 8.2.0
- 8.2.1
- 8.3
- 8.3.0
- 8.4
- 8.4.0
- 8.5
- 8.5.0
- 8.6
- 8.6.0
- 8.7
- 8.7.0
- 8.7.1
- 8.8
- 8.8.0
- 8.9
- 8.9.0
- 8.9.1
- 8.10
- 8.10.0
- 8.10.1
- 8.11
- 8.11.0
- 8.11.1
- 8.12
- 8.12.0
- 8.12.1
- 8.13
- 8.13.0
- 8.14
- 8.14.0
- 8.14.1
- 8.15
- 8.15.0
- 8.16
- 8.16.0
- 8.17
- 8.17.0
- 8.18.0
License
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 6.0VulDB Meta Temp Score: 5.9
VulDB Base Score: 5.6
VulDB Temp Score: 5.4
VulDB Vector: 🔒
VulDB Reliability: 🔍
ADP CISA Base Score: 6.5
ADP CISA Vector: 🔒
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Reliability: 🔍
Exploiting
Class: Authentication bypassCWE: CWE-305 / CWE-287
CAPEC: 🔒
ATT&CK: 🔒
Physical: No
Local: No
Remote: Yes
Availability: 🔒
Status: Not defined
EPSS Score: 🔒
EPSS Percentile: 🔒
Price Prediction: 🔍
Current Price Estimation: 🔒
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 302096
Nessus Name: SUSE SLES15 / openSUSE 15 Security Update : curl (SUSE-SU-2026:0885-1)
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔒
Timeline
02/05/2026 CVE reserved03/11/2026 Advisory disclosed
03/11/2026 VulDB entry created
03/14/2026 VulDB entry last update
Sources
Advisory: curl.seResearcher: Zhicheng Chen
Status: Confirmed
CVE: CVE-2026-1965 (🔒)
GCVE (CVE): GCVE-0-2026-1965
GCVE (VulDB): GCVE-100-350373
CERT Bund: WID-SEC-2026-0690 - cURL: Mehrere Schwachstellen
Entry
Created: 03/11/2026 12:49Updated: 03/14/2026 06:29
Changes: 03/11/2026 12:49 (54), 03/12/2026 01:19 (7), 03/13/2026 19:06 (2), 03/14/2026 06:29 (12)
Complete: 🔍
Cache ID: 216::103
If you want to get the best quality for vulnerability data then you always have to consider VulDB.
No comments yet. Languages: en.
Please log in to comment.