Identifizierung bisher nicht erkannter Sicherheitslücken

Größe: px
Ab Seite anzeigen:

Download "Identifizierung bisher nicht erkannter Sicherheitslücken"

Transkript

1 Software-Sicherheit Identifizierung bisher nicht erkannter Sicherheitslücken und Fehler in Standard- und Individualsoftware sowie Hardware mit den Verfahren Threat Modeling, Static Source Code Analysis und Dynamic Analysis: Fuzzing Prof. Dr. Hartmut Pohl Geschäftsführender Gesellschafter softscheck GmbH Köln www. softscheck.com

2 Software-Sicherheit Identifizierung bisher nicht erkannter Sicherheitslücken und Fehler in Standard- und Individualsoftware sowie Hardware mit den Verfahren Threat Modeling, Static Source Code Analysis und Dynamic Analysis: Fuzzing Hartmut Pohl 1 Software enthält Fehler und kann nicht fehlerfrei erstellt werden. Das macht eine Überprüfung der Software erforderlich. Manuelle Überprüfungen sind angesichts des meist großen Code-Umfangs nicht praktikabel. Der Einsatz herkömmlicher Verfahren zur Behebung funktionaler Fehler und insbesondere nicht-erkannter Sicherheitslücken (Vulnerabilities) ist sehr kostenaufwändig - viele Vulnerabilities werden daher erst nach der Auslieferung der Software an Kunden - z.t. auch von Dritten erkannt. Die Identifizierung bisher nicht erkannter Vulnerabilities ist wichtig, weil sie das (einzige technische) Einfallstor für Angriffe sind: Ohne Vulnerability kein erfolgreicher Angriff. Bisher nicht erkannte Fehler und Vulnerabilities können kostensparend Tool-gestützt identifiziert werden: Mit den drei Verfahren Threat Modeling, Static Source Code Analysis und Dynamic Analysis: Fuzzing letzteres sogar ohne den Quellcode zu kennen. Diese Verfahren werden von einer ganzen Reihe von Anwender- Unternehmen und großen und kleinen Software-Herstellern zur rechtzeitigen Identifizierung von Vulnerabilities und damit auch Kostenreduzierung des gesamten Patchverfahrens erfolgreich eingesetzt. Endanwender nutzen das Verfahren auch zur Abnahmeprüfung von Software. Sicherheitslücken können so in jeder Art Software - angefangen von Protokollen bis hin zu Individualsoftware, Standardsoftware wie ERP, CRM, Datenbanksystemen und auch für unternehmensspezifische Anpassungen an Standardsoftware (Customizing), Web-Applications, Betriebssysteme und auch in Hardware und Embedded Systems sowie Industriesteuerungssystemen (ICS) kostensparend identifiziert werden. Klassisches Penetration Testing dagegen umfasst nur die Suche nach bekannten (!) Vulnerabilities (Vulnerability Scanner), nach offenen Ports, bekannten Sicherheitslücken etc. Inhaltsverzeichnis 1. Identifizierung von Vulnerabilities Kosten der Fehlerbehebung in den Software-Entwicklungsphasen Ohne Vulnerability kein erfolgreicher Angriff Software-Entwicklungszyklus Verfahren zur Identifizierung von Vulnerabilities 3 2. Threat Modeling Verfahren Analyse der Datenflüsse Ausgewählte Tools des Threat Modeling Threat Modeling Ergebnisse 6 3. Static Source Code Analysis Verfahren Ausgewählte Static Source Code Analysis Tools Static Source Code Analysis Ergebnisse 7 4. Dynamic Analysis: Fuzzing Verfahren Typisierung von Fuzzern Fuzzer und Fuzzing Frameworks Monitoring der Zielsoftware (Debugger, Profiler, Tracker) Nachweis von Vulnerabilities Code Coverage Wirksamkeit von Fuzzern: Generierung von Fuzz-Daten Fuzzing Ergebnisse Herausforderungen der Identifizierung von Sicherheitslücken Verfahrenskombination Tool-Kombination Monitor Kombination Expert Advice - Manual Auditing durch IT-Sicherheitsexperten Rating identifizierter Vulnerabilities Erfolge der Tool-gestützten Verfahren 14 1 Prof. Dr. Hartmut Pohl, Informationssicherheit, Fachbereich Informatik, Hochschule Bonn-Rhein-Sieg. softscheck GmbH, Köln

3 1. Identifizierung von Vulnerabilities 1.1. Kosten der Fehlerbehebung in den Software-Entwicklungsphasen Fehlerbehebung ist umso kostengünstiger, je früher Vulnerabilities in der Software-Entwicklung behoben werden möglichst also in der Requirements- oder Designphase; spätestens aber in der Verifikationsphase und vor dem Release. Den exponentiell steigenden Aufwand zur Behebung (Patchen) von Vulnerabilities zeigt Abb. 1:. Tatsächlich steigt der Aufwand zur Fehlerbehebung (Patch) nach einigen Untersuchungen - u.a. des National Institute of Standards and Technology (NIST) - von der Designphase zur Release-Phase bis auf das 35- bis 100- fache. Costs 35 x Application in the Field 15 x 6 x 1 x Threat Modeling Static Analysis Fuzzing Requirements / Design Implementation Verification / Testing Release Phase Abb. 1: Kosten der Fehlerbehebung in den Software-Entwicklungsphasen Am teuersten wird die Fehlerbehebung, wenn das Produkt schon ausgeliefert ist und beim Kunden mit einem Workaround, temporären Fix oder Patch korrigiert werden muss. Eigene Untersuchungen in Projekten von softscheck zeigen, dass der Aufwand zur rechtzeitigen Identifizierung kritischer Vulnerabilities mit Threat Modeling, Static Source Code Analysis und Fuzzing nur vergleichsweise wenig Ressourcen erfordert; daher lassen sich Threat Modeling, Static Source Code Analysis und Fuzzing als marktgerechte Methode zur Entdeckung von Softwarefehlern nutzen: Der durchschnittliche Personalaufwand pro identifizierter kritischer Sicherheitslücke beträgt etwa 8 Stunden Ohne Vulnerability kein erfolgreicher Angriff Noch wichtiger als die Erkennung funktionaler Fehler ist die Identifizierung und Behebung von Vulnerabilities, weil Angriffe gegen Software und IT-Systeme ausschließlich unter Ausnutzung von Vulnerabilities erfolgreich sind. Für Angreifer relevant sind Vulnerabilities, die noch nicht korrigiert (gepatcht) oder sogar noch nicht veröffentlicht sind. Gegen derartige Angriffe gibt es keine Schutzmöglichkeiten - diese Angriffe können von Anwendern auch gar nicht erkannt werden! 1.3. Software-Entwicklungszyklus Bei der Softwareentwicklung können Vulnerabilities auf Grund menschlicher Fehler nicht vollständig vermieden werden. Selbst wenn vollständige Programmierrichtlinien vorhanden sind, werden sie nicht (vollständig) eingehalten und nicht (vollständig) kontrolliert. Dabei existieren wirkungsvolle Tools weit über klassische Verfahren des Testing hinaus, die Vulnerabilities bereits in der Designphase (Threat Modeling) oder spätestens in der Verifikationsphase (Fuzzing) identifizieren - allzu viele Vulnerabilities werden aber nach wie vor erst dann identifiziert, wenn Software schon an den Kunden ausgeliefert ist. Im Folgenden werden die Methoden zur Identifizierung von bisher nicht-erkannten Vulnerabilities dargestellt und einige wirkungsvolle Tools genannt. 1. August 2012 Software-Sicherheit: Identifizierung bisher nicht erkannter Sicherheitslücken Seite 2 von 15

4 Threat Modeling Static Analysis Fuzzing Requirements Design Implementation Verification Release Patch, Fix etc. Abb. 2: Vulnerability Identification im Software Development Process 1.4. Verfahren zur Identifizierung von Vulnerabilities Bisher nicht-erkannte Vulnerabilities lassen sich mit - für die jeweiligen Softwareentwicklungsphasen - speziellen Verfahren identifizieren (Softwareentwicklungsphase und Verfahren zur Identifizierung von Vulnerabilities): 1. Systematische Suche nach Vulnerabilities mit den Verfahren Threat Modeling, Static Source Code Analysis und Dynamic Analysis (Fuzzing). 2. Identifizieren der wesentlichen, schwerwiegendsten, (remote) aus dem Internet leicht ausnutzbaren Vulnerabilities und Bewerten aller anderen Vulnerabilities (Priorisierung). So können Vulnerabilities identifiziert werden, die beispielsweise die folgenden Angriffe ermöglichen: Verletzung der Zugriffsregeln Formatstring-Angriffe SQL-Injections Buffer Overflows. In der Welt des traditionellen Software Testing wird allein die spezifizierte Funktionalität getestet. Nichtfunktionale Tests werden vernachlässigt. Software Development Requirements Design Implementation Verification Release Process Methods Threat Modeling Static Analysis Dynamic Analysis (Fuzzing) Abb. 3: Softwareentwicklungsphase und Verfahren zur Identifizierung von Vulnerabilities 1. August 2012 Software-Sicherheit: Identifizierung bisher nicht erkannter Sicherheitslücken Seite 3 von 15

5 Beim Threat Modeling werden Design-Fehler identifiziert, indem z.b. Angriffsbäume und Datenflussdiagramme ausgewertet werden. Beim Fuzzing werden hierzu die Eingabeschnittstellen (Attack Surface) gerade mit solchen Eingaben attackiert, die nicht spezifiziert sind, wodurch ein Fehlverhalten der Software provoziert wird. 2. Threat Modeling Im traditionellen Softwareentwicklungszyklus werden Maßnahmen zur Erhöhung des Sicherheitsniveaus von Software meist erst kurz vor Auslieferung der Software - häufig aber auch erst nach Auslieferung der Software - umgesetzt. Da etwa die Hälfte der Fehler auf Designfehler zurückzuführen ist, müssten Sicherheitsmaßnahmen bereits vor bzw. während der Designphase implementiert werden. Threat Modeling unterstützt als heuristisches Verfahren die methodische Entwicklung eines vertrauenswürdigen Systementwurfs und einer Architektur in der Designphase der Softwareentwicklung die Fehlerbehebungskosten sind in dieser Entwicklungsphase noch sehr gering. Der systematische Ablauf des Threat Modelings ist in vier Stufen in Abb. 4 grafisch dargestellt. Sicht eines Angreifers verstehen Sicherheit charakterisieren genutzte Methoden und Threats (Bedrohungen) und Sicherheitslücken identifizieren. In jeder Stufe werden zugehörige Aktionen durchgeführt, mit dem Ziel, das Threat Model genauer zu spezifizieren und weiter auszubauen. Gleichermaßen lassen sich schon bestehende Systementwürfe und Architekturen verifizieren, mit dem Ziel der Identifizierung, Bewertung und Korrektur von Vulnerabilities. Understand the Adversary s View Characterize the System Security Methods used Determine Threats Identify Threats Entry Points Use Scenarios Data Flow Diagram Threat Categorization Assets Assumption Dependencies Threat Analysis Identify Vulnerabilities Trust Levels Modeling Security System Attack Trees DREAD Ranking Abb. 4: Threat Modeling Prozess 2.1. Verfahren Nach vollständiger Identifizierung schützenswerter Komponenten (Assets) sowie zugehöriger Bedrohungen beginnt die Identifizierung von Sicherheitslücken mit der Analyse der Dokumentation insbesondere des Sicherheitsdesigns - sowie einer Untersuchung der Programmablaufpläne. 1. August 2012 Software-Sicherheit: Identifizierung bisher nicht erkannter Sicherheitslücken Seite 4 von 15

6 1 Abb. 5: Datenflussdiagramm mit Vertrauensgrenzen Die Identifizierung und Bewertung der Bedrohungen und Sicherheitslücken kann z.b. durch die Auswertung von Datenflussdiagrammen (Abb. 5) und Angriffsbäumen (Attack Trees) erfolgen (Abb. 6). Threat #1 Decrypt Company Secrets and 1.1 Obtain Encrypted File 1.2 Obtain Password/Key Bribe the Sysadmin Hack the Database Brute Force Passwd/Key Use Keylogger Abb. 6: Fehlerbaum im Threat Modeling Auf der Grundlage dieser Analysen erfolgt die Behebung der Sicherheitslücken. Neben den unterschiedlichen, in die Threat Modeling Tools implementierten Maßnahmen (z.b. redesign, standard mitigation, custom mitigation oder accept risk) ist eine individuelle Behandlung einzelner Bedrohungen und Sicherheitslücken sowie die Kontrolle der implementierten Sicherheitsverfahren erforderlich. Im abschließenden Bericht werden die identifizierten Vulnerabilities beschrieben und priorisiert zusammen mit den identifizierten sicherheitsrelevanten Designfehlern und es werden Empfehlungen zur Behebung der identifizierten Vulnerabilities ausgesprochen Analyse der Datenflüsse Datenflussdiagramme unterstützen die Zerlegung eines Systems in überschaubare Teile zur Überprüfung auf Vulnerabilities. Vertrauensgrenzen kennzeichnen die Grenze zwischen vertrauenswürdigen und nicht vertrauenswürdigen Komponenten. Die Erstellung eines korrekten Datenflussdiagramms ist Voraussetzung für ein korrektes Bedrohungsmodell. Ziel ist ein Verständnis der Sicherheitsarchitektur, die Identifizierung von Designfehlern und die Minimierung möglicher Angriffspunkte (Attack Surface). 1. August 2012 Software-Sicherheit: Identifizierung bisher nicht erkannter Sicherheitslücken Seite 5 von 15

7 2.3. Ausgewählte Tools des Threat Modeling Nützliche Tools sind neben den beiden Microsoft Threat Analysis & Modeling und Microsoft SDL Threat Modeling Tool noch Attack Tree, CORAS, Practical Threat Analysis, Seamonster, SecureITree, Skybox Secure und Trike Threat Modeling Ergebnisse In Untersuchungen wurden in bereits ausgelieferten Systemen jeweils bis zu 30 kritische (aus dem Internet ausnutzbare) Vulnerabilities und high-risk Vulnerabilities sowie 26 medium-risk Vulnerabilities mit Threat Modeling identifiziert (vgl. Abb. 7). Rating the Vulnerabilities critical 1 high 29 medium 26 low 129 Number of Vulnerabilities identified Abb. 7: Mit Threat Modeling identifizierte Vulnerabilities eines Internet-Marktplatzes 3. Static Source Code Analysis Dieses Verfahren analysiert den Quellcode, ohne ihn auszuführen (im Gegensatz zur Dynamic Analysis, wozu u.a. Fuzzing zählt). Ab der Implementierungsphase wird die Konformität des Quellcodes der Zielsoftware (White-Box Test!) mit formalen Methoden auf Einhaltung syntaktischer Programmierkonventionen der Programmiersprache und auf Einhaltung der Programmierrichtlinien überprüft - vergleichbar einem Parser, der eine lexikalische, syntaktische und semantische Analyse des Programmcodes durchführt. Aufgrund lexikalischer Regeln der verwendeten Programmiersprache und den semantischen Zugehörigkeiten benötigen die einzelnen Fehler im Allgemeinen einen manuellen Audit, um false Positives auszuschließen und entsprechende Behebungsstrategien zu entwerfen. Die Qualität und Quantität des Analyse-Resultats hängt somit maßgeblich von der Auswahl geeigneter Tools (und geschultem Fachpersonal) ab Verfahren Static Source Code Analysis (Code Review, statische Source Code Analyse) wird Tool-gestützt automatisiert bzw. semi-automatisiert durchgeführt; die Befunde der Tools werden gesammelt und manuell ausgewertet. Analysiert wird der Quellcode der Zielsoftware ohne ihn auszuführen (vergl. aber Dynamic Analysis: Fuzzing). Der systematische Ablauf der Static Source Code Analysis ist in Abb. 8 grafisch dargestellt. 1. August 2012 Software-Sicherheit: Identifizierung bisher nicht erkannter Sicherheitslücken Seite 6 von 15

8 Establish Goals Run Tools Review Code Fixing Bugs Reporting Code Understanding Static Analyzer Find Bugs Find Vulnerabilities Generate Report Difference to Specification Target Application Source Code Abb. 8: Static Source Code Analysis Prozess [nach Chess 2007] Im Bereich Static Source Code Analysis werden drei Tool-Klassen unterschieden: Style Checking Tools verifizieren den Source-Code bezüglich der Einhaltung syntaktischer Programmier- Richtlinien. Diese einfachen Tools finden meist keine Fehler, die einen Software-Defekt hervorrufen. Semantic Analysis Tools fügen zusätzliche semantische Informationen zum Syntaxbaum des Compilers hinzu. Diese werden mithilfe verschiedener Regeln auf statisch feststellbare Fehler verifiziert. Typische Fehler sind Datentyp-Probleme, nicht initialisierte Variable und ungenutzte Methoden. Deep Flow Static Source Code Analysis ist die effektivste Toolklasse: Die semantische Analyse wird um eine control-flow graph -Generierung und eine Data Flow Analyse ergänzt. Somit ist es möglich, komplexe Fehler, die etwa auf race conditions, deadlocks oder falscher Pointerverwendung basieren, zu identifizieren. Die Verwendung eines für das jeweilige Zielsoftware geeignete Static Source Code Analysis Produkt ermöglicht die Identifikation folgender Fehlerarten: Uninitialized Variable Null Pointer Dereference Null Test After Dereference Negative Character Value Ignored Return Value Cast Alters Value Unused Value Buffer overflows Integer Overflow of Alocation Size File System Race Condition, Deadlocks, Livelocks Memory Leaks Double Unlock Unreachable Data Flow Unreachable Call Unreachable Control Flow Redundant Condition Use After Free Negative File Descriptor Useless Assignment Unreachable Computation Double Close Security vulnerabilities (z.b. unsichere Funktionen) Aufgrund lexikalischer Regeln der verwendeten Programmiersprache und semantischen Zugehörigkeiten benötigen die einzelnen Fehler im Allgemeinen einen manuellen Audit durch entsprechendes Fachpersonal (Software- Engineering und IT Security), um false Positives auszuschließen und entsprechende Behebungsstrategien zu entwerfen. Die Qualität und Quantität der Analyse-Resultate hängt somit maßgeblich von der Auswahl geeigneter Tools in Verbindung mit angemessen geschultem Fachpersonal ab. Mit Static Source Code Analysis lassen sich komplexere Fehler, die beispielsweise auf der Interaktion verschiedener Module beruhen, nur schwer identifizieren; solche Fehler erfordern den Einsatz von Verfahren wie Fuzzing Ausgewählte Static Source Code Analysis Tools Es existiert eine große Menge von Static Source Code Analysis Tools u.a. Coverity Findbugs, FxCOP, LAPSE, Pixy (open source), RATSs (entgeltfrei), XDepend. Tools sind grundsätzlich spezialisiert auf eine Programmiersprache; nicht alle Tools identifizieren dieselben Fehler, so dass der Einsatz komplementärer Tools nützlich ist Static Source Code Analysis Ergebnisse In einer Reihe von Projekten wurden pro Codezeilen bis zu 50 Vulnerabilities identifiziert allerdings mussten darüber hinaus (zeitaufwändig!) ca. 30 false Positives untersucht werden. 1. August 2012 Software-Sicherheit: Identifizierung bisher nicht erkannter Sicherheitslücken Seite 7 von 15

9 Der Security Analyst muss also die identifizierten Anomalien verifizieren hinsichtlich false Positives und muss mit false Negatives rechnen! False Negatives können noch mit dem Verfahren Dynamic Analysis: Fuzzing identifiziert werden. 4. Dynamic Analysis: Fuzzing Die Robustheit der untersuchten Zielsoftware wird mit zielgerichteten Eingabedaten überprüft; dabei sollen vorhandene Fehler und Sicherheitslücken ausgenutzt und ein anomales Verhalten der Zielsoftware provoziert werden. Beispielsweise können in die Eingabedaten Sonderzeichen eingestreut, bestimmte Zeichen mehrfach wiederholt oder auch überlange Eingaben generiert werden, um z.b. Buffer Overflows zu erreichen Verfahren Die Zielsoftware wird in einem Testbed ausgeführt und untersucht. Hierzu kann die Software in einer virtuellen Maschine oder auf einem anderen Testsystem ausgeführt werden. Das Verfahren Fuzzing benötigt also keinen Quellcode (Black-Box Test). Das häufig vorgeschlagene Brute Force Verfahren, alle Eingabeschnittstellen mit allen technisch möglichen Eingaben (Bit-Kombinationen) zu bombardieren (1. Fuzzer-Generation: Recursive Fuzzing), führt nur selten zum Erfolg und benötigt einen überaus hohen Rechenzeitaufwand. Daher werden Fuzzer eingesetzt, denen Rahmendaten wie z.b. ein Protokollaufbau vorgegeben werden oder die aus regulären Eingabedaten lernen, die relevanten - und damit die zur Identifizierung von Vulnerabilities führenden - Eingabedaten auszuwählen und einzusetzen (2. Fuzzer-Generation: Replacive Fuzzing). Test System Identification Code Coverage Input Interfaces Proprietary Developed Fuzzer Proprietary Developed Attack Strings Fuzzer Target System Target Application Target Processor ARM, AMD, IBM, Intel, PLC, Sun, Target OS Android, CardOS, JCOB, Nucleus, OS X, QNX, Unix, VxWorks, Windows, S7, Monitor/Debugger Monitor Client Expert Advice: Identification, Rating Proof of Concept: Exploits Report Abb. 9: Fuzzing-Prozess Dazu werden beim Fuzzing Eingabeschnittstellen identifiziert, an die die Daten gesendet werden (vergl. Abb. 9). Eingabeschnittstellen können sein: Netzwerkprotokollaufrufe (HTTP, SMTP, SIP, LDAP etc.), RPC, Web Services, File Formats, Command Line Parameters etc. Im Anschluss erfolgt durch den Security Experten eine Analyse der vom Monitor bereitgestellten Daten, aus denen u.a. die Reproduzierbarkeit (Reproducibility), Ausnutzbarkeit (Exploitability) aus dem Internet und die Schwere von Sicherheitslücken (severity) bestimmt werden. Dies ist der zeitlich aufwändigste Teilprozess des Fuzzing Typisierung von Fuzzern Die Vielzahl auf dem Markt entgeltfrei und entgeltlich erhältlichen Fuzzer ( über 300) macht eine Auswahl der für die jeweilige Zielsoftware geeigneten Fuzzer erforderlich. Je nach Typ lassen sich Fuzzer lokal, remote (network) oder gegen Web-Applications einsetzen. Zu den lokalen Fuzzern werden z.b. die Kommandozeilen-Fuzzer gezählt. Netzwerkbasierte Anwendungen werden remote gefuzzed. Mit speziellen Fuzzern können Vulnerabilities in Web-Applications oder Betriebssystemen identifiziert werden. 1. August 2012 Software-Sicherheit: Identifizierung bisher nicht erkannter Sicherheitslücken Seite 8 von 15

10 Brute-Force- Static Dumb Smart Intelligent Capture Replay Session-Data Mutation- Stateless Stateful Call-Flow Aware Model- Grammar Block Generation Dynamic Generation Model- Inference Traffic-Analysis Evolutionary Abb. 10: Fuzzer Taxonomie Unterschieden werden können sog. Dumb und Smart Fuzzer: Dumb-Fuzzer (1. Fuzzer-Generation) können die Struktur der Zielsoftware nicht erkennen und generieren nur ungesteuerte Eingabedaten. Wegen dieser fehlenden Programmsteuerung setzen sie eine erhebliche Erfahrung der Anwender bei der Auswertung der Ergebnisse voraus; dafür sind sie häufig entgeltfrei aus dem Internet herunterladbar (vgl. Abb. 10). Smart-Fuzzer (2. Fuzzer-Generation) dagegen testen programmgesteuert eine Zielsoftware - auf der Basis bereitgestellter oder durch Sniffing erkannter Spezifikationen über die Zielsoftware. Smart Fuzzer durchdringen damit auch Sicherheitsmaßnahmen wie Identifizierung und Authentifizierung, (kryptographische) Prüfsummen etc. und prüfen logisch 'dahinter' liegenden Code. Mutation Fuzzer verändern einen korrekten Eingabestrom von Fuzz-Daten und Generation Fuzzer generieren neue Eingabedaten auf der Basis einer vorhandenen Protokollspezifikation. Dynamic Generation Fuzzer analysieren die Protokollspezifikation während ihrer Laufzeit. Stateless Fuzzer modellieren nur Daten und keine Zustände. Block Fuzzer verändern Nutzdaten- und Parameterfelder in einem Protokollblock (nicht die Adressfelder o.ä.). Stateful Fuzzer berücksichtigen interne Zustände des Zielprogramms. Klassifizierung nach Einsatzzweck Fuzzer unterstützen entweder konkret definierte Schnittstellen oder sie sind universell einsetzbar. Schnittstellenunabhängige Fuzzer werden Generic Fuzzer genannt. Dem gegenüber stehen Specialised Fuzzer, deren Einsatzzweck definierte Schnittstellen sind: So unterstützt ein Protocol Specific Fuzzer eine einzelne bestimmte Schnittstelle und ein Multi Protocol Fuzzer unterstützt mehrere Schnittstellen. Klassifizierung nach Schnittstellen Schnittstellen lassen sich nach Art und Zugänglichkeit unterscheiden. Local Fuzzer eignen sich für lokal ausnutzbare Schnittstellen und Remote Fuzzer für remote ausnutzbare Schnittstellen. Zu den Local Fuzzern zählen File System Fuzzer, Environment Variable Fuzzer, Command Line Fuzzer, File Format Fuzzer, API Fuzzer, Web Browser Fuzzer und Database Fuzzer. So testen File System Fuzzer z.b. die Implementierung des Dateisystemtreibers eines Betriebssystems. File Format Fuzzer überprüfen die Bereiche einer Software zur Verarbeitung von Dateien. Environment Variable Fuzzer testen durch Veränderung der Umgebungsvariablen und Command Line Fuzzer durch Veränderung der Kommandozeilenparameter. API Fuzzer testen Programmschnittstellen wie z. B. DLL-Exporte. Zudem existieren Fuzzer zum Testen der Komponenten von Web Browsern. Datenbank Fuzzer testen Software, die auf die Daten in der Datenbank zugreift. Remote Fuzzer sind nach den Protokollen benannt, die sie testen - z. B. HTTP Fuzzer. Weiterhin werden Remote Fuzzer nach Protokollgruppen benannt, so z. B. die VoIP Fuzzer, die ein oder mehrere IP-Telefonie- Protokolle testen. In-Memory Fuzzer Diese Fuzzer identifizieren Fehler in der Zielsoftware unabhängig von Eingabeschnittstellen, indem funktionale Parameter und Nutzdaten der Zielsoftware im Hauptspeicher mutiert werden. Statt der Fokussierung auf ein spezifisches Protokoll oder Dateiformat, wird der zugrundeliegende Code betrachtet. Bei diesem Verfahren werden die Funktionen einer Anwendung und die dazugehörigen Assembler-Instruktionen zum Parsen von Eingabedaten betrachtet. Zwei verschiedene Ansätze von In-Memory-Fuzzern lassen sich unterscheiden 1. August 2012 Software-Sicherheit: Identifizierung bisher nicht erkannter Sicherheitslücken Seite 9 von 15

11 Fixkosten Automatische Fuzzer Manuelle Fuzzer Variable Kosten / Benötigte Expertise Abb. 11: Divergenz Produktkosten Personalaufwand Mutation Loop Insertion: Nach erfolgreicher Lokalisierung führt der Fuzzer eine Mutation-Routine im Speicherbereich des Clients aus. Diese Routine transformiert die Daten, die von der jeweiligen Parser-Funktion behandelt werden. Es werden unbedingte Sprungbefehle vom Endpunkt der Parser-Funktion zum Startpunkt der Mutation-Routine, und vom Endpunkt der Mutation-Routine zum Startpunkt der Parser-Funktion eingefügt, um ein kontinuierliches Fuzzing zu ermöglichen. Snapshot Restoration Insertion: Vom Prozess der Zielanwendung wird ein Snapshot erstellt, sobald der Startpunkt der Parser-Funktion erreicht ist. Nach Abschluss das Parsing stellt der Client den Snapshot wieder her, mutiert die originalen Eingabedaten und führt den Parser wieder aus Fuzzer und Fuzzing Frameworks Einige Fuzzing Tools sind: bestorm, Defensics, File Fuzz (idefense), FTPStress Fuzzer. Fuzzing Frameworks bieten die Möglichkeit speziell für die jeweilige Zielsoftware angepasste Fuzzer entwickeln zu lassen. Der Entwicklungsaufwand ist jedoch für Nicht-Experten ausgesprochen hoch zumal für gängige Anwendungen bereits fertig nutzbare Fuzzer existieren. Fuzzing Frameworks eignen sich besonders für neue proprietäre Zielanwendungen wie z.b. eine neue Implementierung eines Netzwerkprotokolls. Frameworks sind beispielsweise Autodafe, Peach, SCRATCH, SPIKE, SPIKEfile und Sulley. Kommerzielle Tools zeichnen sich meist durch eine vergleichsweise hervorragende Usability aus (graphische Benutzeroberfläche statt nur einer Kommandozeilensteuerung) (vergl. Abb. 11). Auch die Eigenentwicklung (Einmalentwicklung, Single Use, One-Off Fuzzer) kann nützlich sein, wenn geeignete Fuzzer für die Zielsoftware nicht erhältlich sind; üblicherweise ist die Anpassung eines vorhandenen Fuzzers oder die Generierung eines Fuzzers mit einem Framework einfacher und schneller als eine Eigenentwicklung aber nicht immer hinreichend wirkungsvoll Monitoring der Zielsoftware (Debugger, Profiler, Tracker) Die Identifizierung von Sicherheitslücken beim Fuzzing-Prozess erfolgt auf der Grundlage des Monitorings der Zielsoftware. Wurden die Eingabeschnittstellen der Zielsoftware identifiziert und die vom Fuzzer erzeugten Daten an die Zielsoftware gesendet, überwacht ein Monitoring-Tool die Zielsoftware, diagnostiziert und meldet dem Experten (Tester) die erkannten Anomalien und Exceptions wie Ursache (Programmabsturz, hohe CPUund Speicher-Auslastung), Speicheradresse, Exception Type, Registry Values, Register-, Speicher- und Stackzustände etc. (vgl. Abb. 9). Ein Monitor ist unverzichtbar zum Verständnis der Fuzzer-induzierten Anomalien; naturgemäß setzt die Nutzung eines Monitors ein gewisses Verständnis seiner Funktionen voraus. Nur einige Fuzzer verfügen über integrierte Monitoring-Funktionalität, was den Arbeitsaufwand eines Fuzzing- Tests reduziert: bestorm, Peach, Defensics, Sully. Einige Fuzzer sind in der Lage, mehrere Monitore zu nutzen. Andere Fuzzer benötigen ein externes Monitoring. Wegen der unterschiedlichen Funktionen und Funktionsausprägungen von Monitoren ist der Einsatz mehrerer dieser Tools empfehlenswert. Es können System Monitoring, Application Monitoring und Valid Case Instrumentation unterschieden werden. System Monitoring 1. August 2012 Software-Sicherheit: Identifizierung bisher nicht erkannter Sicherheitslücken Seite 10 von 15

12 System Monitoring bezeichnet die Überwachung von Systemressourcen wie die Anzahl gleichzeitig geöffneter Dateien, CPU-Auslastung oder Arbeitsspeichernutzung der Zielsoftware. Sind die Werte ungewöhnlich hoch oder niedrig deutet dies auf die Identifizierung einer Sicherheitslücke in der Zielsoftware. Die Überwachung von Logfiles oder das Auswerten von Systemmeldungen zählt ebenfalls zum System Monitoring. Denial of Service Probleme können dadurch einfach, File-System und Memory Related Probleme eingeschränkt erkannt werden. Application Monitoring Beim Application Monitoring werden Monitore verwendet, um das Verhalten der Zielsoftware zu untersuchen. Ist das Verhalten anomal, deutet dies auf eine Sicherheitslücke in der Zielsoftware hin. Weiterhin kann das Verhalten der Zielsoftware beobachtet werden, z. B. ist eine automatisierte Auswertung der von der Software erzeugten Logdateien möglich. Mit Application Monitoring können Denial of Service, File-System Related Problems, Metadata Injection Vulnerabilities und Memory Related Problems identifiziert werden. Für das Application Monitoring können u.a. Funktionen des Reverse Engineering Tool PaiMei eingesetzt werden. Valid Case Instrumentation Die Zielsoftware wird mit regulären Aufrufen während des Fuzzings überwacht. Die Ausgaben der Zielsoftware werden mit hinterlegten (korrekten) Ausgaben abgeglichen. So kann die korrekte Funktionsweise der Zielsoftware überprüft werden: Ist sie noch verfügbar oder wurden durch das Fuzzing Anomalien provoziert? Durch Valid Case Instrumentation können Denial of Service (z.b. bei zu langsamem Antwortverhalten der Software) und Metadata Injection Vulnerabilities (z.b. bei unbeabsichtigter Ausgabe sensitiver Daten) erkannt werden. Memory Related Vulnerabilities sind durch diese Methode eingeschränkt erkennbar (z.b. bei Absturz der Zielsoftware). Eine ganze Reihe von Fuzzern beinhaltet bereits eine Monitor-Funktion, so dass auf einen separaten Monitor verzichtet werden könnte. Diese integrierten Monitore sind auf die speziellen Fähigkeiten des Fuzzers ausgerichtet und weisen daher leichter auswertbare Ergebnisse auf. Integrierte Monitore weisen u.a. die beiden Fuzzer Mu-4000 und bestorm auf. Separate Monitore müssen naturgemäß eine Schnittstelle zu den eingesetzten Fuzzern besitzen. Die folgenden Monitore können eingesetzt werden: Debug.exe, Gnu Debugger gdb, IDA Pro, IBM PurifyPlus, Immunity Debugger, OllyDbg, Parasoft Insure, SoftICE, TOD, Turbo Debugger, Visual DuxDebugger, WinDbg.exe, W32DASM Nachweis von Vulnerabilities Vom Monitor wird ausschließlich anomales Verhalten der Zielsoftware erkannt und gemeldet. Diese Anomalien stellen nur Hinweise auf Vulnerabilities dar, die noch von Sicherheitsexperten verifiziert werden müssen. Notwendige Voraussetzung für eine Vulnerability ist die Reproduzierbarkeit einer Anomalie sowie die Erreichung eines sicherheitsrelevanten (ausnutzbaren) Zustands des Zielprogramms (Buffer Overflow, Code Injection etc.). Erkannte Anomalien müssen durch den Fuzzer reproduzierbar und auch verifizierbar sein. Allerdings ist eine Verifizierung in der Praxis nicht immer möglich. So kann beispielsweise die Prozessorlast des Zielsystems durch äußere Einflüsse ansteigen; dies könnte ein Monitor fälschlicherweise dem Fuzzing-Test anlasten und daraus folgend eine Anomalie anzeigen. Funktionen zur Fehlerreproduktion ersparen also dem Sicherheitsexperten Zeit Code Coverage Grundsätzlich könnte Fuzzing unendlich lange fortgesetzt werden. In der Praxis wird nach x (für x > ) Iterationen ohne Hinweis auf eine weitere Sicherheitslücke abgebrochen. Endebedingung für Fuzzing Mit Code Coverage (Überdeckungstest) steht im Grundsatz eine quantitative Metrik zur Bewertung der Testabdeckung (ausgeführte Codezeilen) der Zielsoftware zur Verfügung: Bewertet wird der Prozentsatz des ausgeführten Codes des Zielprogramms (vgl. Abb. 9). Es können umso mehr Vulnerabilities identifiziert werden, je mehr Code der Zielsoftware untersucht, je höher also die erreichte Code Coverage ist. Nur in der Static Source Code Analysis kann eine Code Coverage von 100% erreicht werden. Fuzzing-Tests sollten nach einer vereinbarten Code Coverage abgebrochen werden. Unterschieden werden diese drei Klassen von Code Coverage: Line, Branch und Path Coverage letztere stellt die detailliertesten Informationen zur Verfügung. Code Coverage Tools sind beispielsweise Bullseye Coverage (C++), Clover (Java,.NET), coverage.py (Python), Devel::Cover (Perl), Gcov (C), IBM PurifyPlus, Rcov (Ruby), VBWatch (Visual Basic), Xdebug (PHP). Gezieltes Fuzzing Path Coverage gibt Auskunft darüber, welche Pfade (noch) nicht gefuzzed wurden und gibt damit eine Anleitung zu weiterem, gezielterem Fuzzing. Path Coverage kann über Code Coverage hinausgehen Wirksamkeit von Fuzzern: Generierung von Fuzz-Daten 1. August 2012 Software-Sicherheit: Identifizierung bisher nicht erkannter Sicherheitslücken Seite 11 von 15

13 Die wesentliche Funktion von Fuzzern ist die Generierung wirkungsvoller Fuzz-Daten (Eingabedaten für das Zielprogramm). Die Qualität von Fuzzern hängt damit direkt ab von der Größe des getesteten Eingabe- Datenraums (der auch unendlich sein kann) und der Qualität der erzeugten Fuzz-Daten: Diese Fuzz-Daten- Generierung ist entscheidend für den Fuzzing-Erfolg. Tatsächlich unterscheiden sich Fuzzer hinsichtlich ihrer Wirksamkeit (bei jeweils demselben Zielprogramm) erheblich: Verschiedene Fuzzer identifizieren unterschiedliche Sicherheitslücken! Dabei identifizieren eine ganze Reihe von Fuzzern nur wenige oder keine Sicherheitslücken. Dies liegt an den generierten Fuzz-Daten bzw. an dem Fuzz-Daten-Generator, dem Algorithmus zur Generierung dieser Fuzz-Daten. softscheck kann dazu einen auf das Zielprogramm hin optimierten eigenen Fuzz-Datensatz einsetzen Fuzzing Ergebnisse Aus der großen Menge im Internet angebotener entgeltfreier und kostenpflichtiger Tools lassen sich die relevanten Tools auf der Webseite softscheck.inf.h-brs.de parametrisiert je nach den individuellen Bedürfnissen anhand einer ganzen Reihe entwickelter Bewertungsparameter entgeltfrei auswählen (vgl. Abb. 12). Die Eignung eines Fuzzers kann nämlich nicht pauschal angegeben werden, da sie von der Zielsoftware und den individuellen Anforderungen des Testers abhängt. Daher empfiehlt es sich in der Praxis, Zielsoftware-spezifische Bewertungen durch die anwendungsfallbezogene Gewichtung numerischer Parameter und deren Kategorien vorzunehmen. Bewertungs- und Beschreibungsparameter für Fuzzer können sein: Verfügbare Sprachen Betriebssysteme Protokollmodellierung (Art der Eingabeerzeugung) Fuzzing-Daten Erzeugung Einsatzzweck Schnittstellen Anwendungsinterpretation Kosten und Lizenz Lizenzform- und Name Kosten für Lizenz Kosten für Updates Kosten für Support Funktionsumfang Unterstützte Monitoring- Verfahren Erkennung von Sicherheitslücken Zurücksetzung der Zielsoftware Exception-Analyse Erstellung von Berichten Parametrisierbarkeit Fehlerreproduktion Zeitgesteuerte Aufgaben Paralleles Fuzzing Software-Ergonomie Effektivität Effizienz Zufriedenheit Funktionen Dialogkriterien Ein- und Ausgabekriterien Dokumentation Benutzerhandbuch Technische Dokumentation Qualität des integrierten Hilfesystems Zusätzliche Dokumentation Qualität des öffentlichen Supportforums Qualität des Herstellersupports Umfang an Drittdokumentation Web-Seminare / Schulungen Weiterentwicklung, Status, Aktivität Schnittstellen zur eigenen Weiterentwicklung Spezielle Entwickler-Tools Verwendete Programmiersprache 1. August 2012 Software-Sicherheit: Identifizierung bisher nicht erkannter Sicherheitslücken Seite 12 von 15

14 Functions, Innovative Ability Tool E Tool A Tool B Tool D Tool F Tool C Achievements Abb. 12: Bewertung von Fuzzing Tools Für diese Webseite softscheck.inf.h-brs.de wurden im Rahmen eines vom Bundesministerium für Forschung und Technologie (BMFT FKZ 01 IS 09030)) umfangreich geförderten Projekts an der Hochschule Bonn- Rhein-Sieg etwa 300 weltweit verfügbare Tools zum Threat-Modeling und Fuzzing analysiert, ausgewählt und zusammen mit großen Software-Herstellern als Projektpartnern bewertet. In einer Reihe von Projekten wurden in bereits an Kunden ausgelieferte Standardsoftware bis zu 50 kritische Vulnerabilities identifiziert. Allerdings mussten darüber hinaus ca. 100 false Positives untersucht werden, die zwar nicht auf Sicherheitslücken hinwiesen aber eben doch auf Anomalien. 5. Herausforderungen der Identifizierung von Sicherheitslücken Mit den 3 Verfahren Threat Modeling, Static Source Code Analysis und Dynamic Analysis (Fuzzing) werden jeweils unterschiedliche Sicherheitslücken wirkungsvoll identifiziert. Allerdings erbringt erst die Kombination aller 3 Verfahren das bestmögliche Ergebnis: Mit Threat Modeling werden Designfehler identifiziert, mit Static Source Code Analysis funktionale Fehler und Codierungsfehler und mit Dynamic Analysis (Fuzzing) Implementierungsund Sicherheitsfehler Verfahrenskombination Wird auf eins der 3 Verfahren Threat Modeling, Static Source Code Analysis und Dynamic Analysis: Fuzzing verzichtet, so können spezifische Vulnerabilities nicht erkannt werden. In jedem Fall sollten diese 3 Verfahren parallel zur Software-Entwicklung eingesetzt werden: Am besten beginnend schon in der Requirements- oder Designphase möglichst aber spätestens in der Verifikationsphase und (kostenaufwändiger) nach dem Release können und müssen Vulnerabilities identifiziert werden, um den ansonsten erheblichen Fehlerbehebungs- und Patch-Aufwand gering zu halten. Acquisition of new DA-Tools Developed Evaluation Parameters for DA-Tools Updated Data Base: All Open Source and proprietary Fuzzers Target Application specific Selection DA-Tools Updated Data Base: All evaluated DA-Tools Target Application Automatic Selection of Target Application specific DA-Tools Abb. 13: Automatisierter Zielsoftware-spezifischer Auswahlprozess 1. August 2012 Software-Sicherheit: Identifizierung bisher nicht erkannter Sicherheitslücken Seite 13 von 15

15 5.2. Tool-Kombination Allerdings werden weder mit einem einzigen Tool der Static Source Code Analysis noch der Dynamic Analysis: Fuzzing alle Vulnerabilities identifiziert. Erst eine gezielt vorgenommene Kombination geeigneter Static Source Code Analysis und Fuzzing-Tools identifiziert ein Optimum bisher nicht-erkannter Vulnerabilities in einer angemessen kurzen Zeit Monitor Kombination Zur Interpretation des Fuzzing Prozess sollten mehrere Monitore eingesetzt werden, um den manuellen Aufwand der Interpretation der Fuzzing-Ergebnisse beim Sicherheitsexperten klein zu halten Expert Advice - Manual Auditing durch IT-Sicherheitsexperten Leicht unterschätzt wird die erforderliche Expertise der Mitarbeiter (Security Analysten), um die Ergebnisse der Tools auszuwerten. Im Einzelfall können die von den Static Source Code Analysis Tools gemeldeten Anomalien nur zu etwa einem Drittel als tatsächliche Vulnerabilities reproduziert und verifiziert werden die anderen Hinweise stellen false Positives dar. Für Sicherheitsexperten ist dazu ein erhebliches Know-How im Bereich der sicheren Programmierung, von Programmierfehlern und den aktuellen Angriffstechniken unverzichtbare Voraussetzung. Dieser manuelle Aufwand muss dabei auf zwei Drittel des Gesamtaufwands zur Identifizierung und Verifizierung von Vulnerabilities geschätzt werden. Der gesamte Personalaufwand pro identifizierter kritischer (bisher nicht-erkannter) Vulnerability konnte bei wirkungsvoller Verfahrens- und Toolauswahl auf durchschnittlich nur 8 Personenstunden gesenkt werden! Davon müssen ca. 5 Stunden für den Expert Advice das manuelle Auditing der Monitorhinweise aufgewandt werden Rating identifizierter Vulnerabilities Die Vielzahl der identifizierten Vulnerabilities macht eine Bewertung jeder einzelnen Vulnerability erforderlich, weil meist aus Wirtschaftlichkeitsgründen nicht alle behoben werden können. Die Bewertung der Vulnerabilities wird nach internationalen Standards wie DREAD (einfach) [Microsoft] oder dem Common Vulnerability Scoring System (CVSS) oder (mit zusätzlicher Bewertung sicherheitskritischer Funktionen) Common Misuse Scoring System (CMSS) (komplexer) vorgenommen. Security Analysten bewerten die identifizierten Vulnerabilities in einer Untersuchung hinsichtlich ihrer Bedeutung (severity) anhand einer Vielzahl von Bewertungsparametern die z.t. zustandsabhängig sind und auch an die Benutzerumgebung angepasst werden können wie z.b.: Erkennbarkeit für Dritte Reproduzierbarkeit Ausnutzbarkeit (Exploitability) lokal, im Netzwerk und aus dem Internet Notwendige Zugriffsrechte Generierbarer Schaden, Art und Umfang der Auswirkungen auf die Integrität, Verfügbarkeit und Vertraulichkeit der Daten. Das Common Weakness Scoring System (CWSS) lässt darüber hinaus eine Bewertung nur auf Umwegen erreichbarer ('chained') Vulnerabilities zu. 6. Erfolge der Tool-gestützten Verfahren Die Verfahren Threat Modeling, Static Source Code Analysis und Dynamic Analysis: Fuzzing stellen Toolgestützte Verfahren zur Identifizierung insbesondere sicherheitsrelevanter Softwarefehler zur Verfügung. Die Methode Dynamic Analysis: Fuzzing benötigt noch nicht einmal den Quellcode der Zielsoftware - ausführbare Dateien reichen aus: Black-Box Tests (entsprechend der Sicht eines Angreifers). Damit kann die Anwendungssicherheit wirkungsvoll gesteigert werden. 1. Verfahrenskombination: Es werden erfolgreich diese 3 Verfahren genutzt: Threat Modeling: Logische Fehler, Designfehler Static Source Code Analysis: Implementierungsfehler, Verstöße gegen Programmierrichtlinien, Syntaxfehler und Dynamic Analysis Fuzzing: Laufzeitfehler, Vulnerabilities Erst diese drei Verfahren gemeinsam eingesetzt identifizieren die unterschiedlichen Fehler und Vulnerabilities; insgesamt wurden in vielen Projekten in marktüblicher Software jeweils pro Zielsoftware bis zu 50 kritische (aus dem Internet ausnutzbare) Vulnerabilities identifiziert. 2. Tool-Kombination: Dazu werden je Verfahren eine Reihe von Tools bedarfsgerecht also die für die jeweilige Zielsoftware speziell geeigneten Tools gezielt ausgewählt und eingesetzt: Unterschiedliche Tools identifizieren verschiedene Vulnerabilities! Im Einzelfall ist erst der Einsatz von weit über 50 Tools erfolgreich. 3. Die Wirksamkeit der Fuzzer unterscheidet sich maßgeblich durch die generierten Fuzz-Daten (Eingabedaten in das Zielprogramm) bzw. den Algorithmus zur Generierung dieser Fuzz-Daten. softscheck kann dazu einen auf das Zielprogramm hin optimierten eigenen Fuzz-Datensatz einsetzen. 4. Fuzzing unterstützt zwar Black-Box-Tests allerdings können die wirkungsvollen Fuzzer umso besser ausgewählt werden, je umfassender die Spezifikation der Zielsoftware erfolgt: Grey Box Tests. 5. Diese Verfahren können erfolgreich für jede Art Software eingesetzt werden: Angefangen von Protokollen 1. August 2012 Software-Sicherheit: Identifizierung bisher nicht erkannter Sicherheitslücken Seite 14 von 15

16 bis hin zu Individualsoftware, Standardsoftware wie ERP, CRM, Datenbanksysteme und auch für unternehmensspezifische Anpassungen an Standardsoftware (Customizing), Web-Applications, Betriebssysteme und auch in Hardware und Embedded Systems sowie in Pder Prozesssteuerung (Industrial Control Systems) etc. 6. Die 3 Verfahren werden von großen und kleinen Softwareherstellern mit Erfolg eingesetzt, um die Kosten zur Fehlerbehebung und die Kosten für Patches nachhaltig zu senken. Die Methode wird gleichermaßen von internationalen Anwendern auch zur Abnahme von Software - eingesetzt. 7. Das systematische Vorgehen erfordert pro identifizierter (bisher nicht-erkannter) kritischer, aus dem Internet ausnutzbarer Vulnerability durchschnittlich nur 8 Personenstunden. Wegen des meist eng begrenzten Test-Budgets ein wichtiges Argument. 8. Verbände bieten Ausbildungskurse für diese 3 Verfahren an. 1. August 2012 Software-Sicherheit: Identifizierung bisher nicht erkannter Sicherheitslücken Seite 15 von 15

17 Prof. Dr. Hartmut Pohl Geschäftsführender Gesellschafter soft check GmbH Köln www. soft check.com Büro: Bonner Str Sankt Augustin Tel.: +49 (2241) Mobil: +49 (172) Fax: +49 (2241) check.com

Kostensparen durch frühzeitige Identifizierung von Sicherheitslücken mit Threat Modeling und Fuzzing

Kostensparen durch frühzeitige Identifizierung von Sicherheitslücken mit Threat Modeling und Fuzzing Kostensparen durch frühzeitige Identifizierung von Sicherheitslücken mit Threat und Fuzzing Prof. Dr. Hartmut Pohl Hochschule Bonn-Rhein-Sieg Mit dem Einsatz von Tools zum Threat (Designphase) und Fuzzing

Mehr

Identifizierung unbekannter Sicherheitslücken und Software-Fehler durch Fuzzing

Identifizierung unbekannter Sicherheitslücken und Software-Fehler durch Fuzzing Fuzzelarbeit Identifizierung unbekannter Sicherheitslücken und Software-Fehler durch Fuzzing Oft genug finden Anwender und Hacker durch unpassende Eingaben mehr oder minder zielgerichtet Schwachstellen

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

Kostengünstige Identifizierung bisher nicht-erkannter Sicherheitslücken mit Threat Modeling, Static Source Code Analysis und Dynamic Analysis: Fuzzing

Kostengünstige Identifizierung bisher nicht-erkannter Sicherheitslücken mit Threat Modeling, Static Source Code Analysis und Dynamic Analysis: Fuzzing Kostengünstige Identifizierung bisher nicht-erkannter Sicherheitslücken mit Threat Modeling, Static Source Code Analysis und Dynamic Analysis: Fuzzing Prof. Dr. Hartmut Pohl Geschäftsführender Gesellschafter

Mehr

Anleitung zum Prüfen von WebDAV

Anleitung zum Prüfen von WebDAV Anleitung zum Prüfen von WebDAV (BDRS Version 8.010.006 oder höher) Dieses Merkblatt beschreibt, wie Sie Ihr System auf die Verwendung von WebDAV überprüfen können. 1. Was ist WebDAV? Bei der Nutzung des

Mehr

Powermanager Server- Client- Installation

Powermanager Server- Client- Installation Client A Server Client B Die Server- Client- Funktion ermöglicht es ein zentrales Powermanager Projekt von verschiedenen Client Rechnern aus zu bedienen. 1.0 Benötigte Voraussetzungen 1.1 Sowohl am Server

Mehr

Java Entwicklung für Embedded Devices Best & Worst Practices!

Java Entwicklung für Embedded Devices Best & Worst Practices! Java Entwicklung für Embedded Devices! George Mesesan Microdoc GmbH Natürlich können wir dieses neue log4j Bundle auch auf dem Device verwenden. Ist doch alles Java. Java Micro Edition (ME) Java Standard

Mehr

Analyse zum Thema: Laufzeit von Support-Leistungen für ausgewählte Server OS

Analyse zum Thema: Laufzeit von Support-Leistungen für ausgewählte Server OS Analyse zum Thema: Laufzeit von Support-Leistungen für Axel Oppermann Advisor phone: +49 561 506975-24 mobile: +49 151 223 223 00 axel.oppermann@experton-group.com Januar 2010 Inhalt Summary und Key Findings

Mehr

Research Note zum Thema: Laufzeit von Support-Leistungen für Server OS

Research Note zum Thema: Laufzeit von Support-Leistungen für Server OS Research Note zum Thema: Laufzeit von Support-Leistungen für Axel Oppermann Advisor phone: +49 561 506975-24 mobile: +49 151 223 223 00 axel.oppermann@experton-group.com November 2009 Inhalt 1 EINFÜHRUNG

Mehr

Prozessbewertung und -verbesserung nach ITIL im Kontext des betrieblichen Informationsmanagements. von Stephanie Wilke am 14.08.08

Prozessbewertung und -verbesserung nach ITIL im Kontext des betrieblichen Informationsmanagements. von Stephanie Wilke am 14.08.08 Prozessbewertung und -verbesserung nach ITIL im Kontext des betrieblichen Informationsmanagements von Stephanie Wilke am 14.08.08 Überblick Einleitung Was ist ITIL? Gegenüberstellung der Prozesse Neuer

Mehr

Lizenzen auschecken. Was ist zu tun?

Lizenzen auschecken. Was ist zu tun? Use case Lizenzen auschecken Ihr Unternehmen hat eine Netzwerk-Commuterlizenz mit beispielsweise 4 Lizenzen. Am Freitag wollen Sie Ihren Laptop mit nach Hause nehmen, um dort am Wochenende weiter zu arbeiten.

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

Anleitung zum Prüfen von WebDAV

Anleitung zum Prüfen von WebDAV Brainloop Secure Dataroom Version 8.20 Copyright Brainloop AG, 2004-2014. Alle Rechte vorbehalten. Sämtliche verwendeten Markennamen und Markenzeichen sind Eigentum der jeweiligen Markeninhaber. Inhaltsverzeichnis

Mehr

white sheep GmbH Unternehmensberatung Schnittstellen Framework

white sheep GmbH Unternehmensberatung Schnittstellen Framework Schnittstellen Framework Mit dem Schnittstellen Framework können Sie einerseits Ihre Schnittstellen automatisch überwachen. Eine manuelle Kontrolle wird überflüssig, da das Schnittstellen Framework ihre

Mehr

Lokale Installation von DotNetNuke 4 ohne IIS

Lokale Installation von DotNetNuke 4 ohne IIS Lokale Installation von DotNetNuke 4 ohne IIS ITM GmbH Wankelstr. 14 70563 Stuttgart http://www.itm-consulting.de Benjamin Hermann hermann@itm-consulting.de 12.12.2006 Agenda Benötigte Komponenten Installation

Mehr

statuscheck im Unternehmen

statuscheck im Unternehmen Studentische Beratungsgesellschaft für Sicherheitsangelegenheiten an der HWR Berlin statuscheck im Unternehmen Mit unserem statuscheck analysieren wir für Sie Schwachstellen, Risiken sowie Kosten und Nutzen

Mehr

TYPO3 CMS 6.2 LTS. Die neue TYPO3- Version mit Langzeit- Support

TYPO3 CMS 6.2 LTS. Die neue TYPO3- Version mit Langzeit- Support Die neue TYPO3- Version mit Langzeit- Support Am 25. März 2014 wurde mit die zweite TYPO3- Version mit Langzeit- Support (Long- Term- Support, kurz: LTS) veröffentlicht. LTS- Versionen werden drei Jahre

Mehr

Folgende Einstellungen sind notwendig, damit die Kommunikation zwischen Server und Client funktioniert:

Folgende Einstellungen sind notwendig, damit die Kommunikation zwischen Server und Client funktioniert: Firewall für Lexware professional konfigurieren Inhaltsverzeichnis: 1. Allgemein... 1 2. Einstellungen... 1 3. Windows XP SP2 und Windows 2003 Server SP1 Firewall...1 4. Bitdefender 9... 5 5. Norton Personal

Mehr

EIDAMO Webshop-Lösung - White Paper

EIDAMO Webshop-Lösung - White Paper Stand: 28.11.2006»EIDAMO Screenshots«- Bildschirmansichten des EIDAMO Managers Systemarchitektur Die aktuelle EIDAMO Version besteht aus unterschiedlichen Programmteilen (Komponenten). Grundsätzlich wird

Mehr

ISA Server 2004 - Best Practice Analyzer

ISA Server 2004 - Best Practice Analyzer ISA Server 2004 - Best Practice Analyzer Die Informationen in diesem Artikel beziehen sich auf: Microsoft ISA Server 2004 Seit dem 08.12.2005 steht der Microsoft ISA Server 2004 Best Practice Analyzer

Mehr

OP-LOG www.op-log.de

OP-LOG www.op-log.de Verwendung von Microsoft SQL Server, Seite 1/18 OP-LOG www.op-log.de Anleitung: Verwendung von Microsoft SQL Server 2005 Stand Mai 2010 1 Ich-lese-keine-Anleitungen 'Verwendung von Microsoft SQL Server

Mehr

Agile Software Verteilung

Agile Software Verteilung Agile Software Verteilung Vortrag: René Steg Steg IT-Engineering, Zürich (Schweiz) Gründe für Agile Software-Verteilung Wenn Sie Hunderte von Servern mit vielen Anwendungen betreiben Verteilte Anwendungen

Mehr

4D Server v12 64-bit Version BETA VERSION

4D Server v12 64-bit Version BETA VERSION 4D Server v12 64-bit Version BETA VERSION 4D Server v12 unterstützt jetzt das Windows 64-bit Betriebssystem. Hauptvorteil der 64-bit Technologie ist die rundum verbesserte Performance der Anwendungen und

Mehr

Handbuch USB Treiber-Installation

Handbuch USB Treiber-Installation Handbuch USB Treiber-Installation W&T Release 1.0 02/2003 by Wiesemann & Theis GmbH Microsoft und Windows sind eingetragene Warenzeichen der Microsoft Corporation Irrtum und Änderung vorbehalten: Da wir

Mehr

Windows Small Business Server (SBS) 2008

Windows Small Business Server (SBS) 2008 September 2008 Windows Small Business Server (SBS) 2008 Produktgruppe: Server Windows Small Business Server (SBS) 2008 Lizenzmodell: Microsoft Server Betriebssysteme Serverlizenz Zugriffslizenz () pro

Mehr

Informationssystemanalyse Problemstellung 2 1. Trotz aller Methoden, Techniken usw. zeigen Untersuchungen sehr negative Ergebnisse:

Informationssystemanalyse Problemstellung 2 1. Trotz aller Methoden, Techniken usw. zeigen Untersuchungen sehr negative Ergebnisse: Informationssystemanalyse Problemstellung 2 1 Problemstellung Trotz aller Methoden, Techniken usw. zeigen Untersuchungen sehr negative Ergebnisse: große Software-Systeme werden im Schnitt ein Jahr zu spät

Mehr

Praktikum IT-Sicherheit

Praktikum IT-Sicherheit IT-Sicherheit Praktikum IT-Sicherheit - Versuchshandbuch - Aufgaben Angriffstechniken In diesem Versuch werden verschiedene Angriffstechniken anhand von Beispielen vorgestellt. Die Ausarbeitung der Übungen

Mehr

Formular»Fragenkatalog BIM-Server«

Formular»Fragenkatalog BIM-Server« Formular»Fragenkatalog BIM-Server«Um Ihnen so schnell wie möglich zu helfen, benötigen wir Ihre Mithilfe. Nur Sie vor Ort kennen Ihr Problem, und Ihre Installationsumgebung. Bitte füllen Sie dieses Dokument

Mehr

CeBIT 17.03.2015. CARMAO GmbH 2014 1

CeBIT 17.03.2015. CARMAO GmbH 2014 1 CeBIT 17.03.2015 CARMAO GmbH 2014 1 HERZLICH WILLKOMMEN Applikationssicherheit beginnt lange bevor auch nur eine Zeile Code geschrieben wurde Ulrich Heun Geschäftsführender Gesellschafter der CARMAO GmbH

Mehr

Übung: Verwendung von Java-Threads

Übung: Verwendung von Java-Threads Übung: Verwendung von Java-Threads Ziel der Übung: Diese Übung dient dazu, den Umgang mit Threads in der Programmiersprache Java kennenzulernen. Ein einfaches Java-Programm, das Threads nutzt, soll zum

Mehr

Handbuch PCI Treiber-Installation

Handbuch PCI Treiber-Installation Handbuch PCI Treiber-Installation W&T Release 1.0, September 2003 09/2003 by Wiesemann & Theis GmbH Microsoft und Windows sind eingetragene Warenzeichen der Microsoft Corporation Irrtum und Änderung vorbehalten:

Mehr

Integration mit. Wie AristaFlow Sie in Ihrem Unternehmen unterstützen kann, zeigen wir Ihnen am nachfolgenden Beispiel einer Support-Anfrage.

Integration mit. Wie AristaFlow Sie in Ihrem Unternehmen unterstützen kann, zeigen wir Ihnen am nachfolgenden Beispiel einer Support-Anfrage. Integration mit Die Integration der AristaFlow Business Process Management Suite (BPM) mit dem Enterprise Information Management System FILERO (EIMS) bildet die optimale Basis für flexible Optimierung

Mehr

Bei der Focus Methode handelt es sich um eine Analyse-Methode die der Erkennung und Abstellung von Fehlerzuständen dient.

Bei der Focus Methode handelt es sich um eine Analyse-Methode die der Erkennung und Abstellung von Fehlerzuständen dient. Beschreibung der Focus Methode Bei der Focus Methode handelt es sich um eine Analyse-Methode die der Erkennung und Abstellung von Fehlerzuständen dient. 1. F = Failure / Finding An dieser Stelle wird der

Mehr

OUTSOURCING ADVISOR. Analyse von SW-Anwendungen und IT-Dienstleistungen auf ihre Global Sourcing Eignung. Bewertung von Dienstleistern und Standorten

OUTSOURCING ADVISOR. Analyse von SW-Anwendungen und IT-Dienstleistungen auf ihre Global Sourcing Eignung. Bewertung von Dienstleistern und Standorten Outsourcing Advisor Bewerten Sie Ihre Unternehmensanwendungen auf Global Sourcing Eignung, Wirtschaftlichkeit und wählen Sie den idealen Dienstleister aus. OUTSOURCING ADVISOR Der Outsourcing Advisor ist

Mehr

Über die Internetseite www.cadwork.de Hier werden unter Download/aktuelle Versionen die verschiedenen Module als zip-dateien bereitgestellt.

Über die Internetseite www.cadwork.de Hier werden unter Download/aktuelle Versionen die verschiedenen Module als zip-dateien bereitgestellt. Internet, Codes und Update ab Version 13 Um Ihnen einen möglichst schnellen Zugang zu den aktuellsten Programmversionen zu ermöglichen liegen Update-Dateien für Sie im Internet bereit. Es gibt drei Möglichkeiten

Mehr

ecaros-update 8.2 Update 8.2 procar informatik AG 1 Stand: DP 02/2014 Eschenweg 7 64331 Weiterstadt

ecaros-update 8.2 Update 8.2 procar informatik AG 1 Stand: DP 02/2014 Eschenweg 7 64331 Weiterstadt Update 8.2 procar informatik AG 1 Stand: DP 02/2014 Inhaltsverzeichnis 1 Allgemein... 3 2 Erforderliche Anpassungen bei der Installation...3 2.1 Konfiguration Jboss 7 Applicationserver (Schritt 4/10)...3

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

WI EDI Solution. Stand 17.02.2012

WI EDI Solution. Stand 17.02.2012 WI EDI Solution Stand 17.02.2012 WIAG Überblick 2011 - SAP, SAP BW, SAP SEM/BPS, SAP BPC, SAP R/3, ABAP, Netweaver sind eingetragene Warenzeichen der SAP AG, Walldorf Folie 1 Inhalt Was ist WIEDIS? IDOC

Mehr

Anleitung zum Computercheck Windows Firewall aktivieren oder eine kostenlose Firewall installieren

Anleitung zum Computercheck Windows Firewall aktivieren oder eine kostenlose Firewall installieren Anleitung zum Computercheck Windows Firewall aktivieren oder eine kostenlose Firewall installieren Ziel der Anleitung Sie möchten ein modernes Firewallprogramm für Ihren Computer installieren, um gegen

Mehr

Informationstechnik in der Prozessüberwachung und -steuerung. Grundsätzliche Anmerkungen

Informationstechnik in der Prozessüberwachung und -steuerung. Grundsätzliche Anmerkungen Informationstechnik in der Prozessüberwachung und -steuerung Grundsätzliche Anmerkungen Bundesamt für Sicherheit in der Informationstechnik Postfach 20 03 63 53133 Bonn Tel.: +49 22899 95820 E-Mail: ics-sec@bsi.bund.de

Mehr

it-check EGELI nutzen sie ihr gesamtes it-potenzial informatik

it-check EGELI nutzen sie ihr gesamtes it-potenzial informatik it-check nutzen sie ihr gesamtes it-potenzial EGELI informatik optimieren sie ihre it-welt Dr. Eliane Egeli Mit unseren IT-Checks profitieren Sie in mehrfacher Hinsicht. Etwa durch die bessere Nutzung

Mehr

Avira Support Collector. Kurzanleitung

Avira Support Collector. Kurzanleitung Avira Support Collector Kurzanleitung Inhaltsverzeichnis 1. Einleitung... 3 2. Ausführung des Avira Support Collectors... 3 2.1 Auswahl des Modus...4 3. Einsammeln der Informationen... 5 4. Auswertung

Mehr

AMS Alarm Management System

AMS Alarm Management System AMS Alarm Management System AMS ist das Alarm Management System für Mobotix Kamerasysteme. AMS ist speziell für die Verwendung in Einsatzzentralen bei Sicherheitsdiensten oder Werkschutzzentralen vorgesehen.

Mehr

FACHARTIKEL 2013 Software Programmierung, Testing und Implementierung zum Stichtag mithilfe von PERM-Domänen

FACHARTIKEL 2013 Software Programmierung, Testing und Implementierung zum Stichtag mithilfe von PERM-Domänen FACHARTIKEL 2013 Software Programmierung, Testing und Implementierung zum Stichtag mithilfe von PERM-Domänen von Herbert Mittelbach Stichtage Von Herbert Mittelbach Stichtage haben stets eine besondere

Mehr

ITF2XML. Transferservice. Version 1.0. infogrips GmbH, Zürich client10.doc, Revision 1.1. Tel.: 01 / 350 10 10 Fax: 01 / 350 10 19.

ITF2XML. Transferservice. Version 1.0. infogrips GmbH, Zürich client10.doc, Revision 1.1. Tel.: 01 / 350 10 10 Fax: 01 / 350 10 19. GmbH Obstgartenstrasse 7 Informationssysteme Engineering & Consulting CH-8035 Zürich Tel.: 01 / 350 10 10 Fax: 01 / 350 10 19 ITF2XML Transferservice Version 1.0 infogrips GmbH, Zürich client10.doc, Revision

Mehr

Informatik I Debugging

Informatik I Debugging Der erste Computer-Bug Informatik I G. Zachmann Clausthal University, Germany zach@in.tu-clausthal.de Grace Hopper Admiral, US Navy 2 4 Folgen von Programmfehlern 1962 führte ein fehlender Bindestrich

Mehr

IBM Software Demos Tivoli Provisioning Manager for OS Deployment

IBM Software Demos Tivoli Provisioning Manager for OS Deployment Für viele Unternehmen steht ein Wechsel zu Microsoft Windows Vista an. Doch auch für gut vorbereitete Unternehmen ist der Übergang zu einem neuen Betriebssystem stets ein Wagnis. ist eine benutzerfreundliche,

Mehr

Der Schutz von Patientendaten

Der Schutz von Patientendaten Der Schutz von Patientendaten bei (vernetzten) Software-Medizinprodukten aus Herstellersicht 18.09.2014 Gerald Spyra, LL.M. Kanzlei Spyra Vorstellung meiner Person Gerald Spyra, LL.M. Rechtsanwalt Spezialisiert

Mehr

Erster Bug: eine Motte

Erster Bug: eine Motte SOFTWAREFEHLER Der erste Bug Erster Bug: eine Motte Der Begriff Bug (deutsch: Motte) stammt aus dem Jahre 1945, als Ingenieure in einem Schaltrelais eines Computers (Harvard Mark II-System) eine Motte

Mehr

Task: Nmap Skripte ausführen

Task: Nmap Skripte ausführen Task: Nmap Skripte ausführen Inhalt Einfache Netzwerkscans mit NSE Ausführen des Scans Anpassung der Parameter Einleitung Copyright 2009-2015 Greenbone Networks GmbH Herkunft und aktuellste Version dieses

Mehr

[Customer Service by KCS.net] KEEPING CUSTOMERS SUCCESSFUL

[Customer Service by KCS.net] KEEPING CUSTOMERS SUCCESSFUL [Customer Service by KCS.net] KEEPING CUSTOMERS SUCCESSFUL Was bedeutet Customer Service by KCS.net? Mit der Einführung von Microsoft Dynamics AX ist der erste wichtige Schritt für viele Unternehmen abgeschlossen.

Mehr

Lizenzierung von System Center 2012

Lizenzierung von System Center 2012 Lizenzierung von System Center 2012 Mit den Microsoft System Center-Produkten lassen sich Endgeräte wie Server, Clients und mobile Geräte mit unterschiedlichen Betriebssystemen verwalten. Verwalten im

Mehr

Die Softwareentwicklungsphasen!

Die Softwareentwicklungsphasen! Softwareentwicklung Die Softwareentwicklungsphasen! Die Bezeichnungen der Phasen sind keine speziellen Begriffe der Informatik, sondern den allgemeinen Prinzipien zur Produktion integrierter Systeme entliehen.

Mehr

HTBVIEWER INBETRIEBNAHME

HTBVIEWER INBETRIEBNAHME HTBVIEWER INBETRIEBNAHME Vorbereitungen und Systemvoraussetzungen... 1 Systemvoraussetzungen... 1 Betriebssystem... 1 Vorbereitungen... 1 Installation und Inbetriebnahme... 1 Installation... 1 Assistenten

Mehr

How-to: Webserver NAT. Securepoint Security System Version 2007nx

How-to: Webserver NAT. Securepoint Security System Version 2007nx Securepoint Security System Inhaltsverzeichnis Webserver NAT... 3 1 Konfiguration einer Webserver NAT... 4 1.1 Einrichten von Netzwerkobjekten... 4 1.2 Erstellen von Firewall-Regeln... 6 Seite 2 Webserver

Mehr

Data Mining-Projekte

Data Mining-Projekte Data Mining-Projekte Data Mining-Projekte Data Mining stellt normalerweise kein ei nmaliges Projekt dar, welches Erkenntnisse liefert, die dann nur einmal verwendet werden, sondern es soll gewöhnlich ein

Mehr

TechNote. Produkt: TWINFAX 7.0 (ab CD_24), TWINFAX 6.0 Modul: SMTP, T611, R3 Kurzbeschreibung: Briefpapier- und Mailbodyunterstützung

TechNote. Produkt: TWINFAX 7.0 (ab CD_24), TWINFAX 6.0 Modul: SMTP, T611, R3 Kurzbeschreibung: Briefpapier- und Mailbodyunterstützung Produkt: TWINFAX 7.0 (ab CD_24), TWINFAX 6.0 Modul: SMTP, T611, R3 Kurzbeschreibung: Briefpapier- und Mailbodyunterstützung Diese Anleitung hilft Ihnen, das nachfolgend geschilderte Problem zu beheben.

Mehr

Kompatibilitätsmodus und UAC

Kompatibilitätsmodus und UAC STEITZ IT-Solutions Kompatibilitätsmodus und UAC Der nachfolgenden Artikel beschreibt, wie Sie die UAC (User Account Control = Benutzerkontensteuerung) für ausgewählte Anwendungen deaktivieren. Mit der

Mehr

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Suche schlecht beschriftete Bilder mit Eigenen Abfragen Suche schlecht beschriftete Bilder mit Eigenen Abfragen Ist die Bilderdatenbank über einen längeren Zeitraum in Benutzung, so steigt die Wahrscheinlichkeit für schlecht beschriftete Bilder 1. Insbesondere

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

.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage

.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage .htaccess HOWTO zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage Stand: 21.06.2015 Inhaltsverzeichnis 1. Vorwort...3 2. Verwendung...4 2.1 Allgemeines...4 2.1 Das Aussehen der.htaccess

Mehr

Erstellen einer PostScript-Datei unter Windows XP

Erstellen einer PostScript-Datei unter Windows XP Erstellen einer PostScript-Datei unter Windows XP Sie möchten uns Ihre Druckvorlage als PostScript-Datei einreichen. Um Fehler in der Herstellung von vorneherein auszuschließen, möchten wir Sie bitten,

Mehr

VB.net Programmierung und Beispielprogramm für GSV

VB.net Programmierung und Beispielprogramm für GSV VB.net Programmierung und Beispielprogramm für GSV Dokumentation Stand vom 26.05.2011 Tel +49 (0)3302 78620 60, Fax +49 (0)3302 78620 69, info@me-systeme.de, www.me-systeme.de 1 Inhaltsverzeichnis Vorwort...2

Mehr

AnNoText. AnNoText Online-Update. Copyright Wolters Kluwer Deutschland GmbH

AnNoText. AnNoText Online-Update. Copyright Wolters Kluwer Deutschland GmbH Copyright Wolters Kluwer Deutschland GmbH AnNoText AnNoText Online-Update Wolters Kluwer Deutschland GmbH Software + Services Legal Robert-Bosch-Straße 6 D-50354 Hürth Telefon (02 21) 9 43 73-6000 Telefax

Mehr

I N F O R M A T I O N V I R T U A L I S I E R U N G. Wir schützen Ihre Unternehmenswerte

I N F O R M A T I O N V I R T U A L I S I E R U N G. Wir schützen Ihre Unternehmenswerte I N F O R M A T I O N V I R T U A L I S I E R U N G Wir schützen Ihre Unternehmenswerte Wir schützen Ihre Unternehmenswerte Ausfallsicherheit durch Virtualisierung Die heutigen Anforderungen an IT-Infrastrukturen

Mehr

Die Makler System Club FlowFact Edition

Die Makler System Club FlowFact Edition Die Makler System Club FlowFact Edition Erfolgreiche Unternehmen setzen auf stabile Prozesse. Funktionierende Prozesse bringen höhere Erträge, zufriedene Kunden und sorgen dafür, dass Mitarbeiter zuverlässiger

Mehr

ANYWHERE Zugriff von externen Arbeitsplätzen

ANYWHERE Zugriff von externen Arbeitsplätzen ANYWHERE Zugriff von externen Arbeitsplätzen Inhaltsverzeichnis 1 Leistungsbeschreibung... 3 2 Integration Agenda ANYWHERE... 4 3 Highlights... 5 3.1 Sofort einsatzbereit ohne Installationsaufwand... 5

Mehr

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem Fachbericht zum Thema: Anforderungen an ein Datenbanksystem von André Franken 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis 1 2 Einführung 2 2.1 Gründe für den Einsatz von DB-Systemen 2 2.2 Definition: Datenbank

Mehr

Risikoanalyse mit der OCTAVE-Methode

Risikoanalyse mit der OCTAVE-Methode Risikoanalyse mit der OCTAVE-Methode 07.05.2013 Dr. Christian Paulsen DFN-CERT Services GmbH Bedrohungslage Trends der Informationssicherheit: Hauptmotivation der Angreifer: Geld, Informationen Automatisierte

Mehr

Konsolidierung und Neuimplementierung von VIT. Aufgabenbeschreibung für das Software Engineering Praktikum an der TU Darmstadt

Konsolidierung und Neuimplementierung von VIT. Aufgabenbeschreibung für das Software Engineering Praktikum an der TU Darmstadt Konsolidierung und Neuimplementierung von VIT Aufgabenbeschreibung für das Software Engineering Praktikum an der TU Darmstadt Inhaltsverzeichnis 1 Was ist der Kontext?... 1 2 VIT: Ein sehr erfolgreiches

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

Senden von strukturierten Berichten über das SFTP Häufig gestellte Fragen

Senden von strukturierten Berichten über das SFTP Häufig gestellte Fragen Senden von strukturierten Berichten über das SFTP Häufig gestellte Fragen 1 Allgemeines Was versteht man unter SFTP? Die Abkürzung SFTP steht für SSH File Transfer Protocol oder Secure File Transfer Protocol.

Mehr

Kurzfassung der Studienarbeit

Kurzfassung der Studienarbeit Kurzfassung der Studienarbeit Abteilung Informatik Namen der Studenten Roman Widmer Mikkala Pedersen Studienjahr Sommersemester 2004 Titel der Studienarbeit.NET Skript Debugger Examinator Der GUI-Builder

Mehr

Testplan. Hochschule Luzern Technik & Architektur. Software Komponenten FS13. Gruppe 03 Horw, 16.04.2013

Testplan. Hochschule Luzern Technik & Architektur. Software Komponenten FS13. Gruppe 03 Horw, 16.04.2013 Software Komponenten FS13 Gruppe 03 Horw, 16.04.2013 Bontekoe Christian Estermann Michael Moor Simon Rohrer Felix Autoren Bontekoe Christian Studiengang Informatiker (Berufsbegleitend) Estermann Michael

Mehr

- Zweimal Wöchentlich - Windows Update ausführen - Live Update im Norton Antivirusprogramm ausführen

- Zweimal Wöchentlich - Windows Update ausführen - Live Update im Norton Antivirusprogramm ausführen walker radio tv + pc GmbH Flüelerstr. 42 6460 Altdorf Tel 041 870 55 77 Fax 041 870 55 83 E-Mail info@walkerpc.ch Wichtige Informationen Hier erhalten sie einige wichtige Informationen wie sie ihren Computer

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 Deutsche Telekom AG Products & Innovation T-Online-Allee 1 64295 Darmstadt für das IT-System Developer Garden

Mehr

Das Handbuch zu Simond. Peter H. Grasch

Das Handbuch zu Simond. Peter H. Grasch Peter H. Grasch 2 Inhaltsverzeichnis 1 Einführung 6 2 Simond verwenden 7 2.1 Benutzereinrichtung.................................... 7 2.2 Netzwerkeinrichtung.................................... 9 2.3

Mehr

schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv

schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv Roboter programmieren mit NXC für Lego Mindstorms NXT 1. Auflage Roboter programmieren mit NXC für Lego Mindstorms NXT schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv Verlag

Mehr

:: Anleitung Hosting Server 1cloud.ch ::

:: Anleitung Hosting Server 1cloud.ch :: :: one source ag :: Technopark Luzern :: D4 Platz 4 :: CH-6039 Root-Längenbold LU :: :: Fon +41 41 451 01 11 :: Fax +41 41 451 01 09 :: info@one-source.ch :: www.one-source.ch :: :: Anleitung Hosting Server

Mehr

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE 2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE 2.1 Die Einrichtung der Benutzeroberfläche Das Einrichten einer Android-Eclipse-Entwicklungsumgebung zur Android-Entwicklung ist grundsätzlich nicht

Mehr

The ToolChain.com. Grafisches Debugging mit der QtCreator Entwicklungsumgebung

The ToolChain.com. Grafisches Debugging mit der QtCreator Entwicklungsumgebung The ToolChain Grafisches Debugging mit der QtCreator Entwicklungsumgebung geschrieben von Gregor Rebel 2014-2015 Hintergrund Neben dem textuellen Debuggen in der Textkonsole bieten moderene Entwicklungsumgebungen

Mehr

Firewalls für Lexware Info Service konfigurieren

Firewalls für Lexware Info Service konfigurieren Firewalls für Lexware Info Service konfigurieren Inhaltsverzeichnis: 1. MANUELLER DOWNLOAD 1 2. ALLGEMEIN 1 3. EINSTELLUNGEN 1 4. BITDEFENDER VERSION 10 2 5. GDATA INTERNET SECURITY 2007 4 6. ZONE ALARM

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

SICHERHEITSANALYSE & PENTEST SCHWÄCHEN ERKENNEN HEISST STÄRKE GEWINNEN.

SICHERHEITSANALYSE & PENTEST SCHWÄCHEN ERKENNEN HEISST STÄRKE GEWINNEN. SICHERHEITSANALYSE & PENTEST SCHWÄCHEN ERKENNEN HEISST STÄRKE GEWINNEN. willkommen in sicherheit. 02...03 UNSER GEZIELTER ANGRIFF, IHRE BESTE VERTEIDIGUNG. Hackerangriffe sind eine wachsende Bedrohung

Mehr

Softwaretechnische Anforderungen zu Opale bluepearl Version 1.0 vom 23.05.2013

Softwaretechnische Anforderungen zu Opale bluepearl Version 1.0 vom 23.05.2013 Sehr geehrte Kundin, Sehr geehrter Kunden. Sie werden demnächst die neue Version Opale bluepearl einsetzen. Damit Sie bestmöglich von der 3ten Generation der Opale-Lösungen profitieren können, ist es an

Mehr

InfoSEC AWARENESS RESSOURCEN BESTMÖGLICH NUTZEN. RISIKEN PRAKTIKABEL REDUZIEREN. InfoSEC Awareness Ein Workshop von ExpertCircle.

InfoSEC AWARENESS RESSOURCEN BESTMÖGLICH NUTZEN. RISIKEN PRAKTIKABEL REDUZIEREN. InfoSEC Awareness Ein Workshop von ExpertCircle. InfoSEC AWARENESS RESSOURCEN BESTMÖGLICH NUTZEN. RISIKEN PRAKTIKABEL REDUZIEREN. InfoSEC Awareness Ein Workshop von ExpertCircle. RESSOURCEN BESTMÖGLICH NUTZEN. WORKSHOP INFOSEC AWARENESS DAS NOTWENDIGE

Mehr

1. IPSec Verbindung zwischen 2 Gateways mit dynamischen IP Adressen

1. IPSec Verbindung zwischen 2 Gateways mit dynamischen IP Adressen 1. IPSec Verbindung zwischen 2 Gateways mit dynamischen IP Adressen 1.1 Einleitung Im Folgenden wird die Konfiguration einer IPsec Verbindung mit dynamischen IP-Adressen auf beiden Seiten beschrieben.

Mehr

Datensicherung. Beschreibung der Datensicherung

Datensicherung. Beschreibung der Datensicherung Datensicherung Mit dem Datensicherungsprogramm können Sie Ihre persönlichen Daten problemlos Sichern. Es ist möglich eine komplette Datensicherung durchzuführen, aber auch nur die neuen und geänderten

Mehr

.. für Ihre Business-Lösung

.. für Ihre Business-Lösung .. für Ihre Business-Lösung Ist Ihre Informatik fit für die Zukunft? Flexibilität Das wirtschaftliche Umfeld ist stärker den je im Umbruch (z.b. Stichwort: Globalisierung). Daraus resultierenden Anforderungen,

Mehr

Installationsanleitung dateiagent Pro

Installationsanleitung dateiagent Pro Installationsanleitung dateiagent Pro Sehr geehrter Kunde, mit dieser Anleitung möchten wir Ihnen die Installation des dateiagent Pro so einfach wie möglich gestalten. Es ist jedoch eine Softwareinstallation

Mehr

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge Ab der Version forma 5.5 handelt es sich bei den Orientierungshilfen der Architekten-/Objektplanerverträge nicht

Mehr

Workshop: Eigenes Image ohne VMware-Programme erstellen

Workshop: Eigenes Image ohne VMware-Programme erstellen Workshop: Eigenes Image ohne VMware-Programme erstellen Normalerweise sind zum Erstellen neuer, kompatibler Images VMware-Programme wie die Workstation, der ESX-Server oder VMware ACE notwendig. Die Community

Mehr

Anleitung mtan (SMS-Authentisierung) mit SSLVPN.TG.CH

Anleitung mtan (SMS-Authentisierung) mit SSLVPN.TG.CH Amt für Informatik Anleitung mtan (SMS-Authentisierung) mit SSLVPN.TG.CH Anleitung vom 12. September 2009 Version: 1.0 Ersteller: Ressort Sicherheit Zielgruppe: Benutzer von SSLVPN.TG.CH Kurzbeschreib:

Mehr

Handbuch Amos Ersteller: EWERK MUS GmbH Erstellungsdatum: 17.02.2011

Handbuch Amos Ersteller: EWERK MUS GmbH Erstellungsdatum: 17.02.2011 Handbuch Amos Ersteller: EWERK MUS GmbH Erstellungsdatum: 17.02.2011 Inhalt 1 Vorwort... 3 2 Installation... 4 2.1 Voraussetzungen... 4 2.2 Installation... 4 3 Einstellungen und Funktionen... 5 3.1 ankommende

Mehr

5.2 Neue Projekte erstellen

5.2 Neue Projekte erstellen 5.2 Neue Projekte erstellen Das Bearbeiten von bestehenden Projekten und Objekten ist ja nicht schlecht wie aber können Sie neue Objekte hinzufügen oder gar völlig neue Projekte erstellen? Die Antwort

Mehr

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum C A R L V O N O S S I E T Z K Y Agile Vorgehensmodelle in der Softwareentwicklung: Scrum Johannes Diemke Vortrag im Rahmen der Projektgruppe Oldenburger Robot Soccer Team im Wintersemester 2009/2010 Was

Mehr

GEORG.NET Anbindung an Ihr ACTIVE-DIRECTORY

GEORG.NET Anbindung an Ihr ACTIVE-DIRECTORY GEORG.NET Anbindung an Ihr ACTIVE-DIRECTORY Vorteile der Verwendung eines ACTIVE-DIRECTORY Automatische GEORG Anmeldung über bereits erfolgte Anmeldung am Betriebssystem o Sie können sich jederzeit als

Mehr