Buffer overflow in Haxx Libcurl
CVE-2019-3822
libcurl versions from 7.36.0 to before 7.64.0 are vulnerable to a stack-based buffer overflow. The function creating an outgoing NTLM type-3 header (`lib/vauth/ntlm.c:Curl_auth_create_ntlm_type3_message()`), generates the request HTTP header contents based on previously received data. The check that exists to prevent the local buffer from getting overflowed is implemented wrongly (using unsigned math) and as such it does not prevent the overflow from happening. This output data can grow larger than the local buffer if very large 'nt response' data is extracted from a previous NTLMv2 header provided by the malicious or broken HTTP server. Such a 'large value' needs to be around 1000 bytes or more. The actual payload data copied to the target buffer comes from the NTLMv2 type-2 response header.
Vulnerability class: Buffer Overflow
EPSS: 0.129 (96.1th percentile) — read the EPSS interpretation.
CVSS v3 metric
CVSS v3 base score 9.8 (Critical). Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H.
Affected products
- Haxx Libcurl
- Netapp Active_iq_unified_manager
- Netapp Clustered_data_ontap
- Netapp Oncommand_insight
- Netapp Oncommand_workflow_automation
- Netapp Snapcenter
- Oracle Communications_operations_monitor — versions 3.4, 4.0
- Oracle Enterprise_manager_ops_center — versions 12.3.3, 12.4.0
- Oracle Http_server — versions 12.2.1.3.0
- Oracle Mysql_server
Weakness classification (CWE)
Public proof-of-concept exploits
References
- secalert@redhat.com (vendor-advisory, Third Party Advisory, x_refsource_GENTOO)
- secalert@redhat.com (x_refsource_CONFIRM, Exploit, Patch, Third Party Advisory, Issue Tracking)
- secalert@redhat.com (vendor-advisory, Third Party Advisory, x_refsource_DEBIAN)
- secalert@redhat.com (Patch, x_refsource_MISC, Vendor Advisory)
- secalert@redhat.com (x_refsource_CONFIRM, Patch, Third Party Advisory)
- secalert@redhat.com (x_refsource_UBUNTU, vendor-advisory, Third Party Advisory)
- secalert@redhat.com (VDB Entry, Third Party Advisory, vdb-entry, x_refsource_BID)
- secalert@redhat.com (mailing-list, x_refsource_MLIST)
- secalert@redhat.com (x_refsource_CONFIRM, Third Party Advisory)
- secalert@redhat.com (Patch, Third Party Advisory, x_refsource_MISC)
Frequently asked questions
- What is CVE-2019-3822?
- CVE-2019-3822 is a critical-severity vulnerability in Haxx Libcurl, classified under Stack-based Buffer Overflow. CVSS score: 9.8/10. Published 2019-02-06.
- How severe is CVE-2019-3822?
- Critical severity. CVSS v3 base score is 9.8 out of 10.
- Is CVE-2019-3822 known to be exploited?
- 10 public proof-of-concept repositories are indexed. Not currently listed in the CISA KEV catalog.