Dieses Wiki ist ein Archiv bis 2023. Das aktuelle Wiki findet sich unter https://wiki.hamburg.ccc.de/

Difference between revisions of "CTF"

From CCCHHWiki
Jump to: navigation, search
(mooaaaarrrr formatting foo)
(cleanup and adding tags)
Line 1: Line 1:
 
= Capture the Flag =
 
= Capture the Flag =
  
== Wo ==
+
== Wann? Wo? ==
 +
 
 +
Wir treffen uns jede Woche am [[#CTF-Day|CTF-Day]] und je nach [[#Competition|Competition]] und Absprache auf der [[#Kommunikation|Mailinglist]] auserhalb des regulaeren [[#CTF-Day|CTF-Day]].
 +
 
 +
=== CTF-Day ===
 +
 
 +
* '''/proc/day:''' Mittwoch
 +
* '''/proc/time:''' 19:00 GMT+1
 +
* '''/proc/location:''' [[Clubräume|z9]
 +
 
  
Wir treffen uns jede Woche am '''CTF-Day''' (wahrscheinlich Mittwoch ab 19:00) im '''z9''' und je nach Competition und Absprache auf der [[#Kommunikation|Mailinglist]] auserhalb des regulaeren '''CTF-Days''' (siehe References ctftime.org).
 
  
 
== CTF? WTF? ==
 
== CTF? WTF? ==
Line 13: Line 21:
 
=== Kurzausschnitt ===
 
=== Kurzausschnitt ===
  
''"Capture the Flag (CTF) is a special kind of information security competitions. There are three common types of CTFs: Jeopardy, Attack-Defence and mixed."''
+
''"Capture the Flag (CTF) is a special kind of information security competitions.''
 +
 
 +
''There are three common types of CTFs: '''Jeopardy, Attack-Defence''' and '''mixed'''."''
  
 
'''[...]'''
 
'''[...]'''
  
''"CTF games often touch on many other aspects of information security: cryptography, stego, binary analysis, reverse engeneering, mobile security and others. Good teams generally have strong skills and experience in all these issues."''
+
''"CTF games often touch on many other aspects of information security:''
 +
 
 +
'''''cryptography, stego, binary analysis, reverse engeneering, mobile security''' and others.''
 +
 
 +
''Good teams generally have strong skills and experience in all these issues."''
  
  
Line 24: Line 38:
 
=== Generell ===
 
=== Generell ===
  
Wir tranieren und spielen gemeinschaftlich als Team CTFs. Dies beinhaltet vorallem in der Anfangsphase primär "offline" Jeopardy CTFs (non-live-competitions) und anschliessend Nacharbeitung von bereits vergangenen Competitions aus CTF-Archiven (siehe [[#References|References]]).
+
Wir tranieren und spielen gemeinschaftlich als Team CTFs. Dies beinhaltet vorallem in der Anfangsphase primär "offline" Jeopardy CTFs (non-live-competitions) und anschliessend Nacharbeitung von bereits vergangenen [[#Competition|Competitions]] aus CTF-Archiven (siehe [[#References|References]]).
  
  
Es werden entsprechend regelmässig Vorträge und Vorbereitungen getroffen, um an jeweiligen CTF-Days auf einzelne Sub-Kategorie speziell einzugehen und diese zu thematisieren.
+
Es werden entsprechend regelmässig Vorträge und Vorbereitungen getroffen, um an jeweiligen [[#CTF-Day|CTF-Day]] auf einzelne Sub-Kategorie speziell einzugehen und diese zu thematisieren.
  
 
Generell ist es Ziel, dass jede/-r Teilnehmer/-in in jeder Kategorie Grundwissen besitzt: dies wird vorallem fuer die Competitions ein wichtiger Punkt sein!
 
Generell ist es Ziel, dass jede/-r Teilnehmer/-in in jeder Kategorie Grundwissen besitzt: dies wird vorallem fuer die Competitions ein wichtiger Punkt sein!
Line 40: Line 54:
 
* binary analysis
 
* binary analysis
 
* reverse engineering
 
* reverse engineering
* exploiting (aka pwn)
+
* exploiting / pwn
  
  
Line 48: Line 62:
 
=== Wer darf? ===
 
=== Wer darf? ===
  
Prinzipiell darf jeder, allerdings wird der Fokus sehr stark darauf liegen, als Team gemeinsam voran zu kommen. Dies bedeutet, dass jeder Interessent ein gesundes Mass an Eigeninitiative mitbringen und sich auch außerhalb des CTF-Tages mit der Materie auseinandersetzen sollte.
+
Prinzipiell darf jeder, allerdings wird der Fokus sehr stark darauf liegen, als Team gemeinsam voran zu kommen. Dies bedeutet, dass jeder Interessent ein gesundes Mass an Eigeninitiative mitbringen und sich auch außerhalb des [[#CTF-Day|CTF-Days]] mit der Materie auseinandersetzen sollte.
  
  
 
=== Was muss ich koennen? ===
 
=== Was muss ich koennen? ===
  
Jedem steht es frei seine "Haupt-Kategorie" selbst zu wählen, dies wird später bei den competitions dazu dienen, fuer jene Kategorie ein Ansprechpartner zu sein (um die CTF-Tasks moeglichst effizient zu schedulen).
+
Jedem steht es frei seine "Haupt-Kategorie" selbst zu wählen, dies wird später bei den [[#Competition|Competitions]] dazu dienen, fuer jene Kategorie ein Ansprechpartner zu sein (um die CTF-Tasks moeglichst effizient zu schedulen).
  
 
Erwartet werden allerdings generelle Linux- und python-Faehigkeiten!
 
Erwartet werden allerdings generelle Linux- und python-Faehigkeiten!
 
Frueher oder spaeter sollte sich auf jedenfall jeder Assembler (x86, x86_64) aneignen.
 
Frueher oder spaeter sollte sich auf jedenfall jeder Assembler (x86, x86_64) aneignen.
 
Alle aktiven Mitglieder sollten sich in der Mitglieder-Kategorie-Matrix eintragen um eine einfache Uebersicht zu erhalten.
 
Alle aktiven Mitglieder sollten sich in der Mitglieder-Kategorie-Matrix eintragen um eine einfache Uebersicht zu erhalten.
 +
  
  
Line 63: Line 78:
  
 
Während der gesamten Trainingszeit wird insbesondere auch Fokus darauf gelegt, dass wir ein Team bilden und zusammen arbeiten, um absolut effizient die CTF's bespielen zu koennen. Dazu wird auf kurze oder lange Sicht jeder seine "Hauptkategorie" finden um sich darauf zu spezialisieren.
 
Während der gesamten Trainingszeit wird insbesondere auch Fokus darauf gelegt, dass wir ein Team bilden und zusammen arbeiten, um absolut effizient die CTF's bespielen zu koennen. Dazu wird auf kurze oder lange Sicht jeder seine "Hauptkategorie" finden um sich darauf zu spezialisieren.
 +
  
  
 
== Kommunikation ==
 
== Kommunikation ==
  
Während den '''CTF-Days''' (und auch auserhalb) dient primär das IRC fuer jegliche Koordination als Kommunikationsmedium. Fuer generellen Austausch, Ankuendigungen etc. sollte jeder Teilnehmer auf der [https://www.hamburg.ccc.de/mailman/listinfo/ctf CTF-Mailingliste] stehen.
+
Während den [[#CTF-Day|CTF-Days]] ''(und auch auserhalb)'' dient primär das [[#Kommunikation|IRC]] fuer jegliche Koordination als Kommunikationsmedium. Fuer generellen Austausch, Ankuendigungen etc. sollte jeder Teilnehmer auf der [https://www.hamburg.ccc.de/mailman/listinfo/ctf CTF-Mailingliste] stehen.
  
 
=== Mailingliste ===
 
=== Mailingliste ===
mailman ctf@hamburg.ccc.de [https://www.hamburg.ccc.de/mailman/listinfo/ctf https://www.hamburg.ccc.de/mailman/listinfo/ctf]
+
 
 +
* mailman ctf@hamburg.ccc.de [https://www.hamburg.ccc.de/mailman/listinfo/ctf]
  
 
=== IRC ===
 
=== IRC ===
[irc://irc.eu.hackint.org/#ccchh-ctf irc://irc.eu.hackint.org/#ccchh-ctf]
+
 
 +
* [irc://irc.eu.hackint.org/#ccchh-ctf irc://irc.eu.hackint.org/#ccchh-ctf]
  
 
'''Ansprechpartner:'''
 
'''Ansprechpartner:'''
  
 
Einfach im [irc://irc.eu.hackint.org/#ccchh-ctf IRC-Channel] vorbei schauen oder an [[User:Anthraxx|anthraxx]] wenden.
 
Einfach im [irc://irc.eu.hackint.org/#ccchh-ctf IRC-Channel] vorbei schauen oder an [[User:Anthraxx|anthraxx]] wenden.
 +
  
  
Line 85: Line 104:
 
* offline Jeopardy CTF's (rotierende Themen)
 
* offline Jeopardy CTF's (rotierende Themen)
 
* Teamwork trainieren
 
* Teamwork trainieren
 +
  
 
=== 0x01: Team finding ===
 
=== 0x01: Team finding ===
 
* aktive und interessierte Teilnehmer finden
 
* aktive und interessierte Teilnehmer finden
 
* alle Kategorien abdecken (jeder Teilnehmer sucht sich min. eine Hauptkategorie)
 
* alle Kategorien abdecken (jeder Teilnehmer sucht sich min. eine Hauptkategorie)
 +
  
 
=== 0x02: Competition ===
 
=== 0x02: Competition ===
Line 94: Line 115:
 
* Aufarbeitung von vergangenen CTF's
 
* Aufarbeitung von vergangenen CTF's
 
* Erfahrung sammeln
 
* Erfahrung sammeln
 +
  
 
=== 0x03: Attack-Defence ===
 
=== 0x03: Attack-Defence ===
 
* Vorbereitung
 
* Vorbereitung
 
* Teilnahme (eventuell Kooperation mit cinsects fuer [http://ictf.cs.ucsb.edu UCSB iCTF])
 
* Teilnahme (eventuell Kooperation mit cinsects fuer [http://ictf.cs.ucsb.edu UCSB iCTF])
 +
 +
  
 
== References ==
 
== References ==
  
https://ctftime.org/
+
* https://ctftime.org/
Alles Rund um CTF-Events, spätere Referenzliste für potentielle CTFs, Ranking
+
 
 +
''Alles Rund um CTF-Events, spätere Referenzliste für potentielle CTFs, Ranking''
 +
 
 +
 
 +
* http://www.wechall.net/
 +
 
 +
''Listet div. Seiten mit vielen verschiedenen jeopardy-style Challenges, bietet Ranking/Scoring''
 +
 
 +
 
 +
* http://overthewire.org/wargames/
 +
 
 +
''mehrere (10+) jeopardy-style Challenges''
 +
 
 +
 
 +
* http://repo.shell-storm.org/CTF/
 +
 
 +
** ''Archiv vergangener online CTFs''
 +
 
 +
 
 +
* http://yurichev.com/RE-book.html
 +
 
 +
''Reverse Engineering for Beginners book''
 +
 
 +
 
 +
* http://smashthestack.org/
 +
 
 +
''Archiv mit einigen Jeopardy-CTFs''
 +
 
 +
 
 +
* http://captf.com/practice-ctf/
  
http://www.wechall.net/
+
''Liste mit vielen practice CTFs''
Listet div. Seiten mit vielen verschiedenen jeopardy-style Challenges, bietet Ranking/Scoring
 
  
http://overthewire.org/wargames/
 
mehrere (10+) jeopardy-style Challenges
 
  
http://repo.shell-storm.org/CTF/
+
* https://github.com/SpiderLabs/CryptOMG/
Archiv vergangener online CTFs
 
  
http://yurichev.com/RE-book.html
+
''Ein Paar crypto challanges''
Reverse Engineering for Beginners book
 
  
http://smashthestack.org/
 
Archiv mit einigen Jeopardy-CTFs
 
  
http://captf.com/practice-ctf/
+
* http://www.crackmes.de/
Liste mit vielen practice CTFs
 
  
https://github.com/SpiderLabs/CryptOMG/
+
''Reverse engineering crackmes''
Ein Paar crypto challanges
 
  
http://www.crackmes.de/
 
  
Reverse engineering crackmes
 
  
 
== TODO ==
 
== TODO ==
* ctf-day fest machen (+ ccchh-calendar) // Mittwoch?
+
=== tasks ===
 
* zugang worker, für test vms + local ctf hosting
 
* zugang worker, für test vms + local ctf hosting
 
* namensfindung (minor, ergibt sich irgendwann [+ logo])
 
* namensfindung (minor, ergibt sich irgendwann [+ logo])
* github account?!
+
* github account/repo?!
  
 
=== subpages ===
 
=== subpages ===

Revision as of 00:09, 3 June 2014

Capture the Flag

Wann? Wo?

Wir treffen uns jede Woche am CTF-Day und je nach Competition und Absprache auf der Mailinglist auserhalb des regulaeren CTF-Day.

CTF-Day

  • /proc/day: Mittwoch
  • /proc/time: 19:00 GMT+1
  • /proc/location: [[Clubräume|z9]


CTF? WTF?

RTFM

https://ctftime.org/ctf-wtf/

Kurzausschnitt

"Capture the Flag (CTF) is a special kind of information security competitions.

There are three common types of CTFs: Jeopardy, Attack-Defence and mixed."

[...]

"CTF games often touch on many other aspects of information security:

cryptography, stego, binary analysis, reverse engeneering, mobile security and others.

Good teams generally have strong skills and experience in all these issues."


Aktivität

Generell

Wir tranieren und spielen gemeinschaftlich als Team CTFs. Dies beinhaltet vorallem in der Anfangsphase primär "offline" Jeopardy CTFs (non-live-competitions) und anschliessend Nacharbeitung von bereits vergangenen Competitions aus CTF-Archiven (siehe References).


Es werden entsprechend regelmässig Vorträge und Vorbereitungen getroffen, um an jeweiligen CTF-Day auf einzelne Sub-Kategorie speziell einzugehen und diese zu thematisieren.

Generell ist es Ziel, dass jede/-r Teilnehmer/-in in jeder Kategorie Grundwissen besitzt: dies wird vorallem fuer die Competitions ein wichtiger Punkt sein!


Was genau?

Wir wollen alle Kategorien aus den klassischen CTFs abdecken, diese beinhalten primär:

  • web / SQLi
  • crypto / stego
  • forensics / netflow
  • binary analysis
  • reverse engineering
  • exploiting / pwn


Der Fokus soll erstmal definitiv auf Jeopardy-style CTFs liegen, attack-defence ist ebenfalls geplant, bedarf allerdings routinierten Umgang im CTF-Umfeld (wird also noch nicht thematisiert).


Wer darf?

Prinzipiell darf jeder, allerdings wird der Fokus sehr stark darauf liegen, als Team gemeinsam voran zu kommen. Dies bedeutet, dass jeder Interessent ein gesundes Mass an Eigeninitiative mitbringen und sich auch außerhalb des CTF-Days mit der Materie auseinandersetzen sollte.


Was muss ich koennen?

Jedem steht es frei seine "Haupt-Kategorie" selbst zu wählen, dies wird später bei den Competitions dazu dienen, fuer jene Kategorie ein Ansprechpartner zu sein (um die CTF-Tasks moeglichst effizient zu schedulen).

Erwartet werden allerdings generelle Linux- und python-Faehigkeiten! Frueher oder spaeter sollte sich auf jedenfall jeder Assembler (x86, x86_64) aneignen. Alle aktiven Mitglieder sollten sich in der Mitglieder-Kategorie-Matrix eintragen um eine einfache Uebersicht zu erhalten.


Competition

Während der gesamten Trainingszeit wird insbesondere auch Fokus darauf gelegt, dass wir ein Team bilden und zusammen arbeiten, um absolut effizient die CTF's bespielen zu koennen. Dazu wird auf kurze oder lange Sicht jeder seine "Hauptkategorie" finden um sich darauf zu spezialisieren.


Kommunikation

Während den CTF-Days (und auch auserhalb) dient primär das IRC fuer jegliche Koordination als Kommunikationsmedium. Fuer generellen Austausch, Ankuendigungen etc. sollte jeder Teilnehmer auf der CTF-Mailingliste stehen.

Mailingliste

  • mailman ctf@hamburg.ccc.de [1]

IRC

Ansprechpartner:

Einfach im IRC-Channel vorbei schauen oder an anthraxx wenden.


Future

0x00: Training

  • offline Jeopardy CTF's (rotierende Themen)
  • Teamwork trainieren


0x01: Team finding

  • aktive und interessierte Teilnehmer finden
  • alle Kategorien abdecken (jeder Teilnehmer sucht sich min. eine Hauptkategorie)


0x02: Competition

  • Teilnahme an competitions
  • Aufarbeitung von vergangenen CTF's
  • Erfahrung sammeln


0x03: Attack-Defence

  • Vorbereitung
  • Teilnahme (eventuell Kooperation mit cinsects fuer UCSB iCTF)


References

Alles Rund um CTF-Events, spätere Referenzliste für potentielle CTFs, Ranking


Listet div. Seiten mit vielen verschiedenen jeopardy-style Challenges, bietet Ranking/Scoring


mehrere (10+) jeopardy-style Challenges


    • Archiv vergangener online CTFs


Reverse Engineering for Beginners book


Archiv mit einigen Jeopardy-CTFs


Liste mit vielen practice CTFs


Ein Paar crypto challanges


Reverse engineering crackmes


TODO

tasks

  • zugang worker, für test vms + local ctf hosting
  • namensfindung (minor, ergibt sich irgendwann [+ logo])
  • github account/repo?!

subpages

  • Mitglieder (category-matrix)
  • Tools (references, defaults etc)
  • History (was haben wir wann gemacht? was machen wir? Vortraege etc)