{"answers":{"affected":"It affects 1 product.","exploited":"There is no known exploitation of CVE-2021-21374 in the wild and no public exploit code.","fix":"Upgrade to a fixed version.","what":"CVE-2021-21374 is a high-severity vulnerability in nim-lang security, published on 26 Mar 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-21374 and fix it if it is affected.\n\nWhat it is: CVE-2021-21374 is a high-severity vulnerability in nim-lang security, published on 26 Mar 2021. An attacker can exploit it over the internet without logging in, with no action from the victim.\nExploitation: There is no known exploitation of CVE-2021-21374 in the wild and no public exploit code.\n\nAffected product: nim-lang security. 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-21374/ (Markdown: https://insights.sbomify.com/CVE-2021-21374/index.md)","id":"CVE-2021-21374","markdown":"https://insights.sbomify.com/CVE-2021-21374/index.md","name":"CVE-2021-21374","record":{"aliases":["DEBIAN-CVE-2021-21374","GHSA-c2wm-v66h-xhxx","UBUNTU-CVE-2021-21374"],"analysis":{"component_type":"developer_tool","fix_type":"upgrade","impacts":["code_execution","security_bypass"],"network_reachable":"yes","non_default_config":false,"product_category":"Nim package manager","requires_auth":"none","summary":"Nimble package manager fails to validate SSL certificates by default, allowing Man-in-the-Middle attackers to inject malicious packages leading to code execution.","user_interaction":"not_required","vuln_class":"security_feature_bypass"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"GitHub_M","cpe":[{"product":"nim","vendor":"nim-lang"}],"cvss":{"score":8.1,"severity":"high","source":"cna","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:H/A:L","version":"3.1"},"cwes":[{"id":"CWE-295","name":"Improper Certificate Validation"},{"id":"CWE-599","name":"Missing Validation of OpenSSL Certificate"},{"id":"CWE-349","name":"Acceptance of Extraneous Untrusted Data With Trusted Data"},{"id":"CWE-348","name":"Use of Less Trusted Source"}],"description":"Nimble is a package manager for the Nim programming language. In Nim release versions before versions 1.2.10 and 1.4.4, \"nimble refresh\" fetches a list of Nimble packages over HTTPS without full verification of the SSL/TLS certificate due to the default setting of httpClient. An attacker able to perform MitM can deliver a modified package list containing malicious software packages. If the packages are installed and used the attack escalates to untrusted code execution.","ecosystems":[],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"none_known"},"has_fix":true,"headline":"Nimble fails to validate certificates due to insecure httpClient defaults","id":"CVE-2021-21374","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":null,"product":null,"products":[],"type":"security_feature_bypass","year":"2021"},"n_packages":0,"n_references":4,"next":{"headline":"Crash in receiving updated SDP answer after initial SDP negotiation failed","id":"CVE-2021-21375"},"packages":[],"prev":{"headline":"Nimble falls back to insecure http url when fetching packages","id":"CVE-2021-21373"},"products":["security"],"published":"2021-03-26","related":[{"cvss_score":9.8,"headline":"Other in n/a","id":"CVE-2020-15690","kev_date_added":null,"published":"2021-01-30"},{"cvss_score":9.8,"headline":"Command injection in n/a","id":"CVE-2020-15692","kev_date_added":null,"published":"2020-08-14"},{"cvss_score":8.3,"headline":"Nimble arbitrary code execution for specially crafted package metadata","id":"CVE-2021-21372","kev_date_added":null,"published":"2021-03-26"},{"cvss_score":7.5,"headline":"Nimble falls back to insecure http url when fetching packages","id":"CVE-2021-21373","kev_date_added":null,"published":"2021-03-26"},{"cvss_score":7.5,"headline":"Other in n/a","id":"CVE-2020-15694","kev_date_added":null,"published":"2020-08-14"},{"cvss_score":6.5,"headline":"Other in n/a","id":"CVE-2020-15693","kev_date_added":null,"published":"2020-08-14"}],"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":null,"exploitation":null,"technical_impact":null},"state":"PUBLISHED","updated":"2024-08-03","vendors":["nim-lang"]},"summary":"Nimble package manager fails to validate SSL certificates by default, allowing Man-in-the-Middle attackers to inject malicious packages leading to code execution.","url":"https://insights.sbomify.com/CVE-2021-21374/"}