Security through obscurity

aus Wikipedia, der freien Enzyklopädie

(Weitergeleitet von Security by obscurity)
Wechseln zu: Navigation, Suche

Security through obscurity oder security by obscurity (engl. „Sicherheit durch Unklarheit“) bezeichnet ein kontroverses Prinzip in der Computer- und Netzwerksicherheit, nach dem versucht wird, Sicherheit durch Verschleierung bzw. Geheimhaltung zu erreichen. Ein System sollte sich niemals allein auf security through obscurity verlassen, aber es kann sinnvoll sein, dadurch die Schwelle für potentielle Angreifer anzuheben.

[Bearbeiten] Allgemeines

Claude Shannons Ausspruch The enemy knows the system („Der Feind kennt das System“) ist ein Ansatzpunkt, von dem man bei der Erstellung von Sicherheitskonzepten ausgehen sollte. Sicherheit, die ausschließlich auf der Geheimhaltung bzw. Verschleierung von Informationen beruht, hat sich oft als ungenügend herausgestellt. Als Ergänzung bestehender Sicherheitskonzepte erweist er sich jedoch als wirkungsvoll gegenüber z. B. einfachen oder automatisierten Angriffen.

Für den Bereich der Kryptologie bleibt festzuhalten, dass die Entschlüsselung immer durch Geheimhaltung von Daten verhindert wird. Die Frage ist lediglich, ob nur ein relativ kleiner Schlüssel geheimgehalten wird oder auch der verwendete Algorithmus, denn sobald der Algorithmus für viele Dinge verwendet wird, ist er nicht mehr geheim, sondern weit verbreitet. Security by obscurity ist also der Versuch, Dinge geheim zu halten, die weite Verbreitung finden.

Ein starker Algorithmus wie z. B. der Advanced Encryption Standard erfordert aus der Sicht der reinen Kryptographie-Sicherheit keine Geheimhaltung des Verfahrens, sondern nur des Schlüssels. Die Kryptographie-Sicherheit beschäftigt sich mit der Sicherheit eines Verfahrens. Immer wieder werden Verschlüsselungsalgorithmen geheimgehalten. Dies kann zwei Ursachen haben:

  1. Für sensible Bereiche wird ein Mechanismus immer geheimgehalten. Dies hat den entscheidenden Vorteil, dass ein Angreifer erst einmal den Mechanismus kennen und beherrschen muss, bevor er vielversprechende Angriffe vornehmen kann.
  2. Durch die Kenntnis vom verwendeten Verschlüsselungsalgorithmus könnten eventuelle Schwachstellen entdeckt werden, sodass sich erst bedeutend später herausstellt, dass die Verschlüsselung nicht effektiv ist. RC4 ist ein Beispiel dafür. Der Algorithmus ist die Basis der WEP-Verschlüsselung heute weit verbreiteter WLANs. Auf diese Weise führt security by obscurity zu einem Verlust von Sicherheit, da wegen security by obscurity die vermeintlichen Sicherheits-Methoden nicht auf ihre Wirksamkeit überprüft, die unwirksamen Methoden nicht frühzeitig als solche verworfen werden.

Das sehr weit verbreitete Konzept von Kennwörtern ist trotz der offensichtlichen Geheimhaltung meist keine security through obscurity: Man hält zwar ein Passwort geheim, um sicher zu gehen, dass nur Befugte Zugang oder Zugriff haben, allerdings sind die (Passwort-)Eingabemaske und der verwendete Mechanismus (der Zugang erfolgt bei korrektem Passwort) im Regelfall bekannt.

[Bearbeiten] Beispiele

Ein weiterer, funktionsloser Zugang
Das Anbringen eines zusätzlichen, offensichtlichen Login-Feldes, welches ohne Funktion ist, um so vom eigentlichen Angriffspunkt abzulenken. Vergleichbar ist hier das Anbringen eines funktionslosen Schlüssellochs an einer Tür und das Tarnen des eigentlichen Schlüssellochs. Dies soll einen Einbrecher dazu bewegen, seine Energie auf das funktionslose Schlüsselloch zu fokussieren.
Schlüssel in einem Blumentopf
Ein Beispiel für die Nachteile des Prinzips wäre jemand, der den Schlüssel seiner Haustüre in einem Blumentopf versteckt, für den Fall, dass er sich aus dem Haus ausschließt. Der Schwachpunkt dieser Vorgehensweise ist offensichtlich: Jeder, der weiß, wo der Schlüssel versteckt ist, kann die Haustüre öffnen. Der Hauseigentümer nimmt an, dass niemand von dem Versteck weiß und auch ein Einbrecher den Schlüssel kaum finden würde. Die Sicherheit der Schließanlage wird hier irrelevant.
Portscans „ignorieren“
Konfiguration einer Firewall, so dass Anfragen auf Ports ignoriert (DENY/DROP) anstatt negativ beantwortet werden (REJECT).
Dienste (Ports) verstecken
Dienste, wie z. B. SSH oder MySQL nicht auf den Standardports, sondern auf einem anderen Port laufen lassen, um automatisierte Angriffe ins Leere laufen zu lassen.
Ping „ignorieren“
Einige Hosts sind aus den gleichen Gründen wie bei Portscans so konfiguriert, dass sie ICMP Echo Request-Pakete ignorieren.
Closed-Source-Software
Wie sich Open Source und Closed Source unter dem Aspekt der Sicherheit verhalten, ist sehr umstritten. Betriebssysteme mit öffentlich einsehbarem Quellcode wie BSD, OpenSolaris oder Linux profitieren davon, dass der Quelltext von vielen Programmierern durchgesehen wird und so auch Programmfehler gefunden werden. In diesem Zusammenhang wird oft Eric Raymond zitiert: Given enough eyeballs, all bugs are shallow. Auf eine generell größere Sicherheit von Open-Source-Software zu schließen, ist aber falsch. Wichtiger ist der Aspekt zugänglichen Quellcodes bei konkreten Algorithmen der Kryptographie.
Ausgabe von Fehlinformationen
Die Ausgabe durch Verbindungen auf Ports verändern oder das Entfernen bzw. Verändern der Versions-Informationen von Webapplikationen. Durch die Veränderungen der Anwendungsinformationen wird versucht, einem Angreifer das Vorhandensein von anderer Software vorzugaukeln. Dieses Verfahren verwenden auch Honeypots.

[Bearbeiten] Siehe auch

Persönliche Werkzeuge