{"answers":{"affected":"It affects 5 products.","exploited":"It is not confirmed as exploited in the wild, but public exploit code for CVE-2021-20039 exists.","fix":"No fix has been published for CVE-2021-20039 yet. Limit exposure of the affected software until one is available.","what":"CVE-2021-20039 is a high-severity command injection vulnerability in SonicWall SMA100, published on 8 Dec 2021. Any signed-in user can exploit it over the network, with no action from the victim."},"fix_prompt":"Check this codebase for CVE-2021-20039 and fix it if it is affected.\n\nWhat it is: CVE-2021-20039 is a high-severity command injection vulnerability in SonicWall SMA100, published on 8 Dec 2021. Any signed-in user can exploit it over the network, with no action from the victim.\nExploitation: It is not confirmed as exploited in the wild, but public exploit code for CVE-2021-20039 exists.\n\nAffected product: SonicWall SMA100. 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-20039/ (Markdown: https://insights.sbomify.com/CVE-2021-20039/index.md)","id":"CVE-2021-20039","markdown":"https://insights.sbomify.com/CVE-2021-20039/index.md","name":"CVE-2021-20039","record":{"aliases":["GHSA-58fc-493g-jfwj"],"analysis":{"component_type":"network_device","fix_type":"patch","impacts":["code_execution"],"network_reachable":"yes","non_default_config":false,"product_category":"SonicWall SMA100","requires_auth":"low_privilege","summary":"Remote authenticated attackers can inject arbitrary commands via the viewcert interface, executing code as the nobody user on SMA100 appliances.","user_interaction":"not_required","vuln_class":"command_injection"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"sonicwall","cpe":[{"product":"sma_200_firmware","vendor":"sonicwall"},{"product":"sma_210_firmware","vendor":"sonicwall"},{"product":"sma_400_firmware","vendor":"sonicwall"},{"product":"sma_410_firmware","vendor":"sonicwall"},{"product":"sma_500v_firmware","vendor":"sonicwall"}],"cvss":{"score":8.8,"severity":"high","source":"cisa-adp","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","version":"3.1"},"cwes":[{"id":"CWE-78","name":"Improper Neutralization of Special Elements used in an OS Command"}],"description":"Improper neutralization of special elements in the SMA100 management interface '/cgi-bin/viewcert' POST http method allows a remote authenticated attacker to inject arbitrary commands as a 'nobody' user. This vulnerability affected SMA 200, 210, 400, 410 and 500v appliances.","ecosystems":[],"exploits":{"exploitdb":0,"first_seen":"2021-12-14","github_poc":0,"max_poc_stars":null,"metasploit":1,"nuclei":0,"refs":[{"date":"2021-12-14","kind":"metasploit","ref":"exploit/linux/http/sonicwall_cve_2021_20039","stars":null,"title":"SonicWall SMA 100 Series Authenticated Command Injection"}],"tier":"weaponised"},"has_fix":null,"headline":"Command injection in SonicWall SMA100","id":"CVE-2021-20039","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":null,"product":null,"products":[],"type":"command_injection","year":"2021"},"n_packages":0,"n_references":2,"next":{"headline":"Path traversal in SonicWall SMA100","id":"CVE-2021-20040"},"packages":[],"prev":{"headline":"SonicWall SMA 100 Appliances Stack-Based Buffer Overflow","id":"CVE-2021-20038"},"products":["SonicWall SMA100"],"published":"2021-12-08","related":[{"cvss_score":9.8,"headline":"SonicWall SMA 100 Appliances Stack-Based Buffer Overflow","id":"CVE-2021-20038","kev_date_added":"2022-01-28","published":"2021-12-08"},{"cvss_score":7.2,"headline":"SonicWall SMA100 Appliances OS Command Injection","id":"CVE-2023-44221","kev_date_added":"2025-05-01","published":"2023-12-05"},{"cvss_score":6.5,"headline":"SonicWall SMA100 Appliances OS Command Injection","id":"CVE-2021-20035","kev_date_added":"2025-04-16","published":"2021-09-27"},{"cvss_score":9.8,"headline":"Command injection in SonicWall SRA/SMA100","id":"CVE-2022-22273","kev_date_added":null,"published":"2022-03-17"},{"cvss_score":9.8,"headline":"Server-side request forgery in SonicWall SMA100","id":"CVE-2021-20042","kev_date_added":null,"published":"2021-12-08"},{"cvss_score":9.8,"headline":"Memory corruption in SonicWall SMA100","id":"CVE-2021-20045","kev_date_added":null,"published":"2021-12-08"},{"cvss_score":9.1,"headline":"Path traversal in SMA100","id":"CVE-2021-20034","kev_date_added":null,"published":"2021-09-27"}],"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)"},{"class":"attribution","licence":"BSD-3-Clause","name":"Metasploit"}],"ssvc":{"automatable":"no","exploitation":"poc","technical_impact":"total"},"state":"PUBLISHED","updated":"2025-09-05","vendors":["SonicWall"]},"summary":"Remote authenticated attackers can inject arbitrary commands via the viewcert interface, executing code as the nobody user on SMA100 appliances.","url":"https://insights.sbomify.com/CVE-2021-20039/"}