In recent years, the CYD Campus and other researchers have found many vulnerabilities in satellite-based communication systems, illustrating a lack of security posture in the wider industry. This project will extend the analysis by looking directly at satellite communications hardware.

The project comprises building the tooling in order to conduct vulnerability research directly on the satellite hardware. The student will get fa­mi­li­ar with and ex­tend a ge­ne­ric emu­la­ti­on and fuz­zing sys­tem to make it ap­p­lica­ble to ad­di­tio­nal micro­con­trol­ler-fo­cu­sed CPU ar­chi­tec­tu­res. Concretely, the student will implement a new hardware architecture/instruction set for the Unicorn engine [1].

We will pro­vi­de you with the hardware and formware of va­rious satellite plat­forms’ communication systems. The final goal is to ana­ly­ze the firm­ware and pos­si­bly find se­cu­ri­ty vul­nerabi­li­ties in sa­tel­li­te firm­ware.

Required Skills:

  • In­te­rest in em­bed­ded sys­tems firm­ware, fuz­zing, pro­gram ana­ly­sis and emu­la­ti­on tech­no­lo­gies
  • Pro­gramming in Py­thon/C
  • Some fa­mi­li­a­ri­ty with at least one as­sem­bly lan­gua­ge (ideally ARM, MIPS, Power­PC or SPARC)

[1] https://github.com/unicorn-engine/unicorn