{"answers":{"affected":"It affects 1 product.","exploited":"There is no known exploitation of CVE-2026-58459 in the wild and no public exploit code.","fix":"Apply the vendor's patch.","what":"CVE-2026-58459 is a high-severity command injection vulnerability in ntpsec gpsd, published on 9 Jul 2026. It can only be exploited from the same machine or local network, and only if a user opens a file or follows a link."},"fix_prompt":"Check this codebase for CVE-2026-58459 and fix it if it is affected.\n\nWhat it is: CVE-2026-58459 is a high-severity command injection vulnerability in ntpsec gpsd, published on 9 Jul 2026. It can only be exploited from the same machine or local network, and only if a user opens a file or follows a link.\nExploitation: There is no known exploitation of CVE-2026-58459 in the wild and no public exploit code.\n\nAffected product: ntpsec gpsd. 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-2026-58459/ (Markdown: https://insights.sbomify.com/CVE-2026-58459/index.md)","id":"CVE-2026-58459","markdown":"https://insights.sbomify.com/CVE-2026-58459/index.md","name":"CVE-2026-58459","record":{"aliases":["ALSA-2026:51075","ALSA-2026:51153","CLSA-2026-1786360070","CLSA-2026-1786447733","DEBIAN-CVE-2026-58459","GHSA-2hhc-4hqc-4mg8","MGASA-2026-0454","RHSA-2026:51075","RHSA-2026:51153","RLSA-2026:51075","RLSA-2026:51153","UBUNTU-CVE-2026-58459","openSUSE-SU-2026:11276-1"],"analysis":{"component_type":"server_software","fix_type":"patch","impacts":["code_execution"],"network_reachable":"adjacent_or_local","non_default_config":false,"product_category":"GPS daemon","requires_auth":"none","summary":"Attackers can execute arbitrary shell commands by injecting payloads into GPS device subtype fields processed by gpsprof and gnuplot.","user_interaction":"required","vuln_class":"command_injection"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"VulnCheck","cpe":[{"product":"gpsd","vendor":"gpsd_project"}],"cvss":{"score":8.4,"severity":"high","source":"cna","vector":"CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N","version":"4.0"},"cwes":[{"id":"CWE-78","name":"Improper Neutralization of Special Elements used in an OS Command"}],"description":"gpsd through release-3.27.5, fixed at commit 4c06658, contains a command injection vulnerability in gpsprof that allows attackers who control the GPS device subtype value to execute arbitrary shell commands by embedding backtick payloads in the gnuplot plot title without proper escaping. The subtype field sourced from a DEVICES JSON log entry or NMEA PGRMT sentence is written into a generated gnuplot program via a set title statement with only double-quote characters escaped, enabling arbitrary shell command execution as the user running gnuplot when the victim renders the generated plot through the gpsprof and gnuplot workflow.","ecosystems":["AlmaLinux:10","AlmaLinux:9","Red Hat:enterprise_linux:10.2","Red Hat:enterprise_linux:9::appstream","Rocky Linux:10","Rocky Linux:9","openSUSE:Tumbleweed"],"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":"gpsd gpsprof Command Injection via gnuplot plot title subtype field","id":"CVE-2026-58459","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":null,"product":null,"products":[],"type":"command_injection","year":"2026"},"n_packages":20,"n_references":5,"next":{"headline":"react-native-receive-sharing-intent Path Traversal via _display_name","id":"CVE-2026-58460"},"packages":[{"ecosystem":"AlmaLinux:10","fixed":["1:3.26.1-3.el10_2.1"],"introduced":["0"],"last_affected":[],"package":"gpsd","purl":"pkg:rpm/almalinux/gpsd","source":"ALSA-2026:51075"},{"ecosystem":"AlmaLinux:10","fixed":["1:3.26.1-3.el10_2.1"],"introduced":["0"],"last_affected":[],"package":"gpsd-clients","purl":"pkg:rpm/almalinux/gpsd-clients","source":"ALSA-2026:51075"},{"ecosystem":"AlmaLinux:10","fixed":["1:3.26.1-3.el10_2.1"],"introduced":["0"],"last_affected":[],"package":"python3-gpsd","purl":"pkg:rpm/almalinux/python3-gpsd","source":"ALSA-2026:51075"},{"ecosystem":"AlmaLinux:9","fixed":["1:3.26.1-2.el9_8.1"],"introduced":["0"],"last_affected":[],"package":"gpsd-minimal","purl":"pkg:rpm/almalinux/gpsd-minimal","source":"ALSA-2026:51153"},{"ecosystem":"AlmaLinux:9","fixed":["1:3.26.1-2.el9_8.1"],"introduced":["0"],"last_affected":[],"package":"gpsd-minimal-clients","purl":"pkg:rpm/almalinux/gpsd-minimal-clients","source":"ALSA-2026:51153"},{"ecosystem":"Red Hat:enterprise_linux:10.2","fixed":["1:3.26.1-3.el10_2.1"],"introduced":["0"],"last_affected":[],"package":"gpsd","purl":"pkg:rpm/redhat/gpsd","source":"RHSA-2026:51075"},{"ecosystem":"Red Hat:enterprise_linux:10.2","fixed":["1:3.26.1-3.el10_2.1"],"introduced":["0"],"last_affected":[],"package":"gpsd-clients","purl":"pkg:rpm/redhat/gpsd-clients","source":"RHSA-2026:51075"},{"ecosystem":"Red Hat:enterprise_linux:10.2","fixed":["1:3.26.1-3.el10_2.1"],"introduced":["0"],"last_affected":[],"package":"gpsd-clients-debuginfo","purl":"pkg:rpm/redhat/gpsd-clients-debuginfo","source":"RHSA-2026:51075"},{"ecosystem":"Red Hat:enterprise_linux:10.2","fixed":["1:3.26.1-3.el10_2.1"],"introduced":["0"],"last_affected":[],"package":"gpsd-debuginfo","purl":"pkg:rpm/redhat/gpsd-debuginfo","source":"RHSA-2026:51075"},{"ecosystem":"Red Hat:enterprise_linux:10.2","fixed":["1:3.26.1-3.el10_2.1"],"introduced":["0"],"last_affected":[],"package":"gpsd-debugsource","purl":"pkg:rpm/redhat/gpsd-debugsource","source":"RHSA-2026:51075"},{"ecosystem":"Red Hat:enterprise_linux:10.2","fixed":["1:3.26.1-3.el10_2.1"],"introduced":["0"],"last_affected":[],"package":"python3-gpsd","purl":"pkg:rpm/redhat/python3-gpsd","source":"RHSA-2026:51075"},{"ecosystem":"Red Hat:enterprise_linux:10.2","fixed":["1:3.26.1-3.el10_2.1"],"introduced":["0"],"last_affected":[],"package":"python3-gpsd-debuginfo","purl":"pkg:rpm/redhat/python3-gpsd-debuginfo","source":"RHSA-2026:51075"},{"ecosystem":"Red Hat:enterprise_linux:9::appstream","fixed":["1:3.26.1-2.el9_8.1"],"introduced":["0"],"last_affected":[],"package":"gpsd-minimal","purl":"pkg:rpm/redhat/gpsd-minimal","source":"RHSA-2026:51153"},{"ecosystem":"Red Hat:enterprise_linux:9::appstream","fixed":["1:3.26.1-2.el9_8.1"],"introduced":["0"],"last_affected":[],"package":"gpsd-minimal-clients","purl":"pkg:rpm/redhat/gpsd-minimal-clients","source":"RHSA-2026:51153"},{"ecosystem":"Red Hat:enterprise_linux:9::appstream","fixed":["1:3.26.1-2.el9_8.1"],"introduced":["0"],"last_affected":[],"package":"gpsd-minimal-clients-debuginfo","purl":"pkg:rpm/redhat/gpsd-minimal-clients-debuginfo","source":"RHSA-2026:51153"},{"ecosystem":"Red Hat:enterprise_linux:9::appstream","fixed":["1:3.26.1-2.el9_8.1"],"introduced":["0"],"last_affected":[],"package":"gpsd-minimal-debuginfo","purl":"pkg:rpm/redhat/gpsd-minimal-debuginfo","source":"RHSA-2026:51153"},{"ecosystem":"Red Hat:enterprise_linux:9::appstream","fixed":["1:3.26.1-2.el9_8.1"],"introduced":["0"],"last_affected":[],"package":"gpsd-minimal-debugsource","purl":"pkg:rpm/redhat/gpsd-minimal-debugsource","source":"RHSA-2026:51153"},{"ecosystem":"Rocky Linux:10","fixed":["1:3.26.1-3.el10_2.1"],"introduced":["0"],"last_affected":[],"package":"gpsd","purl":"pkg:rpm/rocky-linux/gpsd?distro=rocky-linux-10\u0026epoch=1","source":"RLSA-2026:51075"},{"ecosystem":"Rocky Linux:9","fixed":["1:3.26.1-2.el9_8.1"],"introduced":["0"],"last_affected":[],"package":"gpsd-minimal","purl":"pkg:rpm/rocky-linux/gpsd-minimal?distro=rocky-linux-9\u0026epoch=1","source":"RLSA-2026:51153"},{"ecosystem":"openSUSE:Tumbleweed","fixed":["3.27.5-3.1"],"introduced":["0"],"last_affected":[],"package":"gpsd","purl":"pkg:rpm/opensuse/gpsd\u0026distro=openSUSE%20Tumbleweed","source":"openSUSE-SU-2026:11276-1"}],"prev":{"headline":"Don't Starve Together Memory Corruption via world_gen_data","id":"CVE-2026-58458"},"products":["gpsd"],"published":"2026-07-09","related":[{"cvss_score":9.8,"headline":"Memory corruption in n/a","id":"CVE-2025-67268","kev_date_added":null,"published":"2026-01-02"},{"cvss_score":7.5,"headline":"Integer overflow in n/a","id":"CVE-2025-67269","kev_date_added":null,"published":"2026-01-02"},{"cvss_score":5.9,"headline":"Integer overflow in GPSd","id":"CVE-2023-43628","kev_date_added":null,"published":"2023-12-05"}],"sources":[{"class":"attribution","licence":"MIT","name":"AlmaLinux","prefix":"ALSA"},{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"CC BY 4.0","name":"Red Hat","prefix":"RHSA"},{"class":"attribution","licence":"BSD","name":"Rocky Linux","prefix":"RLSA"},{"class":"attribution","licence":"CC BY 4.0","name":"SUSE","prefix":"openSUSE"},{"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":"no","exploitation":"none","technical_impact":"total"},"state":"PUBLISHED","updated":"2026-07-28","vendors":["ntpsec"]},"summary":"Attackers can execute arbitrary shell commands by injecting payloads into GPS device subtype fields processed by gpsprof and gnuplot.","url":"https://insights.sbomify.com/CVE-2026-58459/"}