AP2_FISI - HTTP - Sicherheitsaspekte und Bedrohungen

Deck: AP2_FISI Kategorie: HTTP Subkategorie: Sicherheitsaspekte und Bedrohungen Anzahl Karten: 22


Was ist Cross-Site Scripting (XSS)?::Cross-Site Scripting (XSS) ist eine Sicherheitslücke, die es Angreifern ermöglicht, bösartigen Code, meist JavaScript, auf einer Webseite einzuschleusen.

Was passiert, wenn andere Nutzer die manipulierte Seite bei einem XSS-Angriff besuchen?::Wenn andere Nutzer die manipulierte Seite besuchen, wird der eingebettete Code auf ihrem Gerät ausgeführt. Dies kann zu Datendiebstahl, Session Hijacking und vielen anderen Sicherheitsproblemen führen.

Was ist Reflected XSS?::Reflected XSS ist eine Art von XSS, bei der der Schadcode durch eine Anfrage an den Server eingeschleust und direkt in der Antwort zurück an den Nutzer gespiegelt wird.

Was ist Stored XSS?::Stored XSS ist eine Art von XSS, bei der der Schadcode auf dem Server gespeichert (z.B. in einer Datenbank) und bei späteren Aufrufen der betroffenen Seite an alle Nutzer ausgeliefert wird.

Was ist DOM-based XSS?::DOM-based XSS ist eine Art von XSS, bei der der Schadcode durch Manipulation des DOMs (Dokumenten-Objektmodell) auf der Clientseite ausgeführt wird, ohne dass eine Anfrage an den Server notwendig ist.

Was ist eine Schutzmaßnahme gegen XSS?::Eine Schutzmaßnahme gegen XSS ist die Validierung von Eingaben. Eingaben sollten sowohl auf Client- als auch auf Serverseite auf gültige Daten überprüft werden.

Was ist CSP und wie schützt es vor XSS?::CSP (Content Security Policy) ist eine weitere Schutzmaßnahme gegen XSS. Eine CSP kann den Browser anweisen, nur Code von vertrauenswürdigen Quellen auszuführen.

Was ist Cross-Site Request Forgery (CSRF)?::Cross-Site Request Forgery (CSRF) ist ein Angriff, bei dem ein Angreifer Nutzer einer Webseite dazu bringt, Aktionen auf einer anderen Webseite auszuführen, während sie dort angemeldet sind. Solche Aktionen können das Ändern einer E-Mail-Adresse, das Überweisen von Geld oder das Ändern des Passworts sein, ohne dass der Nutzer dies bemerkt oder beabsichtigt.

Was ist eine Schutzmaßnahme gegen CSRF?::Eine Schutzmaßnahme gegen CSRF ist ein Anti-CSRF-Token. Ein zufällig generierter Token wird sowohl in das Formular (als verstecktes Feld) des Nutzers eingebettet als auch serverseitig gespeichert. Bei der Übermittlung wird das Token überprüft.

Was ist HTTP Strict Transport Security (HSTS)?::HTTP Strict Transport Security (HSTS) ist eine Sicherheitsfunktion, die Webserver nutzen können, um Webbrowser anzuweisen, nur über HTTPS mit ihnen zu kommunizieren. Das Ziel ist es, Man-in-the-Middle-Angriffe zu verhindern, bei denen Angreifer den Verkehr zwischen dem Benutzer und der Website abfangen könnten.

Wie funktioniert HSTS?::HSTS setzt einen HTTP-Header namens Strict-Transport-Security. Dieser Header teilt dem Browser mit, dass jede zukünftige Anfrage an den Server über HTTPS und nicht über das unsichere HTTP gesendet werden soll. Sobald ein Browser diesen Header empfängt, wird jegliche Kommunikation für die angegebene Domain für eine bestimmte Zeitdauer ausschließlich über HTTPS abgewickelt.

Was sind Funktionen von HSTS?::Funktionen von HSTS sind die verpflichtende Verwendung von HTTPS, der Schutz vor Downgrade-Angriffen und die Prävention gegen Cookie-Hijacking durch die ausschließliche Verwendung von HTTPS.

Was sind Injection-Angriffe?::Injection-Angriffe sind eine Klasse von Sicherheitslücken, bei denen ein Angreifer manipulierte Daten an eine Anwendung sendet, in der Hoffnung, dass die Anwendung diese Daten in einem Sicherheitskontext ausführt.

Was ist SQL Injection?::Bei SQL Injection manipuliert der Angreifer SQL-Abfragen. Dies geschieht oft durch Einführung oder “Injektion” von SQL-Code in Eingabefelder, die eigentlich für Nutzereingaben wie Benutzernamen oder Passwörter gedacht sind. Dies kann dazu führen, dass die Anwendung unbeabsichtigt Befehle an die Datenbank sendet, die Daten offenlegen, verändern oder sogar löschen können.

Was ist Command Injection?::Command Injection tritt auf, wenn ein Angreifer Betriebssystembefehle durch externe Eingaben an eine Anwendung sendet, die diese unverändert ausführt. Solche Angriffe können dazu führen, dass der Angreifer unautorisierten Zugriff auf das Host-System der Anwendung erhält, Dateien ändert oder löscht oder andere unerwünschte Aktionen durchführt.

Was ist eine Schutzmaßnahme gegen Injection-Angriffe?::Eine Schutzmaßnahme gegen Injection-Angriffe ist die Validierung von Eingaben. Überprüfen Sie die Eingaben auf erwartete Formate und verwerfen oder säubern Sie Eingaben, die nicht diesem Format entsprechen.

Was ist Input-Validierung?::Input-Validierung ist eine essentielle Sicherheitsmaßnahme, um sicherzustellen, dass nur korrekt formatierte und erwartete Eingaben vom Nutzer oder durch extern empfangene Daten akzeptiert werden.

Wo sollte Input-Validierung durchgeführt werden?::Es ist wichtig, alle Eingaben auf dem Server zu validieren, selbst wenn sie bereits auf der Client-Seite validiert wurden. Angreifer können Client-seitige Validierungen leicht umgehen.

Was ist besser bei der Input-Validierung: Whitelisting oder Blacklisting?::Immer Whitelisting (nur explizit erlaubte Werte akzeptieren) anstelle von Blacklisting (bestimmte Werte ausschließen) anwenden. Blacklisting ist oft fehleranfällig, da es schwierig ist, alle möglichen schädlichen Eingaben vorherzusehen.

Was ist Content Security Policy (CSP)?::Eine Content Security Policy ist eine Sicherheitsmaßnahme, die hilft, bestimmte Sicherheitsangriffe wie Cross-Site Scripting (XSS) und Dateninjektion zu verhindern. Es handelt sich um eine serverseitige Regel, die dem Browser vorgibt, welche externen Ressourcen geladen und ausgeführt werden dürfen.

Wie wird CSP implementiert?::Um CSP zu implementieren, fügen Webentwickler den HTTP-Header Content-Security-Policy mit entsprechenden Richtlinien hinzu.

Was sind weitere Sicherheitsmaßnahmen neben den genannten?::Weitere Sicherheitsmaßnahmen sind die Implementierung von HTTPS, die Verwendung zusätzlicher HTTP-Header wie X-XSS-Protection, X-Frame-Options und X-Content-Type-Options sowie regelmäßige Software-Updates, um bekannte Sicherheitslücken zu schließen.