Sicherheitsseminar
Sites
- War Games. Current and past hacking simulators and challanges
- Smashing The Stack For Fun And Profit
- Google Books Penetration Test
Distros / Apps
Ideensammlung
- DNS Rebinding
- SQL Injection
- Punkte des Hacking Studienganges der Uni Darmstadt
Das (un-)endliche Log
1. Sitzung: 18.01.2012 - Alex
Einleitung
- Kennenlernrunde zeigt auf, dass durchaus Bedarf für sowas da ist; nur die wenigsten haben schon eigene Exploits geschrieben.
- Grossmehrheitlich ist theoretische Basis vorhanden
Smashing The Stack For Fun and Profit
URL: http://insecure.org/stf/smashstack.html
- Wir diskutieren den klassischen Artikel von 1994
- Hinweis: Viele Sachen funktionieren nicht mehr, da moderne OS Sicherheitsmechanismen kennnen
Stack (Overflows)
- Stack ist eine LIFO-Struktur
- Obere Adressen kleiner auf dem Stack
- Machen, dass sich ein Programm “verschluckt”, dann Code ausgeführt wird.
- Bsp. mit function calls, wo die jeweils letzte Rücksprungadresse auf den Stack abgelegt wird
- Zwischen Rücksprungadressen gibts auch einen Frame, wo z. B. lokale Variablen gehalten werden (z. B. einen buffer als array)
- Problem: Wenn der buffer überläuft, kann die Rücksprungadresse verändert werden
- Sinnvolle Darstellung auf WP: http://en.wikipedia.org/wiki/Stack_buffer_overflow#Exploiting_stack_buffer_overflows
- Lösungen gegen Überschreibung der Rücksprungadresse
- Mit Hardware-Unterstützung (NX bit) Teile im Stack markieren, die nie ausführbaren Code enthalten dürfen
- Mehr Infos: http://en.wikipedia.org/wiki/NX_bit
- Umschiffen dieser Sicherheitsmassnahme: http://en.wikipedia.org/wiki/Return-to-libc_attack
- http://events.ccc.de/congress/2005/fahrplan/events/802.en.html
- Mit Compiler-Unterstützung
- Den Bereich unmittelbar vor der Rücksprungadresse mit einer (kleinen) Zahl versehen
- Zur Laufzeit kann dann überprüft werden, ob diese Zahl noch immer da steht, bevor es zum Überschreiben der Rücksprungadresse kommt.
- Nachteil: Laufzeit–
- Mit Hardware-Unterstützung (NX bit) Teile im Stack markieren, die nie ausführbaren Code enthalten dürfen
Andere Overflowarten
- Integer overflows
- Heap overflows
- Format string attacks
- http://en.wikipedia.org/wiki/Uncontrolled_format_string
- Interessantes Video zu Format String Attacks: http://www.youtube.com/watch?v=DvtBCSYwTiA
2. Sitzung: 15.02.2012 - Peponi
Hands On - Bufferoverflow - von der Theorie kurz in die Praxis
1.) hab ein kleinen C Code geschrieben mit dem ein Buffer erstellt wird
der eine Shellcode beinhaltet um eine Rootshell auszuführen
2.) das selbe on the fly im Perl Einzeiler
http://disk.jabbim.cz/peponi@jabber.ccc.de/shellcode.tar.gz
3. Sitzung: 21.03.2012 - Peponi & Leviathan
Hands On - Shellcode bauen - Peponi
- ich werde erklären wie der Shellcode arbeitet den wir in der 2. Sitzung benutzt haben
- danach werden wir einen simplen Shellcode von Hand bauen
http://disk.jabbim.cz/peponi@jabber.ccc.de/shellcode.tar.gz
Workshop Rootkit - Leviathan
- Aufräumen von Shellcode-Spuren mittels Rootkits
- Verschleiern von Backdoors (vom Kernel aus)
4. Sitzung: 18.04.2012 - @all
bitte jeder der teil nehmen möchte sich die Distro http://www.backtrack-linux.org/downloads/ mal anschauen
und 2 Tools heraussuchen und verstehen lernen
um im Seminar erklären zu können wies funzt und was es macht
5. Sitzung: 16.05.2012 - Peponi
Hands On - Formatstring Attacken
Beginn: Ausnahmsweise um 20 Uhr statt 19 Uhr
Peponi: nix ausnahmsweise, ich muss arbeiten man
http://disk.jabbim.cz/peponi@jabber.ccc.de/testing.c
6. Sitzung: 13. Juni - Leviathan
NMap
The port scanner If you don’t know it yet, absolutely a MUST-HAVE And in case you find a webservice doing http(s) or so…
Nikto
The web server security scanner: http://cirt.net/nikto2
You need
The toolz
- NMap -> Ask
apt-get
… - Nikto (bz2 image is on the linked page)
- NMap -> Ask
A web site you hate ;-)
Beginn: 20 Uhr
7. Sitzung: 22. August - sh0ka
So, nachdem ich den Vortrag bereits einmal verschieben musste, habe ich nun einen Termin gefunden, an dem ich den Vortrag halten kann. Ich werde anfangs einige IPv6-Grundlagen vermitteln, sofern das von Interesse ist. Danach werde ich einige Dinge über die Sicherheit von IPv6 erzählen.
Beginn: 20 Uhr