SpyChain implementation in NOS3
SpyChain studies how malicious functionality embedded in third-party (COTS) components can persist, coordinate, and exfiltrate telemetry from small satellites. Implemented and evaluated in NASA’s NOS3 simulation environment, the project demonstrates five escalating attack scenarios — from a single time-triggered payload to coordinated, FIFO-based multi-component malware that evades ground telemetry monitoring.
Abstract
Small satellites increasingly rely on COTS modules that enjoy privileged access but often lack assurance. SpyChain provides the first end-to-end simulation of colluding supply-chain threats for CubeSats, showing covert coordination (software bus + FIFO), telemetry exfiltration via the radio, and plausible DoS/fault injection — all while remaining stealthy to standard ground monitoring. We map the tactics to SPARTA, propose lightweight onboard defenses, and engaged NASA NOS3 maintainers on mitigation strategies.
Key results & contributions
- Five simulated attack scenarios (solo static, solo dynamic, colluding via software bus, colluding dynamic, colluding using FIFO file) demonstrating escalating stealth and coordination.
- Novel multi-component execution technique (component collusion) — added to the SPARTA matrix after disclosure.
- Realistic exfiltration using the NOS3 Generic Radio path (UDP), making telemetry appear indistinguishable from legitimate downlinks.
- Demonstrations of persistence & DoS: null-pointer crashes and message flooding indistinguishable from application bugs.
- Actionable mitigations: runtime syscall filtering (e.g., seccomp), software-bus authentication & access control, and lightweight runtime monitoring tailored for cFS/NOS3 constraints.
- NASA engagement: NOS3 team acknowledged findings and expressed interest in follow-up testbed enhancements.
Demo (what we built)
- Full NOS3 simulation with cloned cFS apps:
- Trigger agent (sensor/time triggers; writes commands)
- Attack agent (mkfifo-based coordination; reuses radio socket for UDP exfil)
- Timeline: supply-chain compromise → dormancy → GNSS/time trigger → FIFO coordination → exfiltration / DoS / deception.
- Realistic telemetry packets (CCSDS/XTCE) forwarded to COSMOS ground station in the sim.
Why this matters
- Third-party hardware often receives far less assurance than core flight software but retains equivalent runtime privileges.
- SpyChain shows how that structural asymmetry can be weaponized for long-lived reconnaissance or mission disruption — a pressing concern as small-satellite fleets scale.
Implementation notes
- Built on NOS3 + cFS apps; trigger/attack agents follow standard cFS lifecycle (
AppInit(),CFE_ES_RunLoop()). - FIFO coordination chosen because
mkfifo()provides process synchronization and reduces forensic traces. - Exfiltration path: attack agent opens the radio app’s UDP socket and issues
sendto()with CCSDS payloads; NOS3 radio hardware model forwards to ground endpoint. - Countermeasure prototypes: seccomp sandbox rules, message-ID manifest checks for software-bus subscriptions, and lightweight syscall/event telemetry.
