Marcus

Aus ProgrammingWiki
Archivierte Version vom 2020-12-21T08:35:56+00:00. Aktuelle Version

Inhaltsverzeichnis

HTTP und HTTPS

HTTPS und TLS

1. HTTPS (Hypertext Transfer Protocol Secure)

Das Hypertext Transfer Protocol (HTTP, englisch für Hypertext-Übertragungsprotokoll) ist ein zustandsloses Protokoll zur Übertragung von Daten auf der Anwendungsschicht über ein Rechnernetz. Es wird hauptsächlich eingesetzt, um Webseiten (Hypertext-Dokumente) aus dem World Wide Web (WWW) in einen Webbrowser zu laden. Es ist jedoch nicht prinzipiell darauf beschränkt und auch als allgemeines Dateiübertragungsprotokoll sehr verbreitet.


Hypertext Transfer Protocol Secure ist ein Kommunikationsprotokoll im World Wibe Web, um Daten sicher zu übertragen und um diese dann abhören zu können. Desweiteren stellt das HTTPS eine Transportverschlüsselung dar. Entwickelt wurde HTTPS von Netscape und zusammen mit SSL wurde es im Jahre 1994 erstmals mit deren Browser veröffentlicht.

HTTP ist ein zustandsloses Protokoll. Informationen aus früheren Anforderungen gehen verloren. Ein zuverlässiges Mitführen von Sitzungsdaten kann erst auf der Anwendungsschicht durch eine Sitzung über einen Sitzungsbezeichner implementiert werden. Über Cookies in den Header-Informationen können aber Anwendungen realisiert werden, die Statusinformationen (Benutzereinträge, Warenkörbe) zuordnen können. Dadurch werden Anwendungen möglich, die Status- beziehungsweise Sitzungseigenschaften erfordern. Auch eine Benutzerauthentifizierung ist möglich. Normalerweise kann die Information, die über HTTP übertragen wird, auf allen Rechnern und Routern gelesen werden, die im Netzwerk durchlaufen werden. Über HTTPS jedoch kann die Übertragung verschlüsselt erfolgen.


1.1 Nutzung von HTTPS

Genutzt wird HTTPS zur Herstellung von Vertraulichkeit und Integrität in der Kommunikation zwischen Webbrowser (Client) und Webserver im World Wide Web. Erreicht wird dies durch Verschlüsselung und Authentifizierung. Durch die Verbreitung von offenen WLANs nimmt die Bedeutung von HTTPS deutlich zu, da Inhalte unabhängig vom Netz verschlüsselt werden können. Wichtig bei der Nutzung von HTTPS ist, dass beide Seiten der Verbindung beim Aufbau der Kommunikation die Identität des Verbindungspartners überprüfen können.


Sicherheitsprotokolle

SSL

Für eine Verschlüsselung der Datenübertragung ist die SSL (Secure Sockets Layer) verantwortlich. Doch ist dieses von Netscape entwickelte Protokoll heute unsicher und weist große Sicherheitslücken auf. Von SSL Verschlüsslungen wird abgeraten.

TLS

Ein neues sicheres Verschlüsselungsprotokoll ist das TLS (Transport Layer Security). Dieses ist ein zuverlässiger und vertrauenswürdiger Nachfolger der SSL. TLS entstand aus der 3. Version von SSL. Oftmals hört man auch noch den Begriff SSL obwohl es sich eigentlich um die neuere Form TLS handelt.

Lea Sophie_SSLundTLS.PNG

Ziele von Sicherheitsprotokollen

Die Nutzung von der SSL/TLS verfolgt 3 Ziele: In diesem Beispiel verdeutlicht an einem Nutzer, nennen wir sie Helen, welche 2 Informatikbücher auf einer Internetseite kauft.

1. Vertraulichkeit, d.h. Helenes Daten, wie Anschrift an welche sie ihre Bücher geliefert bekommen möchte, Bankkonten zum bezahlen und sonstige, persönliche Angaben sind für Dritte nicht einsehbar, da diese durch die SSL/TLS verschlüsselt wurden.

2. Integrität der Daten, bedeutet dass Helenes Bestellung nicht durch Dritte manipuliert werden kann, also dass sie 2 Informatikbücher und nicht etwa ein anderes Produkt zugestellt bekommt, bzw. ihre Bestellung überhaupt an ihrer Adresse geliefert wird. Diese Vorgänge garantieren Sicherheitsprotokolle.

3.Authentizität, steht für die Wahrheit, also die Sicherheit für Helene, dass die Webseite über die sie ihre Bücher gekauft hat auch zu einem existenten Shop gehört und keine Verkaufs-Masche ist. Diese Aufgabe ist wichtig für die SSL/TLS, da sie dem Kunden Schutz gibt.


Internetprotokolle

HTTPLea Sophie_HTTProt.PNG

Die bekannteste, mittlerweile veraltete Form lautet HTTP (Hyper Text Transfer Protocol). Dieses Protokoll regelt die Übermittlung von Daten im Internet nach dem Sender-Empfänger Modell. Doch ist dieses Verbindungprotokoll unverschlüsselt. Mit HTTP übertragene Daten sind also nicht von Angriffen durch Dritte geschützt.

Lea Sophie_HTTP.PNG

HTTPSLea Sophie_HTTPSgrün.PNG

Um die Sicherheit von Webseiten in voller Umfänglichkeit zu gewährleisten, gibt es die HTTPS (Hypertext Transfer Protocol Secure). Technisch gesehen ist dieses gar kein eigenständiges Protokoll sondern ein Zusammenwirken aus HTTP und SSL bzw. TLS (Internetprotokoll + Sicherheitsprotokoll). Die HTTPS bietet also eine gesicherte und verschlüsselte Verbindung.

Lea Sophie_Http_to_https-1.jpg


Unterschiede: HTTP vs. HTTPS

Die Verschlüsslung mithilfe von Sicherheitsprotokollen liefert der HTTPS einen sehr entschiedenen Vorteil gegenüber der HTTP. So sind Passwörter vor äußeren Eingriffen geschützter (siehe Bsp. Bild unten links) und Daten für Unbefugte schwer zugreifbar und somit sicherer und zu empfehlen. Dadurch ist die Nutzung einer HTTPS aber teurer für den Anbieter der Webseite.

Auch von Browsern und Unternehmen, beispielsweise Google wird ein Umschwung von HTTP zu HTTPS gefördert. Die Suchmaschine listet in ihrem Ranking, also der Reihenfolge der zum Suchbegriff gefundenen Webseiten, solche zuerst auf, welche mit HTTPS Verschlüsselung für sicher erklärt wurden. Das zwingt die Betreiber von Seiten zum Umdenken - aber wer auf HTTPS umsteigt muss vieles beachten. Wichtiger Knackpunkt ist, das HTTP und HTTPS unterschiedliche Webseiten sind! Es muss neu strukturiert werden. Auch das Schlüsselzertifikat einer HTTPS-Seite muss mindestens 2048-Bit lang sein. Auch Querverweise und Hyperlinks müssen überprüft werden, auf HTTPS „Ziel“-Seiten. Viele Browser warnen vor Benutzung von HTTP-Seiten und empfelen diese nicht, oder nur ohne Gebrauch von Persönlichen Daten zu nutzen (s. Bild unten rechts).

Lea Sophie_Difference-Between-HTTP-and-HTTPS.png Lea Sophie_Klassifizierung.PNG


FAZIT Bei der Nutzung von Webseiten sollte man immer daurauf achten HTTPS geschützte und Verschlüsselte Seiten zu Nutzen, erst Recht wenn man persönliche Daten angibt.


Informations-Quellen

https://www.symantec.com/page.jsp?id=ssl-information-center http://www.eology.de/eology-blog/safety-first-wieso-es-zeit-wird-fuer-eine-umstellung-auf-https/ https://www.marcobeierer.de/wissen/ssl-tls-und-https-erklaert


1.2 Vor- und Nachteile von HTTPS

Der größte Vorteil den HTTPS bietet ist natürlich der Datenschutz im Internet. Desweiteren ist für die Nutzung keine zusätzliche Softwareinstallation von Nöten, was ebenfalls einen großen Vorteil für einige bietet, denn somit kann HTTPS ohne Probleme von jedem verwendet werden. Die Authentifizierung durch das Zertifikat schafft zudem Vertrauen füt potentielle Kunden von HTTPS.

HTTPS weist allerdings auch einige Nachteile vor, welche aber eher von geringerer Bedeutung sind und somit auch in Kauf genommen werden können. Es können Zusatzkosten bei steigendem Traffic (Nutzung) entstehen. Beim HTTPS fallen Zwischenspeicherungen weg, doch mit den tendenziell steigenden Bandbreiten wird diesem Nachteil entgegengewirkt. Eine weitere Schwäche ist auch die schlechtere Performance, die bei der Verwendung von der SSL-Verschlüsselung entsteht. Der Server muss deutlich mehr rechnen, wodurch sich die Antwortzeit erhöht. Außerdem funktionieren mit HTTPS keine virtuellen Hosts


2.2 Nutzung von TLS

In der heutigen Zeit wird TLS vorallem in Verbindung mit HTTPS eingesetzt. Am meisten von den Webservern eingesetzt wird die TLS-Version 1.0 in Verbindung mit dem RSA-, AES- und Camellia-Verschlüsselungsverfahren. Die TLS-Version 1.1 wird von Google Chrome unterstützt, die Weiterentwicklung TLS 1.2 wird in der Standardkonfiguration von Internet Explorer, Firefox, Opera, Apple iOS und ebenfalls von Google Chrome unterstützt. (Stand Februar 2014)


2.3 Vor- und Nachteile

TLS bietet jeweils nur einen schwerwiegenden Vor- aber auch Nachteil. Der Vorteil den das TLS-Protokoll darbietet ist die Möglichkeit, jedes höhere Protokoll auf Basis des TLS-Protokolls zu implementieren. Somit ist eine Unabhängigkeit von Anwendungen und Systemen gewährleistet. Der Nachteil einer TLS-verschlüsselten Übertragung besteht darin, dass der Verbindungsaufbau auf der Serverseite rechenintensiv und somit auch langsamer ist. Die Verschlüsselung beansprucht je nach benutztem Algorithmus nur wenig Rechenzeit.

Es sind allerdings auch einige Angriffe auf TLS und SSL bekannt, die die Sicherheitsgarantien untergraben. Beispiele für Angriffe sind hierbei: Padding-Oracle-Angriffe, Kompressionsangriffe, Downgrades auf Exportverschlüsselung oder auch Implentierungsfehler. Allerdings gibt es genug Sicherheitseinrichtungen die gegen Angriffe wie diese vorgehen können.