web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server,...

48
Mark Hloch 11/12.05.2012 web(in)securities CISCO Academy Day Montag, 14. Mai 12

Transcript of web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server,...

Page 1: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Mark Hloch

11/12.05.2012

web(in)securitiesCISCO Academy Day

!"#$%&'%#()*+$,*-./*0'&12%+$32(,"%4.'0.!"#(%&+(2".!*5+*##&+*52*-.6'17,%#&.8(+#*(#

9'():(),"#.;+#-#&&)#+*<*+=#&:+%4.'0.>77"+#-.8(+#*(#:

Montag, 14. Mai 12

Page 2: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Inhalt‣ Motivation für IT-Security

‣ Grundlagen• Client, Web-Server, Datenbank-Server• Datenübertragung Client-Server• Demo

‣ Angriffe• Cross Site Scripting & Demo• SQL Injection & Demo

‣ Fazit‣ Fragen

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 3: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Motivation für IT-Sicherheit

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 4: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Motivation für IT-Sicherheit• Computer-Besitzer sind für Vorfälle,

die vom eigenen Rechner ausgehen, haftbar.

• Informationen werden für Betrügereien genutzt (z.B. Online- Banking, Ebay, Amazon,...).

• Falsche Identitäten führen sogar zur (körperlichen) Bedrohung (facebook,studiVZ, schülerVZ,....).

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 5: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Motivation für IT-Sicherheit• Computer-Besitzer sind für Vorfälle,

die vom eigenen Rechner ausgehen, haftbar.

• Informationen werden für Betrügereien genutzt (z.B. Online- Banking, Ebay, Amazon,...).

• Falsche Identitäten führen sogar zur (körperlichen) Bedrohung (facebook,studiVZ, schülerVZ,....).

• Ablage von kinderpornografischem Material auf dem „übernommenen“ Rechner.

• Ablage von illegalen Musikdateien.

• Verwendung des Rechners für einen „Denial of Service“- Angriff.

• (Ungewollter) Spam-Versender.

• Spionage

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 6: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Folgen von Angriffen

‣ Gefährdung durch Spionage, Sabotage, Missbrauch

• Materielle Verluste

• Imageverlust

• Polizeiliche Ermittlungen

• Rechtliche Probleme durch Verstöße gegen das Datenschutzgesetz

Montag, 14. Mai 12

Page 7: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Ziele der Angreifer‣ Früher:

• Anerkennung, Langeweile, Spass, Interesse

‣ Heute:

• Geld mit Daten verdienen

• Kreditkartendaten (Kreditkarten-Betrug)

• Kundendaten (Logins, Kontodaten)

• Marketingrelevante Informationen (Allg. Daten,Surf-/Kaufgewohnheiten)

• Spam-Versand/Werbung

Montag, 14. Mai 12

Page 8: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Mark Hloch, B.Sc.

Neulich im Internet...

Montag, 14. Mai 12

Page 9: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Defacement

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 10: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Phishing

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 11: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Gängige Attacken aus dem Netz

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 12: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Gängige Attacken aus dem Netz

‣ Code Injection

‣ Cross Site Scripting (XSS)

‣ Cross Site Request Forgery (CSRF)

‣ Clickjacking

‣ Falsche Konfiguration/Rechte-Einschränkung

‣ Fehlerhafte Authentifizierung

‣ Session Management

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 13: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Grundlagen

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 14: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Web-Server

Mark Hloch, B.Sc.

‣ Stellt Inhalte in Form von HTML bereit

‣ Seitenerzeugung kann dabei statisch oder dynamisch geschehen

‣ Dynamisch auf Server-Seite

• PHP, ASP, Perl usw.

• Datenquelle ist oftmals ein Datenbank-Server

• Ergebnis ist aber immer eine HTML-Seite

Montag, 14. Mai 12

Page 15: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Client

Mark Hloch, B.Sc.

‣ Web-Browser stellt Inhalte dar.

‣ Versteht verschiedene Sprachen:

• HTML - Beschreibung der Seiten(inhalte)

• CSS (Cascading Style Sheets)

• JavaScript: Erweiterungen, Dynamik

‣ HTML, JavaScript, CSS werden beim Anwender „ausgeführt“!

Montag, 14. Mai 12

Page 16: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Client-Server-Datenbank

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 17: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Get und Post

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 18: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Get und Post

Mark Hloch, B.Sc.

http://www-dnm.kr.hsnr.de/ee.php?action=news

Identifier (Variable) Wert

GET

Montag, 14. Mai 12

Page 19: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Get und Post

Mark Hloch, B.Sc.

http://www-dnm.kr.hsnr.de/ee.php?action=news

Identifier (Variable) Wert

GET

POST <form name=login method=post><input name=nachname value=‘klaus‘>Name: </input>

</form>

Identifier (Variable) (Initialer) Wert

Montag, 14. Mai 12

Page 20: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Get und Post (Server)

‣ $daten = $_GET[,action‘];

‣ $daten = $_POST[,name‘];

‣ Auswerten der Eingabe und Anzeige der entsprechenden Inhalte

⇒ „Wenn „action = news“, dann zeige die aktuellen Nachrichten

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 21: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Hacking

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 22: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Disclaimer

Bereits der Versuch

in Rechner- oder Netzkomponenten einzudringen

ist strafbar

und

wird strafrechtlich verfolgt.

(Hacker-Paragraph §202, §149)

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 23: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

XSS - Cross Site Scripting

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 24: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

XSS - Cross Site Scripting

‣ Ziele: Daten-/Identitätsdiebstahl

‣ Bekannt seit mindestens Ende der 90er

‣ Liefert den Einstieg zu

• Click-Jacking• Cookie-Theft/Session Hijacking• Trojaner• Zugriff auf Client-Rechner• Manipulation des Browsers (!)

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 25: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

XSS - Cross Site Scripting

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 26: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

XSS - Cross Site Scripting

‣ Angriffsvektor

• Schwache Eingabeprüfung ausnutzen

• I.d.R. über die Verwendung von JavaScript

‣ Gefahren für den Anwender

• Darstellung derWebseite lässt sich manipulieren

• JavaScript wird auf Client-Seite ausgeführt!

• Extrem einfach für den Angreifer zu finden!

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 27: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Angriff auf „GET“

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 28: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Angriff auf „GET“

‣ Trivial! Einfach den Schadcode an die URL anhängen!

‣ HTML

<h1>Das ist HTML-Code</h1>

‣ JavaScript:

<script> //schadcode</script>

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 29: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Demo

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 30: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Persistenter Angriff

Angreifer:

„Es wäre schön, wenn mein Schadcode gespeichert würde...“

Wie??

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 31: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Persistenter Angriff

Angreifer:

„Es wäre schön, wenn mein Schadcode gespeichert würde...“

Wie??

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 32: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Persistenter Angriff

Angreifer:

„Es wäre schön, wenn mein Schadcode gespeichert würde...“

Wie??

XSS-Angriff auf Formulare, Gästebücher oder Ähnliches!!! ↪ speichern in Datenbank oder Dateien

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 33: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Demo

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 34: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Schutz - Anwender

‣ Programmierer: Alle übergebenen Daten filtern!

‣ Update des Betriebssystems, Software insbesondere Browser

‣ Firefox-Security-Erweiterungen

• NoScript

‣ Änderungen der Seite beobachten :-/

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 35: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

SQL InjectionZugriff auf geschützte Bereiche

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 36: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

SQL Injection

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 37: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

SQL Injection

Mark Hloch, B.Sc.

‣ Ziel:

Datendiebstahl, Identitätsdiebstahl, Manipulation auf Server-Seite

‣ Angriffsvektor

Fehlende/Schlechte Filterung von Benutzerdaten

‣ Gefahren für den Anwender/Betreiber:

• Zugangsbeschränkungen können umgangen werden

• System beschädigen

Montag, 14. Mai 12

Page 38: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

SQL Injection

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 39: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

SQL Injection

Mark Hloch, B.Sc.

‣ SQL-Abfragen durch gezielte Falscheingaben manipulieren

↪ Missbraucht Formulare um Code zu „injecten“

Montag, 14. Mai 12

Page 40: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

SQL Injection

Mark Hloch, B.Sc.

‣ SQL-Abfragen durch gezielte Falscheingaben manipulieren

↪ Missbraucht Formulare um Code zu „injecten“

‣ Beispiel:

Ursprüngliche Datenbankanfrage:

SELECT * FROM users WHERE USER=“cisco“ AND PASSWORD=“class“;

Montag, 14. Mai 12

Page 41: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

SQL Injection

Mark Hloch, B.Sc.

‣ SQL-Abfragen durch gezielte Falscheingaben manipulieren

↪ Missbraucht Formulare um Code zu „injecten“

‣ Beispiel:

Ursprüngliche Datenbankanfrage:

SELECT * FROM users WHERE USER=“cisco“ AND PASSWORD=“class“;

Manipulierte Datenbankanfrage:

SELECT * FROM tabelle WHERE USER=“cisco“ AND PASSWORD=“class“ OR 1=1;

Montag, 14. Mai 12

Page 42: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Demo

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 43: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Schutz

‣ Programmierer:

• Alle übergebenen Daten filtern...

• Passwörter verschlüsseln (!!!)

‣ Anwender:

• :-(

• Verschiedene Passwörter benutzen

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 44: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Fazit

Sicherheit hat nichts mit Vertrauen,

sondern mit Misstrauen zu tun!

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 45: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Quellenhinweise• http://www.heise.de/security

• http://www.securityfocus.com

• http://www.dshield.org

• http://shmoo.com

• http://www.insecure.com

• http://www.cert.org

• http://www.microsoft.com/

• http://www.heise.de/newsticker

• http://www.zone-h.org

• http://fefe.de

• http://mozilla.org

• https://ezs.kr.hsnr.de/its

• https://www.ccc.de

• https://www.owasp.org

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 46: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Fragen?

Mark Hloch, B.Sc.

Montag, 14. Mai 12

Page 47: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Kontakt?

[email protected]

https://www-dnm.kr.hsnr.de (Personen -> Mitarbeiter)

Tel. 02151-822 4758

Montag, 14. Mai 12

Page 48: web(in)securitiesInhalt ‣ Motivation für IT-Security ‣ Grundlagen • Client, Web-Server, Datenbank-Server • Datenübertragung Client-Server • Demo ‣ Angriffe • Cross

Vielen Dank!

Montag, 14. Mai 12