Datenübertragungen richtig verschlüsseln

Lange Zeit gab es verschiedene Verschlüsselungsverfahren, um Daten sicher von A nach B zu übertragen. Einige davon (SSL 3.0, TLS 1.0 und 1.1 und #Verschlüsselung mit RC4-Hashwerten) sind so alt, dass Sie leicht zu entschlüsseln sind. Viele Provider haben daher längst die alten Verfahren abgeschaltet.

Versucht man nun Daten zu übertragen, kommt eine Fehlermeldung und die Verbindung kommt nicht zustande. Viele – fast alle – Schnittstellen und Programme basieren dabei auf der Programmierschnittstelle „Microsoft .net Framework“. Da je nach verwendeter .net Version unterschiedliche Fehler auftreten, sollte auf allen Systemen mit einem Registry-Schlüssel dafür gesorgt werden, dass nur noch sichere Verfahren ausgewählt werden.

Zusätzlich muss natürlich die versendene Software überhaupt in der Lage sein, nach TLS 1.2 Standard zu verschlüsseln. Ein Beispiel: Seit das frühere s.net „Managed Transfer“ heißt, unterstützt es nur noch die sicheren Standards. Dennoch sollte auch hier der Registry-Schlüssel gesetzt werden:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\Schannel\Protocols\TLS 1.2\Client]
„DisabledByDefault“ = dword:00000000

Sollten die Schlüssel „TLS 1.1“ und „TLS 1.2“ und „Client“ noch nicht existieren, dann bitte anlegen. Damit .NET das Systemdefault-TLS-Protokoll verwendet, müssen die folgenden Schüssel gesetzt werden:

Hier für x64 bzw. Eine 64-Bit .NET-Anwendung
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v2.0.50727]
"SystemDefaultTlsVersions" = dword:00000001
"SchUseStrongCrypto" = dword:00000001

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319]
"SystemDefaultTlsVersions" = dword:00000001
"SchUseStrongCrypto" = dword:00000001

und für x86 bzw. eine 32-Bit .NET-Anwendung
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v2.0.50727]
"SystemDefaultTlsVersions" = dword:00000001
"SchUseStrongCrypto" = dword:00000001

[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v4.0.30319]
"SystemDefaultTlsVersions" = dword:00000001
"SchUseStrongCrypto" = dword:00000001
Zusammenfassung
  1. Versucht man nun Daten zu übertragen, kommt eine Fehlermeldung und die Verbindung kommt nicht zustande.
  2. Zusätzlich muss natürlich die versendene Software überhaupt in der Lage sein, nach TLS 1.
  3. 2\Client] „DisabledByDefault“ = dword:00000000 Sollten die Schlüssel „TLS 1.
Verwandte Beiträge
Über den Autor:
Patrick Bärenfänger ist Ihr Experte für IT-Sicherheit und IT-Systeme mit TÜV-Zertifizierungen als IT-Security Manager und -Auditor und über 33 Jahren IT-Erfahrung. Er bietet Ihnen professionelle Dienstleistungen in den Bereichen: Ausbildung und Zertifizierung von Systemkoordinierenden, Infrastruktur-Analyse und -Optimierung zur Azure-Cloud-Migration, IT-Systemprüfungen und Notfallplan/Risiko-Analyse nach anerkannten Standards BSI-Grundschutz und IDW PS330 und Anwendung der künstlichen Intelligenz in der Praxis.

Kommentare

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert