Sicherheitsstandards in PiNUS21

Die Sicherheit bei PiNUS21 wird über verschiedene technische Massnahmen erreicht. Dazu zählen Verschlüsselung und Benutzerzugriffskontrollen. Die Überwachung der Systeme gewährleistet einen reibungslose und sichere Verwendbarkeit sowie eine hohe Verfügbarkeit. Hier erfahren Sie mehr darüber.

Alle Daten die zwischen ihrem Internet-Browser und dem PiNUS21 Applikations-Service übertragen werden, sind verschlüsselt. Hierzu wird der HTTPS Standard verwendet. Firewalls sorgen für eine weitere Erhöhung der Sicherheit. So wird z.B. ein direkter Zugriff aus dem Internet auf den DB-Service verhindert. Die Übertragung vom Applikationsserver zu den Datenbanken erfolgt ebenfalls über eine sichere Verbindung. Zusätzlich werden die Daten vor der Übermittlung an den Datenbank-Service nochmals vom Applikations-Service verschlüsselt. Die für die Sicherheit der Verbindung wichtigen SSL-Zertifikate werden regelmässig erneuert.

Sicherheit in PiNUS21
Sicherheit in PiNUS21

Der Datenbank Service ist so konzipiert, dass jeder Mandant in einer eigenen Datenbank gespeichert und somit immer separiert von Daten anderer Mandanten wird.

Die Benutzerpasswörter werden durch eine Einwegfunktion geschützt. Das bedeutet, dass aus den gespeicherten Daten das Passwort nicht mehr rekonstruiert werden kann. Dies funktioniert folgernder Massen: Bei der Eingabe des Passworts erfolgt zunächst die Berechnung eines Wertes mittels der Einwegfunktion. Nur das Ergebnis wird in der Datenbank gespeichert bzw. beim einloggen verglichen. Aus diesem Grund können wir ihnen auch ihre Passwörter nicht nennen. Wir können lediglich neue Passwörter eintragen.

Bei Falscheingabe von Passwörtern durch den Benutzer wird die erneute Eingabe verzögert, um ein ausprobieren zu verhindern. Zusätzlich wird in naher Zukunft eine zwei Faktor Autorisierung eingesetzt.

PiNUS21 sichert alle Daten täglich auf einen externen Backup Server. Dazu werden die Datenbanken vor der Übermittlung verschlüsselt und können somit nicht ohne Passwort zurück gelesen werden.

Das Benutzer-Berechtigungskonzept von PiNUS21 sorgt dafür, dass Benutzer nur die Daten einsehen oder verändern können, für die ihnen auch der Zugriff gestattet wurde.

VennDiagrammBenutzerGruppen
VennDiagrammBenutzerGruppen
HTTP(S) – für Sicher

Die Sicherheit einer HTTP Verbindung wird durch die Verwendung von «Secure Sockets Layer» (SSL) erreicht. SSL steht für und ist ein Protokoll, das zwischen Client und Server geschaltet wird, um die Datenübertragung zu verschlüsseln. Die so abgesicherte Verbindung wird als HTTPS Verbindung bezeichnet. Genau genommen handelt es sich bei heutigen Webservern um eine Weiterentwicklung des SSL Protokoll, dem Transport Layer Security (TLS) Protokoll.

Das Grundproblem

Der Client A und der Server B kennen sich nicht und möchten Daten über eine unsichere Verbindung austauschen, ohne dass diese von einem Dritten einsehbar sind. Dazu müssen sie die Daten verschlüsselten. Aber wie kommen sie zu einem Schlüssel ohne dass ihn jemand mitlesen kann? Zur Lösung dieses Problems wurde SSL eingeführt.

Wie funktioniert SSL?

Wenn ein Browser versucht, auf eine SSL-gesicherte Website zuzugreifen, stellen der Browser und der Webserver eine SSL-Verbindung mithilfe eines als „SSL-Handshake“ bezeichneten Prozesses her. Zum Aufbau der SSL-Verbindung werden drei verschiedene Schlüssel verwendet:
der öffentliche (Public Key), der private (Private Key) und der Sitzungsschlüssel (Session Key).

Der öffentliche und der private Schlüssel wurden miteinander erstellt. Sie sind Teil einer sog. Asymmetrischen Verschlüsselung. Durch mathematische Methoden wird sichergestellt, dass alles, was mit dem öffentlichen Schlüssel verschlüsselt wurde, nur mit dem privaten Schlüssel entschlüsselt werden kann und umgekehrt.

Da das Verschlüsseln und Entschlüsseln mit privatem und öffentlichem Schlüssel aufwändig ist, werden diese nur während des SSL-Handshakes verwendet. Der Client erzeugt einen zufälligen symmetrischen Sitzungsschlüssel, der gleichermassen zum ver-/und entschlüsseln von Nachrichten verwendet wird und übermittelt diesen, mit dem öffentlichen Schlüssel des Server verschlüsselt, an den Server. Dieser kann dann den Sitzungsschlüssel mittels seines privaten Schlüssel wieder entschlüsseln. Client und Server verwenden nun den Sitzungsschlüssel um alle weiteren Daten während der Übertragung zu verschlüsseln.

SSLVerschlüsselung in PiNUS21
SSLVerschlüsselung in PiNUS21
Was ist ein SSL-Zertifikat?

Bei einem SSL Zertifikat handelt es sich um einen Identitätsnachweis, ähnlich einem Personalausweis, aber für eine Domain. Damit wird sichergestellt, dass der Urheber einer Seite tatsächlich der ist, der er zu sein vorgibt. Das Zertifikat besteht aus einem kompakten Datensatz, der Informationen wie Domain, digitalen Fingerabdruck und Server-Informationen enthält, deren Authentizität mithilfe von kryptographischen Verfahren geprüft werden kann. Damit das Zertifikat vom Client akzeptiert wird, muss es von einer vom Client anerkannten Zertifizierungsstelle unterschrieben sein.

Woran kann man erkennen, ob eine Website SSL verwendet?

Ein paar Informationen im Browser weisen darauf hin, ob Sie eine Website mit (funktionierendem) SSL besuchen.

1) Die URL beginnt mit „https://“ und nicht mit „http://“
2) Sie sehen ein kleines Schloss-Symbol in der URL-Leiste
3) Das SSL-Zertifikat ist gültig

So sieht das aus:

SSLZertifikat,app.pinus21.ch
SSLZertifikat,app.pinus21.ch
Wie lange dauert es ein SSL Zertifikat zu knacken

Der beste Weg, ein Zertifikat zu knacken ist das sog. „Brute-Forcing“, also das durchprobieren aller möglichen Kombinationen. Hierbei wird der Angreifer aber nicht alle Kombinationen berechnen müssen. Bei einer guten Verteilung der wird er bei etwa 50% aller möglichen Kombinationen am Ziel angelangt sein. Aber die Zeit, die dafür benötigt wird, würde weit über die Lebensdauer eines Menschen hinausgehen.

Wenn wir von einem 256-Bit-Schlüssel ausgehen, dann gibt es 2256 mögliche Kombinationen. Das ist eine 78 stellige Zahl.

Angenommen wir hätten die sechs derzeit stärksten Computer der Welt oder in etwa zwei Millionen aktueller PCs und alle würden extrem schnell und präzise zusammenarbeiten können, so wären sie zusammen in der Lage ca. 2*1018 Kombinationen pro Sekunde auszuführen. Das ist eine 2 mit 18 Nullen (2 Quintillionen).

Ein (Gregorianisches) Kalenderjahr hat 31‘556‘952 Sekunden, somit können wir pro Jahr maximal 2*1018 * 31‘556‘952 = 6.3113904*1025 Kombinationen berechnen. Da wir 50% der Kombinationen probieren müssen ergibt sich: 2255 / 6.3113904*1025 = 9.173263*1050 Jahre

Als Vergleich, das Universum existiert erst seit 13.81 Milliarden Jahren, das sind 13.81*109 aber wir brauchen 9.173263*1050 Jahre um ein 256-Bit-SSL-Zertifikat zu knacken.

Auch der Energieaufwand wäre imens. Im Falle der Supercomputer würde jährlich eine Energie von 761‘276‘403 kWh benötigt werden. Das ist mehr als ein fünftel der Energie die alle Kernkraftwerke der Welt in einem Jahr produzieren können.

Da es also zu lange dauert SSL-Zertifikate zu knacken, versuchen Hacker andere Schwachstellen in der Implementation zu finden. Die häufigsten Serverschwachstellen im Zusammenhang mit SSL-Zertifikaten sind Heartbleed, BREACH, BEAST, welche durch Verwendung der aktuellen SSL-Implementierung verhindert werden.

https://www.ssldragon.com/blog/cracking-ssl-encryption-beyond-human/