CVE-2019-3822
Description
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.
How to fix
- haxx libcurl7.64.0 or later
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| haxx libcurl | 7.36.0 ≤ v < 7.64.0 | 7.64.0 |
| canonical ubuntu_linux | 14.04, 16.04, 18.04, 18.10 | — |
| debian debian_linux | 9.0 | — |
| netapp active_iq_unified_manager | 7.3 ≤ v, 9.5 ≤ v | — |
| netapp clustered_data_ontap | No range specified | — |
| netapp oncommand_insight | No range specified | — |
| netapp oncommand_workflow_automation | No range specified | — |
| netapp snapcenter | No range specified | — |
| siemens sinema_remote_connect_client | v ≤ 2.0 | — |
| oracle communications_operations_monitor | 3.4, 4.0 | — |
| oracle enterprise_manager_ops_center | 12.3.3, 12.4.0 | — |
| oracle http_server | 12.2.1.3.0 | — |
| oracle mysql_server | v ≤ 5.7.26, 5.7.27 ≤ v ≤ 8.0.15 | — |
| oracle secure_global_desktop | 5.4 | — |
| oracle services_tools_bundle | 19.2 | — |
| redhat enterprise_linux | 8.0 | — |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.