Hinweise zur Datensicherheit
Vermuten Sie eine Sicherheitslücke bei Citavi?
Dann sind wir sehr dankbar für einen entsprechenden Hinweis. Bitte senden Sie uns eine kurze E-Mail an service@citavi.com, damit wir uns mit Ihnen in Verbindung setzen können.
Was wir für die Sicherheit von Citavi tun
Interne Sicherheit bei Swiss Academic Software
Sicherheit beginnt inhouse.
Als Resultat einer langfristigen Strategie haben wir alle unsere Inhouse-Dienste in die Cloud verlagert (GitHub, Office 365, Azure u.a.). Wir betreiben keine Inhouse-Server mehr und profitieren damit von den hohen Sicherheitsstandards, mit denen die Cloud-Betreiber arbeiten. Indirekt erfüllen wir damit auch zahlreiche Sicherheits-Zertifizierungen, die wir als kleine Firma aufgrund des Aufwands nicht anbieten könnten.
Wir betreiben auch in der Cloud keine virtuellen Maschinen (für deren Sicherheit und Aktualisierung wir selbst sorgen müssten), sondern nutzen konsequent „Software as a Service“.
Wir achten darauf, dass unsere Client-Computer auf dem neusten Stand sind. Für den Fall eines Diebstahls sind die Festplatten verschlüsselt. Wir schützen den Zugriff auf unser Netzwerk mit starken Maßnahmen.
Alle Cloud-Dienste, die wir nutzen, sichern wir mit Zwei-Faktor-Authentifizierung ab. Das heißt: selbst wenn ein Angreifer User-Namen und Passwörter von uns stehlen könnte, könnte er sich nicht in unsere Systeme einloggen.
Entwicklungsabteilung
Wir sensibilisieren und schulen unsere Entwickler regelmäßig in Sicherheitsfragen. Wir informieren uns systematisch über Sicherheitsfragen (insbesondere auf OWASP) und achten darauf, alle best practices umzusetzen. Dazu gehören u.a.:
- Für sicherheitskritischen Code (z.B. unser WebApi) führen wir gegenseitige Code Reviews durch.
- Wir aktualisieren Dritthersteller-Komponenten (NuGet-Pakete) regelmäßig.
- Alle SQL-Zugriffe erfolgen ausschließlich parametrisiert, um SQL Injection auszuschließen.
- Unser Quellcode enthält ausschließlich stark verschlüsselte Passwörter (für den Fall, dass ein Entwicklercomputer gestohlen werden sollte).
- Zugriffe werden im Code doppelt autorisiert – auf der «obersten» Ebene und auf der «untersten» Ebene. Auf diese Weise wollen wir vermeiden, dass versehentliche Entwicklerfehler zu Autorisierungsfehlern führen. Zudem haben wir diverse Unit Tests, welche Autorisierungen überprüfen.
- Unsere Entwicklungs- und Produktionsumgebungen sind vollständig getrennt. Das heißt, dass durch die unmittelbare Entwicklungsarbeit keinerlei Nutzerdaten in der Produktionsumgebung berührt werden.
Externe Tests
Ein außenstehender Experte prüft unsere Systeme und Dienste regelmäßig auf Schwachstellen (so genannte Penetration Tests).
Cloud
Für unsere Webdienste nutzen wir die Azure-Cloud von Microsoft. Unsere Server betreiben wir als so genannte WebApps (Platform-as-a-Service). Das bedeutet, dass Microsoft auf mehreren Ebenen selbst für die Sicherheit dieser Maschinen sorgt.
Kommunikation
Alle Kommunikation mit unseren Servern erfolgt immer verschlüsselt (https / TLS).
Accounts
Für die Anmeldung am Citavi-Account nutzen wir den Industriestandard OAuth2. Für die Implementation verwenden wir Identity Server, eine weit verbreitete, gut gepflegte und etablierte Standard-Komponente.
Die Passwörter unserer User werden von dieser Komponente verarbeitet und nach vielen Hash-Vorgängen in unserer Datenbank gespeichert. Wir speichern Passwörter zu keinem Zeitpunkt im Klartext; eine Rückübersetzung von gehashten Passwörtern zu Klartext ist technisch nicht möglich.
Projekt-Datenbank
Cloud-Projekte werden in einer SQL Azure-Datenbank gespeichert. Wir stellen über mehrere Maßnahmen in unserem Code und auf Datenbank-Ebene sicher, dass ein Benutzer niemals «fremde» Projektdaten sehen kann – auch dann nicht, wenn einer unserer Entwickler versehentlich eine falsche SQL Query schreiben sollte.
SQL Azure spiegelt alle Daten auf drei Instanzen gleichzeitig, damit im Falle eines Hardware-Ausfalls keine Daten verloren gehen. SQL Azure erstellt im Minutenabstand automatische Backups und sichert diese für die letzten 7 Tage. Für den Extremfall, dass ein ganzes Rechenzentrum ausfällt, werden die Daten laufend in ein anderes Rechenzentrum kopiert.
Die SQL Azure-Daten sind auf physischer Ebene verschlüsselt und damit für einen externen Angreifer, der Zugriff auf die Speichersysteme der Datenbank erlangt, unzugänglich. Für Swiss Academic Software selbst sind die Daten nicht verschlüsselt – dies ist aus technischen Gründen unumgänglich. Mit dem Administrationszugriff auf die Produktionsumgebung geht deshalb auch die Möglichkeit einher, auf die Citavi-Projektdaten und die Attachments unserer Nutzer zuzugreifen. Deshalb haben wir die technische Möglichkeit, die Produktionsumgebung zu administrieren, auf sehr wenige Personen beschränkt. Sie sind verpflichtet, keine Kenntnis von den Nutzerdaten zu nehmen.