Eine Bewertung, kein Verkaufsgespräch
Die zehn goldenen Regeln der Anmeldedatenverwaltung
Dies sind die Regeln, auf denen ein Anmeldedatensystem aufgebaut sein sollte – technisch, überprüfbar, mit Bestanden/Nicht bestanden. Halten Sie jedes Werkzeug dagegen, auch unseres, und zählen Sie, wie viele es erfüllt. Die meisten in der Branche erfüllen weniger als die Hälfte, da die Art und Weise, wie Geheimnisse seit zwanzig Jahren gespeichert wurden, für Menschen konzipiert war, die sie lesen und sich daran erinnern mussten. Entfernen Sie diese Annahme, und die Messlatte verschiebt sich. Hier sollte sie liegen.
Zehn Regeln. Jede einzelne erfüllt Clavitor.
Jede Regel ist ein universelles Prinzip guter Anmeldedatenverwaltung. Darunter steht in einfachen Worten genau, wie Clavitor sie erfüllt.
01 — Zufälliger Schlüssel
Der Schlüssel ist zufällig und kein Mensch sieht ihn jemals.
Ein Geheimnis, das eine Person lesen kann, kann gephished, erraten, wiederverwendet oder ihr abgerungen werden. Der Schlüssel sollte ein zufälliges Material sein, das die Maschine generiert – niemals angezeigt, niemals eingegeben, niemals aus etwas wiederherstellbar, das ein Mensch weiß.
02 — Kein Master-Passwort
Es gibt kein Master-Passwort. Ein Hardware-Schlüssel ist der einzige Schlüssel.
Ein Master-Passwort ist eine Tür, und eine Tür kann aufgebrochen werden. Ein Wiederherstellungssatz für den Eigentümer ist ein Wiederherstellungssatz für den Angreifer. Die Vertrauensbasis sollte ein physischer Schlüssel sein, der vorhanden sein muss.
03 — Betreiber blind
Der Betreiber kann die von ihm gespeicherten Daten nicht entschlüsseln.
Wenn das Unternehmen, das die Server betreibt, Ihre Geheimnisse lesen kann, können dies auch ein böswilliger Mitarbeiter, eine Vorladung oder wer auch immer dieses Unternehmen kompromittiert. Vertraulichkeit sollte auf Mathematik beruhen, nicht auf dem guten Verhalten des Betreibers.
04 — Niemals dort, wo Code ausgeführt wird
Geheimnisse leben niemals dort, wo Code ausgeführt wird.
Anmeldedaten in einer .env-Datei, einer Umgebungsvariablen oder einem lokalen Cache warten darauf, dass das nächste, was ausgeführt wird, sie abgreift. Code sollte die Nutzung eines Geheimnisses erhalten, niemals dessen Verwahrung.
05 — Keine Aufzählung
Ein Agent kann nicht aufzählen. Er erreicht nur, was ihm benannt wurde.
Wenn ein Akteur den Speicher auflisten, durchsuchen oder durchstöbern kann, wird ein einziger Kompromiss zu einer Karte von allem, was Ihnen gehört. Die Unfähigkeit zur Aufzählung ist stärker als jede Beschränkung der Aufzählung.
06 — Maschinengebunden
Anmeldedaten sind an die Maschine gebunden, an die sie ausgegeben wurden.
Gehen Sie davon aus, dass Anmeldedaten irgendwann gestohlen werden. Wichtig ist, ob sie außerhalb der Maschine, zu der sie gehören, noch etwas wert sind. Ein Schlüssel, der von überall funktioniert, funktioniert auch vom Laptop des Angreifers.
07 — Kein Massenabfluss
Kein einzelner Akteur kann den Tresor leeren.
Normaler Gebrauch berührt eine Handvoll Geheimnisse. Ein Diebstahl versucht, alles schnell zu nehmen. Das System sollte diese beiden unterscheiden und den zweiten stoppen, ohne dass der Eigentümer zusehen muss.
08 — Protokolliert und zugewiesen
Jede Aktion wird protokolliert und zugewiesen.
Gemeinsame Konten und stille Lesevorgänge zerstören die Rechenschaftspflicht. Wenn etwas schiefgeht, müssen Sie genau wissen, wer oder was es getan hat und welche Anmeldedaten es berührt hat. Eine Aufzeichnung mit Lücken ist keine Aufzeichnung.
09 — Nichts im Ruhezustand auf dem Client
Keine Anmeldedaten verweilen auf dem Client. Nicht auf der Festplatte, nicht im Speicher, nicht einmal verschlüsselt.
Eine verschlüsselte lokale Kopie ist immer noch eine Kopie, und der Schlüssel dazu befindet sich auf derselben Maschine. Alles, was auf dem Gerät ruht, ist etwas, auf das ein Angreifer zurückkommen kann. Anmeldedaten sollten nur für den Moment existieren, in dem sie verwendet werden.
10 — Validierte Kryptografie
Die Kryptografie ist validiert, nicht erfunden.
Selbst entwickelte Kryptografie ist der Grund, warum kluge Teams verlieren. Die Primitiven, die ein Geheimnis schützen, sollten solche sein, die unabhängige Gutachter bereits validiert haben, und der Build sollte es unmöglich machen, sie ohne sie auszuliefern. Langweilig und geprüft ist besser als clever.
Führen Sie die Liste durch.
Führen Sie Ihr aktuelles Werkzeug anhand der zehn durch. Führen Sie dann unseres durch. Wir haben diese aufgeschrieben, weil die meisten in der Branche leise mehrere nicht erfüllen – und wir haben Clavitor entwickelt, um keine zu verfehlen.