Skip to main content

2018 | OriginalPaper | Buchkapitel

3. Technische Sicherheitsmaßnahmen

verfasst von : Matthias Rohr

Erschienen in: Sicherheit von Webanwendungen in der Praxis

Verlag: Springer Fachmedien Wiesbaden

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Zusammenfassung

Technische Sicherheitsmaßnahmen stellen den zentralen Aspekt der Anwendungssicherheit und damit auch dieses Buches dar. Die große Schwierigkeit besteht dabei zum einen darin, die richtigen Maßnahmen auszuwählen, zum anderen, diese korrekt umzusetzen.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Fußnoten
1
Laut Verizons Data Breach Report 2011 traten 11 % der bekannt gewordenen Datenlecks bei Webseiten auf, die kürzlich nach PCI-DSS auditiert wurden (vergl. [4]).
 
4
Selbst bei Einsatz eines ORM-Frameworks ist Interpreter Injection weiterhin potentiell möglich. Denn diese stellen APIs zur Verfügung, in denen sich grundsätzlich ebenfalls nicht validierte Benutzerparameter einbauen lassen. Im Fall von Hibernate betrifft dies etwa die Search-API. Wir sprechen hier dann auch allgemein von ORM Injection oder (ganz konkret im Fall von Hibernate) von HQL Injection (CWE 564). Auch diese Parameter sollten wir daher entsprechend enkodieren, bevor sie in einem API-Aufruf verwendet werden.
 
5
Eine Liste der in Firefox verwendeten Root-Zertifikate findet sich z. B. unter http://​www.​mozilla.​org/​projects/​security/​certs/​included.
 
7
Siehe hierzu das einleitende Kapitel zu Enkodierung (siehe Abschn. 3.2.7). Ebenfalls lesenswert ist in diesem Zusammenhang das XSS Filter Evasion Cheat Sheet der OWASP (https://​www.​owasp.​org/​index.​php/​XSS_​Filter_​Evasion_​Cheat_​Sheet), das SQL Injection Cheat Sheet auf ha.ckers.org (http://​ha.​ckers.​org/​sqlinjection/​) sowie http://​html5sec.​org.
 
9
Wie bereits erwähnt, werden die beiden Begriffe Kanonisierung und Normalisierung nicht einheitlich von APIs verwendet. Hier entspricht die Funktion „getCanonicalPath()“ der einer Normalisierung.
 
10
Auch zu diesem Thema ist ein hilfreiches Cheat Sheet auf der Webseite der OWASP verfügbar (vergl. [25]).
 
11
Ist dies nicht möglich, ist die Abwehr etwas komplizierter. Christian Schneider beschreibt ein mögliches Vorgehen in seinem Blog: http://​www.​christian-schneider.​net/​GenericXxeDetect​ion.​html.
 
12
Denn in der Praxis ist dieses Verfahren keinesfalls so anonym wie es vielleicht auf den ersten Blick den Anschein macht. Schnell können hierbei Rückschlüsse auf eine natürliche Person gewonnen werden, etwa wenn sich ein Besucher von demselben System aus an einer Webanwendung anmeldet.
 
13
Mit Evercookie (http://​en.​wikipedia.​org/​wiki/​Evercookie) existiert sogar eine JavaScript-API, welche alle hier genannten Verfahren kombiniert verwendet.
 
14
Dies wird als Nonce („Number only used once“) bezeichnet.
 
15
Vollständige Zufälligkeit inkl. Sonderzeichen; Länge mindestens 20, besser 30 Zeichen sowie Umsetzung der Maßnahmen zur Speicherung kryptographischer Schlüssel (siehe Abschn. 3.4.6).
 
16
Bei privilegierten Accounts sollte stets eine höhere Stärke der Authentifizierung angestrebt werden, idealerweise durch Verwendung von Mehrfaktorauthentifizierung (z. B. RSA-Token), denn Passwörter allein können „per Design“ immer nur eine eingeschränkte Schutzfunktion bieten.
 
17
Hiervon ist allerdings sehr stark abzuraten. Schließlich kann nicht ausgeschlossen werden, dass diese „Dienstleistungen“ mit einer kriminellen Motivation betrieben werden und darüber geknackte Passwörter zudem Aufschluss über deren Herkunft liefern können.
 
18
Das Minimum, welches die Methode vorschreibt, ist tatsächlich 1000 Runden. Dennoch ist es durchaus empfehlenswert, hier eine größere Rundenzahl zu verwenden. In der Praxis werden häufig 10.000 oder auch 100.000 Runden verwendet. Neben dem besseren Schutz gegenüber Offline-Angriffen wird hierdurch auch ein impliziter Schutz vor Online-Angriffen geschaffen, denn die Verzögerung, die hierdurch entsteht (rechnen Sie mit einer Sekunde bei 100.000 Runden), bremst Brute Forcing über das HTTP-Protokoll effektiv aus.
 
19
PBKDF2 wird etwa von Truecrypt zur Speicherung der Passwörter verwendet und konnte nicht einmal vom FBI in einem Jahr Berechnungszeit geknackt werden (vergl. [31]).
 
21
In mancher Literatur wird ein sogenannter „Double Submit Cookie“ und ähnliche Verfahren empfohlen. Dabei wird die Session-ID zusätzlich zum Cookie in die URL geschrieben. Dieser Ansatz lässt sich sehr einfach implementieren, da er ohne einen serverseitigen State auskommt. Allerdings ist er insofern falsch, als sensible Daten (nämlich die Session-ID) in die URL geschrieben werden, was ein Anti-Pattern darstellt.
 
23
Ist etwa durch eine restriktive Passwort-Policy sichergestellt, dass sämtliche Benutzeraccounts mit starken Passwörtern geschützt sind, so ist ein Aussperren von Benutzern nach mehrmaliger Fehlanmeldung sicherlich weniger sinnvoll als wenn Benutzer hier auch triviale Passwörter vergeben können.
 
24
Eine HTTP-Origin bezeichnet laut RFC6454 die Kombination aus Schema, Host und Port, also z. B. „HTTPS“ + „www.example.com“ + „443“.
 
26
Als „Access Tokens“ wurden im vorherigen Abschnitt alle möglichen zur Autorisierung einsetzbaren Tokens bezeichnet. In diesem Zusammenhang sind jedoch ausschließlich OAuth Access Tokens gemeint.
 
27
Da diese Authentifizierung jedoch kein eigener Bestandtteil von OAuth ist, sondern in diesem Schritt lediglich erwartet wird, dass der OAuth2 Service-Provider den Benutzer nach eigenem Ermessen authentifiziert, sprechen wir an dieser Stelle auch von OAuth Pseudo Authentifizierung, welche wir bereits in Abschn. 3.7.7 thematisiert hatten.
 
28
Lodderstedt et Al. beschreiben als weitere Sicherheitsfunktion hier die Einrichtung eines Dienstes, über den der Client einen Access Token jederzeit widerrufen kann (vergl. [40]).
 
29
Siehe https://github.com/bramus/mixed-content-scan.
 
30
Siehe https://httpschecker.net.
 
33
Mittels MIME Sniffing versucht ein Browser einen Datentyp auf Basis seines Inhaltes zu erkennen, wodurch es etwa möglich sein kann, dass Skriptcode in einer Textdatei ausgeführt wird.
 
34
Der Begriff „Webservice“ ist als XML-Dienst definiert, der über das HTTP-Protokoll aufgerufen wird. Als „Webdienst“ sollen dagegen allgemein alle HTTP-basierten Diensten oder Schnittstellen verstanden werden, über die Prozesse miteinander kommunizieren.
 
35
Alternativ lässt sich der private Schlüssel zum X.509-Zertifikat auf dem WAF-System hinterlegen, mit dem dieses HTTPS-Verbindungen entschlüsseln und analysieren kann. Dies setzt voraus, dass Forward Key Secrecy nicht aktiviert ist, was der Sicherheit abträglich und daher nicht zu empfehlen ist.
 
Literatur
1.
Zurück zum Zitat Kersten H, Reuter J, Schröder K-W (2001) IT-Sicherheitsmanagement nach ISO 27001 und Grundschutz – Der Weg zur Zertifizierung, 3. Aufl. Vieweg + Teubner Kersten H, Reuter J, Schröder K-W (2001) IT-Sicherheitsmanagement nach ISO 27001 und Grundschutz – Der Weg zur Zertifizierung, 3. Aufl. Vieweg + Teubner
13.
Zurück zum Zitat Spinellis D (2007) Another level of indirection. In: Oram A, Wilson G (Hrsg) Beautiful code: leading programmers explain how they think. O’Reilly and Associates, Sebastopol, S 279–291 Spinellis D (2007) Another level of indirection. In: Oram A, Wilson G (Hrsg) Beautiful code: leading programmers explain how they think. O’Reilly and Associates, Sebastopol, S 279–291
14.
Zurück zum Zitat Kernighan BW, Plauger PH (1981) Software tools in Pascal. Addison-Wesley, Boston Kernighan BW, Plauger PH (1981) Software tools in Pascal. Addison-Wesley, Boston
15.
Zurück zum Zitat Schneier B (2000) The process of security. Information Security Magazine, April 2000 Schneier B (2000) The process of security. Information Security Magazine, April 2000
18.
Zurück zum Zitat Schneier B (2003) Beyond fear – thinking sensibly about security in an uncertain world. Copernicus Books, Göttingen, S 107 Schneier B (2003) Beyond fear – thinking sensibly about security in an uncertain world. Copernicus Books, Göttingen, S 107
25.
Zurück zum Zitat Anderson R (2008) Security engineering: a guide to building dependable distributed systems, 2. Aufl. Wiley Verlag Anderson R (2008) Security engineering: a guide to building dependable distributed systems, 2. Aufl. Wiley Verlag
Metadaten
Titel
Technische Sicherheitsmaßnahmen
verfasst von
Matthias Rohr
Copyright-Jahr
2018
DOI
https://doi.org/10.1007/978-3-658-20145-6_3