Niklas434 schrieb:
-Verschlüsselt wird der Verkehr in beiden Fällen - insofern Geschmackssache.
Ja nur exponiert VPN standardmäßig gleich mal mit das gesamte Netz...
Niklas434 schrieb:
-Bitwarden anpassen; schwierig besonders als IOS Nutzer.
Ist problemlos möglich, Bitwarden ist komplett OSS - Server, Clients, Extensions, Apps - alles. Wenn iOS so geschlossen ist, sodass du da nichts machen kannst... Wohl für das falsche System entschieden, wenn du deine Kontrolle komplett abgibst. Nicht dass Android viel besser ist, aber die Store "Problematik" zeigt dies u.a. wunderbar auf. Goldener Käfig eben.
Niklas434 schrieb:
-Eine Transportverschlüsselung existiert auch bei Selfsigned; wobei für die außen Komunikation ein Signiertes Zertifikat immer besser ist, keine Frage.
Klar. Nur musst du jedem Client und ggf. jeder Anwendung einzeln beibringen, dass diese Verbindung sicher ist und bei manchen kannst du dies einfach nicht bewerkstelligen. Und beim Zertifikatswechsel steht der Prozess erneut an. Einem öffentlich ausgestellten Zertifikat wird "vorvertraut". Und lokal eine PKI aufbauen... Wenn du Vollfreizeit-Admin sein willst, kannst du das gern machen. Self Signed ist im Notfall zu verwenden, aber nicht wirklich brauchbar. Und das ist auch gut so, sonst könnte dir jeder per MITM alles unterschieben. Denn genau das passiert hier ja auch: Statt computerbase.de mit Key 12:34:56 sprichst du plötzlich mit 23:45:67, weshalb die Fehlermeldung getriggert wird, da du kein Zertifikat vorweisen kannst, welches durch mich bzw. meinem Admin vertraut wird.
Niklas434 schrieb:
-OpenVPN vs TLS Terminated Reverse Proxy; da ich WireGuard Nutzer bin kann ich mich dazu nicht äußern. Die Frage die ich mir jedoch stelle ist, wie sieht sieht es BrutForce etc. aus. Da halte ich eine VPN grundsätzlich für solider.
Für BruteForce ist gar nichts solider. BruteForce bedeutet ausprobieren, bis der korrekte Schlüssel erraten wurde. Es kommt hier einzig und allein auf die Stärke des Schlüssels an und nicht auf sonstige Faktoren. Insofern ist das Szenario für die Katz. Weiterhin hat jeder halbwegs brauchbar umgesetzte Server sowieso eine Begrenzung für mögliche Versuche.
TLS verwendet heutzutage übrigens
ECC-Zertifikate. Mehr erklär ich dazu mal nicht, da das jeglichen Rahmen sprengen würde. Wireguard verwendet auch nur State-of-the-Art Werkzeuge, genauso wie TLS auch, sowie nutzt es ebenso lediglich asymmetrische Crypto (genauso wie TLS) baut aber auf keiner PKI auf. Die Schlüssel selbst sind quasi identisch in ihrer Funktionsweise - Private + Public Key. Wireguard ist keine Magie, VPN ist keine Magie, TLS ist genauso keine Magie. Es sind quasi die selben Techniken anders verpackt. Alter Wein in neuen Schläuchen für andere Anwendungsszenarien.
Weiterhin errätst du bei BruteForce im Netzwerk ja nicht mal den Key, sondern versuchst die Authentifizierung zu bruteforcen. Du greifst also nicht mal den Key an, sondern lediglich den Wärtner davor (Server, der die Authentifizierung betreibt). Der eigentliche Schlüssel kann dann noch 500.000 mal von der Eingabe abgeleitet sein (
PBKDF2). Und ohne den Server zu patchen/den Wärtner zu schmieren, bringt dir dieser abgeleitete Schlüssel auch nichts, denn du brauchst die richtien Eingabedaten, damit du nach der Ableitung auf eben diesen Schlüssel kommst.
Niklas434 schrieb:
Für wie sicher hältst du die heutigen Transportverschlüsselungen, wenn Programme wie AdGuard diese "aufbrechen" können.
Jede Verschlüsselung kann aufgebrochen werden. AdGuard funktioniert nur, weil auf deinem Client ein Zertifikat installiert wird, welches quasi jede Gegenstelle akzeptiert. AdGuard agiert hier klassisch als MITM, nur eben nicht mit schädlicher Absicht. Du verbindest dich verschlüsselt mit AdGuard (mit dessen Zertifikat verschlüsselt wird), AdGuard bricht TLS auf, untersucht, manipuliert und schickt den eigentlichen Request dann an den Server. Genauso auf dem Rückweg. Der Server verbindet sich nicht mehr mit deinem Browser, sondern mit AdGuard, welcher das TLS der eigentlichen Verbindung aufbricht, wieder untersucht und manipuliert, verschlüsselt mit dem AdGuard-Zertifikat neu und der Browser tut so, als wäre nie was passiert, weil TLS transparent angewendet wird. Der Gegenüber kann sich als legitim ausweisen, weil dir in den Zertifikatspeicher das AdGuard-Zertifikat geladen und diesem aktiv vertraut wurde. Läuft alles über die AdGuard Installation ab.
Es wurde also bereits im Auslieferungszustand der Client manipuliert. Das kann dir genauso mit VPN passieren, wenn dein Client entsprechende Vorkehrungen trifft. Sobald dein Client aber nicht manipuliert wurde, bekommst du entsprechende Fehlermeldungen. Einfachstes Beispiel: Verstell mal die Uhr. Damit können Zertifikate ggf. nicht mehr funktionieren, vor allem Lets Encrypt Zertifikate mit einer Dauer von lediglich 90 Tagen.
Ob ein MITM stattfindet, kannst du ganz "leicht" am Fingerprint des Zertifikats erkennen. Einziges Problem: Du müsstest den Fingerprint des aktuell verwendeten Zertifikats kennen.
kein MITM | MITM |
---|
| |
Auch die Zertifikatskette kannst du hierbei nachprüfen (plus dessen Fingerprints).
kein MITM | MITM |
---|
| |
Und hier das "vertrauenswürdige" Stammzertifikat, was den MITM überhaupt erst ermöglicht:
Prinzipiell kannst du damit
jede Verbindung aufbrechen, die irgendwie zertifikatsbasiert arbeitet und dein Client merkt davon nichts, da das Zertifikat ja im vertrauenswürdigen Speicher liegt. Auch außerhalb des Browsers. Jede Anwendung auf deinem Client könnte dieses Zertifikat nun verwenden um seinen Traffic als "vertrauenswürdig" einstufen zu lassen. Deshalb gibt es Zertifikatslisten, welche von den Browser- und OS-Herstellern separat immer auf dem aktuellen Stand gehalten werden. Zuletzt ist Symantec
rausgeflogen. D.h. alle Zertifikate, die bis dato von Symtantec ausgestellt wurden, haben ihre Gültigkeit verloren und damit erschien beim Besuch einer damit gesicherten Webseite bloß noch eine Fehlermeldung.
EFS in Bitlocker arbeitet übrigens genauso mit regulären Zertifikaten.
Und es ist nicht so, dass diese ganzen Firmen irgendwie kompetent darin wären. Nein -
Browserhersteller beschweren sich seit Jahren darüber, dass TLS aufgebrochen und somit überhaupt erst spezielle Angriffe ermöglicht werden (die Sicherheit also effektiv schwächt).
Unter Android passiert dies gern über ein VPN, das Prinzip ist aber das Selbe.
Sowas passiert u.a. gern bei
- der EU und vor allem Deutschland
- autoritären Regimes
- "Virenscannern"
- "Sicherheitssuites"
- Firmen denen "Sicherheit ganz ganz doll am Herzen liegt"
Mit entsprechender Manipulation des Clients kannst du somit komplett alles steuern. Wenn AdGuard morgen meint, das Wort "oben" durch "unten" zu ersetzen. Pech gehabt. Du hast AdGuard sogar erlaubt die Daten zu manipulieren.
uBlock und ggf. PiHole arbeiten hierbei zudem viel granularer und
deutlich weniger invasiv.
TLS an sich ist ein brauchbares System (PKI), hat aber natürlich auch seine Schwächen. Einen anderen Ansatz verwendet bspw. PGP: Dort wird niemandem vertraut und du musst jeden einzelnen Key selbst dein Vertrauen schenken. Das würde im Web allerdings nicht funktionieren, wenn du bei einem Seitenbesuch 30 Keys vertrauen musst, weil jede 0815 Werbung und Tracking von woanders nachgeladen wird. Und nicht nur das: Beim Seitenwechsel wird wieder alles von woanders geladen und du darfst erneut unbekannte Hosts "validieren". Der User würde also einfach nur noch abnicken, womit das System effektiv hinfällig wäre. Bei der nächsten Webseite natürlich genauso usw.
TLS reicht zur Sicherheit vollkommen aus (Stand heute). Aktuelle Software und Zertifikate vorausgesetzt natürlich, denn auch in TLS finden sich irgendwann Lücken, die gepatcht werden müssen und neue, verbesserte Versionen erscheinen.
Du erhälst:
- Datenintegrität (das was ankommt ist das was gesendet wurde, durch Niemanden manipuliert worden)
- Authentizität (du sprichst wirklich mit dem Server gegenüber und keinem Drittserver, niemand konnte manipulieren)
- und genannte Transportverschlüsselung (auf dem Weg zu dir konnte niemand Daten abhören und irgendwas manipulieren)
TLS ist so sicher, dass es von jedem auf der Erde genutzt wird und selbst von Bad Actors wie NSA, CIA, KGB, BND, China und jedem anderen. Und TLS/SSL ist bisher das einzige Verfahren, welches seit 1994
global ausgerollt werden konnte. Und seit nun fast 30 Jahren hat niemand etwas Besseres erfunden, nur andere Möglichkeiten mit anderen Vor- und Nachteilen, die aber die Machbarkeit von TLS nicht übertrumpfen konnten.
VPNs arbeiten auch nur mit den gleichen Arten von Keys... Genauso wie TLS auch, haben aber ganz andere Anwendungen und andere Vor- sowie Nachteile. U.a. dass damit komplette Netzwerke offengelegt werden können.
- Hat einer also den Private Key deiner Domain: gut. Diese Domain ist verbrannt. Neu ausstellen, das Zertifikat zurückziehen und weiter gehts. Du könntest damit aber sowieso nur Traffic von und zu dieser Domain abhören oder manipulieren. Du bekommst aber maximal Zugriff auf den Traffic. Nicht auf den Client, nicht auf die Anwendung dahinter, nur auf den Traffic dazwischen.
- Hat einer den Key deines VPN: Dein gesamtes Netzwerk liegt ggf. offen da, mit jedem einzelnen Client (PC, Handy, Drucker, Lampen, Kühlschränke, Spülmaschinen und sonstigem IOT-Müll heutzutage) und jeder, der Zugriff hat, kann munter Unfug anstellen wie er lustig ist. Auch deine Clients nach Exploits scannen und diese zeitgleich auch noch ausnutzen.
TL;DR: Viel schlauere Leute erachten TLS mit aktuellen Zertifikaten als sicher, sogar teilweise quantenresistent. Nur im gallischen Teil des Internets liest man immer wieder, dass VPN doch "viel sicherer" sei. Wahrscheinlich aber auch nur, weil VPN-Anbieter entsprechend Werbung schalten und ihr Produkt einzig und allein verkaufen wollen. Der Glaube daran existiert zumindest, genauso wie die Urban Legend, dass die Prozessoranzahl in msconfig zu fixieren den Boot beschleunigen würde.
PS: OpenVPN arbeitet auch nur mit TLS im Hintergrund.