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

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

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

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

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

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

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

Schwachstellenanalyse 2012

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

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

Carsten Eilers. Ajax Security. Sichere Web-2.0-Anwendungen. ntwickier

Carsten Eilers. Ajax Security. Sichere Web-2.0-Anwendungen. ntwickier Carsten Eilers Ajax Security Sichere Web-2.0-Anwendungen ntwickier Ajax, aber sicher! Geschichte Der Aufbau des Buchs Danksagung und Widmung Der Autor Ajax - Grundlagen Vom Web 1.0 zum Web 2.0 XMLHttp

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

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

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

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

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

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

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

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

Software Design Patterns. Ausarbeitung über. Security Patterns SS 2004

Software Design Patterns. Ausarbeitung über. Security Patterns SS 2004 Ausarbeitung über SS 2004 Dennis Völker [dv04@hdm-stuttgart.de] Steffen Schurian [ss59@hdm-stuttgart.de] Überblick Sicherheit sollte eine Eigenschaft moderner, verteilter Anwendungen sein, jedoch ist ein

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

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

Destructive AJAX. Stefan Proksch Christoph Kirchmayr

Destructive AJAX. Stefan Proksch Christoph Kirchmayr Destructive AJAX Stefan Proksch Christoph Kirchmayr AJAX-Einführung Asynchronous JavaScript And XML Clientseitiger JavaScript-Code Asynchrone Kommunikation XML DOM Klassisches Client-Server Modell AJAX-Modell

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Programmierung eines Besucherzählers mit Flash

Programmierung eines Besucherzählers mit Flash Die Idee...2 Die Entwicklung...2 Die Funktionen...2 Die Website...3 Die Registrierung...3 Counter einrichten...4 Der Besucherzähler...5 Wie der Benutzer ihn einbindet...5 Was dabei wirklich passiert...5

Mehr

Zusammenfassung Web-Security-Check ZIELSYSTEM

Zusammenfassung Web-Security-Check ZIELSYSTEM Zusammenfassung Web-Security-Check ZIELSYSTEM für KUNDE (nachfolgend Auftraggeber genannt) von secudor GmbH Werner-von-Siemensstraße 6 Gebäude 9 86159 Augsburg (nachfolgend Auftragnehmer genannt) Inhalt

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

Sicherheit in Netzwerken. Leonard Claus, WS 2012 / 2013

Sicherheit in Netzwerken. Leonard Claus, WS 2012 / 2013 Sicherheit in Netzwerken Leonard Claus, WS 2012 / 2013 Inhalt 1 Definition eines Sicherheitsbegriffs 2 Einführung in die Kryptografie 3 Netzwerksicherheit 3.1 E-Mail-Sicherheit 3.2 Sicherheit im Web 4

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

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

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

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

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

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

4 Die FrontPage-Website

4 Die FrontPage-Website 4 Die FrontPage-Website Ziele dieses Kapitels A Sie lernen die Struktur einer Website kennen. A Sie können Websites verschachteln. A Sie können Websites konvertieren. Microsoft Office Frontpage 2003 Einführung

Mehr

Mac OS X Consoliero Teil 14: Webmail Agent unter Mac OS X Server 10.2

Mac OS X Consoliero Teil 14: Webmail Agent unter Mac OS X Server 10.2 Mac OSX Consoliero Teil 14 Seite: 1/10 Mac OS X Consoliero Weiterführende Dokumentationen für Administratoren. Mac OS X Consoliero Teil 14: Webmail Agent unter Mac OS X Server 10.2 Christoph Müller, PTS

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

Grundlagen des Datenschutzes und der IT-Sicherheit. Musterlösung zur 7. Übung im SoSe 2014: IT-Risikomanagement

Grundlagen des Datenschutzes und der IT-Sicherheit. Musterlösung zur 7. Übung im SoSe 2014: IT-Risikomanagement und der IT-Sicherheit Musterlösung zur 7. Übung im SoSe 2014: IT-Risikomanagement 7.1 Risikoportfolio Vertraulichkeit Aufgabe: Gegeben seien folgende Werte einer Sicherheitsanalyse eines IT-Systems hinsichtlich

Mehr

Sicherheitsdienste für große Firmen => Teil 2: Firewalls

Sicherheitsdienste für große Firmen => Teil 2: Firewalls Seite 21 Sicherheitsdienste für große Firmen => Teil 2: Firewalls Sicherer Zugang zum World Wide Web (HTTP, FTP etc.) Sicherer Übergang zum Internet: Firewalls und Intrusion Detection Verzeichnisdienste

Mehr

Carsten Eilers ceilers-it.de. Schwachstellen-Scans im Web 2.0

Carsten Eilers ceilers-it.de. Schwachstellen-Scans im Web 2.0 Carsten Eilers ceilers-it.de Schwachstellen-Scans im Web 2.0 Vorstellung» Berater für IT-Sicherheit» Autor» About Security» Standpunkt Sicherheit» und anderes...» Schwachstellen-Datenbank» Security Aktuell

Mehr

DYNAMISCHE SEITEN. Warum Scriptsprachen? Stand: 11.04.2005. CF Carola Fichtner Web-Consulting http://www.carola-fichtner.de

DYNAMISCHE SEITEN. Warum Scriptsprachen? Stand: 11.04.2005. CF Carola Fichtner Web-Consulting http://www.carola-fichtner.de DYNAMISCHE SEITEN Warum Scriptsprachen? Stand: 11.04.2005 CF Carola Fichtner Web-Consulting http://www.carola-fichtner.de I N H A L T 1 Warum dynamische Seiten?... 3 1.1 Einführung... 3 1.2 HTML Seiten...

Mehr

Softwaresicherheit. Sicherheitsschwachstellen im größeren Kontext. Ulrich Bayer

Softwaresicherheit. Sicherheitsschwachstellen im größeren Kontext. Ulrich Bayer Softwaresicherheit Sicherheitsschwachstellen im größeren Kontext Ulrich Bayer Conect Informunity, 30.1.2013 2 Begriffe - Softwaresicherheit Agenda 1. Einführung Softwaresicherheit 1. Begrifflichkeiten

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

Herausforderungen bei der Sicherung von Automatisierungssystemen gegen netzwerkbasierte Angriffe

Herausforderungen bei der Sicherung von Automatisierungssystemen gegen netzwerkbasierte Angriffe Herausforderungen bei der Sicherung von Automatisierungssystemen gegen netzwerkbasierte Angriffe Martin Naedele ABB Corporate Research Baden, Schweiz 2004 CH-RD MN - 1 Übersicht Firewalls für Web Services

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

Neues aus dem DFN-CERT. 47. DFN-Betriebstagung - Forum Sicherheit 16. Oktober 2007 Andreas Bunten, DFN-CERT

Neues aus dem DFN-CERT. 47. DFN-Betriebstagung - Forum Sicherheit 16. Oktober 2007 Andreas Bunten, DFN-CERT Neues aus dem DFN-CERT 47. DFN-Betriebstagung - Forum Sicherheit 16. Oktober 2007 Andreas Bunten, DFN-CERT Veranstaltungen Tutorium DFN-PKI in der Praxis 22./23. Nov. 2007 in München (Ismaning) Telekom

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

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

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

Sicherheitstechnische Qualifizierung (SQ), Version 9.0

Sicherheitstechnische Qualifizierung (SQ), Version 9.0 Die Zertifizierungsstelle der TÜV Informationstechnik GmbH bescheinigt hiermit dem Unternehmen RWE Effizienz GmbH Freistuhl 7 44137 Dortmund für den Webshop RWE SmartHome Shop die Erfüllung aller Anforderungen

Mehr

crm-now/ps Webforms Webdesigner Handbuch Erste Ausgabe

crm-now/ps Webforms Webdesigner Handbuch Erste Ausgabe crm-now/ps Webforms Webdesigner Handbuch Erste Ausgabe crm-now/ps Webforms: Webdesigner Handbuch Copyright 2006 crm-now Versionsgeschichte Version 01 2006-08-21 Release Version crm-now c/o im-netz Neue

Mehr

Grundlagen des Datenschutzes

Grundlagen des Datenschutzes und der IT-Sicherheit Musterlösung zur 7. Übung im SoSe 2009: Vergleich Fehlerbaum und Angriffsbaum 7.1 Fehlerbaum Erstellen Sie eine Fehlerbaum (Fault Tree Analysis) zu dem Fehlerereignis "mangelnde Verfügbarkeit

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

Anleitung zur Entfernung von Schadsoftware

Anleitung zur Entfernung von Schadsoftware Eidgenössisches Finanzdepartement EFD Informatiksteuerungsorgan Bund ISB Melde- und Analysestelle Informationssicherung MELANI GovCERT.ch Anleitung zur Entfernung von Schadsoftware MELANI / GovCERT.ch

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

Inhaltsverzeichnis. Einleitung... 11

Inhaltsverzeichnis. Einleitung... 11 Einleitung................................................. 11 1 Sicherheit im Kontext von PHP und Webanwendungen........... 17 1.1 Historie: PHP............................................. 17 1.2 PHP

Mehr

Inhalt und Ziele. Homepage von Anfang an. Herzlich Willkommen! HTML Syntax; grundlegende Grafik- und Bildbearbeitung für das Internet;

Inhalt und Ziele. Homepage von Anfang an. Herzlich Willkommen! HTML Syntax; grundlegende Grafik- und Bildbearbeitung für das Internet; Homepage von Anfang an Herzlich Willkommen! Caroline Morhart-Putz caroline.morhart@wellcomm.at Inhalt und Ziele!! HTML Grundlagen - die Sprache im Netz; HTML Syntax;!! Photoshop - Optimieren von Bildern,

Mehr

Webapplikationen wirklich sicher?! 10. Mai 2006 IT-TRENDS Sicherheit Zentrum für IT-Sicherheit, Bochum

Webapplikationen wirklich sicher?! 10. Mai 2006 IT-TRENDS Sicherheit Zentrum für IT-Sicherheit, Bochum Webapplikationen wirklich sicher? 10. Mai 2006 IT-TRENDS Sicherheit Zentrum für IT-Sicherheit, Bochum Die wachsende Bedrohung durch Web-Angriffen Test, durchgeführt von PSINet und Pansec 2 "dummy" Web-Sites

Mehr

GeoShop Netzwerkhandbuch

GeoShop Netzwerkhandbuch Technoparkstrasse 1 8005 Zürich Tel.: 044 / 350 10 10 Fax.: 044 / 350 10 19 GeoShop Netzwerkhandbuch Zusammenfassung Diese Dokumentation beschreibt die Einbindung des GeoShop in bestehende Netzwerkumgebungen.

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

Inhalt Software-Metriken Software-Metriken mit Together FindBugs. Software-Metriken. Raimar Lill Matthias Meitner David Föhrweiser Marc Spisländer

Inhalt Software-Metriken Software-Metriken mit Together FindBugs. Software-Metriken. Raimar Lill Matthias Meitner David Föhrweiser Marc Spisländer Lill, Meitner, Föhrweiser, Spisländer FAU Erlangen-Nürnberg Software-Metriken 1 / 24 Software-Metriken Raimar Lill Matthias Meitner David Föhrweiser Marc Spisländer Lehrstuhl für Software Engineering Friedrich-Alexander-Universität

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

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

Schlussbewertung FB VI SOFTWAREPROJEKT II WS 09/10 TEAM. Alexander Kalden Dominik Eckelmann Marcel Pierry Julian Heise Besha Taher

Schlussbewertung FB VI SOFTWAREPROJEKT II WS 09/10 TEAM. Alexander Kalden Dominik Eckelmann Marcel Pierry Julian Heise Besha Taher Schlussbewertung FB VI SOFTWAREPROJEKT II WS 09/10 TEAM Alexander Kalden Dominik Eckelmann Marcel Pierry Julian Heise Besha Taher 729631 745097 736477 745011 741297 Inhalt Schlussbewertung... 3 Bewertung

Mehr

Tobias Wassermann. Sichere Webanwendungen mit PHP

Tobias Wassermann. Sichere Webanwendungen mit PHP Tobias Wassermann Sichere Webanwendungen mit PHP Inhaltsverzeichnis Einleitung 11 i Sicherheit im Kontext von PHP und Webanwendungen 17 I.I Historie: PHP 17 i.2 PHP heute 19 1.3 PHP und Apache 20 1.4 PHP

Mehr

Webseiten erstellen mit Dreamweaver

Webseiten erstellen mit Dreamweaver Dreamweaver Dreamweaver ist ein HTML-Editor der Firma Adobe Systems bestehend aus einer Kombination eines WYSIWYG-Editors (what you see is what you get) mit paralleler Quelltextbearbeitung. Dreamweaver

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

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

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

Zentrum für Informationssicherheit

Zentrum für Informationssicherheit SEMINARE 2016 Zentrum für Informationssicherheit Webanwendungssicherheit-Workshop 15. 17. November 2016, Frankfurt Cyber Akademie (CAk) ist eine eingetragene Marke www.cyber-akademie.de Webanwendungssicherheit

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

Skalierbare Webanwendungen mit Python und Google App Engine

Skalierbare Webanwendungen mit Python und Google App Engine Skalierbare Webanwendungen mit Python und Google App Engine Oliver Albers 03. Juli 2008 1/32 Einführung Worum geht es? Pro und Contra Technik Genereller Aufbau Anwendungskonfiguration Verarbeitung von

Mehr

Sicherheitstechnische Qualifizierung (SQ), Version 10.0 Security Assurance Level SEAL-3

Sicherheitstechnische Qualifizierung (SQ), Version 10.0 Security Assurance Level SEAL-3 Die Zertifizierungsstelle der TÜV Informationstechnik GmbH bescheinigt hiermit dem Unternehmen Agfa HealthCare GmbH Konrad-Zuse-Platz 1-3 53227 Bonn für das IT-System IMPAX/web.Access die Erfüllung aller

Mehr

UCS 2.4 Sicherheits-Update 3

UCS 2.4 Sicherheits-Update 3 UCS 2.4 Sicherheits-Update 3 Thema: Änderungen im Sicherheitsupdate 3 für UCS 2.4 Datum: 3. Mai 2011 Seitenzahl: 7 Versionsnummer: 8598 Autoren: Univention GmbH feedback@univention.de Univention GmbH Mary-Somerville-Straße

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

11 Security Engineering

11 Security Engineering 11 Security Engineering d.h. sichere Entwicklung sicherer Software (safe) (secure) oder sicherheitsbewusste Softwaretechnik ITS-11.1 1 Bei traditionellen Phasenmodellen: Anforderungsermittlung/Systemspezifikation

Mehr

DriveLock 6. DriveLock und das Windows Sicherheitsproblem mit LNK Dateien. CenterTools Software GmbH

DriveLock 6. DriveLock und das Windows Sicherheitsproblem mit LNK Dateien. CenterTools Software GmbH 6 DriveLock und das Windows Sicherheitsproblem mit LNK Dateien CenterTools Software GmbH 2010 Copyright Die in diesen Unterlagen enthaltenen Angaben und Daten, einschließlich URLs und anderen Verweisen

Mehr

Ich anonym im Internet?

Ich anonym im Internet? Ich anonym im Internet? Demonstration der Ausspähung von Daten Hanno Rince Wagner rince@cccs.de Chaos Computer Club Stuttgart 16. Februar 2008 1 Übersicht 1 2 Klassisch: Logfiles Weitergehend: Cookies

Mehr

Diplomarbeit. Konzeption und Implementierung einer automatisierten Testumgebung. Thomas Wehrspann. 10. Dezember 2008

Diplomarbeit. Konzeption und Implementierung einer automatisierten Testumgebung. Thomas Wehrspann. 10. Dezember 2008 Konzeption und Implementierung einer automatisierten Testumgebung, 10. Dezember 2008 1 Gliederung Einleitung Softwaretests Beispiel Konzeption Zusammenfassung 2 Einleitung Komplexität von Softwaresystemen

Mehr

Installation SuperWebMailer

Installation SuperWebMailer Installation SuperWebMailer Die Installation von SuperWebMailer ist einfach gestaltet. Es müssen zuerst per FTP alle Dateien auf die eigene Webpräsenz/Server übertragen werden, danach ist das Script install.php

Mehr