CVE-2026-47731
Full vulnerability record from the local CVENow database.
Description
The AMMOS Instrument Toolkit (Formerly the Bespoke Links to Instruments for Surface and Space (BLISS)) is a Python-based software suite developed to handle Ground Data System (GDS), Electronic Ground Support Equipment (EGSE), commanding, telemetry uplink/downlink, and sequencing for instrument and CubeSat Missions. In versions prior to 2.6.1 and in version 3.1.0, the Binary Stream Capture (BSC) component exposes an unauthenticated HTTP API for dynamically creating packet capture "handlers." Because the code blindly trusts path‑related form fields, a remote client can bypass the configured log root and direct BSC to log to arbitrary filesystem paths (path traversal / directory escape), and append attacker‑controlled data to those files, using the privileges of the`ait-bsc` process. There are two ways for a remote attacker to trigger this. First, if the attacker has access to the network where `ait-bsc` is deployed (a reason for that could be that the ports are publicly accessible), the payloads can be directly sent to the server to trigger the arbitrary file append. This type of attack is demonstrated in `python_poc.py`. Second, even if the attacker does not have direct access to the network because the software is running in a local network, it is possible to exploit this if a bad actor in that network opens an attacker-controlled website (which might be a website created by an attacker, or a third-party website compromised by the attacker). The browser javascript can automatically send the requests necessary to exploit this into the local network. This is even possible if the server is only accessible on `localhost`. This type of attack is demonstrated by `attacker_tcp.py` and `test1.html` (first launch the attacker TCP server, then start a webserver to host `test1.html`, for example using `python3 -m http.server 7000`, and open `test1.html`).This issue affects BSC (Binary Stream Capture) and usage of the ait-bsc server. This impacts AIT-Core versions before 3.1.1, from 2.x before 2.6.1. Users are recommended to upgrade to version 3.1.1 or 2.6.1.
View original CVE JSON
{
"id": "CVE-2026-47731",
"sourceIdentifier": "[email protected]",
"published": "2026-07-21T22:17:13.230",
"lastModified": "2026-10-24T19:10:00.127",
"vulnStatus": "Deferred",
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "The AMMOS Instrument Toolkit (Formerly the Bespoke Links to Instruments for Surface and Space (BLISS)) is a Python-based software suite developed to handle Ground Data System (GDS), Electronic Ground Support Equipment (EGSE), commanding, telemetry uplink/downlink, and sequencing for instrument and CubeSat Missions. In versions prior to 2.6.1 and in version 3.1.0, the Binary Stream Capture (BSC) component exposes an unauthenticated HTTP API for dynamically creating packet capture \"handlers.\" Because the code blindly trusts path‑related form fields, a remote client can bypass the configured log root and direct BSC to log to arbitrary filesystem paths (path traversal / directory escape), and append attacker‑controlled data to those files, using the privileges of the`ait-bsc` process. There are two ways for a remote attacker to trigger this. First, if the attacker has access to the network where `ait-bsc` is deployed (a reason for that could be that the ports are publicly accessible), the payloads can be directly sent to the server to trigger the arbitrary file append. This type of attack is demonstrated in `python_poc.py`. Second, even if the attacker does not have direct access to the network because the software is running in a local network, it is possible to exploit this if a bad actor in that network opens an attacker-controlled website (which might be a website created by an attacker, or a third-party website compromised by the attacker). The browser javascript can automatically send the requests necessary to exploit this into the local network. This is even possible if the server is only accessible on `localhost`. This type of attack is demonstrated by `attacker_tcp.py` and `test1.html` (first launch the attacker TCP server, then start a webserver to host `test1.html`, for example using `python3 -m http.server 7000`, and open `test1.html`).This issue affects BSC (Binary Stream Capture) and usage of the ait-bsc server. This impacts AIT-Core versions before 3.1.1, from 2.x before 2.6.1. Users are recommended to upgrade to version 3.1.1 or 2.6.1."
},
{
"lang": "es",
"value": "El kit de herramientas de instrumentos AMMOS (anteriormente Bespoke Links to Instruments for Surface and Space (BLISS)) es un paquete de software basado en Python desarrollado para manejar el Sistema de Datos Terrestres (GDS), el Equipo Electrónico de Apoyo en Tierra (EGSE), el comando, el enlace ascendente/descendente de telemetría y la secuenciación para misiones de instrumentos y CubeSat. En versiones anteriores a la 2.6.1 y en la versión 3.1.0, el componente Binary Stream Capture (BSC) expone una API HTTP no autenticada para crear dinámicamente ’manejadores’ de captura de paquetes. Debido a que el código confía ciegamente en los campos de formulario relacionados con la ruta, un cliente remoto puede eludir la raíz de registro configurada y dirigir a BSC para que registre en rutas arbitrarias del sistema de archivos (salto de ruta / escape de directorio), y añadir datos controlados por el atacante a esos archivos, utilizando los privilegios del proceso “ait-bsc”. Hay dos formas para que un atacante remoto active esto. Primero, si el atacante tiene acceso a la red donde “ait-bsc” está desplegado (una razón para ello podría ser que los puertos son accesibles públicamente), las cargas útiles pueden ser enviadas directamente al servidor para activar la adición arbitraria de archivos. Este tipo de ataque se demuestra en “python_poc.py”. Segundo, incluso si el atacante no tiene acceso directo a la red porque el software se está ejecutando en una red local, es posible explotar esto si un actor malicioso en esa red abre un sitio web controlado por el atacante (que podría ser un sitio web creado por un atacante, o un sitio web de terceros comprometido por el atacante). El javascript del navegador puede enviar automáticamente las solicitudes necesarias para explotar esto en la red local. Esto es incluso posible si el servidor solo es accesible en “localhost”. Este tipo de ataque se demuestra mediante “attacker_tcp.py” y “test1.html” (primero inicie el servidor TCP del atacante, luego inicie un servidor web para alojar “test1.html”, por ejemplo usando “python3 -m http.server 7000”, y abra “test1.html”). Este problema afecta a BSC (Binary Stream Capture) y al uso del servidor ait-bsc. Esto afecta a las versiones de AIT-Core anteriores a la 3.1.1, desde la 2.x anteriores a la 2.6.1. Se recomienda a los usuarios actualizar a la versión 3.1.1 o 2.6.1."
}
],
"affected": [
{
"source": "[email protected]",
"affectedData": [
{
"vendor": "NASA-AMMOS",
"product": "AIT-Core",
"versions": [
{
"version": "< 2.6.1",
"status": "affected"
},
{
"version": "= 3.1.0",
"status": "affected"
}
]
}
]
}
],
"metrics": {
"cvssMetricV31": [
{
"source": "[email protected]",
"type": "Secondary",
"cvssData": {
"version": "3.1",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H",
"baseScore": 9.1,
"baseSeverity": "CRITICAL",
"attackVector": "NETWORK",
"attackComplexity": "LOW",
"privilegesRequired": "NONE",
"userInteraction": "NONE",
"scope": "UNCHANGED",
"confidentialityImpact": "NONE",
"integrityImpact": "HIGH",
"availabilityImpact": "HIGH"
},
"exploitabilityScore": 3.9,
"impactScore": 5.2
}
],
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"timestamp": "2026-07-22T14:27:51.173181Z",
"id": "CVE-2026-47731",
"options": [
{
"exploitation": "poc"
},
{
"automatable": "yes"
},
{
"technicalImpact": "partial"
}
],
"role": "CISA Coordinator",
"version": "2.0.3"
}
}
]
},
"weaknesses": [
{
"source": "[email protected]",
"type": "Secondary",
"description": [
{
"lang": "en",
"value": "CWE-22"
}
]
}
],
"references": [
{
"url": "https://github.com/NASA-AMMOS/AIT-Core/releases/tag/2.6.1",
"source": "[email protected]"
},
{
"url": "https://github.com/NASA-AMMOS/AIT-Core/releases/tag/3.1.1",
"source": "[email protected]"
},
{
"url": "https://github.com/NASA-AMMOS/AIT-Core/security/advisories/GHSA-p462-prxw-mjx4",
"source": "[email protected]"
},
{
"url": "https://github.com/NASA-AMMOS/AIT-Core/security/advisories/GHSA-p462-prxw-mjx4",
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0"
}
]
}