course: Bachelor Practical Course Hacking Techniques

number:
142244
teaching methods:
practical course
media:
Videoübertragung, e-learning, overhead transparencies, internet, Moodle
responsible person:
Prof. Dr. Jörg Schwenk
Lecturers:
Prof. Dr. Jörg Schwenk (ETIT), M. Sc. Lukas Knittel (ETIT)
language:
german
HWS:
3
CP:
see examination rules
offered in:
winter term and summer term

dates in winter term

  • start: Wednesday the 20.10.2021
  • lab Wednesdays: from 16:15 to 17.45 o'clock in ID 04/401

dates in summer term

  • kick-off meeting: Monday the 12.04.2021 from 17:15
  • lab Wednesdays: from 16:15 to 17.45 o'clock

Exam

Form of exam:lab
Registration for exam:Directly with the lecturer
continual assessment

goals

The student should be ablet to attack and defend web applications against web-based attacks.

content

Web applications are a very attractive target for attackers. Web applications can be attacked via SQL injections, Cross-Site Scripting, and inter alia Cross-Site Request Forgery.

This lecture should give students an overview about the following web attacks: - Cross Site Scripting (XSS) - Cross Site Request Forgery (CSRF) - Session Hijacking - Session Fixation - SQL Injection (SQLi) - Local/Remote File Inclusion (LFI/RFI) - Path Traversal - Remote Code Execution (RCE) - Logical Flaws - Information Leakage - Insufficient Authorization

Moreover, external speakers will give a few talks about IT security topics.

requirements

keine

recommended knowledge

  • A strong interest into web-based IT security
  • Foundations of TCP/IP and HTTP(S)
  • Foundations of HTML and JavaScript
  • Knowledge of the lecture "Netzsicherheit 1" and "Netzsicherheit 2"

materials

miscellaneous

Wichtige Information (Update: 23.09.2021):

Liebe Studierende,

das HackerPraktikum im WS 21/22 wird wieder in in Präsenz stattfinden.

Die Teilnehmeranzahl ist aus organisatorischen Gründen auf 20 Studierende beschränkt. Zur Auswahl der Teilnehmer wird im Vorfeld ein Aufnahmetest durchgeführt.

Der Aufnahmetest wird am Montag, den 11.10.2021 um 17:15 Uhr online per Moodle, stattfinden. Interessierte Studierende müssen sich in den folgenden Moodle Kurs eintragen:

https://moodle.ruhr-uni-bochum.de/course/view.php?id=41718

In diesem Test wird das Grundwissen in Bezug auf die erforderlichen Vorkenntnisse überprüft. Der Test besteht aus 20 Multiple-Choice-Fragen; es steht eine maximale Bearbeitungszeit von 15 Minuten zur Verfügung. Die 20 Studierenden mit den meisten richtigen Antworten werden zum Praktikum zugelassen. Bei Punktgleichheit entscheidet das Los über die endgültige Platzvergabe.

Nach dem Test werden die Ergebnisse direkt danach in der Einführungsveranstaltung bekannt gegeben (siehe Moodle).

Wichtig für den Aufnahmetest und das Hackerpraktikum sind vor allem die praktischen Aspekte folgender Themen:

Insgesamt ist also zum Beispiel die Geschichte von HTML weniger von Belang als praktisches Wissen im Umgang mit der Sprache.

Zusatzbemerkung: Die Teilnahme an den angebotenen Vorträgen während des Semesters ist unabhängig vom Aufnahmetest für alle Interessierten möglich.

Ablauf des Praktikums:

Im Laufe des Prak­ti­kums muss jeder Teil­neh­mer, un­ab­hän­gig von der Grup­pe, min­des­tens 3 Auf­ga­ben selb­stän­dig ge­löst haben, zusätzlich müssen alle Gruppen alle 6 Aufgaben selbständig gelöst haben. Ist dies nicht der Fall, kann der Stu­die­ren­de kei­nen Praktikumsschein er­wer­ben. Die Be­treu­er be­hal­ten sich zudem vor, even­tu­el­le Rückfra­gen zu der Lö­sung an den je­wei­li­gen Stu­die­ren­den zu stel­len um Missbrauch zu un­ter­bin­den.

Innerhalb der 14 Tage finden jeweils zwei Vorträge statt. Die Teilnahme an den Vorträgen ist obligatorisch! Teilnehmer dürfen bei den Vorträgen 1-mal unentschuldigt und 1-mal entschuldigt fehlen. Unabhängig davon müssen in jedem Fall alle gestellten Aufgaben gelöst werden.

Die Anwesenheit wird bei jedem Termin mit einer Anwesenheitsliste überprüft. Nach den Vorträgen wird die Möglichkeit bestehen, Fragen an die Referenten zu stellen. Das beste Team erhält am Ende des Praktikums einen Preis.