As anybody, familiar with 1970s sitcoms can confirm, Mel, Alice's cook used to say: 

“the best defense is a good offense”.

In cybersecurity, a similar saying would be that in order to know how to secure something, one needs first to know how to compromise & break it.

This is exactly what the MODAL offers to do. Through a set of lessons, tutorials, and challenges, we will understand — and try — how to “break things”. This can include topics such as:

  • TCP Connection hijacking & SYN flooding
  • SQL Injection attacks on WWW servers
  • Heartbleed - that SSL bug that caused the whole Internet to flip out
  • DNS Cache Poisoning
  • ...

We will also call on outside experts, to present their experiences, favorite attacks, and possible countermeasures.

The practical part of this course consists of a set of tutorials and a set of challenges.

  • Tutorials: are optional, and serve to help students who need them acquire a certain set of skills. Each tutorial requires a submission of some code, which will be evaluated, and a grade (0-5) will be given.

 

  • Challenges: each represent "a thing to hack", such as DNS, or TCP, or DHCP, or invoking a buffer overflow, or performing a man-in-the-middle attack. Challenges will each have an explanation, and supporting material, for what is expected - but will require independent thinking. Each challenge requires a submission of some code, which will be evaluated, and a grade (0-10) will be given. Note that a code submission that "does the job, nothing more, nothing less" will be graded 5. Grades in the interval (5-10) reflect an additional effort, such as highly modular code, flexible, robust, or supporting different attack approaches.  

You're encouraged to work in a small group of 1-2 students for each challenge.

You will choose to work on challenges in the order you like, and you will do however many you want - or, need, in order to get enough points to pass the course.