Aerospace Cybersecurity Student Research Spotlight Cal Poly
Where
Aerospace Village
DEF CON 34
Duration
24 min
Pairs a ptrace-based process injection chain against CubeSat flight software with a pipeline that maps hidden C and C++ dependencies in satellite code.
Summary
Clara Davis, a Cal Poly student, opens with why third-party code matters for satellites, where software often cannot be patched after launch. Many C and C++ dependencies arrive implicitly through build scripts rather than package managers, so they are easy to miss. She describes extending an existing dependency scanner to detect multiple toolchains, adding code-clone detection to find vendored code, and building transitive dependency graphs checked against CVE data. Automated matching sometimes returns unrelated repositories, so results need manual review.
Dylan Gururajan then presents a post-compromise attack against CubeSat flight software built on NASA's F Prime running on Linux. Assuming an attacker can uplink and execute user-level code, the injector attaches to the main flight process with ptrace, saves its register state, and triggers a remote mmap to obtain writable memory. It writes a shared object path there, finds libc through the process maps, and redirects execution to dlopen so the library's constructor runs. He demonstrated the chain on a Raspberry Pi, and no kernel bug or file on disk is required.
The main lesson is that the attack depends on intended Linux behavior, so fixing a single exploit does not solve it. Options such as hiding process metadata, restricting ptrace, or restricting dlopen each carry tradeoffs for mission debugging. The speaker argues that developers should treat the flight process as its own protected boundary. Clara closes by recommending that every space project generate a software bill of materials, since you cannot protect components you do not know you have.
Related talks
IoT Village·17 min
Metehan Arslan · Samet Berk Simsek
Shows how a cheap ESP32-C3 implant wired into a router's UART and power lines can give remote, persistent serial console access over wireless channels.
Main Stage·43 min
Reino Mostert
Shows how a Verifone P400+ payment terminal fell to three successive root exploit chains, and how root access exposed card data.
Packet Hacking Village·37 min
Khael Kugler
Shows how a Linux implant can hide a bidirectional command channel inside spoofed TCP responses on any open port, even when firewall rules block outbound traffic.


