Lab guides:
GIT REPO with info:https://github.com/pedromigueladao/SSoft
All labs are part of the SEED Labs, Software Security Labs:
Lab 1: Race-condition vulnerability Lab (only task 1):
Lab 2: Buffer overflows (only task 1):
Lab 3: Format string vulnerability lab (only task 1):
Lab 4: Cross site scripting - Collabtive (tasks 1 to 4):
Lab 5: SQL injection - Collabtive (all tasks):
Lab 6: Perl's Taint Mode (Section 1 of 01-exercises-introduction-to-iflow.pdf):
https://fenix.tecnico.ulisboa.pt/downloadFile/845043405457887/exercises-introduction-to-iflow.pdf
Lab 7: Information Flow Challenge (Section 2 of 03-exercises-static-analysis-high-level-languages.pdf):
https://fenix.tecnico.ulisboa.pt/downloadFile/845043405457889/exercises-static-analysis-high-level-languages.pdf
Lab 8: Interpreter Instrumentation (Section 1 of 05-exercises-dynamic-analysis.pdf):
https://fenix.tecnico.ulisboa.pt/downloadFile/845043405457883/exercises-dynamic-analysis.pdf
Instructions to use the VM at Tagus: (UPDATED FOR 1718)
The SEED Labs VM is executed using VirtualBox in Ubuntu or Windows. The image is at:
- Ubuntu-> /vms/vms/ssof2017/
- Windows-> D:\vms\ssof2017\
The instructions on how to make the VM image available on VirtualBox the first time it is executed is in the file UseVirtualBox.pdf
Instructions to use the VM at RNL (Alameda): (UPDATED FOR 1718)
The SEED Labs VM is executed in QEMU, using the interface provided by RNL. RNL instructions: https://rnl.tecnico.ulisboa.pt/servicos/virtualizacao/
cd /var/tmp —> you shouldn’t run the VM on the remote file system (AFS) because the performance is bad
mkdir working-dir
cd working-dir
Create disk:
rnl-virt disk create name_disk template —> creates a disk for the VM; template = SS; disk kept in a file called name_disk.qcow2 and it’s a differential disk (so smaller).
Start or restart VM:
rnl-virt vm create name_vm template name_disk.qcow2 --nat —> creates a VM based on a disk (but does not run it)
rnl-virt vm list —> lists available VMs
rnl-virt vm start name_vm —> runs a VM but does not show the terminal
rnl-virt vm open name_vm > shows the terminal of a running VM
Simple example:
rnl-virt disk create SS SS; rnl-virt vm create SS SS SS.qcow2; rnl-virt vm start SS; rnl-virt vm open SS
Finish session:
rnl-virt vm stop —> shuts-down VM (equivalent to shutdown inside VM)
rnl-virt vm stop --force —> crashes VM
The disk can be copied into AFS or a USB pen drive.