CDitter – CD-ROM drive based data exfiltration

We present a method for the exfiltration of data through the movement of a CD-ROM drive. The movement
of such drive is monitored through the use of a Raspberry Pi and camera. We make use of manchester encoding
to represent data. See https://en.wikipedia.org/wiki/Manchester_code for more information.

Grayscale and processed images

3
1
4
2

Transmitting the text ‘hello’

emit.py – Transmits data through the medium of a CD-ROM drive

We make use of a 4 second delay for both the closed & open CD-Drive state, potentially a lower value could be used, but I was keen
to avoid damaging the drive

cditter.py – capture and decode the output from the CD-ROM drive

This code is using for processing the video data.

Raspberry Pi

The following libraries are needed for the program to run

sudo apt-get update
sudo apt-get install python-opencv
sudo apt-get install python-pip
sudo pip install picamera
sudo pip install numpy

Improvements

I’m sure the time to transmit data could be substantially reduced by decreasing the delays used for the CD tray eject/close commands and also possibly using an alternative technique to manchester encoding.

Additionally the initial 15 second delays used for the training period could likely be reduced.

It might be nice also to properly packetise the data like so:

|preamble|packet length|packet contents|

At the moment I’ve only tested with a single preamble with data following it

Repository

https://github.com/anfractuosity/cditter/ – the latest version of code is hosted here


Leave Comment

Error Please check your entries!