Critical NASA AIT-GUI Flaws Let Hackers Issue Spacecraft Commands
Security researchers at Cycode have disclosed a chain of severe vulnerabilities in NASA's open-source AIT-GUI, the browser-based operator console used by the Jet Propulsion Laboratory's AMMOS Instrument Toolkit, that could allow unauthenticated attackers to issue arbitrary commands to spacecraft and scientific instruments. Tracked as GHSA-p9r8-2q67-fp86 and rated 9.4 on the CVSS v3.1 scale, the flaws impact AIT-GUI versions 2.5.1 and earlier and were patched in version 2.5.2 released on August 12, 2026. The advisory, published the following day, notes that no CVE has been assigned to the issue. The AMMOS Instrument Toolkit underpins the ground data systems that transmit commands to spacecraft and process returning telemetry, making the disclosure a matter of critical infrastructure concern.
The vulnerability chain stems from three distinct weaknesses classified under CWE-306 (Missing Authentication for Critical Function), CWE-352 (Cross-Site Request Forgery), and CWE-22 (Path Traversal). Cycode's advisory explains that the AIT-GUI web server reads its configured host value and then discards it, binding the listener to the hardcoded address 0.0.0.0 on port 8080 by default, exposing every state-changing route without authentication, authorization, or CSRF protection. Two of those routes additionally construct filesystem paths from unvalidated input. The most concerning endpoint, POST /cmd, permits arbitrary instrument and spacecraft commands, while POST /script/run and POST /seq enable server-side script execution and command sequence execution, respectively, including files outside the intended directory. Operators concerned about exposure on similar services can audit their own perimeter using a port scanner to verify which interfaces are actually listening.
According to Yuval Elbar, a security researcher at Cycode, the cross-origin attack vector is particularly dangerous for host-local or firewalled deployments. Because the vulnerable routes accept application/x-www-form-urlencoded bodies, which browsers treat as CORS "simple" requests, a cross-origin POST reaches them without a preflight OPTIONS request, meaning the server processes the malicious payload without negotiation. "Captured network traffic from a real browser confirms the cross-origin POST is delivered with zero OPTIONS preflight requests, and the server processes it," the advisory states. An operator simply opening an attacker-controlled webpage while their browser is logged into or has access to the console could trigger unauthorized commands. Organizations reviewing their own web interfaces for similar weaknesses can use a SSL/TLS checker to verify transport-layer protections and a privacy checkup to audit broader exposure.
Version 2.5.2 addresses all three weaknesses: the server now binds to the configured host (defaulting to localhost rather than 0.0.0.0), a before_request hook compares a request's Origin or Referer header against the server's own Host for POST, PUT, DELETE, and PATCH operations to mitigate CSRF, and the /script/run and /seq endpoints are now confined to their configured root paths. Organizations running AIT-GUI or any similar ground control framework are urged to upgrade immediately and audit historical access logs for any signs of exploitation, as the unauthenticated nature of the vulnerable endpoints means prior intrusions may have gone unnoticed.