Submission

Attention

The project is due on Tuesday, 8th April 2025, 11:59 PM.

Projects must be submitted before the deadline. After this time, a penalty will be applied to late submissions. This penalty is calculated as a deduction of \(2^N − 1\) marks, where N is the number of started days after the deadline (total is on 20). Be careful however that even if you use the late submission, the MCQ on the project still needs to be taken the day after the deadline (Wednesday, 9th April 2025).

Your submission will be a tarball archive named group_{your_group_ID}.tar.gz. At the root of your archive will be a directory named group_{your_group_ID}. Inside this directory, you will have one directory per challenge, each named with the challenge’s name (as in the templates downloaded from the website). However, you will only include your source files at the root of those directories (not in src/).

You can also include a README.md file at the root of your archive if you want to provide additional information about your submission. You can also include a feedback.txt file at the root of your archive if you want to provide feedback about the project (e.g., what you liked/disliked, what was easy/hard, points of improvement, etc.).

Important

Your code is going to be tested on the same VM as the one you used for the project, with all the tools mentionned in tutorial 3 and 4 installed. LSM will also be enabled for challenge 2. If you made any other modifications to the VM for your code to work, please mention it in the README.md file.

This means that running the following command:

tar -xzvf group_{your_group_ID}.tar.gz

should output something like:

group_{your_group_ID}/
group_{your_group_ID}/README.md                  # README.md is optional
group_{your_group_ID}/feedback.txt               # feedback.txt is optional
group_{your_group_ID}/keylogger/
group_{your_group_ID}/keylogger/keylogger.h
group_{your_group_ID}/keylogger/keylogger.bpf.c
group_{your_group_ID}/page_faults/
group_{your_group_ID}/page_faults/page_fault.h
group_{your_group_ID}/page_faults/page_fault.bpf.c
group_{your_group_ID}/forkbomb/
group_{your_group_ID}/forkbomb/forkbomb.bpf.c
group_{your_group_ID}/seccomp/
group_{your_group_ID}/seccomp/seccomp.bpf.c
group_{your_group_ID}/anticheat/
group_{your_group_ID}/anticheat/anticheat.bpf.c

Submissions will be made as a group_{your_group_ID}.tar.gz archive (for example group_3.tar.gz), on the submission system. Failure to compile a challenge will result in an awarded mark of 0 for this challenge. Different challenges can have different weights, depending on their difficulty.

Bon travail…

Note

You do not have to worry about race conditions for this project.