{"answers":{"affected":"It affects 19 products.","exploited":"It is not confirmed as exploited in the wild, but public exploit code for CVE-2021-22926 exists.","fix":"Apply the vendor's patch.","what":"CVE-2021-22926 is a high-severity vulnerability in Haxx Curl, published on 5 Aug 2021. An attacker can exploit it over the internet without logging in, with no action from the victim."},"fix_prompt":"Check this codebase for CVE-2021-22926 and fix it if it is affected.\n\nWhat it is: CVE-2021-22926 is a high-severity vulnerability in Haxx Curl, published on 5 Aug 2021. An attacker can exploit it over the internet without logging in, with no action from the victim.\nExploitation: It is not confirmed as exploited in the wild, but public exploit code for CVE-2021-22926 exists.\n\nAffected product: Haxx Curl. No package-level version data is available, so check the vendor advisory linked from the reference page.\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2021-22926/ (Markdown: https://insights.sbomify.com/CVE-2021-22926/index.md)","id":"CVE-2021-22926","markdown":"https://insights.sbomify.com/CVE-2021-22926/index.md","name":"CVE-2021-22926","record":{"aliases":["ALPINE-CVE-2021-22926","AZL-6364","CURL-CVE-2021-22926","ECHO-c377-ec84-0da8","GHSA-5xph-62q2-pxff","JLSEC-2026-1338"],"analysis":{"component_type":"library","fix_type":"patch","impacts":["security_bypass"],"network_reachable":"yes","non_default_config":true,"product_category":"libcurl TLS library","requires_auth":"none","summary":"Attackers can trick libcurl into using a malicious certificate file if the application runs in a writable directory, bypassing intended TLS authentication.","user_interaction":"not_required","vuln_class":"security_feature_bypass"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"hackerone","cpe":[{"product":"curl","vendor":"haxx"},{"product":"active_iq_unified_manager","vendor":"netapp"},{"product":"clustered_data_ontap","vendor":"netapp"},{"product":"h300e_firmware","vendor":"netapp"},{"product":"h300s_firmware","vendor":"netapp"},{"product":"h410s_firmware","vendor":"netapp"},{"product":"h500e_firmware","vendor":"netapp"},{"product":"h500s_firmware","vendor":"netapp"},{"product":"h700e_firmware","vendor":"netapp"},{"product":"h700s_firmware","vendor":"netapp"},{"product":"hci_management_node","vendor":"netapp"},{"product":"oncommand_insight","vendor":"netapp"},{"product":"oncommand_workflow_automation","vendor":"netapp"},{"product":"snapcenter","vendor":"netapp"},{"product":"solidfire","vendor":"netapp"},{"product":"mysql_server","vendor":"oracle"},{"product":"peoplesoft_enterprise_peopletools","vendor":"oracle"},{"product":"sinec_infrastructure_network_services","vendor":"siemens"},{"product":"universal_forwarder","vendor":"splunk"}],"cvss":{"score":7.5,"severity":"high","source":"cisa-adp","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","version":"3.1"},"cwes":[{"id":"CWE-295","name":"Improper Certificate Validation"},{"id":"CWE-840","name":null}],"description":"libcurl-using applications can ask for a specific client certificate to be used in a transfer. This is done with the `CURLOPT_SSLCERT` option (`--cert` with the command line tool).When libcurl is built to use the macOS native TLS library Secure Transport, an application can ask for the client certificate by name or with a file name - using the same option. If the name exists as a file, it will be used instead of by name.If the appliction runs with a current working directory that is writable by other users (like `/tmp`), a malicious user can create a file name with the same name as the app wants to use by name, and thereby trick the application to use the file based cert instead of the one referred to by name making libcurl send the wrong client certificate in the TLS connection handshake.","ecosystems":[],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"weaponised"},"has_fix":true,"headline":"Security feature bypass in https://github.com/curl/curl","id":"CVE-2021-22926","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":null,"product":"haxx:curl","products":["haxx:curl","netapp:active_iq_unified_manager","netapp:clustered_data_ontap","netapp:h300e_firmware","netapp:h300s_firmware","netapp:h410s_firmware","netapp:h500e_firmware","netapp:h500s_firmware","netapp:h700e_firmware","netapp:h700s_firmware","netapp:hci_management_node","netapp:oncommand_insight","netapp:oncommand_workflow_automation","netapp:snapcenter","netapp:solidfire","oracle:mysql_server","oracle:peoplesoft_enterprise_peopletools","siemens:sinec_infrastructure_network_services","splunk:universal_forwarder"],"type":"security_feature_bypass","year":"2021"},"n_packages":0,"n_references":11,"next":{"headline":"Other in Citrix ADC, Citrix Gateway","id":"CVE-2021-22927"},"packages":[],"prev":{"headline":"Information disclosure in https://github.com/curl/curl","id":"CVE-2021-22925"},"products":["https://github.com/curl/curl"],"published":"2021-08-05","related":[{"cvss_score":9.8,"headline":"Negotiate ambient user conn reuse","id":"CVE-2026-19931","kev_date_added":null,"published":"2026-09-06"},{"cvss_score":9.8,"headline":"HTTP/2 stream-dependency tree UAF","id":"CVE-2026-10536","kev_date_added":null,"published":"2026-07-03"},{"cvss_score":9.8,"headline":"cross-origin Digest auth state leak","id":"CVE-2026-11856","kev_date_added":null,"published":"2026-07-03"},{"cvss_score":9.8,"headline":"SASL double-free","id":"CVE-2026-8925","kev_date_added":null,"published":"2026-07-03"},{"cvss_score":9.8,"headline":"stale proxy password leak","id":"CVE-2026-9079","kev_date_added":null,"published":"2026-07-03"},{"cvss_score":9.8,"headline":"Code injection in curl","id":"CVE-2016-4606","kev_date_added":null,"published":"2020-02-21"},{"cvss_score":9.8,"headline":"Information disclosure in n/a","id":"CVE-2016-9953","kev_date_added":null,"published":"2018-03-12"}],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"US public information, NVD API terms","name":"NVD"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"}],"ssvc":{"automatable":"yes","exploitation":"poc","technical_impact":"partial"},"state":"PUBLISHED","updated":"2026-10-14","vendors":["n/a"]},"summary":"Attackers can trick libcurl into using a malicious certificate file if the application runs in a writable directory, bypassing intended TLS authentication.","url":"https://insights.sbomify.com/CVE-2021-22926/"}