Qualität

Usable Security - Usability als Erfolgsfaktor für Security

"Wenn es nicht bedienbar ist, ist es auch nicht sicher.“ – M. Angela Sasse

Kelvin Homann
Kelvin Homann

IT-Consultant

11.04.2022 Lesedauer ca. 11 Min.

„Das Problem sitzt immer einen halben Meter vor dem Bildschirm.“ Sobald Benutzer:innen technische Hilfe benötigen oder sogar Probleme verursachen, hört man von IT-Fachkräften schnell diesen Spruch. So hat sich der Mensch als schwächstes Glied in der Sicherheitskette von IT-Systemen in der Wahrnehmung bereits etabliert. Wie kann dieses Problem angegangen werden?

Der aktuelle Verizon Data Breach Investigation Report bestätigt die vorangegangene Vermutung: 85% erfolgreicher Cyberangriffe sind auf menschliche Fehler zurückzuführen (1). Das ist natürlich auch den Angreifenden bewusst, so werden erfolgreiche Angriffe weniger auf tiefer technischer Ebene ausgeführt als mit Social-Engineering-Angriffen (2).

Symbolbild
Abbildung 1: Symbolbild https://xkcd.com/538/

Social Engineering Angriffe und menschliche Fehler lassen sich schwer auf technischer Ebene abwenden, welche Maßnahmen können also getroffen werden, um das schwächste Glied in der Sicherheitskette zu stärken?

Usable Security als Forschungsgebiet Usable Security als Forschungsgebiet

Ein Lösungsansatz für diese Problematik ist Usable Security. Usable Security ist ein Interdisziplinärer Forschungsbereich, welcher in Deutschland bereits von mehreren Arbeitskreisen und Forschungsgruppen (3)(4)(5) behandelt wird. Er befasst sich damit, wie bekanntes Wissen aus der Human-Computer-Interaction (HCI) angewendet werden kann, um die Sicherheit von komplexen Systemen durch eine hohe Usability, also der Benutzerfreundlichkeit, zu erhöhen (6). Anstatt Usability und Security als konkurrierende Themen zu betrachten, ergänzen sie sich hier.

Erkenntnisse aus diesem Bereich zeigen, dass Sicherheitsverstöße tatsächlich von Menschen durch falsches Anwenden von Sicherheitsmaßnahmen verursacht werden. Dessen Verhalten lässt sich aber durch die Art und Weise wie Sicherheitsmechanismen implementiert sind und durch mangelndes Wissen erklären (6).

So sollten die Benutzer:innen nicht als Sündenböcke gesehen werden und für die Konzeptionierung von Anwendungen ein User-Centered-Design Ansatz gewählt werden (8). User-Centered-Design beschreibt hier die Nutzerorientierte Gestaltung, welche darauf abzielt, interaktive Produkte so zu gestalten, dass sie über eine hohe Gebrauchstauglichkeit verfügen. Um dies zu erreichen werden die Benutzer:innen mit ihren Aufgaben, Zielen und Eigenschaften in den Mittelpunkt des Entwicklungsprozesses gestellt und das Produkt so optimiert, dass die Benutzer:innen das eigene Verhalten und die Erwartungen nicht ändern müssen um das Produkt effektiv zu verwenden (16).

Dies gilt sowohl für das Design von Benutzeroberflächen als auch das Schnittstellendesign auf technischer Seite. Denn eine schlechte Usability von Anwendungen oder Schnittstellen führt dazu, dass Sicherheitsvorkehrungen umgangen oder ignoriert werden (7).

Die Nutzenden verstehen Die Nutzenden verstehen

Um die Benutzer:innen beim Design überhaupt ins Zentrum stellen zu können, also User-Centered-Design (9) sinnvoll anzuwenden, muss man sie selbst, ihre Rolle für die Anwendung und ihre Beweggründe beim Handeln erst verstehen, um sich in ihre Lage versetzen können.

So handeln Benutzer:innen nicht zwingend fahrlässig, weil das geforderte Verhalten zu schwierig oder komplex ist, sondern weil es ihnen unangenehm ist und im Widerspruch zu dem Bild steht, das sie nach außen vermitteln wollen. Auch Zeitdruck, Deadlines und ähnliches können dazu führen das Sicherheitsmaßnahmen bewusst umgangen werden. Ein Beispiel dafür wäre eine Richtlinie die alle Mitarbeitenden auffordert, ihre Computer zu sperren, wenn sie selbst für einen kurzen Moment ihren Arbeitsplatz verlassen. Wenn eine Mitarbeiterin den Bildschirm jedes Mal sperrt, wenn sie das Büro verlässt und sei es auch nur für kurze Zeit, was werden dann die Kollegen denken? Die Mitarbeiterin wird wahrscheinlich vermuten, dass die Kollegenschaft denkt, sie habe entweder etwas zu verbergen oder ihnen nicht vertraut.

Weirich und Sasse haben herausgefunden (6), dass Menschen, die Sicherheitsrichtlinien genau befolgen (das heißt sie erstellen und merken sich starke Passwörter, ändern diese regelmäßig und sperren immer ihre Bildschirme) von ihren Mitmenschen als “paranoid” und “pingelig” bezeichnet werden. Dies ist kein Image, das die meisten Menschen anstreben.

Auch wenn für diese Situation grundsätzlich organisatorische Maßnahmen erforderlich sind, so zeigt sie gut, welchen Ursprung vermeintlich fahrlässiges Verhalten hat und dass Menschen nicht grundsätzlich aus böser Absicht handeln. Dies zu verstehen ist Grundvoraussetzung, um Prozesse zu schaffen, die angenommen werden und somit effektiv wirken können.

Security und Usability in der Praxis vereinen Security und Usability in der Praxis vereinen

Wie können Usability und Security nun in der Praxis sinnvoll zusammengeführt werden?

Dieser Abschnitt betrachtet in erster Linie das Erreichen einer hohen Usability von Benutzeroberflächen. Das Wissen lässt sich aber auf technische Schnittstellen übertragen. So hilft die beste technische Lösung niemandem weiter, wenn keiner weiß, wie man sie richtig benutzt.

Für beides gilt: In der Theorie von „Usable Security“ ist eine hohe Usability die Grundlage, um auch eine effektive Sicherheit zu erreichen. So ist das Erreichen einer hohen Benutzerfreundlichkeit bereits bei der Konzeptionierung des Systems ein primäres Ziel und wird nicht nachträglich „nachgepatched“, wenn das Budget es erlaubt.

Benutzeroberflächen und Schnittstellen sicher gestalten

Ein prominentes Beispiel für eine technisch gute Lösung, die aber auch heute noch von Experten teilweise falsch verwendet wird (14), ist das Verschlüsselungsverfahren PGP (10). Das 1999 veröffentlichte Paper „Why Johnny Can’t Encrypt: A Usability Evaluation of PGP 5.0“ zeigt, warum der PGP Standard durch eine unzureichende Usability den durchschnittlichen Nutzer:innen keine zusätzliche Sicherheit bringt (11). Als eines der ersten Paper, welches sich mit der Bedeutung von Usability für die Sicherheit befasste und nachwievor relevant für die Forschung ist, bekam es 16 Jahre nach der Veröffentlichung den „Test of Time“-Award verliehen (12).

Die Autoren Whitten und Tygar identifizierten 5 besondere Herausforderungen, die bei der Konzeption von sicherheitskritischen Benutzeroberflächen zu beachten sind (13):

1: Unmotivierte Benutzer

Benutzer:innen fehlt oft die intrinsische Motivation sich mit Sicherheit zu beschäftigen und betrachten Sicherheit als zweitrangig. Es sollte nicht davon ausgegangen werden, dass Benutzer:innen freiwillig Sicherheitsprozesse in Handbüchern nachlesen oder aktiv nach unauffälligen Sicherheitseinstellungen suchen. Wenn die Sicherheit zu schwierig oder lästig ist, geben die Benutzer:innen sie möglicherweise ganz auf.

2: Falsche Intuition von Entwicklern

Was technisch versierte Personen als selbstverständlich hinnehmen, ist für Benutzer:innen oft Science-fiction Technologie. Dies muss bei der Gestaltung von Benutzeroberflächen beachtet werden.

3: Wertvolles Feedback

Es ist wichtig bei falschen Interaktionen den Benutzer:innen richtiges und sinnvolles Feedback anzuzeigen, welches sie auch verstehen. Dies ist sehr schwierig, wenn es sich um komplexe Vorgänge handelt und sollte nicht unterschätzt werden.

4: Das offene Scheunentor

Selbst wenn eine offene Sicherheitslücke bereits nach kurzer Zeit geschlossen wurde, ist davon auszugehen, dass sie bereits ausgenutzt wurde. Es muss als eine hohe Priorität beim Design der Benutzeroberfläche sein, das die Nutzer:innen die Sicherheitskonzepte gut genug verstehen damit das „Scheunentor“ nie geöffnet wird.

5: Das schwächste Glied

Ein System ist nur so stark wie das schwächste Glied. Das bedeutet, dass die Benutzer:innen angeleitet werden müssen, sich um alle Aspekte ihrer Sicherheit zu kümmern und nichts dem Zufall überlassen werden darf.

Um diese Herausforderungen erfolgreich zu meistern, sollte von Anfang an User-Centered-Design eingesetzt werden. Bei Benutzeroberflächen gilt es die Benutzer:innen zu entlasten. Sicherheitsprozesse sollten möglichst automatisiert werden und ohne den Eingriff von Menschen auskommen. Die so entstehenden Konzepte und Oberflächen sollten früh mithilfe von Usability-Tests validiert werden. Dafür bieten sich Fragebögen wie der System-Usability-Scale Fragebogen an, aber auch umfangreichere Tests sind gegebenenfalls notwendig. So kann festgestellt und gemessen werden, ob das Ziel, eine hohe Usability zu erreichen, auch tatsächlich erreicht wurde. Die Einführung einer sicherheitskritischen Anwendung sollte zusätzlich gezielt mit einer Schulung der Benutzer:innen einhergehen.

Ein User-Centered-Design Ansatz sollte aber auch bei der Entwicklung einer API verfolgt werden. Der falsche Einsatz der Schnittstelle sollte sinnvolles Feedback zurückgeben und zum korrekten Einsatz anleiten. Darüber hinaus ist bei der Entwicklung der Einsatz von Clean Code (15), Tests, einer sauberen Dokumentation und Standards wichtig.

Wrap-Up Wrap-Up

Die Thematik „Usable Security“ gibt einen oft vernachlässigten Blickwinkel auf die Umsetzung von Sicherheitssystemen in der IT. Dabei ist Usable Security keine Magie, sondern rückt den Menschen in den Vordergrund und plädiert zusammenfassend auf die Einhaltung von Qualitätstandards für Softwareentwicklung.

Kommen Sie für weitere Fragen im Bezug auf Usable Security und Software-Qualität gerne auf mich oder einen unserer Qualitätsexperten bei q-dan zu!

Quellen

Über Kelvin Homann

Kelvin Homann
Kelvin Homann

IT-Consultant bei der frobese GmbH | Usability Ninja bei q-dan