{"answers":{"affected":"4 open source packages ship an affected version, including nokogiri and rexical. It affects 3 products.","exploited":"There is no known exploitation of CVE-2019-5477 in the wild and no public exploit code.","fix":"Upgrade nokogiri to 1.10.4 or later.","what":"CVE-2019-5477 is a critical command injection vulnerability in Canonical Ubuntu Linux, published on 16 Aug 2019. An attacker can exploit it over the internet without logging in, with no action from the victim."},"fix_prompt":"Check this codebase for CVE-2019-5477 and fix it if it is affected.\n\nWhat it is: CVE-2019-5477 is a critical command injection vulnerability in Canonical Ubuntu Linux, published on 16 Aug 2019. 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-2019-5477 in the wild and no public exploit code.\n\nAffected packages and fixed versions:\n- nokogiri (RubyGems): affected all versions; fixed in 1.10.4\n- nokogiri (RubyGems): affected all versions; fixed in 1.10.4\n- rexical (RubyGems): affected all versions; fixed in 1.0.7\n- rexical (RubyGems): affected all versions; fixed in 1.0.7\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-2019-5477/ (Markdown: https://insights.sbomify.com/CVE-2019-5477/index.md)","id":"CVE-2019-5477","markdown":"https://insights.sbomify.com/CVE-2019-5477/index.md","name":"CVE-2019-5477","record":{"aliases":["DEBIAN-CVE-2019-5477","DLA-1933-1","DLA-3150-1","GHSA-cr5j-953j-xw5p","UBUNTU-CVE-2019-5477","USN-4175-1"],"analysis":{"component_type":"library","fix_type":"upgrade","impacts":["code_execution"],"network_reachable":"yes","non_default_config":true,"product_category":"Ruby Nokogiri library","requires_auth":"none","summary":"Command injection in Nokogiri allows code execution via unsafe input to an undocumented tokenizer method, requiring specific usage patterns.","user_interaction":"not_required","vuln_class":"command_injection"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"hackerone","cpe":[{"product":"ubuntu_linux","vendor":"canonical"},{"product":"debian_linux","vendor":"debian"},{"product":"nokogiri","vendor":"nokogiri"}],"cvss":{"score":9.8,"severity":"critical","source":"nvd","vector":"CVSS:3.1/AV:N/AC:L/PR:N/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":"A command injection vulnerability in Nokogiri v1.10.3 and earlier allows commands to be executed in a subprocess via Ruby's `Kernel.open` method. Processes are vulnerable only if the undocumented method `Nokogiri::CSS::Tokenizer#load_file` is being called with unsafe user input as the filename. This vulnerability appears in code generated by the Rexical gem versions v1.0.6 and earlier. Rexical is used by Nokogiri to generate lexical scanner code for parsing CSS queries. The underlying vulnerability was addressed in Rexical v1.0.7 and Nokogiri upgraded to this version of Rexical in Nokogiri v1.10.4.","ecosystems":["RubyGems"],"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":"Nokogiri Command Injection Vulnerability","id":"CVE-2019-5477","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":"RubyGems","product":"canonical:ubuntu_linux","products":["canonical:ubuntu_linux","debian:debian_linux"],"type":"command_injection","year":"2019"},"n_packages":4,"n_references":8,"next":{"headline":"Security feature bypass in Zynq UltraScale+ SoC","id":"CVE-2019-5478"},"packages":[{"ecosystem":"RubyGems","fixed":["1.10.4"],"introduced":["0"],"last_affected":[],"package":"nokogiri","purl":null,"source":"GHSA-cr5j-953j-xw5p"},{"ecosystem":"RubyGems","fixed":["1.10.4"],"introduced":["0"],"last_affected":[],"package":"nokogiri","purl":"pkg:gem/nokogiri","source":"GHSA-cr5j-953j-xw5p"},{"ecosystem":"RubyGems","fixed":["1.0.7"],"introduced":["0"],"last_affected":[],"package":"rexical","purl":null,"source":"GHSA-cr5j-953j-xw5p"},{"ecosystem":"RubyGems","fixed":["1.0.7"],"introduced":["0"],"last_affected":[],"package":"rexical","purl":"pkg:gem/rexical","source":"GHSA-cr5j-953j-xw5p"}],"prev":{"headline":"SQL injection in lookup.nextcloud.com","id":"CVE-2019-5476"},"products":["Nokogiri (ruby gem)"],"published":"2019-08-16","related":[{"cvss_score":9.8,"headline":"SaltStack Salt Authentication Bypass","id":"CVE-2020-11651","kev_date_added":"2021-11-03","published":"2020-04-30"},{"cvss_score":9.8,"headline":"OpenSMTPD Remote Code Execution","id":"CVE-2020-7247","kev_date_added":"2022-03-25","published":"2020-01-29"},{"cvss_score":9.8,"headline":"Exim Out-of-bounds Write","id":"CVE-2019-16928","kev_date_added":"2022-03-03","published":"2019-09-27"},{"cvss_score":9.8,"headline":"Exim Buffer Overflow","id":"CVE-2018-6789","kev_date_added":"2021-11-03","published":"2018-02-08"},{"cvss_score":9.8,"headline":"Oracle Java SE and Java SE Embedded Remote Code Execution","id":"CVE-2015-2590","kev_date_added":"2022-03-03","published":"2015-07-16"},{"cvss_score":9.8,"headline":"Oracle JRE Remote Code Execution","id":"CVE-2013-0422","kev_date_added":"2022-05-25","published":"2013-01-10"},{"cvss_score":9.8,"headline":"Oracle Java SE Runtime Environment (JRE) Arbitrary Code Execution","id":"CVE-2011-3544","kev_date_added":"2022-03-03","published":"2011-10-19"}],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"CC BY 4.0","name":"GitHub Advisory Database","prefix":"GHSA"},{"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-04","vendors":["n/a"]},"summary":"Command injection in Nokogiri allows code execution via unsafe input to an undocumented tokenizer method, requiring specific usage patterns.","url":"https://insights.sbomify.com/CVE-2019-5477/"}