Sicherheit durch Transparenz – wie wir Sicherheitslücken veröffentlichen
Wir haben aramido mit der Vision gegründet, die Benutzung von Informationstechnik für jeden sicher zu machen. Um dieses Ziel zu erreichen, muss man an verschiedenen Hebeln ansetzen. Einer der effektivsten ist es Unternehmen, die Software herstellen oder für eine große Zahl an Mitarbeitern und Kunden betreiben, zu helfen Sicherheit von Grund auf nach den Prinzipien von Security By Design in ihre Produkte einzubauen. Eine der wirksamsten Maßnahmen, um Schwachstellen in IT-Systemen und Anwendungen zu finden, sind Penetrationstests. Dabei untersuchen wir gezielt und im Auftrag unserer Kunden IT-Systeme nach Schwachstellen und geben Handlungsempfehlungen, wie diese behoben werden können. Doch was passiert mit Schwachstellen, die wir außerhalb konkreter Kundenaufträge finden? Hier folgen wir einem branchenweit anerkannten Vorgehen.
Wie kann man mit gefundenen Sicherheitslücken umgehen
Wie wir schon in unserem Artikel zu sicheren Software-Updates beschrieben haben, ist es aufgrund der Komplexität von Software nahezu unmöglich fehlerfreie Software zu entwickeln. Werden aber später Fehler gefunden sollten Sie vom Hersteller der Software behoben werden, besonders wenn sie die Sicherheit betreffen. Wenn man sich wie wir beruflich mit der Sicherheit von Software und speziell Webanwendungen beschäftigt, fallen einem regelmäßig Sicherheitslücken auf. Diese Sicherheitslücken kann man dann
- dem für die Software Verantwortlichen melden, oder
- nicht melden.
Variante zwei, das Wissen über eine Sicherheitslücken nicht zu melden, selbst auszunutzen oder zu verkaufen, kommt für uns aus ethischen Gründen nicht in Frage. Es kann aber nie ausgeschlossen werden, dass schon jemand anderes die Sicherheitslücke entdeckt hat und aktiv ausnutzt. Außerdem widerspräche das Vorgehen Sicherheitslücken zu verschweigen unserer Mission, IT sicher zu machen.
Bleibt also die Variante die Sicherheitslücke an den Verantwortlichen für die Software zu melden, damit er die Sicherheitslücke beheben kann. Hierbei gibt es folgende Vorgehensweisen:
Full Disclosure – Sicherheitslücken sofort veröffentlichen
Full Disclosure beschreibt das Vorgehen Sicherheitslücken sofort und vollständig zu veröffentlichen ohne einen Patch des Herstellers abzuwarten. Für dieses Vorgehen spricht, dass Anwender möglichst schnell von Sicherheitslücken erfahren, um selbst Schutzmaßnahmen einzuleiten. Wie bereits bemerkt, könnte die Sicherheitslücke auch von anderen Personen bereits entdeckt und ausgenutzt worden sein. Dennoch kann es durchaus kritisch sein eine Sicherheitslücke, für die noch kein Patch bereit steht, zu veröffentlichen, da Anwender möglicherweise dann erst recht gefährdet werden. Falls die Schwachstelle bisher nicht ausgenutzt wurde, steigt die Wahrscheinlichkeit damit zumindest stark an – immerhin steht das Wissen nun böswilligen Hackern zur Verfügung. Ein populärer Weg, um Sicherheitslücken nach dem Full Disclosure-
Non Disclosure – Sicherheitslücken nicht veröffentlichen
Das Gegenteil zur vollständigen Offenlegung ist die NichtVeröffentlichung von Schwachstellen. Stattdessen werden diese dem Hersteller vertraulich gemeldet. Es liegt dann an ihm, ob und wann er einen Patch für die Sicherheitslücke bereitstellt. Die Begründung für das nicht Veröffentlichen von Sicherheitslücken ist, dass man bösartigen Hackern die Arbeit nicht erleichtern will. Dem steht gegenüber, dass Angreifer häufig auch schon auf anderen Wegen die Sicherheitslücken selbst entdeckt haben. Ein Verheimlichen von Sicherheitslücken würde so zu einem Informationsungleichgewicht von Angreifern und Anwendern führen. Außerdem führen Kritiker einer Non Disclosure Policy an, dass Hersteller nur unter dem Druck der Veröffentlichung den Sicherheitslücken angemessen Aufmerksamkeit schenken, die Allgemeinheit von den Fehlern lernen kann und ähnliche Fehler hierdurch vermieden werden.
Coordinated Disclosure – Sicherheitslücken verantwortungsvoll veröffentlichen
Die koordinierte Offenlegung wird häufig auch als verantwortungsvolle Offenlegung (Responsible Disclosure) bezeichnet. Sie ist der Mittelweg zwischen Non Disclosure und Full Disclosure. Hierbei wird zunächst der Hersteller in vertraulicher Art und Weise über eine Sicherheitslücke informiert. Ihm wird ein angemessener Zeitraum gegeben, die Sicherheitslücke zu beheben. Erst nach Veröffentlichung eines Sicherheitsupdates oder dem Ablauf der gesetzten Frist werden Details zur Schwachstelle veröffentlicht. Damit sollen die Risiken für Anwender minimiert werden: Einerseits soll die Wahrscheinlichkeit der Ausnutzung von Sicherheitslücken durch die Veröffentlichung ohne gleichzeitigen Patch verringert werden, andererseits sollen Anwender vor Schwachstellen in der von ihnen verwendeten Software gewarnt werden. Ein bekanntes Projekt, das nach diesem Prinzip arbeitet ist Google Project Zero. Dieses besteht aus einer Gruppe von Sicherheitsforschern, die im Auftrag von Google unbekannte Sicherheitslücken (sogenannte Zero Days) in verschiedenen, nicht von Google entwickelten Anwendungen suchen und im Coordinated Disclosure-Verfahren, üblicherweise mit einer Frist von 90 Tagen, veröffentlichen. Aber auch immer mehr große Anbieter, wie Facebook oder Mozilla organisieren die verantwortungsvolle Offenlegung von Schwachstellen in ihren Produkten über Bug Bounty-Programme selbst.
Wie handhabt aramido gefundene Sicherheitslücken?
Nach Abwägung der oben beschriebenen Argumente für die verschiedenen Offenlegungsvarianten hat sich aramido dazu entschlossen Sicherheitslücken verantwortungsvoll nach dem folgenden Verfahren offenzulegen:
Vorgehen zur verantwortungsvollen Offenlegung von Sicherheitslücken (Responsible Disclosure Policy)
Fast jedes IT-System weist Fehler auf. Diese Fehler werden häufig erst im Laufe der Zeit gefunden. Erlauben diese Fehler die Vertraulichkeit, Integrität oder Verfügbarkeit der Systeme, der Anwendungen oder der darin gespeicherten Daten zu beeinträchtigen, liegt eine Sicherheitslücke vor. Die aramido GmbH sieht es als ihre Aufgabe Sicherheitslücken in einer verantwortungsvollen Art und Weise den Herstellern, Betreibern und Nutzern zu melden.
Die von der aramido GmbH gefundenen Sicherheitslücken werden nach dem folgenden Verfahren zur verantwortungsvollen Offenlegung veröffentlicht. Ausnahmen davon sind Schwachstellen, die im Verantwortungsbereich eines Kunden der aramido GmbH liegen oder durch anderweitige vertragliche Vereinbarungen von der Veröffentlichung ausgeschlossen sind.
Nach dem Fund einer Sicherheitslücke wird der für die Anwendung oder das System Verantwortliche darüber auf einem vertraulichen Weg in Kenntnis gesetzt. Dabei werden Informationen zur Schwachstelle und zu ihrer Ausnutzbarkeit mitgeteilt. Nach Behebung der Schwachstelle oder spätestens nach 45 Tagen, unabhängig vom Behebungsstatus, wird diese auf der Webseite der aramido GmbH veröffentlicht. Von diesem Vorgehen wird nur in begründeten Ausnahmen und nach Abwägung der Auswirkungen auf die Allgemeinheit abgewichen.
Wird eine Sicherheitslücke durch aramido gefunden, könnte sie bereits durch andere Parteien gefunden und ausgenutzt worden sein. Daher sollten Sicherheitslücken so schnell wie möglich geschlossen werden. Zum Schutz der Allgemeinheit sollte die Öffentlichkeit über gefundene Sicherheitslücken informiert werden. Auf diese Weise können Schwachstellen behoben, aus Fehlern gelernt und das Verhalten angepasst werden.
Unter der Kategorie Sicherheitshinweise finden Sie in Zukunft Sicherheitshinweise, die von Mitarbeitern von aramido gefunden und offengelegt wurden.
Am 06.02.2017 in der Kategorie Sicherheitshinweise veröffentlicht.