...


Henry Kingston
Diese Lernkarten bieten einen grundlegenden Einblick in IT-Sicherheit und behandelt Themen wie Authentisierung, Verschlüsselung und Netzwerksicherheit. Sie erklären verschiedene Sicherheitsmodelle, Protokolle und Verfahren, darunter OAuth, OpenID, VPNs und Firewalls. Die Karteikarten sind besonders nützlich für Anfänger, die die Grundlagen der IT-Sicherheit verstehen möchten, sowie für Fachleute, die ihr Wissen auffrischen oder vertiefen wollen.
Cartes-fiches
154
Utilisateurs
3
Langue
Allemand
Catégorie
Informatique
Créé / Mis à jour
21.03.2014 / 28.12.2021

Cartes-fiches

Nennen Sie Beispiele für einen Passiven Angriff (3p)

  • Abhören / Lesen von Kommunikationskanälen
  • Passwort-Sniffer
  • Keylogger

Nennen Sie Beispiele für einen aktiven Angriff (6p)

  • Verändern von Daten bei der Übertragung oder in Dateien
  • Replay-Attacken (Wiedereinspielen von Daten)
  • Spoofing-Attacken (falsche Identität)
  • Request Forgery ("Unterschieben" von Daten)
  • Denial of Service (DoS)
  • Social Engineering

Was sind Computerviren? Und Welchen Schaden können sie anrichten? (6p)

  • Selbstvermehrendes Computerprogramm
  • Vermehrung über Wirtsprogramm
  • Nicht eigenständig lauffähig
  • Schaden durch
    • Unkontrollierte Vermehrung (Ressourcenverbrauch)
    • Programmierfehler
    • Ausspähen von Daten
    • Gezielte Schadfunktionen

Nennen Sie 4 Virentypen (4p)

  • Programmviren
  • Bootsektorviren
  • Makro-Viren
  • "Daten-Viren"

Nennen Sie Infectionsarten von Computerviren (3p)

  • Überschreibende Viren
  • Prepender-Viren
  • Appender-Viren

Nennen Sie Schutzmechanismen  die Computerviren verwenden um sich zu tarnen (4p)

  • Abfangen von Systemaufrufen (Stealth viren)
  • Verschlüsselung soll typische Zeichenketten (Signaturen) verbergen
  • Polymorphe Viren: variable Verschlüsselung, Variation der Entschlüsselungsroutine bei Infektion
  • Retroviren: deaktivieren Virenscanner etc.

Nennen Sie Präventionsmöglichkeiten gegen Vieren (6p)

  • Eingeschränkte Berechtigungen
  • Verschlüsseln von Code
  • Verwendung von Prüfsummen (Hashcodes)
  • Verwendung aktueller Softwareversionen und Security Patches
  • Deaktivierung von Automatismen und riskanten Funktionen
  • Mitdenken

Nennen Sie Möglichkeiten Viren zu erkennen (6p)

  • Scan nach bekannten Viren (Signaturen)
  • Versuch der Erkennung anhand Code-Muster
  • Manuell auf Anforderung (meist Scan aller Dateien)
  • Automatische Prüfung aller Schreib-/Lesezugriffe
  • Erkennung typischer Verhaltensmuste
  • Monitoring (Überwachung von Dateistrukturen / Dateien über Hashcodes)

Was sind Würmer? (5p)

  • Selbstreproduzierendes Programm, ähnlich Virus
  • Eigenständig lauffähig, benötigt kein Wirtsprogramm
  • Verbreitung über Netzwerke oder Wechselmedium
  • Benötigt meist Unterstützung, um auf ein System zu gelangen und ausgeführt zu werden
  • Schadverhalten wie bei Virus

Nennen Sie Verbreitungsmechanismen von Würmern (7p)

  • E-Mail
  • Instant-Messaging, IRC
  • P2P-Würmer
  • Netzwerkdienste
  • Wechseldatenträger
  • USB-Devices
  • Smartphones

Was sind E-Mail-Würmer? (4p)

  • Verbreitung über E-Mail
  • Ausführung durch Fehler in Mailsoftware oder durch "Mitarbeit des Benutzers"
  • Automatisches Öffnen von Anhängen
  • Beeinflussung des Benutzers

Was sind Trojanische Pferde?

  • Programm mit versteckter Schadfunktion
  • enhält oder installiert Schadcode
  • Kann Schadcode ggf. auch nachladen
  • Auch als Plugin für Anwendung (Browser)

Wie können sich Trojanische Pferde verbreiten?

  • E-Mail-Anhänge
  • Downloads
  • Datenträger
  • Würmer
  • Weiterverbreitung meist durch Benutzer

Welche Schadroutinen können Trojanische Pferde ausführen?

  • Ausspähen von Daten
  • Deaktivieren von Sicherheitsmechanismen
  • Fernsteuerung des Rechners
  • Umleitung von Webseiten
  • Zerstörung / Verschlüsselung von Daten

Nennen Sie Gegenmaßnahmen zu Trojansichen Pferden

  • Minimale Rechtevergabe
  • Verschlüsselung von Daten
  • Vierenscanner
  • Verhaltensüberwachung
  • Nur vertrauenswürdige Software installieren

Was versteht man unter Botnetzen?

  • Netzwerk von infizierten Rechnern (Bots)
  • Infizierung meist durch Viren, Würmer, trojanische Pferde
  • Fernsteuerung meist über zentralen Rechner

Wofür können Botnetze verwendet werden ?

  • SPAM-Versand
  • DdoS-Angriffe
  • Klickbetrug
  • Resourcenmissbrauch
    • Filesharing
    • Rechenleistung
  • Zunehmend gezielt krimineller Einsatz

Was sind Rootkits?

  • Sammlung von Tools / Maleware
    • Verbergen von Zugriffen auf kompromittiertes System
    • Verbergen seiner eigenen Installation und Existenz
    • Bereitstellen von Backdoor-Funktionen
    • Sammeln von Informationen
    • Bot-Funktionen
  • Installation meist über Sicherheitslücken
  • Teilweise auch über Trojanische Pferde
  • Verbergen oft weitere, an sich leicht erkennbare Malware

Nennen Wege die Installation von Rootkits zu verhindern

  • Maßnamen gegen Trojanische Pferde
  • Schließen von Sicherheitslücken
  • Hardware-BIOS-Schreibschutz aktivieren

Nennen sie Möglichkeiten Rootkits zu erkennen

  • Ähnlich Viren, Würmer, Trojanische Pferde etc.
  • Versucht sich selbst zu verbergen -> Erkennung schwierig
    • Scans von sauberem System aus (Boot von CD o. Ä.)
    • Verhaltenserkennung (geändertes Verhalten von Systemroutinen)
    • Analyse von Speicherabzügen

Nennen sie Möglichkeiten Rootkits zu entfernen

  • Entfernung aus bestehender Installation nur begrenzt zuverlässig
  • Bestimmte Rootkits durch Virenscanner erkenn- und entfernbar
  • Scannner darf nicht in infiziertem System laufen -> Boot von externenm Medium
  • Meist Neuinstallation fällig
  • Rootkit in BIOS betrifft auch den Start externer Medien oder Neuinstallation

 

Was versteht man unter einem Buffer Overflow?

  • Ausnutzen unzureichender Eingabevalidierung
  • Begrenzter Seicherbereich wird mit zu großen Datenblöcken gefüllt
  • Dadurch werden angrenzende Speicherbereiche überschrieben

Welche Folgen kann ein Bufferoverflow haben

  • Programmabsturz
  • Verfälschung von Daten
  • Aushebeln von Sicherheitsprüfungen
  • Ausführen von eingeschleustem Code

Was versteht man unter einem Stackoverflow?

  • Bei Prozeduraufruf werden Rücksprungadresse und Aufrufparameter auf dem Stack abgelegt
  • Stack wächst von oben her
  • Overflow bei Aufrufparameter kann Rücksprungadresse überschreiben
  • Einfache Variante: ungültige Adresse führt zu Programmabsturz
  • Erweiterte Variante: Code einschleusen
  • Zusätzlich zur neuen Rücksprungadresse wird ausführbarer Code eingeschleust
  • Rücksprungadresse zeigt auf eigenen Code
  • Ungenau bekannte Position kann durch NOP-Opcodes ausgeglichen werden
  • Eingeschleuster Code wird mit Berechtigung des manipulierten Prozesses ausgeführt -> "Privilege Escalation"

Was versteht man unter einem Heap Overflow?

  • Grundsätzlich selbes Konzept
  • Overflow von dynamisch allokiertem Speicher
  • Ausführen beliebigen Codes durch Überschreiben von Funkitonspointern

Welche Gegenmaßnahmen gibt es zu Overflows?

  • Saubere Programmierung
    • Prüfung von Bereichsgrenzen
    • Unterstützung durch Bibliotheken
  • Toolunterstützte Codeanalyse
  • Zusätzliche Prüfungen
    • canary bei stack overflow
    • Umsetzung durch Compilererweiterungen
  • Nutzung typsicherer Programmiersprachen
    • Sprachen mit direkter Zeigermanipulation wie C/C++ besonders anfällig
    • Andere Sprachen wie Java, C# sicherer durch eingebaute Bereichsprüfungen

Was versteht man unter einem Injection-Angriff?

  • Einschleusen von ausführbaren Anweisungen über Schnittstellen oder Benutzereingaben
    • SQL-Injection
    • Dynamic Evaluation (eval-Injection)
    • Shell Injection
    • HTML-Script Injection (cross site scripting)

Wie können SQL-Anweisungen injected werden?

  • Durch ungenügende Eingabevalidierung
    • z.B. Ungeprüfte Übernahme von Eingaben in WHERE-Bedingung
    • Erlaubt Ausblenden von Statement-Teilen durch Kommentarzeichen oder zusätzliche Teile in WHERE-Clause
    • Erlaubt Ausführen praktisch beliebiger Anweisungen

Welche Gegenmaßnahmen gibt es zu SQL-Injection?

  • Vermeidung
    • Escaping
    • Pattern-Checks
    • Prüfung der Eingabe auf erlaubte bzw. verbotene Zeichen (Black- / Whitelisting)
    • Verwendung von Prepared Statements
    • Verwendung eines OR-Mapper
  • Schadensbegrenzung
    • Rechtebeschränkung

Was versteht man unter eval-Injection?

  • Nutzung ungeprüfter Benutzereingaben in eval-Anweisung (dynamische Ausführung von Strings als Programmcode zur Laufzeit)
  • Erlaubt ausführung von fast beliebigem Programmcode
  • Ähnlich: include file injection

Nennen sie Gegenmaßnahmen zu Eval-Injection

  • Don't do it!
  • Escaping
  • Black-/Whitelisting
  • Rechtebegrenzung

Was versteht man unter shell-Injection?

  • Nutzung ungeprüfter Benutzereingaben in Shell-Kommandos
    • z.B. system()-call
  • Erlaubt Ausführung von fast beliebigen commandline-Befehlen
    • Sequence
    • Pipe
    • Command substition
    • AND, OR
    • IO-Redirection

Nennen sie Gegenmaßnahmen zu Shell-Injection

  • Don't do it
    • Nutzung von libs und direkten APIs statt system()-call
  • Escaping
    • Viele Sprachen bieten schon entsprechende Funktionen (PHP, Python)
  • Eingabevalidierung (Pattern-Checks, Black-/Whitelisting)

Was versteht man unter Script-Injection (Cross Site Scripting, XSS)

  • Injektion von Code (z.B. JavaScript-Block) in Webseiten
    • Non-persistent (reflected) / persistent (stored)
    • Server- ("traditional") /Clientseitig (DOM-based)
  • Ermöglicht Umgehen von AuthN-/AuthZ-Mechanismen, z.B. Same-Origin-Policy

Nennen sie Gegenmaßnahmen zu Script-Injection

  • Eingabevalidierung
  • Output encoding / escaping
    • Ersetzen von HTML-Sonderzeichen in Daten, die in die Seite gerendert werden
  • HttpOnly-Cookies
  • Bindung von Sessions/Cookies an weitere Informationen (IP-Adresse)

Was versteht man unter Cross Site Request Forgery?

  • Dem Benuter wird ein Request auf eine andere Seite untergeschoben
  • Request wird mit der Session bzw. den Credentials des Users ausgeführt
  • Basiert auf Vertrauen der Anwendung in die Benutzeridentität

Nennen sie Gegenmaßnahmen zu Cross Side Request Forgery

  • Nutzerseitig kaum Gegenmaßnahmen möglich
    • Ausloggen nach Nutzung der Anwendung
    • Dauerhafte Anmeldung ("remember me") vermeiden
  • Anwendungsseitig
    • Verwendung von Tokens und Nonces zusätzlich zu Session-Cookie
    • Übertragung von Authentisierungsdaten als Request-Parameter oder Header
    • Prüfung von Referer- oder Origin-Header (allein nicht ausreichend)
    • Unterstüzung durch Frameworks oder Bibliotheken

Was ist Broken Authentication and Session Management?

  • Fehlerhafte Implementierung von Funktionen im Bereich Authentication and Session Management
  • Erlaubt Angreifern Zugriff auf Passworte, Schlüssel, Tokens oder erlaubt Identitätsmißbrauch auf andere Weise

Was ist Insecure Direct Object References?

  • Direct Object Reference: nach außen sichtbare Referenz auf internes Objekt (Datei, Directory, Datenbank-Key, ..)
  • Mangelnde Validierung erlaubt unautorisierten Zugriff auf Daten oder gar Ausbruch aus dem Anwendungskontext

Was versteht man unter Security Misconfiguration?

  • Sicherheitslücken aufgrund fehlerhafter Konfiguration auf verschiedensten Ebenen
    • Anwendung
    • Application Server
    • Web Server
    • Datenbankserver
    • Betriebssystem
  • Beinhaltet auch Versionstände von Komponenten und Bibliotheken

Lernen