Coders Conquer Security: Share & Learn Series - Unzureichender Schutz der Transportschicht

Veröffentlicht am 27. Jun. 2019
von Jaap Karan Singh
FALLSTUDIE

Coders Conquer Security: Share & Learn Series - Unzureichender Schutz der Transportschicht

Veröffentlicht am 27. Jun. 2019
von Jaap Karan Singh
Ressource anzeigen
Ressource anzeigen

Selbst wenn Sie einen Anwendungsserver und die von ihm verwendeten Backend-Systeme vollständig abgesichert haben, ist die Kommunikation möglicherweise immer noch anfällig für Schnüffeleien, wenn die Transportschicht nicht ausreichend geschützt ist. In der physischen Welt ist der Grund, warum harte Währung mit gepanzerten Fahrzeugen transportiert wird, der Schutz während des Transports. Es spielt wirklich keine Rolle, wie sicher ein Geschäft oder eine Bank ist, wenn das Geld, das sie generiert, in einen Golfwagen geladen wird, um durch die Stadt zu fahren.

Das Gleiche gilt für Transportschichten im Cyber-Bereich. Selbst wenn eine Anwendung sicher ist, gibt es immer noch eine kritische Schwachstelle, wenn die Informationen, die dort ankommen, ungeschützt gesendet werden. Und es gibt eine zweite Schwachstelle bei einigen Anwendungen, wenn sie zusätzlich Informationen an andere Server oder eine Datenbank senden. Diese Informationen können von Insidern eingesehen werden, die kein Recht haben, diese Transaktionen auszuspionieren.

Um Benutzer und Daten vollständig zu schützen, muss die Transportschicht geschützt werden. Nur so können Sie eine gesamte Transaktion von Ende zu Ende vollständig absichern.

In dieser Folge lernen wir:

  • Wie Hacker einen unzureichenden Schutz der Transportschicht ausnutzen können
  • Warum es so gefährlich ist, die Transportschicht nicht zu schützen
  • Was kann getan werden, um den Transport aller Daten, die sich in und durch eine Anwendung oder einen Server bewegen, zu sichern.

Wie nutzen Angreifer einen unzureichenden Schutz der Transportschicht aus?

Ein unzureichender Schutz der Transportschicht kann Angriffe an zwei Stellen innerhalb Ihres Datenstroms ermöglichen. Die am häufigsten ausgenutzte Stelle befindet sich zwischen einem Benutzer und dem Anwendungsserver. Wenn Informationen unverschlüsselt oder mit schwacher Verschlüsselung gesendet werden, können Hacker diese Informationen überwachen, stehlen und möglicherweise ändern. Auf diese Weise könnten Hacker die Kreditkarte eines Benutzers, seine Anmeldedaten oder alles andere, was an den Anwendungsserver gesendet wird, stehlen. Selbst wenn der Server selbst sicher ist, könnte ein Hacker, der den unsicheren Kanal zwischen ihm und den Benutzern überwacht, nahezu uneingeschränkten Zugriff auf eine Vielzahl von Informationen erhalten.

Der zweite Punkt, der oft ungeschützt bleibt, ist die Transportschicht zwischen einer Anwendung und dem Rest des Netzwerks. Zum Beispiel könnte ein Anwendungsserver Online-Einkaufsbestellungen verarbeiten und sie dann an ein Fulfillment-System weiterleiten, oder Daten könnten einfach an eine Datenbank zur Speicherung ausgelagert werden. Wenn diese internen Kanäle ungeschützt sind, können interne Benutzer diese Informationen möglicherweise sehen.

Es ist zwar schön zu glauben, dass alle internen Benutzer gute Menschen sind, aber Tatsache ist, dass Insider-Bedrohungen in vielen Branchen auf dem Vormarsch sind. Insider wurden schon dabei erwischt, wie sie Bestechungsgelder annahmen, um im Gegenzug sensible Informationen für Angreifer oder Konkurrenten zu sammeln. Und Zugang zu etwas wie Tausenden von gültigen Kreditkarten zu haben, könnte für einige Leute einfach zu verlockend sein, um es zu ignorieren.

Was die Angriffstechniken betrifft, so ist es nicht sehr schwierig, ungeschützte Kommunikation abzufangen. Selbst Hacker auf niedrigem Niveau wissen, wie man Man-in-the-Middle-Angriffe gegen unverschlüsselte Datenströme durchführt. Wenn sie es nicht wissen, gibt es im Internet Videos, mit denen sie es in weniger als einer halben Stunde lernen können.

Warum sind unzureichende Transport Layer Protection-Schwachstellen so gefährlich?

Ein unzureichender oder nicht vorhandener Schutz auf den Transportschichten ist gefährlich, weil er es Hackern extrem leicht macht, sensible Informationen zu sammeln. Sie müssen nicht in Ihren App-Server einbrechen oder Ihr Netzwerk hacken. Sie richten einfach einen Man-in-the-Middle-Angriff ein und lesen alles mit, was von Benutzern an einen Server gesendet wird. Dies kann Benutzernamen und Kennwörter enthalten, die dazu verwendet werden können, die Sicherheit in Zukunft mit gültigen Anmeldeinformationen zu umgehen. Je nach Anwendung kann dies auch Kreditkarteninformationen oder andere persönliche Daten von Benutzern enthalten.

Und es ist wichtig zu beachten, dass all diese Schnüffelei außerhalb Ihres Netzwerks stattfindet. Wenn Sie unsichere Transportkanäle verwenden, gibt es keine Möglichkeit zu wissen, ob jemand diese Informationen abfängt. Normalerweise ist das erste Anzeichen, wenn viele Benutzer anfangen, über kompromittierte Konten oder Kreditkartenkäufe zu berichten, und der gemeinsame Faktor ist Ihre Anwendung " kein guter Ort, um sich dort aufzuhalten. Hacker können auch Informationen verändern, sobald sie sie haben, z. B. die Lieferadresse ändern oder sogar bösartige Skripte in die Serverantwort einfügen, bevor sie diese an die Benutzer weitergeben.

Auf dem Backend werden durch die fehlende Absicherung der Transportschicht Daten für Insider offengelegt. Es ist wahrscheinlich viel unwahrscheinlicher, dass ein Insider die Transportschicht ausspäht, als dass Hacker von außen das Gleiche tun. Aber es ist auch gefährlicher, wenn es passiert, weil die Insider-Bedrohung nicht nur die Benutzerdaten sehen kann, sondern auch alle proprietären Informationen, die vom App-Server hinzugefügt werden, bevor diese Pakete weitergeschickt werden.

Beseitigung von Schwachstellen durch unzureichenden Schutz der Transportschicht

So gefährlich ein unzureichender Schutz der Transportschicht auch sein kann, es ist auch nicht unglaublich schwierig, alle Ihre Transportkanäle richtig abzusichern. Es beginnt mit der Backend-Infrastruktur. Diese sollte ausschließlich HTTPS sein, achten Sie darauf, HTTPS und HTTP auf einer Seite nicht zu mischen. Schließlich sollten Sie ein gültiges SSL-Zertifikat mit einer minimalen Schlüsselgröße von 2048 Bit vorhalten und alle Benutzer zwingen, mit gesicherten Browsern mit HTTP Strict Transport Security (HSTS) zu interagieren.

Sobald die Infrastruktur vorhanden ist, sollten Entwickler ein starkes Protokoll zum Schutz der Transportschicht verwenden. Idealerweise sollte TLS 1.2 verwendet werden, obwohl TLS 1.1 und 1.0 auch akzeptabel sind, wenn es absolut notwendig ist. Sobald das eingerichtet ist, sollten schwache Protokolle wie SSLv2 vollständig deaktiviert und niemals unterstützt werden.

Es sollte auch darauf geachtet werden, dass die kryptografischen Chiffren am Backend ausreichend leistungsfähig sind. Idealerweise sollte die minimale Sitzungsschlüsselgröße 128 Bit betragen. Wie bei den Protokollen sollte die Unterstützung für schwache kryptografische Algorithmen wie DES und RC4-40 deaktiviert werden. Und schließlich sollten Sie eine Anwendung erst dann als wirklich sicher betrachten, wenn sowohl der Server selbst als auch alle Datenpfade, die zu ihm hin und von ihm weg führen, ausreichend geschützt sind.

Weitere Informationen zu Schwachstellen mit unzureichendem Schutz der Transportschicht

Als weiterführende Lektüre können Sie einen Blick in den OWASP-Leitfaden zum Schutz von Transportschichten werfen. Sie können Ihr neu erworbenes Verteidigungswissen auch mit der kostenlosen Demo der Plattform Secure Code Warrior testen, die Cybersecurity-Teams zu den ultimativen Cyber-Kriegern ausbildet. Um mehr über die Beseitigung dieser Schwachstelle und eine Schurkengalerie anderer Bedrohungen zu erfahren, besuchen Sie den BlogSecure Code Warrior .

Ressource anzeigen
Ressource anzeigen

Autor

Jaap Karan Singh

Sie wollen mehr?

Tauchen Sie ein in unsere neuesten Erkenntnisse über sichere Kodierung im Blog.

Unsere umfangreiche Ressourcenbibliothek zielt darauf ab, die menschliche Herangehensweise an eine sichere Weiterbildung im Bereich der Programmierung zu stärken.

Blog ansehen
Sie wollen mehr?

Holen Sie sich die neuesten Forschungsergebnisse zur entwicklergesteuerten Sicherheit

Unsere umfangreiche Ressourcenbibliothek ist voll von hilfreichen Ressourcen, von Whitepapers bis hin zu Webinaren, die Ihnen den Einstieg in die entwicklungsorientierte sichere Programmierung erleichtern. Erforschen Sie sie jetzt.

Ressourcendrehscheibe

Coders Conquer Security: Share & Learn Series - Unzureichender Schutz der Transportschicht

Veröffentlicht am 27. Jun. 2019
Von Jaap Karan Singh

Selbst wenn Sie einen Anwendungsserver und die von ihm verwendeten Backend-Systeme vollständig abgesichert haben, ist die Kommunikation möglicherweise immer noch anfällig für Schnüffeleien, wenn die Transportschicht nicht ausreichend geschützt ist. In der physischen Welt ist der Grund, warum harte Währung mit gepanzerten Fahrzeugen transportiert wird, der Schutz während des Transports. Es spielt wirklich keine Rolle, wie sicher ein Geschäft oder eine Bank ist, wenn das Geld, das sie generiert, in einen Golfwagen geladen wird, um durch die Stadt zu fahren.

Das Gleiche gilt für Transportschichten im Cyber-Bereich. Selbst wenn eine Anwendung sicher ist, gibt es immer noch eine kritische Schwachstelle, wenn die Informationen, die dort ankommen, ungeschützt gesendet werden. Und es gibt eine zweite Schwachstelle bei einigen Anwendungen, wenn sie zusätzlich Informationen an andere Server oder eine Datenbank senden. Diese Informationen können von Insidern eingesehen werden, die kein Recht haben, diese Transaktionen auszuspionieren.

Um Benutzer und Daten vollständig zu schützen, muss die Transportschicht geschützt werden. Nur so können Sie eine gesamte Transaktion von Ende zu Ende vollständig absichern.

In dieser Folge lernen wir:

  • Wie Hacker einen unzureichenden Schutz der Transportschicht ausnutzen können
  • Warum es so gefährlich ist, die Transportschicht nicht zu schützen
  • Was kann getan werden, um den Transport aller Daten, die sich in und durch eine Anwendung oder einen Server bewegen, zu sichern.

Wie nutzen Angreifer einen unzureichenden Schutz der Transportschicht aus?

Ein unzureichender Schutz der Transportschicht kann Angriffe an zwei Stellen innerhalb Ihres Datenstroms ermöglichen. Die am häufigsten ausgenutzte Stelle befindet sich zwischen einem Benutzer und dem Anwendungsserver. Wenn Informationen unverschlüsselt oder mit schwacher Verschlüsselung gesendet werden, können Hacker diese Informationen überwachen, stehlen und möglicherweise ändern. Auf diese Weise könnten Hacker die Kreditkarte eines Benutzers, seine Anmeldedaten oder alles andere, was an den Anwendungsserver gesendet wird, stehlen. Selbst wenn der Server selbst sicher ist, könnte ein Hacker, der den unsicheren Kanal zwischen ihm und den Benutzern überwacht, nahezu uneingeschränkten Zugriff auf eine Vielzahl von Informationen erhalten.

Der zweite Punkt, der oft ungeschützt bleibt, ist die Transportschicht zwischen einer Anwendung und dem Rest des Netzwerks. Zum Beispiel könnte ein Anwendungsserver Online-Einkaufsbestellungen verarbeiten und sie dann an ein Fulfillment-System weiterleiten, oder Daten könnten einfach an eine Datenbank zur Speicherung ausgelagert werden. Wenn diese internen Kanäle ungeschützt sind, können interne Benutzer diese Informationen möglicherweise sehen.

Es ist zwar schön zu glauben, dass alle internen Benutzer gute Menschen sind, aber Tatsache ist, dass Insider-Bedrohungen in vielen Branchen auf dem Vormarsch sind. Insider wurden schon dabei erwischt, wie sie Bestechungsgelder annahmen, um im Gegenzug sensible Informationen für Angreifer oder Konkurrenten zu sammeln. Und Zugang zu etwas wie Tausenden von gültigen Kreditkarten zu haben, könnte für einige Leute einfach zu verlockend sein, um es zu ignorieren.

Was die Angriffstechniken betrifft, so ist es nicht sehr schwierig, ungeschützte Kommunikation abzufangen. Selbst Hacker auf niedrigem Niveau wissen, wie man Man-in-the-Middle-Angriffe gegen unverschlüsselte Datenströme durchführt. Wenn sie es nicht wissen, gibt es im Internet Videos, mit denen sie es in weniger als einer halben Stunde lernen können.

Warum sind unzureichende Transport Layer Protection-Schwachstellen so gefährlich?

Ein unzureichender oder nicht vorhandener Schutz auf den Transportschichten ist gefährlich, weil er es Hackern extrem leicht macht, sensible Informationen zu sammeln. Sie müssen nicht in Ihren App-Server einbrechen oder Ihr Netzwerk hacken. Sie richten einfach einen Man-in-the-Middle-Angriff ein und lesen alles mit, was von Benutzern an einen Server gesendet wird. Dies kann Benutzernamen und Kennwörter enthalten, die dazu verwendet werden können, die Sicherheit in Zukunft mit gültigen Anmeldeinformationen zu umgehen. Je nach Anwendung kann dies auch Kreditkarteninformationen oder andere persönliche Daten von Benutzern enthalten.

Und es ist wichtig zu beachten, dass all diese Schnüffelei außerhalb Ihres Netzwerks stattfindet. Wenn Sie unsichere Transportkanäle verwenden, gibt es keine Möglichkeit zu wissen, ob jemand diese Informationen abfängt. Normalerweise ist das erste Anzeichen, wenn viele Benutzer anfangen, über kompromittierte Konten oder Kreditkartenkäufe zu berichten, und der gemeinsame Faktor ist Ihre Anwendung " kein guter Ort, um sich dort aufzuhalten. Hacker können auch Informationen verändern, sobald sie sie haben, z. B. die Lieferadresse ändern oder sogar bösartige Skripte in die Serverantwort einfügen, bevor sie diese an die Benutzer weitergeben.

Auf dem Backend werden durch die fehlende Absicherung der Transportschicht Daten für Insider offengelegt. Es ist wahrscheinlich viel unwahrscheinlicher, dass ein Insider die Transportschicht ausspäht, als dass Hacker von außen das Gleiche tun. Aber es ist auch gefährlicher, wenn es passiert, weil die Insider-Bedrohung nicht nur die Benutzerdaten sehen kann, sondern auch alle proprietären Informationen, die vom App-Server hinzugefügt werden, bevor diese Pakete weitergeschickt werden.

Beseitigung von Schwachstellen durch unzureichenden Schutz der Transportschicht

So gefährlich ein unzureichender Schutz der Transportschicht auch sein kann, es ist auch nicht unglaublich schwierig, alle Ihre Transportkanäle richtig abzusichern. Es beginnt mit der Backend-Infrastruktur. Diese sollte ausschließlich HTTPS sein, achten Sie darauf, HTTPS und HTTP auf einer Seite nicht zu mischen. Schließlich sollten Sie ein gültiges SSL-Zertifikat mit einer minimalen Schlüsselgröße von 2048 Bit vorhalten und alle Benutzer zwingen, mit gesicherten Browsern mit HTTP Strict Transport Security (HSTS) zu interagieren.

Sobald die Infrastruktur vorhanden ist, sollten Entwickler ein starkes Protokoll zum Schutz der Transportschicht verwenden. Idealerweise sollte TLS 1.2 verwendet werden, obwohl TLS 1.1 und 1.0 auch akzeptabel sind, wenn es absolut notwendig ist. Sobald das eingerichtet ist, sollten schwache Protokolle wie SSLv2 vollständig deaktiviert und niemals unterstützt werden.

Es sollte auch darauf geachtet werden, dass die kryptografischen Chiffren am Backend ausreichend leistungsfähig sind. Idealerweise sollte die minimale Sitzungsschlüsselgröße 128 Bit betragen. Wie bei den Protokollen sollte die Unterstützung für schwache kryptografische Algorithmen wie DES und RC4-40 deaktiviert werden. Und schließlich sollten Sie eine Anwendung erst dann als wirklich sicher betrachten, wenn sowohl der Server selbst als auch alle Datenpfade, die zu ihm hin und von ihm weg führen, ausreichend geschützt sind.

Weitere Informationen zu Schwachstellen mit unzureichendem Schutz der Transportschicht

Als weiterführende Lektüre können Sie einen Blick in den OWASP-Leitfaden zum Schutz von Transportschichten werfen. Sie können Ihr neu erworbenes Verteidigungswissen auch mit der kostenlosen Demo der Plattform Secure Code Warrior testen, die Cybersecurity-Teams zu den ultimativen Cyber-Kriegern ausbildet. Um mehr über die Beseitigung dieser Schwachstelle und eine Schurkengalerie anderer Bedrohungen zu erfahren, besuchen Sie den BlogSecure Code Warrior .

Wir bitten Sie um Ihre Erlaubnis, Ihnen Informationen über unsere Produkte und/oder verwandte Themen der sicheren Codierung zuzusenden. Wir werden Ihre persönlichen Daten immer mit äußerster Sorgfalt behandeln und sie niemals zu Marketingzwecken an andere Unternehmen verkaufen.

Senden
Um das Formular abzuschicken, aktivieren Sie bitte "Analytics"-Cookies. Sie können die Cookies wieder deaktivieren, sobald Sie fertig sind.