Security through obscurity
Security through obscurity - Sicherheit durch Verheimlichung
Beschreibung
Security through obscurity oder Security by obscurity (deutsch „Sicherheit durch Obskurität“, auch „Sicherheit durch Unklarheit“ oder „Sicherheit durch Dunkelheit“) ist ein Prinzip in der Computer- und Netzwerksicherheit.
- Es versucht, die Sicherheit eines Systems oder eines Verfahrens zu gewährleisten, indem seine Funktionsweise geheim gehalten wird.
Das Gegenkonzept dazu ist Sicherheit durch weitestgehende Transparenz, als Kerckhoffs’ Prinzip oder Full disclosure bezeichnet.
- Ausgehend von der Kryptologie wird hierbei vorgeschlagen, so wenig wie möglich geheim zu halten, um dieses dann umso leichter schützen und gegebenenfalls ersetzen zu können.
Das Prinzip security through obscurity ist sehr umstritten.
- So rät das National Institute of Standards and Technology (NIST), Sicherheitssysteme nicht auf dieser Basis zu konzipieren: Vorlage:"
Auf diesem Prinzip beruhende Systeme sind intransparent für dessen Anwender und damit wenig geeignet, Vertrauen in Sicherheit zu schaffen: „Security by Obscurity ist ein Prinzip, das nicht nur ungeeignet als Sicherungsprinzip bleibt, es ist obendrein kundenfeindlich.“
Hintergrund
Der Ausspruch des Informationstheoretikers Claude Shannon The enemy knows the system („Der Feind kennt das System“) ist ein Ansatzpunkt, von dem heute bei der Erstellung von Sicherheitskonzepten ausgegangen werden sollte.
- Sicherheit, die ausschließlich auf der Geheimhaltung oder Verschleierung von Verfahren beruht, hat sich oft als ungenügend herausgestellt.
- Als Ergänzung bestehender Sicherheitskonzepte konnte sich Verschleierung – bis zur Verbreitung automatisierter Test-Umgebungen ("Fuzzing") – jedoch als wirkungsvoll z. B.
- gegenüber automatisierten Angriffen erweisen.
Kryptographie beruht grundsätzlich darauf, dass die Entschlüsselung durch Geheimhaltung von Daten verhindert wird.
- Der Unterschied besteht darin, ob ein Schlüssel oder auch der verwendete Algorithmus geheim gehalten wird – denn sobald der Algorithmus für viele Dinge verwendet wird, ist er nicht mehr geheim, sondern weit verbreitet. Security by obscurity wäre dann der Versuch, Dinge geheim zu halten, die weite Verbreitung finden.
Ein starker Algorithmus, beispielsweise der Advanced Encryption Standard oder das RSA-Kryptosystem, erfordert aus der Sicht der reinen Kryptographie-Sicherheit keine Geheimhaltung des Verfahrens, sondern nur des verwendeten Schlüssels.
- Die Kryptographie-Sicherheit beschäftigt sich mit der Sicherheit eines Verfahrens.
Gleichwohl werden immer wieder Verschlüsselungsalgorithmen geheim gehalten.
- Schließlich können durch deren Kenntnis die eventuellen Schwachstellen entdeckt werden, so dass sich erst später herausstellt, dass die Verschlüsselung nicht effektiv war.
- Ein Beispiel ist RC4, welcher sieben Jahre lang geheim gehalten wurde, bis 1994 der Quellcode anonym veröffentlicht wurde – inzwischen gilt RC4 als massiv unsicher.
Auf diese Weise führt security by obscurity zu einem Verlust von Sicherheit, da bei diesem Prinzip die vermeintlichen Sicherheitsmethoden nicht auf ihre Wirksamkeit überprüft und die unwirksamen Methoden nicht frühzeitig als solche verworfen werden können.
Das sehr weit verbreitete Konzept von Passwörtern ist trotz der offensichtlichen Geheimhaltung ebendieser meist keine security through obscurity.
- Das Passwort entspricht dem verwendeten Schlüssel, der sowohl bei security through obscurity als auch bei dem Kerckhoffs’schen Prinzip geheim gehalten werden muss, um Unbefugten Zugang bzw.
- Zugriff zu verwehren.
- Unabhängig davon ist die Methode zur Überprüfung der Eingabe und dem Abgleich des richtigen Passworts.
- Diese sollte nach dem Kerckhoffs’schen Prinzip offengelegt werden bzw.
- wäre eine Geheimhaltung des Prinzips als security through obscurity einzustufen.
Beispiele
Beispiel | Beschreibung |
---|---|
Ping „ignorieren“ | Einige Hosts sind so konfiguriert, dass sie kein Gesuch um ein Echo erfüllen.
|
Portscans „ignorieren“ | Konfiguration einer Firewall, so dass Anfragen auf Ports still verworfen (DROP) statt ablehnend beantwortet (REJECT) werden.
|
Netzwerkdienste verstecken | Dienste wie die Secure Shell oder MySQL nicht auf ihren standardisierten Ports, sondern auf anderen Ports laufen lassen.
|
Ausgabe von Fehlinformationen | Die auf eingehende Verbindungen folgende reguläre Antwort ändern, beispielsweise Namen oder Versionsnummern der Programme, um Angreifern eine andere Software vorzugaukeln, die uninteressant ist.
|
Closed-Source-Software | Wie sich Open Source und Closed Source unter dem Aspekt der Sicherheit verhalten, wird teilweise kontrovers diskutiert.
|
E-Postbrief | In einem Interview mit dem Magazin CIO gab der Projektleiter des E-Postbriefs, Georg Rau, an: „Grundsätzlich gilt, dass wir hier bei uns keine Sicherheitslücke sehen.
|