PenTest-Zusammenfassung

Größe: px
Ab Seite anzeigen:

Download "PenTest-Zusammenfassung"

Transkript

1 PenTest-Zusammenfassung Clemens Lang 20. Februar 2013 Zusammenfassung der Vorlesung Angewandte Softwaresicherheit und Penetrationstest des LS1 im WS 2012/13. As-is in der Hoffnung, dass es hilfreich ist, aber ohne Garantie auf Korrektheit, Vollständigkeit und Nützlichkeit. Korrekturen bitte als Patch an 20. Februar

2 Inhaltsverzeichnis 1 Introduction 4 2 Häufige Schwachstellen Memory Corruption SQL Injection Directory Traversal Cross Site Scripting Cross Site Request Forgery Sicherheitsanforderungen Anforderungen Probleme bei der Sammlung von Sicherheitsanforderungen Angriffsfläche, Bedrohungs- & Risikoanalysen Datenflussbasierte Bedrohungsmodellierung Angriffsbäume Angriffsfläche Konzepte sichererer Softwareentwicklung Validierung von Eingaben und Codierung von Ausgaben Privilege Separation Bugs, Code und vertrauenswürdiger Code Statische Codeanalyse 15 7 Strings in C 16 8 Sichere Softwareentwicklung im Web Vertrauen im Web Arten von Cross Site Scripting Februar

3 8.3 Content Security Policy Alles verbieten, nur eingebettetes CSS erlauben Eine etwas lockerere CSP Confused Deputy Problem Cross Site Request Forgery Clickjacking Seitenkanalangriffe Februar

4 1 Introduction Postel s Prinzip Be conservative in what you send, be liberal in what you accept ist aus Security-Sicht ein Alptraum. Filter-basierte Ansätze zum Schutz von Applikationen sind wegen der vielen verschiedenen Möglichkeiten den gleichen Inhalt zu codieren zum Scheitern verurteilt. Der Ansatz Sicherheit am Ende eines Software-Entwicklungs-Prozesses darufzusetzen wird deswegen nicht funktionieren. Firewalls, Virenscanner, Intrusion Detection Systeme und Penetrationstests können falsche Design-Entscheidungen nicht wett machen. In diesem Kurs geht es also darum, von Grund auf bei der Entwicklung der Software ein vernünftiges Sicherheitslevel zu erreichen. 2 Häufige Schwachstellen Häufige Schwachstellen in bestehender Software sind u.a. Memory Corruption, z.b. durch Buffer- und Integer-Overflows SQL-Injection Directory Traversal Cross Site Scripting Cross Site Request Forgery 2.1 Memory Corruption Durch das String-Handling in C und einige verbreitete schwer sicher zu benutzende Funktionen der Standardbibliothek (z.b. gets(3), strcpy(3), strncpy(3) vs. strlcpy(3)) ist es für einen Angreifer u.u. möglich über den reservierten 20. Februar

5 Speicherbereich herauszuschreiben und andere Daten zu manipulieren. Diese anderen Daten können dabei sicherheitsrelevant sein, oder den Kontrollfluss der Anwendung modifzieren (bestes Beispiel: RIP). Werden die Grenzen der Wertebereiche von Integer-Variablen nicht beachtet können Allokationen und darauffolgende Schreibzugriffe durch geschickte Manipulation von Eingabegrößen zu Buffer Overflows werden. 2.2 SQL Injection SQL Injections entstehen durch unzureichende Codierung von Eingabedaten bei der Verwendung in SQL-Queries. Ein Angreifer versucht dabei SQL-Steuerzeichen einzuschleusen und so den Sinn des SQL-Statements abzuändern (bis hin zur Ausführung von beliebigem SQL). 2.3 Directory Traversal Eingabedaten, die in Dateisystem-Pfaden verwendet werden können zu Directory- Traversal-Attacken führen. Dabei benutzen Angreifer den Hardlink.. in jedem Verzeichnis, um aus dem Verzeichnis, in dem die Operation eigentlich statt finden soll auszubrechen. 2.4 Cross Site Scripting Ein im Web verbreiteter Angriff der auf unzureichender Codierung von Eingaben bei der Ausgabe in HTML passieren kann ist Cross Site Scripting. Dabei wird ein einem Eingabeparameter HTML-Code eingebettet, der dann uncodiert in der Ergebnis-Seite landet und so diese Seite verändern kann. Häufig wird bei solchen Angriffen JavaScript eingeschleust, um beliebigen JavaScript- Code bei Besuchern auszuführen. 20. Februar

6 2.5 Cross Site Request Forgery HTML schränkt die URLs, von denen aus Formular-Handler erreicht werden können nicht ein. Daraus entstehen sog. Cross-Site-Request-Forgery-Angriffe, wenn ein Angreifer die für eine Drittseite vorhanden Anmeldedaten im Browser eines Opers nutzt, um Formularaufrufe abzusetzen, die für den angegriffenen Server so aussehen, als hätte sie das Opfer durchgeführt. 3 Sicherheitsanforderungen Bei der Entwicklung von Software ist es sinnvoll vor dem Beginn der Entwicklungsphase Anforderungen an die fertige Applikation zu sammeln und zu bewerten. Im Hinblich auf sicherheitsrelevante Anforderungen an Software betrachten wir die Anforderungen als solches, mögliche Probleme bei der Sammlung von Sicherheitsanforderungen und geben einen Überblick über die dazu vorhandene akademische Literatur. 3.1 Anforderungen Anforderungen an Software müssen vollständig und korrekt, ausführbar und nötig, priorisiert und eindeutig und testbar sein. Diese Liste von Kriterien wird in der Literatur auch als SMART bzw. SMART+ bezeichnet: Specific Die Anforderung sollte eindeutig sein. 20. Februar

7 Measurable. Ob ein Produkt eine gestellte Anforderung letzlich erfüllt muss messbar sein. Appropriate Anforderungen sollten daraufhin geprüft werden, ob sie nötig sind, und ob andere Anforderungen nicht besser geeignet wären. Reasonable Der Aufwand für die Anforderungen sollte im Verhätnis zu ihrem Nutzen stehen. D.h. insbesondere, dass die Anforderung überhaupt implementierbar sein muss. Traceable Während des Entwicklungsprozesses sollte nachvollzogen werden können, welche Änderungen auf welcher Anforderung bassieren. 3.2 Probleme bei der Sammlung von Sicherheitsanforderungen Häufig wird Sicherheit im Budget nicht beachtet; der Fokus bei der Entwicklung liegt auf der Funktionalität der Anwendung und auf dem Einhalten von Deadlines, nicht darauf es gleich richtig zu machen. Methoden zur Sammlung von Sicherheitsanforderungen sollten einfach zu verstehen und zu benutzen sein. D.h. auch, dass formale Verifikationsmethoden nur in Randbereichen (wie z.b. der Luftfahrt) sinnvoll sind. Akademische Literatur, z.b. von Donald Firesmith, stellt fest, dass ein Großteil des Personals, das Anforderungen sammelt für Sicherheitsanforderungen schlecht ausgebildet ist. Oft werden konkrete Sicherheitsmechanismen ( Verschlüsselung von Kreditkartendaten ) mit den eigentlichen Sicherheitsanforderungen ( Kreditkartendaten dürfen nicht in die Hände von Dritten fallen) verwechselt. Obwohl es Standards zu Sicherheitsanforderungen in Softwareanwendungen gibt 1 werden auch dort häufig Sicherheitsmechanismen mit den -anforderungen 1 z.b. Common Criteria, 20. Februar

8 verwechselt oder gleichgesetzt. Die Implementierung solcher Standards führt außerdem nicht automatisch zu Sicherer Software (z.b. ist Windows 2000 CC EAL4+-zertifiziert, hat(te) aber mehr als 500 bekannte Schwachstellen). Interessant für Sicherheitsanforderungen sind v.a. die häufig vernachlässigten Fragen Welche Objekte müssen geschützt werden? Welcher Schutz ist nötig? Warum ist der Schutz nötig? In akademischer Literatur sind einige Verfahren zur Sammlung von Sicherheitsanforderungen bekannt (z.b. SQUARE, Haley et al., Boström et al., CLASP, Microsoft, Apvrille et al.). Einige häufig benutzten Schritte sind Definition von Zielen Abschätzung der Angriffsfläche Identifizierung von Werten Kategorisierung und Priorisierung Validierung 4 Angriffsfläche, Bedrohungs- & Risikoanalysen Als Hilfestellung zur Identifizierung von potentiellen Schwachpunkten einer Anwendung und zur Einschätzung der für Angreifer interessanten Ziele bietet es sich an ein Modell für die Bedrohung zu finden. Im folgenden sollen also Werte beschützt werden. Mehrere erfüllte Bedingungen können dabei zu einem Angriffspfad, d.h. einer Reihe von Bedingungen, 20. Februar

9 werden, der schließlich eine Bedrohung darstellt. Solche Angriffspfade lassen sich nach DREAD (Schadenspotential, Reproduzierbarkeit, Ausnutzbarkeit, betroffenen Benutzern, Sichtbarkeit) klassifizieren. Die Auswirkungen einer Bedrohung lassen sich in STRIDE (Spoofing, Manipulation/Tampering, Abstreitbarkeit, Dienstblockade, Ausweitung von Privilegien) einteilen. Benutzern (oder potentiellen Angrifern) des Systems sollte zur Analyse ein Vertrauenslevel zugewiesen werden. 4.1 Datenflussbasierte Bedrohungsmodellierung Aus der Sicht des Angrifers sind Einstiegsstellen, Werte und Vertrauensstufen relevant. Aus dieser Idee heraus ensteht ein Datenfluss-basierter Ansatz der Bedrohungsmodellierung: 1. Enstiegspunkte bestimmen 2. Werte identifizieren 3. Vertrauensstufen bestimmen 4. Datenfluss-Diagramm erstellen Abbildungen 1 und 2 zeigen beispielhaft, wie ein solches Datenflussdiagramm für die Website einer fiktiven College-Bibliothek aussehen kann. Rechtecke sind dabei externe Entitäten, Kreise stellen (mehrere) Prozesse dar, Datenspeicher sind mit zwei Linien oben und unten markiert und rote gestrichelte Linien stellen Grenzen von Privilegienbereichen dar. Datenflüsse sind durch Pfeile visualisiert. Datenflussbasierte Ansätze sind leicht einsetzbar und verständlich, bieten aber eine schlechte Übersicht und keine Priorisierung von Bedrohungen. 20. Februar

10 Abbildung 1: Datenflussdiagramm für eine fiktive Website einer College- Bibliothek 4.2 Angriffsbäume Angriffsbäume sind eine 1999 von Bruce Schneier vorgestellte Modellierungsmethode für gezielte Agriffe. Ausgehend von dem Angriffsziel als Wurzelknoten werden verschiedene denkbare Angriffe im Baum angeordnet. Schätzt man Kosten und Machbarkeit jedes Knotens ergeben sich Abschätzungen für lohnende (und damit wahrscheinliche) Angriffspfade. Angriffsbäume sind detalliert und selbsterklärend, werden allerdings schnell unübersichtlich und sind schwer auszuwerten. Pro potentiellem Angriffziel muss außerdem ein eigener Baum erstellt werden. 20. Februar

11 Abbildung 2: Datenflussdiagramm für die Login-Funktion einer fiktiven Website einer College-Bibliothek 4.3 Angriffsfläche Um zwischen alternativen verfügbaren Software-Implementierungen des gleichen Protokolls zu wählen können Schätzungen der Angriffsfläche als Entscheidungskriterium hilfreich sein. Diese Methoden beruhen auf der (schwer verifizierbaren) Annahme, dass die Angriffsfläche indirekt proportional zur Sicherheit eines Systems ist. Eine Angriffsflächenschätzung besteht aus einem 3-Tupel M, C, I, wobei M Die Menge der Ein- und Ausstiegspunkte, 20. Februar

12 C Die Menge der Kommunikationskanäle (z.b. Sockets, Pipes) und I Die Menge der nicht-vertrauenswürdigen Daten ist. Dieses Konzept ist zwar intuitiv und teilweise automatiserbar, aber leider schwer validierbar. 5 Konzepte sichererer Softwareentwicklung Bei der Enwicklung von Software steht man immer wieder vor dem grundsätzlichen Problem, dass sowohl Daten als auch Kommandos über die gleichen Eingabekanäle transportiert werden (müssen). Um bei der Verarbeitung dieser Eingaben nicht Daten und Kommandos zu verwechseln (wie z.b. bei SQL- Injection-Angriffen) sind die Validierung der Eingaben und die Codierung der Ausgaben extrem wichtig. 5.1 Validierung von Eingaben und Codierung von Ausgaben Bei der Verarbeitung von Eingaben werden Daten aus der realen Welt in den Kontext der Anwendung übertragen. Dabei sollten die Daten in eine kanonische Darstellung überführt werden und die Eingaben auf ihre Validität überprüft werden. Dazu gehören Prüfungen der Datentypen und ihrer Wertebereiche sowie die Prüfung der Plausabilität der Daten (z.b. sollte eine Bank keine Überweisungen mit negativen Beträgen verarbeiten). Bei der Eingabevalidierung gibt es zwei grundsätzlich verschiedene Ansätze: Filter können auf dem White-List- oder dem Black-List-Ansatz basieren. White Lists minimieren dabei das Risiko etwas zu übersehen und sind für eindeutig definierte Datenformate einfach zu erstellen. Mit der komplexität der Eingabedaten steigt jedoch auch der Aufwand zur Erstellung einer White List und die Wahrscheinlichkeit korrekte Daten fälschlicherweise zu filtern (false positive). Black-List-Filter sind hingegen einfach zu entwerfen, decken jedoch u.u. nicht alle Varianten eines Angriffes ab. Die Gefahr beim Filtern einen Fall 20. Februar

13 zu übersehen und dabei eine sicherheitskritische Lücke zu öffnen ist hingegen deutlich größer als bei White-List-basiertem Filtern. Es gibt verschiedene Ansätze, um auf ungültige Eingabedaten zu reagieren. Der strikteste Ansatz ist dabei die Verhinderung der Weiterverarbeitung der Daten. Auf diese Art und Weise erreicht die ungültige Eingabe niemals die Anwendungslogik, wo sie eventuell Schaden anrichten könnte. Etwas weicher, aber nicht unbedingt immer die sicherste Methode ist das Entfernen oder Ersetzen von ungültigen Teilen in der Eingabe (z.b. str replace(../,, $input) in PHP). Das genannte Beispiel ist jedoch trotz der vermeintlich vorgenommen Filterung der Eingabedaten weiterhin verwundbar. Die beste Methode, um Eingabedaten zu entschärfen ist korrektes Escaping bzw. Encoding, so dass Zeichen mit Sonderbedeutungen (z.b. das Hochkomma in SQL oder < in HTML) ihre Sonderbedeutung im jeweiligen Verwendungskontext genommen wird. Zu beachten ist dabei, dass korrektes Encoding immer vom Kontext der Ausgabe abhängig ist je nachdem, ob ein String z.b. in HTML oder SQL verwendet wird, muss er unterschiedlich codiert werden. 5.2 Privilege Separation Um eventuell vorhandene Sicherheitslücken in einer Software so unkritisch wie möglich zu halten, sollte die Software immer nur mit den Berechtigungen laufen, die sie gerade benötigt. Oftmals brauchen nur Teile einer Software erhöhte Berechtigungen dann bietet es sich an, eine Privilege Separation durchzuführen, d.h. die Software so aufzusplitten, dass nur bestimmte Teile mit höheren Berechtigungen laufen und der Rest der Software mit einem niedrigeren Level von Rechten auskommt. Dieser Ansatz erlaubt es, sich besonders auf den sicherheitskritischen Code zu konzentrieren (z.b. bei Audits) und dort spezielles Augenmerk auf die Validierung von Eingaben zu legen. So können die vorhandenen (und überlicherweise begrenzten) Entwicklungs-Ressourcen ideal genutzt werden. Populäre Beispiele für solche Privilege Separation sind u.a. OpenSSH und 20. Februar

14 Apache (mit und ohne mpm-itk-modul). Auch der Chrome-Browser wurde mit diesem Ansatz im Gedächtnis entwickelt die Erfahrung hat gezeigt, dass ACE-Lücken häufig in den Teilen des Codes auftreten, die mit Eingaben (z.b. in Form von Webseiten, etc.) arbeiten. Als Konsequenz wurde die Rendering Engine, die diese Dinge erledigt in eine weniger privilegierte Sandbox ausgelagert. Der Anspruch dabei war, die Auswirkungen erfolgreicher Angriffe gegen den Renderer nur auf diesen zu beschränken. 5.3 Bugs, Code und vertrauenswürdiger Code Daniel Bernstein postuliert, dass Sicherheitslücken Bugs sind die Menge an Code proportional zur Anzahl an Bugs (und damit auch zur Anzahl an Sicherheitslücken) ist. Er schlägt drei Schritte vor, um bessere Software zu entwickeln: 1. Bugs eliminieren Die Anzahl der Bugs pro Zeile Code zu reduzieren kann ein lohnenswertes Ziel sein und die Anzahl der Sicherheitslücken reduzieren. Dazu bieten sich die Verwendung von gut getesteten Frameworks sowie ausführliches Testen (z.b. durch Peer-Review, Pentests und automatisierte Tools) an. 2. Code eliminieren Die Codemenge zu reduzieren reduziert nach oben postuliertem Zusammenhang auch die Anzahl der Bugs. Deswegen ist es wichtig, gemeinsamen Code in Funktionen auszulagern, Code wiederzuverwenden (z.b. durch Frameworks und Bibliotheken) und bereits vorhandene Funktionalität nicht zu reimplementieren. 3. Vertrauenswürdigen Code eliminieren Code in Sandboxen Einzusperren kann es vereinfachen die Sicherheitsanforderungen von Benutzern zu erfüllen. Dazu sollten die Privilegien des Codes soweit möglich reduziert werden. 20. Februar

15 Bernstein postuliert auch, dass einige rote Heringe bei der Entwicklung von Software gerne verfolgt werden. Dies sind: 1. Verfolgen von Angreifern Auch wenn es verlockend ist bestehende Angriffe durch kleine Änderungen abzuwenden ist es kein sinnvoller Fix wenn man versucht den Angreifern hinterherzukehren wird man auf längere Sicht immer verlieren. 2. Privilegminimierung Selbst das minimale Privilegienset könnte noch genug sein, um die Sicherheitsanforderungen eines Benutzers zu verletzen. Würde der Teil einer Anwendung, der DNS-Auflösung macht kompromittiert und nur dieser Teil wäre manipulierbar ist die Sicherheit des Systems (sofern es denn die Ergebnisse der DNS-Auflösung verwendet) ebenfalls nicht mehr gegeben. 3. Geschwindigkeit Premature optimization is the root of all evil. Donald Knuth Aus Geschwindigkeitsgründen bestimmte Design-Entscheidungen zu treffen (und dabei Sicherheitsanforderungen zu vernachlässigen) ist oft eine schlechte Idee. Programmiersprachen, die langsamer aber nicht anfällig für Buffer Overflows sind zu wählen ist oft besser, als die Software in C zu schreiben und dann schnelle aber anfälle Anwendungen zu erhalten. 6 Statische Codeanalyse Als Hilfestellung bei der Suche nach Sicherheitslücken in vorhandenem Code können statische Analysen benutzt werden. Wichtig ist dabei zu beachten, dass eine statische Analyse niemals vollständig korrekt sein kann die liegt im bekannten Halteproblem begründet. 20. Februar

16 Neben trivialen String-basierten Methoden (grep -R strcpy.) existieren auch Ansätze, die Wissen aus der Compilerentwicklung nutzen. Sie arbeiten auf der Ausgabe von Lexern oder auf dem AST, manchmal auch auf Zwischencode in SSA-Form. Auf solchen Darstellungen kann eine Datenflussanalyse dazu benutzt werden, von Angreifern kontrollierbare Variablen zu identifizieren (sog. Taint Propagation ). Solche Methoden haben die üblichen aus der Compilerentwicklung bekannten Probleme (wie z.b. Aliasing). Außerdem ist eine Analyse des Kontrollflusses interessant, um festzustellen, wo Benutzereingaben den Kontrollfluss (eventuell ungewünscht) verändern können. 7 Strings in C Ausgelassen, wer das nicht kann gehe zurück zu Systemprogrammierung und AppITSec. Er gehe dabei nicht über Los und ziehe keine 2000,- DM ein. 8 Sichere Softwareentwicklung im Web Das Web wird immer mehr zur Angriffsfläche einerseits, weil häufig die gleichen Fehler gemacht werden, andererseits weil die Menge an aus dem Web erreichbarem Code mittlerweile gigantisch ist und jeder Benutzer das Tool (nämlich des Browser) installiert hat, das überlicherweise für einen erfolgreichen Angriff ausreicht. 8.1 Vertrauen im Web Im Web definiert eine sogenannte Origin das Vertrauen, das in ein Dokument gesetzt wird. Ein aufgerufenes HTML-Dokument kann weitere Inhalte mit ihrerer URL nachladen; diese nachgeladenen Inhalte laufen dann mit den gleichen Rechten, wie das Dokument selbst. Ein Dokument gibt also alle seine Privilegien an nachgeladene Ressourcen weiter. Eine Vertrauensentschei- 20. Februar

17 dung basiert also immer darauf, von welchem Ausgangspunkt aus eine Ressource geladen wurde. Eine solche Origin identifiziert sich durch das Tupel (Schema, Host, Port). Objekte innerhalb der gleichen Origin können sich gegenseitig sehen und beeinflussen. Diese sogenannte Same-Origin-Policy beinhaltet einige Ausnahmen, die für den Betrieb des Webs nötig sind: Formulare und Links können mit anderen Origins interagieren (ohne diese Ausnahme würden Links und Formulare an andere Origins nicht funktionieren). Solche Ausnahmen in der Same-Origin-Policy bergen Gefahren: Könnten Formulare nicht mit anderen Origins kommunizieren gäbe es keine Cross-Site-Request-Forgery-Angriffe. 8.2 Arten von Cross Site Scripting Einfügen von Scripten in eine dynamische HTML-Seite Wird JavaScript in eine dynamisch generierte Website eingefügt, so spricht man von Cross Site Scripting. Man unterscheidet reflektiertes (aus URL- und Post-Daten wird der Schadcode eingefügt), persistentem (der Schadcode wird nach dem Einfügen auf dem Server gespeichert, z.b. in einem Gästebuch o.ä.) Einfügen von Scripten in ein dynamisch generiertes JavaScript Werden JavaScript-Dateien dynamisch vom Server aus Eingabedaten generiert können auch diese Anfällig für XSS sein. Laden eines Script von einer nicht vertrauenswürden Quelle Wird in eine dynamisch generierte HTML-Seite HTML eingefügt, dass eine neue JavaScript- Datei von einer nicht vertrauenswürdigen Quelle nachlädt, spricht man von dieser Art von XSS. 20. Februar

18 8.3 Content Security Policy Als Gegenmaßnahme für die sich häufenden XSS-Lücken wurde 2009 die Content Security Policy vorgeschlagen. Das Konzept ist bis dato nur in einigen Browsern testweise implementiert. CSP funktioniert, indem der Server einen HTTP-Header Content-Security-Policy an den Browser schickt, der das Nachladen von Inhalten je nach Typ auf bestimmte Origins beschränkt. Mit einer einfachen CSP können so die Typen 1 und 3 von XSS-Angriffen effektiv verhindert werden. Einige Beispiele für CSPs folgen: Alles verbieten, nur eingebettetes CSS erlauben Content-Security-Policy: default-src none ; style-src self ; Eine etwas lockerere CSP Scripte von https://trusted.example.de und https://googleapi.com. Bilder dürfen nur von https://pictures.example.de geladen werden, Stylesheets von Content-Security-Policy: default-src: none ; script-src https://trusted.example.de https://googleapi.com/; img-src https://pictures.example.de/; style-src 8.4 Confused Deputy Problem Browser agieren gegenüber Servern als Stellvertreter für den Benutzer. Das führt dazu, dass Server bei vom gleichen Browser stammenden Anfragen nicht 20. Februar

19 unterscheiden können, ob die Anfrage vom Benutzer selbst, einer anderen Seite im Browser des Nutzers oder einer infizierten Seite gestellt wurde. Dieses Problem führt zu Cross-Site-Request-Forgery-Angriffen. 8.5 Cross Site Request Forgery Bei CSRF-Angriffen benutzt ein Angreifer den Browser eines Opfers (und eine darin bestehende Session für eine Ziel-Website) dazu, anstelle des Opfers Formulare auf der Ziel-Website abzusenden. Wir erinnern uns, dass die Same- Origin-Policy das Absenden von Formularen an dritte Websites erlaubt. Hier sehen wir auch, dass der Entwurf der Content Security Policies CSRF-Angriffe nicht verhindern kann (denn die Angreifende HTML-Seite unterliegt nicht notwendigerweise einer CSP). Eine wirksame Gegenmaßnahme für CSRF wäre also nur, wenn der Browser vor dem Absenden eines Formulars an eine Website eine vom Formularbetreiber bereitgestellte Liste von Origins kontrolliert, die an dieses Formular senden dürfen. Da das nicht der Fall ist, behilft man sich mit sogenannten CSRF-Token, die spezifisch für den Benutzer sein müssen und durch einen Angreifer nicht vorhergesagt werden sollen können. Es ist dabei kein Sicherheitsproblem, wenn eine Seite in einer anderen Origin dieses CSRF-Token im HTML-Quelltext verfügbar hat den die Same Origin Policy verhindert das Auslesen dieses Tokens von einer infizierten Drittseite. 8.6 Clickjacking Anti-CSRF-Tokens beheben nicht alle Arten von Confused Deputy Problemen. Clickjacking, d.h. das geschickte platzieren von (durchsichtigen) Layern und Links, die ein Opfer wahrscheinlich klicken wird können benutzt werden, um den Benutzer zum Klick auf Links bzw. Buttons zu bewegen, die er sonst nicht klicken würde. Gegenmaßnahmen gegen Clickjacking bestehen darin zu verhindern, dass die Zielseite des Angriffs in einem Frame geladen werden kann, 20. Februar

20 z.b. durch JavaScript-Code oder HTTP-Header (X-Frame-Options). Zur gleichen Klasse von Angriffen gehört auch das Cursorjacking, bei dem bekannte UI-Elemente durch gefälschte Varianten ersetzt werden, die den Benutzer dann dazu bringen, an falsche Stellen zu klicken (z.b. sehr breiten Mauszeiger-Bild, das größtenteils transparent ist). 9 Seitenkanalangriffe Wenn schützenswerte Information mit dem öffentlichen beobachtbaren Verhalten eines Prozesses ungeplant korreliert spricht man von Seitenkanälen. Bekanntes Beispiel dafür ist die Pizza-Bestellrate des Pentagons vor größeren Militäreinsätzen. Der wohl am häufigsten genutzte Seitenkanal im Kontext von Softwaresicherheit sind Timing-Angriffe. Versucht man zeitsensitive Angriffe über das Netzwerk zu fahren muss man beachten, dass das Transportmedium selbst ein gewisses Rauschen erzeugt. Um trotz des Rauschens nützliche Ergebnisse zu erhalten muss man statistische Methoden anwenden oder adaptive Angriffe benutzen. Um solche Sidechannel-Angriffe Wirkungsvoll zu verhindern sollte die Ausführungszeit nicht von geheimen Informationen abhängen. Führt man also aufwändige Berechnungen nach Verzweigungen, die von gemeimen Variablen abhängen durch, kann es sinnvoll sein, die Berechnungen stattdessen immer auszuführen und abhängig von der schützenswerten Information nur das entsprechende Ergebnis zu benutzen. Alternativ bietet sich an in jedem Fall bis zu einer fixen Deadline (idealerweise der Worst-Case Execution Time) zu warten. Zufällig verteiltes Warten funktioniert insbesondere nicht, wenn der Zufall gleichverteilt ist mittels statistischer Analyse kann der Sidechannel trotzdem entdeckt und genutzt werden. 20. Februar

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

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 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

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

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

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

web(in)securities CISCO Academy Day 11/12.05.2012 Mark Hloch Montag, 14. Mai 12 Hochschule Niederrhein University of Applied Sciences Elektrotechnik und Informatik Faculty of Electrical Engineering and Computer Science web(in)securities CISCO Academy Day 11/12.05.2012 Mark Hloch Inhalt

Mehr

IT-Sicherheit Angriffsziele und -methoden Teil 2

IT-Sicherheit Angriffsziele und -methoden Teil 2 Karl Martin Kern IT-Sicherheit Angriffsziele und -methoden Teil 2 http://www.xkcd.com/424/ Buffer Overflows 2 Buffer Overflows Ausnutzen unzureichender Eingabevalidierung Begrenzter Speicherbereich wird

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

Datensicherheit. Vorlesung 7: 29.5.2015. Sommersemester 2015 h_da. Heiko Weber, Lehrbeauftragter

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

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

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

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

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

HÄRTUNG VON WEB-APPLIKATIONEN MIT OPEN-SOURCE-SOFTWARE. Münchener Open-Source-Treffen, Florian Maier, 23.05.2014

HÄRTUNG VON WEB-APPLIKATIONEN MIT OPEN-SOURCE-SOFTWARE. Münchener Open-Source-Treffen, Florian Maier, 23.05.2014 HÄRTUNG VON WEB-APPLIKATIONEN MIT OPEN-SOURCE-SOFTWARE Münchener Open-Source-Treffen, Florian Maier, 23.05.2014 ÜBER MICH 34 Jahre, verheiratet Open Source Enthusiast seit 1997 Beruflich seit 2001 Sicherheit,

Mehr

IT-Sicherheit auf dem Prüfstand Penetrationstest

IT-Sicherheit auf dem Prüfstand Penetrationstest IT-Sicherheit auf dem Prüfstand Penetrationstest Risiken erkennen und Sicherheitslücken schließen Zunehmende Angriffe aus dem Internet haben in den letzten Jahren das Thema IT-Sicherheit für Unternehmen

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

Schwachstellenanalyse 2013

Schwachstellenanalyse 2013 Schwachstellenanalyse 2013 Sicherheitslücken und Schwachstellen in Onlineshops Andre C. Faßbender Schwachstellenforschung Faßbender 09.01.2014 Inhaltsverzeichnis 1. Abstract... 3 2. Konfiguration der getesteten

Mehr

Measuring the Security of Web Applications. OWASP Frankfurt, 25.11.08. The OWASP Foundation http://www.owasp.org

Measuring the Security of Web Applications. OWASP Frankfurt, 25.11.08. The OWASP Foundation http://www.owasp.org Germany 2008 Conference http://www.owasp.org/index.php/germany Measuring the Security of Web Applications Sebastian Schinzel Virtual Forge GmbH Frankfurt, 25.11.08 +49 622 1 868 900 Copyright The Foundation

Mehr

When your browser turns against you Stealing local files

When your browser turns against you Stealing local files Information Security When your browser turns against you Stealing local files Eine Präsentation von Alexander Inführ whoami Alexander Inführ Information Security FH. St Pölten Internet Explorer Tester

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

SZENARIO. ausgeführt Command Injection: Einschleusen (Injizieren) bösartiger Befehle zur Kompromittierung der Funktionsschicht

SZENARIO. ausgeführt Command Injection: Einschleusen (Injizieren) bösartiger Befehle zur Kompromittierung der Funktionsschicht SZENARIO Folgenden grundlegende Gefahren ist ein Webauftritt ständig ausgesetzt: SQL Injection: fremde SQL Statements werden in die Opferapplikation eingeschleust und von dieser ausgeführt Command Injection:

Mehr

Sicherheit in Rich Internet Applications

Sicherheit in Rich Internet Applications Sicherheit in Rich Internet Applications Florian Kelbert 14.02.2008 Seite 2 Sicherheit in Rich Internet Applications Florian Kelbert 14.02.2008 Inhaltsverzeichnis Grundlagen Ajax und Mashups Adobe Flash-Player

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

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

Abbildung der Gefährdungen der WASC und OWASP auf die Gefährdungen und Maßnahmenempfehlungen des IT-Grundschutz-Bausteins B 5.

Abbildung der Gefährdungen der WASC und OWASP auf die Gefährdungen und Maßnahmenempfehlungen des IT-Grundschutz-Bausteins B 5. Abbildung der Gefährdungen der WASC und OWASP auf die Gefährdungen und Maßnahmenempfehlungen des IT-Grundschutz-Bausteins B 5.21 Die Zusammenstellung der Gefährdungen für den Baustein 5.21 bediente sich

Mehr

Überprüfung der Wirksamkeit der BSI-Konfigurationsempfehlungen für Windows 7

Überprüfung der Wirksamkeit der BSI-Konfigurationsempfehlungen für Windows 7 BSI-Veröffentlichungen zur Cyber-Sicherheit ANALYSEN Überprüfung der Wirksamkeit der BSI-Konfigurationsempfehlungen Auswirkungen der Konfiguration auf den Schutz gegen aktuelle Drive-by-Angriffe Zusammenfassung

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

Carsten Eilers / www.ceilers-it.de. Client Security im Web 2.0 und mit HTML5

Carsten Eilers / www.ceilers-it.de. Client Security im Web 2.0 und mit HTML5 Carsten Eilers / www.ceilers-it.de Client Security im Web 2.0 und mit HTML5 Vorstellung Berater für IT-Sicherheit Web Security (Pentests, Beratung,...)... Autor PHP Magazin, Entwickler Magazin Blog: www.ceilers-news.de...

Mehr

Web Application Security Testing

Web Application Security Testing Lehrstuhl für Rechnernetze und Internet Wilhelm-Schickard-Institut für Informatik Universität Tübingen Web Application Security Testing Carl-Daniel Hailfinger Betreuer: Pavel Laskov Ziele des Vortrags

Mehr

Ajax, aber sicher! Carsten Eilers

Ajax, aber sicher! Carsten Eilers Ajax, aber sicher! Carsten Eilers Berater für IT-Sicherheit Autor About Security Standpunkt Sicherheit Schwachstellen-Datenbank Security Aktuell auf entwickler.de Vorstellung Carsten Eilers, www.ceilers-it.de

Mehr

Lebenszyklus einer Schwachstelle

Lebenszyklus einer Schwachstelle GRUNDLAGEN STATISTIKEN BERICHTE Lebenszyklus einer Schwachstelle Nach Bekanntwerden einer neuen Zero-Day-Schwachstelle hat der Hersteller ein Advisory veröffentlicht, in dem bis zur Fertigstellung eines

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 Einsteiger Tutorial Kapitel 4: Ein Email Kontaktformular in PHP Version 1.0 letzte Änderung: 2005-02-03

PHP Einsteiger Tutorial Kapitel 4: Ein Email Kontaktformular in PHP Version 1.0 letzte Änderung: 2005-02-03 PHP Einsteiger Tutorial Kapitel 4: Ein Email Kontaktformular in PHP Version 1.0 letzte Änderung: 2005-02-03 Bei dem vierten Teil geht es um etwas praktisches: ein Emailformular, dass man auf der eigenen

Mehr

Live Hacking auf eine Citrix Umgebung

Live Hacking auf eine Citrix Umgebung Live Hacking auf eine Citrix Umgebung Ron Ott + Andreas Wisler Security-Consultants GO OUT Production GmbH www.gosecurity.ch GO OUT Production GmbH Gegründet 1999 9 Mitarbeiter Dienstleistungen: 1 Einleitung

Mehr

Typo3 - Schutz und Sicherheit - 07.11.07

Typo3 - Schutz und Sicherheit - 07.11.07 Typo3 - Schutz und Sicherheit - 07.11.07 1 Angriffe auf Web-Anwendungen wie CMS oder Shop- Systeme durch zum Beispiel SQL Injection haben sich in den letzten Monaten zu einem Kernthema im Bereich IT- Sicherheit

Mehr

eytron VMS Webanwendung Fehlersuche und -Behebung

eytron VMS Webanwendung Fehlersuche und -Behebung eytron VMS Webanwendung Fehlersuche und -Behebung 2009 ABUS Security-Center GmbH & Co. KG, Alle Rechte vorbehalten Diese Anleitung soll Ihnen Unterstützung für den Fall geben, dass die Webanwendung nach

Mehr

Designprinzipien sicherer Systeme

Designprinzipien sicherer Systeme Designprinzipien sicherer Systeme Defense in Depth, Least Privilege, Design for Evil, Attack Surface Reduction, Security through Diversity, Dr. Peer Wichmann IT-Sicherheitsbeauftragter WIBU-SYSTEMS AG

Mehr

V10 I, Teil 2: Web Application Security

V10 I, Teil 2: Web Application Security IT-Risk-Management V10 I, Teil : Web Application Security Tim Wambach, Universität Koblenz-Landau Koblenz, 9.7.015 Agenda Einleitung HTTP OWASP Security Testing Beispiele für WebApp-Verwundbarkeiten Command

Mehr

Security-Webinar. Februar 2015. Dr. Christopher Kunz, filoo GmbH

Security-Webinar. Februar 2015. Dr. Christopher Kunz, filoo GmbH Security-Webinar Februar 2015 Dr. Christopher Kunz, filoo GmbH Ihr Referent _ Dr. Christopher Kunz _ CEO Hos4ng filoo GmbH / TK AG _ Promo4on IT Security _ X.509 / SSL _ Vorträge auf Konferenzen _ OSDC

Mehr

ESA SECURITY MANAGER. Whitepaper zur Dokumentation der Funktionsweise

ESA SECURITY MANAGER. Whitepaper zur Dokumentation der Funktionsweise ESA SECURITY MANAGER Whitepaper zur Dokumentation der Funktionsweise INHALTSVERZEICHNIS 1 Einführung... 3 1.1 Motivation für den ESA Security Manager... 3 1.2 Voraussetzungen... 3 1.3 Zielgruppe... 3 2

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

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

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

Hausarbeit. Thema: Computersicherheit. Friedrich-Schiller-Universität Jena Informatik B.Sc. Wintersemester 2009 / 2010

Hausarbeit. Thema: Computersicherheit. Friedrich-Schiller-Universität Jena Informatik B.Sc. Wintersemester 2009 / 2010 1 Friedrich-Schiller-Universität Jena Informatik B.Sc. Wintersemester 2009 / 2010 Hausarbeit Thema: Computersicherheit Seminar: Datenschutz und Datenpannen Verfasser: Dmitrij Miller Abgabetermin: 5.3.2010

Mehr

8 Cross-Site Request Forgery (CSRF)

8 Cross-Site Request Forgery (CSRF) 175 8 Cross-Site Request Forgery (CSRF) Cross-Site Request Forgery (CSRF) schafft durch seinen ersten Namensbestandteil»Cross-Site«häufig eine unmittelbare Verbindung mit Cross-Site Scripting (XSS; Kapitel

Mehr

Exploits Wie kann das sein?

Exploits Wie kann das sein? Exploits Durch eine Schwachstelle im Programm xyz kann ein Angreifer Schadcode einschleusen. Manchmal reicht es schon irgendwo im Internet auf ein präpariertes Jpg-Bildchen zu klicken und schon holt man

Mehr

Open for Business - Open to Attack? Walter Lender, Geschäftsführer, Visonys IT-Security Software GesmbH

Open for Business - Open to Attack? Walter Lender, Geschäftsführer, Visonys IT-Security Software GesmbH Open for Business - Open to Attack? Walter Lender, Geschäftsführer, Visonys IT-Security Software GesmbH 2 Open for Business - Open to Attack? 75% aller Angriffe zielen auf Webanwendungen (Gartner, ISS)

Mehr

Intrusion Detection / Intrusion Prevention. Technologie zwischen Anspruch und Wirklichkeit

Intrusion Detection / Intrusion Prevention. Technologie zwischen Anspruch und Wirklichkeit Intrusion Detection / Intrusion Prevention Technologie zwischen Anspruch und Wirklichkeit IDS Bisher Zwei Bereiche Netzwerk basiert Host basiert Erkennung von Angriffen aufgrund von Mustern / Signaturen

Mehr

Sebastian. Kübeck. Web-Sicherheit. Wie Sie Ihre Webanwendungen sicher vor Angriffen schützen

Sebastian. Kübeck. Web-Sicherheit. Wie Sie Ihre Webanwendungen sicher vor Angriffen schützen Sebastian Kübeck Web-Sicherheit Wie Sie Ihre Webanwendungen sicher vor Angriffen schützen Einleitung................................................. 11 Teil I Grundlagen der Informationssicherheit......................

Mehr

7363 - Web-basierte Anwendungen 4750 Web-Engineering

7363 - Web-basierte Anwendungen 4750 Web-Engineering Fachhochschule Wiesbaden - FB Design, Informatik, Medien 7363 - Web-basierte Anwendungen 4750 Web-Engineering Eine Vertiefungsveranstaltung 28.01.2009 2005, 2008 H. Werntges, Studienbereich Informatik,

Mehr

PHPIDS Vortrag. PHP Usergroup Frankfurt am Main 14. Februar 2008. Autor: Tom Klingenberg. Web & Applikation

PHPIDS Vortrag. PHP Usergroup Frankfurt am Main 14. Februar 2008. Autor: Tom Klingenberg. Web & Applikation PHPIDS Vortrag PHP Usergroup Frankfurt am Main 14. Februar 2008 Autor: Tom Klingenberg Web & Applikation PHP (PHP: Braucht hier nicht erklärt werden.) IDS IDS: Intrusion Detection System Einbruchsmeldesystem

Mehr

Money for Nothing... and Bits4free

Money for Nothing... and Bits4free Money for Nothing... and Bits4free 8.8.2011 Gilbert Wondracek, gilbert@iseclab.org Hacker & Co Begriff hat je nach Kontext andere Bedeutung, Ursprung: 50er Jahre, MIT Ausnutzen von Funktionalität die vom

Mehr

Sicherheit in Software

Sicherheit in Software Sicherheit in Software Fabian Cordt und Friedrich Eder 3. Juni 2011 Allgemeines Begriffserklärung Woher Die 19 Todsünden 1 - Teil 2 - Teil 3 - Teil Was kann passieren Probleme beim Porgramm Durch Lücken

Mehr

Programmieren 2 (Prof. Hasbargen) Klausur

Programmieren 2 (Prof. Hasbargen) Klausur Programmieren 2 (Prof. Hasbargen) 1 Klausur Aufgabe 1 (10 Punkte) Dynamisierung von HTML-Seiten HTML-Seiten sind eine gängige Art und Weise, Informationen darzustellen. Nennen Sie die Gründe, welche Vorteile

Mehr

PS Kryptographie und IT-Sicherheit. Thema: Software-Sicherheit. Thomas Loch, Michael Streif 2012

PS Kryptographie und IT-Sicherheit. Thema: Software-Sicherheit. Thomas Loch, Michael Streif 2012 PS Kryptographie und IT-Sicherheit Thema: Software-Sicherheit Thomas Loch, Michael Streif 2012 Malicious / Invalid Input Exploits nutzen Nebeneffekte von ungültigen Benutzereingaben aus, die vom Programmierer

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

OpenWAF Web Application Firewall

OpenWAF Web Application Firewall OpenWAF Web Application Firewall Websecurity und OpenWAF in 60 Minuten Helmut Kreft Fuwa, 15.11.2010 Agenda Webapplikationen? Furcht und Schrecken! OWASP Top 10 - Theorie und Praxis mit dem BadStore Umgang

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

Web Application Testing

Web Application Testing Sicherheit von Web Applikationen - Web Application Testing Veranstaltung: IT-Sicherheitstag NRW, 04.12.2013, KOMED MediaPark, Köln Referent: Dr. Kurt Brand Geschäftsführer Pallas GmbH Pallas GmbH Hermülheimer

Mehr

Introduction to Security VO 05: Sicherheit in der Softwareentwicklung

Introduction to Security VO 05: Sicherheit in der Softwareentwicklung Introduction to Security VO 05: Sicherheit in der Softwareentwicklung Florian Fankhauser INSO Industrial Software Institut für Rechnergestützte Automation Fakultät für Informatik Technische Universität

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

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

AKTUELLE VERBREITUNG VON HTTP STRICT TRANSPORT SECURITY (HSTS)

AKTUELLE VERBREITUNG VON HTTP STRICT TRANSPORT SECURITY (HSTS) Web Application Security Untersuchung AKTUELLE VERBREITUNG VON HTTP STRICT TRANSPORT SECURITY (HSTS) 05.11.2012 - V1.1 Sven Schleier, SecureNet GmbH Thomas Schreiber, SecureNet GmbH Abstract Das vorliegende

Mehr

Enterprise PHP 5. Serviceorientierte und webbasierte Anwendungen für den Unternehmenseinsatz. von Johann-Peter Hartmann, Björn Schotte. 1.

Enterprise PHP 5. Serviceorientierte und webbasierte Anwendungen für den Unternehmenseinsatz. von Johann-Peter Hartmann, Björn Schotte. 1. Enterprise PHP 5 Serviceorientierte und webbasierte Anwendungen für den Unternehmenseinsatz von Johann-Peter Hartmann, Björn Schotte 1. Auflage Hanser München 2008 Verlag C.H. Beck im Internet: www.beck.de

Mehr

IT-Sicherheit im Zeitalter von E-Business- und Web-Applikationen

IT-Sicherheit im Zeitalter von E-Business- und Web-Applikationen IT-Sicherheit im Zeitalter von E-Business- und Web-Applikationen Sicherheit auf Anwendungsebene Angriffsmöglichkeiten auf Webserver sind vor allem Probleme der Anwendungsebene. Sie beruhen auf Fehlern

Mehr

SWAT PRODUKTBROSCHÜRE

SWAT PRODUKTBROSCHÜRE SWAT PRODUKTBROSCHÜRE SICHERHEIT VON WEB APPLIKATIONEN Die Sicherheit von Web Applikationen stellte in den vergangenen Jahren eine große Herausforderung für Unternehmen dar, da nur wenige gute Lösungen

Mehr

Audit von Authentifizierungsverfahren

Audit von Authentifizierungsverfahren Audit von Authentifizierungsverfahren Walter Sprenger, Compass Security AG Compass Security AG Glärnischstrasse 7 Postfach 1628 CH-8640 Rapperswil Tel +41 55-214 41 60 Fax +41 55-214 41 61 team@csnc.ch

Mehr

Sicherheitsaspekte unter Windows 2000

Sicherheitsaspekte unter Windows 2000 Sicherheitsaspekte unter Windows 2000 Margarete Kudak Sascha Wiebesiek 1 Inhalt 1. Sicherheit 1.1 Definition von Sicherheit 1.2 C2 - Sicherheitsnorm 1.3 Active Directory 2. Sicherheitslücken 3. Verschlüsselung

Mehr

Aktuelle Angriffstechniken auf Web-Applikationen. Andreas Kurtz cirosec GmbH, Heilbronn

Aktuelle Angriffstechniken auf Web-Applikationen. Andreas Kurtz cirosec GmbH, Heilbronn Aktuelle Angriffstechniken auf Web-Applikationen Andreas Kurtz cirosec GmbH, Heilbronn Gliederung Schwachstellen-Überblick Präsentation aktueller Angriffstechniken XPath-Injection Cross-Site Request Forgery

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

Frontend Backend Administration Frontend Backend Administration Template

Frontend Backend Administration Frontend Backend Administration Template Begriffe Frontend Backend Administration Bei Contentmanagementsystemen (CMS) unterscheidet man zwischen zwei Bereichen, dem sogenannten Frontend und dem Backend Bereich. Der Backend wird häufig als Administration

Mehr

Test-Strategien. Grundsätzliches Blackbox-Testen Whitebox-Testen Graybox-Testen Ablauf von Tests Zusammenfassung. HS Mannheim

Test-Strategien. Grundsätzliches Blackbox-Testen Whitebox-Testen Graybox-Testen Ablauf von Tests Zusammenfassung. HS Mannheim Test- Grundsätzliches - - - Ablauf von Tests Grundsätzliche Test- -Tests Äquivalenzklassenbildung Randwertanalyse -Tests Man unterscheidet verschiedene Überdeckungsgrade: Statement Coverage Decision Coverage,

Mehr

Wo ist mein Geld? Identitätsmissbrauch im Online-Banking. Christoph Sorge Universität des Saarlandes juris-stiftungsprofessur für Rechtsinformatik

Wo ist mein Geld? Identitätsmissbrauch im Online-Banking. Christoph Sorge Universität des Saarlandes juris-stiftungsprofessur für Rechtsinformatik Wo ist mein Geld? Identitätsmissbrauch im Online-Banking Christoph Sorge Universität des Saarlandes juris-stiftungsprofessur für Rechtsinformatik C. Sorge 2 Überblick Rechner des Kunden Server der Bank

Mehr

Finaler Testbericht. Finaler Testbericht. 1 Einführung 2. 1.1 Warum Softwaretests?... 2

Finaler Testbericht. Finaler Testbericht. 1 Einführung 2. 1.1 Warum Softwaretests?... 2 Inhaltsverzeichnis 1 Einführung 2 1.1 Warum Softwaretests?.................................... 2 2 Durchgeführte Tests 2 2.1 Test: allgemeine Funktionalität............................... 2 2.1.1 Beschreibung.....................................

Mehr

Kann Big Data Security unsere IT-Sicherheitssituation verbessern?

Kann Big Data Security unsere IT-Sicherheitssituation verbessern? Kann Big Data Security unsere IT-Sicherheitssituation verbessern? Prof. Dr. (TU NN) Norbert Pohlmann Institut für Internet-Sicherheit if(is) Westfälische Hochschule, Gelsenkirchen http://www.internet-sicherheit.de

Mehr

PHP-Schwachstellen und deren Ausnutzung

PHP-Schwachstellen und deren Ausnutzung PHP-Schwachstellen und deren Ausnutzung 44. DFN Betriebstagung / 7. Februar 2006 DFN-CERT Services GmbH Jan Kohlrausch / CSIRT Gliederung Grundlagen HTTP und PHP Anatomie typischer Schwachstellen in PHP-Skripten

Mehr

Wie steht es um die Sicherheit in Software?

Wie steht es um die Sicherheit in Software? Wie steht es um die Sicherheit in Software? Einführung Sicherheit in heutigen Softwareprodukten Typische Fehler in Software Übersicht OWASP Top 10 Kategorien Praktischer Teil Hacking Demo Einblick in die

Mehr

Sichere Webapplikationen nach ONR 17700 oder Wer liest meine Emails?

Sichere Webapplikationen nach ONR 17700 oder Wer liest meine Emails? Sichere Webapplikationen nach ONR 17700 oder Wer liest meine Emails? Advisor for your information security. Essen, 10.-13. Oktober 2006 Version 1.0 SEC Consult Advisor for your information security Information

Mehr

Proseminar: Website-Management-Systeme

Proseminar: Website-Management-Systeme Proseminar: Website-Management-Systeme Thema: Web: Apache/Roxen von Oliver Roeschke email: o_roesch@informatik.uni-kl.de Gliederung: 1.) kurze Einleitung 2.) Begriffsklärung 3.) Was ist ein Web? 4.) das

Mehr

UI-Redressing-Angriffe auf Android. OWASP 07. November 2012. The OWASP Foundation http://www.owasp.org. Marcus Niemietz Ruhr-Universität Bochum

UI-Redressing-Angriffe auf Android. OWASP 07. November 2012. The OWASP Foundation http://www.owasp.org. Marcus Niemietz Ruhr-Universität Bochum UI-Redressing-Angriffe auf Android Marcus Niemietz Ruhr-Universität Bochum 07. November 2012 mail@mniemietz.de http://www.mniemietz.de Copyright The Foundation Permission is granted to copy, distribute

Mehr

Sicherheitsanalyse elearning.uni-bremen.de

Sicherheitsanalyse elearning.uni-bremen.de Sicherheitsanalyse elearning.uni-bremen.de 21 Übungsgruppen in der LV Informationssicherheit 1 Übersicht über Verwundbarkeiten von PHP-Systemen Analyse der Quellen (Stud.IP 1.1.5) Tests mit Testinstanzen

Mehr

Cross Site Scripting (XSS)

Cross Site Scripting (XSS) Konstruktion sicherer Anwendungssoftware Cross Site Scripting (XSS) Stephan Uhlmann 31.08.2003 Copyright (c) 2003 Stephan Uhlmann Permission is granted to copy, distribute and/or modify this

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

Ein kleines Tutorial zu 1 st News, dem New sletter- Skript von Stephan Altmann

Ein kleines Tutorial zu 1 st News, dem New sletter- Skript von Stephan Altmann Ein kleines Tutorial zu 1 st News, dem New sletter- Skript von Stephan Altmann 1 Einführung 2 Voraussetzungen 3 I nstallation allgemein 4 I nstallation als Plugin für AT Contenator 5 Funktionalitäten 6

Mehr

Einige Tipps zur Optimierung Ihrer WordPress-Installation!

Einige Tipps zur Optimierung Ihrer WordPress-Installation! Einige Tipps zur Optimierung Ihrer WordPress-Installation! Quelle: www.rohinie.eu Die meisten Blogger glauben, dass es reicht, regelmäßig interessante Beiträge zu veröffentlichen um ein aktives Stammpublikum

Mehr

Schutz vor Cross-Site-Scripting Angriffen mit Hilfe von Content Security Policy

Schutz vor Cross-Site-Scripting Angriffen mit Hilfe von Content Security Policy Schutz vor Cross-Site-Scripting Angriffen mit Hilfe von Content Security Policy Ausarbeitung für das Studienfach Sichere Systeme an der Hochschule der Medien Stuttgart von Pascal Naujoks (Matrikel-Nr.:

Mehr

Fraunhofer Institute for Secure Information Technology

Fraunhofer Institute for Secure Information Technology Fraunhofer Institute for Secure Information Technology Entwicklung sichere Unternehmens-Apps: gut gemeint oder gut gemacht? Dr. Jens Heider Head of Department Testlab Mobile Security Amt für Wirtschaft

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

SMTP und POP3 mit Windows Server 2003 (Gastbeitrag tecchannel)

SMTP und POP3 mit Windows Server 2003 (Gastbeitrag tecchannel) SMTP und POP3 mit Windows Server 2003 (Gastbeitrag tecchannel) Windows Server 2003 ist der erste Server von Microsoft, der einen kompletten SMTP- und POP3- Dienst mitbringt. Wir zeigen, wie Sie diese Dienste

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

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

Dynamische Web-Anwendung

Dynamische Web-Anwendung Dynamische Web-Anwendung Christiane Lacmago Seminar Betriebssysteme und Sicherheit Universität Dortmund WS 02/03 Gliederung Einleitung Definition und Erläuterung Probleme der Sicherheit Ziele des Computersysteme

Mehr

Publizieren von Webs mit SmartFTP

Publizieren von Webs mit SmartFTP Publizieren von Webs mit SmartFTP Informationen FTP steht für File Transfer Protocol. Ein Protokoll ist eine Sprache, die es Computern ermöglicht, miteinander zu kommunizieren. FTP ist das Standardprotokoll

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

Was ist ein Computerprogramm?

Was ist ein Computerprogramm? Was ist ein Computerprogramm? Michael Sonntag Institut für Informationsverarbeitung und Mikroprozessortechnik (FIM) Johannes Kepler Universität Linz, Österreich sonntag@fim.uni-linz.ac.at 1 Problemaufriss

Mehr

Datenbank-basierte Webserver

Datenbank-basierte Webserver Datenbank-basierte Webserver Datenbank-Funktion steht im Vordergrund Web-Schnittstelle für Eingabe, Wartung oder Ausgabe von Daten Datenbank läuft im Hintergrund und liefert Daten für bestimmte Seiten

Mehr

PHP Kurs Online Kurs Analysten Programmierer Web PHP

PHP Kurs Online Kurs Analysten Programmierer Web PHP PHP Kurs Online Kurs Analysten Programmierer Web PHP Akademie Domani info@akademiedomani.de Allgemeines Programm des Kurses PHP Modul 1 - Einführung und Installation PHP-Umgebung Erste Lerneinheit Introduzione

Mehr

Zielgerichtete getarnte Angriffe (Eng. Advanced Evasion Techniques)

Zielgerichtete getarnte Angriffe (Eng. Advanced Evasion Techniques) Zielgerichtete getarnte Angriffe (Eng. Advanced Evasion Techniques) Intrusion Detection und Prevention Systeme IT-Sicherheitssysteme wie ein Intrusion Detection System bzw. Intrusion Prevention System

Mehr