]> git.somenet.org - pub/jan/ctf-seminar.git/blob - README.md
Update README.md
[pub/jan/ctf-seminar.git] / README.md
1 [192.092] Capture The Flag (SE)
2 ===============================
3
4 Don’t be a Security Tourist... BE A HACKER!
5
6
7 Info
8 ----
9 Official course page on [TISS](https://tiss.tuwien.ac.at/course/educationDetails.xhtml?dswid=8296&dsrid=617&courseNr=192092&semester=2019W).
10
11 The course is coordinated by:
12
13 * Marco Squarcina aka `lavish`, [web](https://minimalblue.com) [twitter](https://twitter.com/blueminimal)
14 * Georg Merzdovnik aka `georg`, [twitter](https://twitter.com/gmerzdovnik)
15 * Mauro Tempesta aka `MrStorm`, [twitter](https://twitter.com/mau_tempesta)
16 * Michael Pucher aka `cluosh`
17
18 Communication and announcements on [mattermost](https://mattermost.w0y.at), please refer to this [guide](mattermost_for_CTFs.md) on how to use use Gitlab/Mattermost for collaboration during CTFs.
19
20 Send your questions - if any - to [ctf@list.tuwien.ac.at](mailto:ctf@list.tuwien.ac.at).
21
22
23 Meetings
24 --------
25 * 15/10, 18:00 - 20:00, FAV Hörsaal 1: [Course intro](meetings/20191015/course-intro.pdf), [CTF intro](meetings/20191015/ctf-intro.pdf)
26 * 22/10, 17:00 - 20:00, FAV Hörsaal 1, Hack.lu CTF 2019
27 * 29/10, 17:00 - 20:00, FAV Hörsaal 1, Talks
28 * 12/11, 17:00 - 20:00, FAV Hörsaal 1, Talks
29 * 19/11, 17:00 - 20:00, FAV Hörsaal 1, RuCTFe preparation meeting
30 * 23/11, 10:00 - 20:00, SBA Research (Floragasse 7), RuCTFe 2019
31 * 26/11, 17:00 - 20:00, FAV Hörsaal 1, Talks
32 * 10/12, 15:00 - 18:00, [GM 8/9 Hörsaal des Internationalen Wiener Motorensymposiums](https://www.tuwien.at/index.php?id=1691), Talks
33 * 17/12, 17:00 - 20:00, FAV Hörsaal 1, Talks
34
35
36 List of CTFs
37 ------------
38 * 19/10 - 20/10: SECCON 2019 CTF (on-line)
39 * 22/10 - 24/10: Hack.lu CTF 2019 (on-site)
40 * 26/10 - 27/10: TastelessCTF 2019 (on-line)
41 * 15/11 - 17/11: ASIS CTF Finals 2019 (on-line)
42 * 23/11: RuCTFe 2019 (on-site, mandatory attendance to the preparation meeting of November 19 and the entire CTF for those who want to participate)
43 * 01/12 - 26/12: OverTheWire Advent Bonanza 2019 (on-line, at least 4 different challenges must be played)
44 * 27/12 - 29/12: hxp 36C3 CTF (on-line)
45
46
47 CTF Participation
48 -----------------
49 As specified in the [Course intro](meetings/20191015/course-intro.pdf), each student is required to attend at least 1 CTF on-site and 3 CTFs overall. On-line attendance is assessed via an individual detailed write-up reporting everything that has been done during the competition, including failed attempts at solving challenges. No write-up is required to prove on-site attendance.
50
51 Write-ups must be submitted directly on [Gitlab](https://gitlab.w0y.at/ctf-seminar/ws19) under the directory `writeups/<nickname>/` as a single Markdown file called after the CTF. Say, for instance, that your handle is `l33th4ck3r` and you want to submit the write-up for the SECCON'19 CTF, then just create the file `writeups/l33th4ck3r/seccon19.md`. If you need to store additional files to complement your write-up, such as scripts or screenshots, add a subfolder (such as `writeups/l33th4ck3r/seccon19/`) in your own directory and save those files there.
52
53 Your write-up file should provide an overall personal consideration of the CTF in retrospective and then a detailed technical analysis of the challenges that you attempted to solve, either successfully or not. A good example of *detailed technical analysis* of a challenge can be found [here](https://w0y.at/writeup/2019/10/27/tasteless-2019-gabbr.html).
54
55 According to the ECTS breakdown in the lecture description on TISS, one should expect 20h for meetings and 130h of individual project work for preparing the talk (see below), playing CTFs and reporting on them.
56 It follows that if you decide to play 3 CTFs overall, you should invest an average of 40h for each of them. We highly suggest to specify in your write-ups the time spent for each challenge you approached and reported on.
57
58 If you feel like one of the tasks you solved is particularly interesting, let us know and we will consider it for publication in the [w0y website](https://w0y.at).
59
60
61 Talks
62 -----
63 As part of the evaluation process you are also required to present the solution to a CTF challenge in one of the scheduled meetings. The presentation can be done either individually or as a team of 2 persons. Students teaming up are expected to present more complex challenges than those handled individually. The expected duration of the talk is defined as:
64 * 15 minutes for individual presentations
65 * 30 minutes for team presentations (15 minutes each student)
66
67 To book a slot for your talk in one of the meetings listed in the "Tentative Schedule", go to [TISS](https://tiss.tuwien.ac.at/education/course/groupList.xhtml?dswid=9829&dsrid=944&courseNr=192092&semester=2019W) and register in one of the available groups. Keep in mind anyway that there is a limited amount of slots per day, so start booking yours in one of the earliest dates if possible! To get it approved, send a mail to [ctf@list.tuwien.ac.at](mailto:ctf@list.tuwien.ac.at) to propose a challenge you would like to discuss along with the chosen date.
68
69 Some recommendations for your talk:
70 * Provide an overview of the intended functionalities of the application
71 * Describe all the attempts you made to find the vulnerabilities, including unsuccessful ones (time permitting)
72 * Explain the exploitation steps in an understandable manner
73 * If possible, describe the impact of this security threat in a realistic scenario and discuss possible countermeasures
74
75 We have created a public [Github repository](https://github.com/w0y/CTF-Seminar-Presentations) where you should upload your presentation after giving the talk. Add your slides/material to the directory `<ctf_name>-<year>/<challenge_name>/` (e.g., `hacklu-2019/rpdg`) and issue a pull request when you are done with the changes! Don't forget to add a reference to your challenge in the main `README.md` file of the repository.
76
77
78 Evaluation
79 ----------
80
81 Talks are evaluated according to the following criteria:
82 * adherence to the guidelines above
83 * clarity of the presentation
84 * correctness and understanding of the topic
85 * time management
86
87 Similarly, write-ups are evaluated on:
88 * clarity of the write-up
89 * correctness and understanding of the topics
90 * provided level of details