Skip to content

This work has been accepted to the 1st Workshop on Security and Dependability of Critical Embedded Real-Time Systems.

License

Notifications You must be signed in to change notification settings

mnwrhsn/restart_n_secure_cps

Repository files navigation

ReSecure: A Restart-Based Security Protocol for Tightly Actuated Real-Time Systems

######This work has been submitted accepted to the 1st Workshop on Security and Dependability of Critical Embedded Real-Time Systems.

The Server is a multithreaded program running the Safety Controller and the Decision Module. The Client acts as the Complex Controller.

The applications are prototyped and checked for the Linux kernel versions specified below. Although this instructions should work with other Linux kernel versions and real-time patches as well, we did not verify this.

Instructions

###Flashing the Beagle Bone Black###

See detailed instructions here.

1. Download the image:

https://rcn-ee.com/rootfs/2016-06-09/flasher/BBB-eMMC-flasher-debian-8.5-console-armhf-2016-06-09-2gb.img.xz

2. Extract the file

tar -xvf BBB-eMMC-flasher-debian-8.5-console-armhf-2016-06-09-2gb.img.xz

3. Create a bootable SD card from the OS image (instructions for Windows and Mac).

4. Insert the SD card in the Board.

5. Push S2 switch while connecting to a power source.

6. When all four lights lit up together the Board is flashed with the new image.

###Applying Real-Time patch

1. Log in as root user:

sudo -i

2. Check the version of Linux that is running:

uname -r

3. Download package lists from the repository:

sudo apt-get update

4. Search for available Real-­time Linux kernels:

sudo apt­-cache search linux-image | grep ti-rt

5. Install the Real-time patch that matches with currently installed kernel:

sudo apt-get install linux-image-4.4.12-ti-rt-r30

###Compiling a periodic timer (on the BeagleBone Black) Run make

cd periodic_timer && make

Run the periodic timer

insmod hrmodule_test.ko

###Simple Controller (on the x86 machine)

Run make

cd Server && make

Run the server

./main

###Safety Controller (on the x86 machine)

Run make

cd Safety_controller && make

Run the safety controller

./main

###Compile rootkit (on the BeagleBone Black) Run make

cd attacks/root_kit && make

###Real-time applications on Complex Controller (on the BeagleBone Black)

Run make

cd Rt_task && make

Run the application

./main

About

This work has been accepted to the 1st Workshop on Security and Dependability of Critical Embedded Real-Time Systems.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published