Frage:
Sollte 2FA für Dienstkonten aktiviert werden?
Jason
2019-07-31 23:52:46 UTC
view on stackexchange narkive permalink

Siehe Titel. Ich bin gerade an einer Sicherheitsüberprüfung beteiligt und frage mich, ob 2FA nicht nur für menschliche Anmeldekonten, sondern auch für Dienstkonten (nicht menschliche Konten) aktiviert werden soll. Wenn ja, wie wird dies normalerweise verwaltet? Jemand muss noch am anderen Ende sein, um die 2FA zu bestätigen, oder? Und wäre dies hauptsächlich eine einmalige Sache beim Setup oder müssten sie die 2FA-Anfrage regelmäßig erneut bestätigen?

Angenommen, der Dienst, bei dem Sie sich authentifizieren, ist für den Moment ein Drittanbieter.Das bedeutet, dass Sie 2FA für einen Dienst automatisieren müssen, der für einen Menschen bestimmt ist, jetzt aber automatisiert werden muss.Das klingt nach etwas, das nur darauf wartet, kaputt zu gehen, wenn der Drittanbieter die Funktionsweise des 2FA dort ändert, wo es mir menschlich egal ist, aber die Automatisierung könnte sich auf die alte Struktur stützen.
In einigen Umgebungen ist es möglich, Dienstkonten einzurichten, bei denen entweder keine interaktive Anmeldung möglich ist oder die Anmeldung nur mit Schlüsselanmeldeinformationen erfolgen kann.
Sechs antworten:
Geir Emblemsvag
2019-08-01 01:02:00 UTC
view on stackexchange narkive permalink

Das Problem bei der Anforderung von MFA für Dienstkonten besteht darin, dass es vollständig automatisiert werden muss. Zum Beispiel ein zeitbasiertes OTP.

Da dieses OTP jedoch auf einem geheimen Startwert basiert, handelt es sich praktisch nur um ein anderes Kennwort, das in einer Konfiguration gespeichert ist, die dem Dienstkonto zur Verfügung steht. Und es gibt daher keine wirkliche zusätzliche Sicherheit, die über die eines einzelnen Faktors wie eines Passworts hinausgeht.

Zustimmen!Ein 2FA-Token ist nur ein weiteres Passwort.Machen Sie das Service-Passwort zu einem zufälligen, großen Passwort, und Sie sind fertig.2FA wird nicht viel Sicherheit bringen und wird ein bewegender Teil sein, der darauf wartet, gebrochen zu werden.
Der wesentliche Unterschied zwischen einem Kennwort und einem TOTP-Token besteht darin, dass der OTP-Startwert niemals übertragen wird.Wenn also das Risiko des Abfangens und der Wiedergabe besteht, fungiert ein automatisiertes OTP als eine Art Nonce, wodurch abgefangener Datenverkehr für einen Angreifer weniger nützlich wird.Dies wäre jedoch nur erforderlich, wenn das System, mit dem Sie eine Verbindung herstellen, ohnehin kein stärkeres Authentifizierungssystem implementiert.
Wenn Sie eine Auswahl an Authentifizierungsmechanismen haben, wählen Sie auf keinen Fall ein Kennwort.Die praktischste Wahl wäre die Verwendung einer Form von Krypto mit öffentlichem Schlüssel.
Es gibt natürlich passwortbasierte Authentifizierungssysteme, die das Passwort selbst nicht übertragen, z. B. wissensfreie Beweise.
Ghedipunk
2019-08-01 01:50:13 UTC
view on stackexchange narkive permalink

Die Multi-Faktor-Authentifizierung ist sicherlich ohne menschliches Eingreifen möglich.

Es ist jedoch eine Frame-Herausforderung erforderlich.

Im Umgang mit Menschen sind die drei typischen Authentifizierungsfaktoren etwas, das Sie wissen (Passwort), etwas, das Sie haben (TOTP-Gerät / Programm, Telefon mit SMS, Zugriff auf ein E-Mail-Konto usw.) und etwas, das Sie sind (Biometrie). Sie können nicht verschiedene Dinge aus demselben Faktor kombinieren und als Multifaktorauthentifizierung bezeichnen. Das heißt, ein Fingerabdruck- und ein Netzhaut-Scan sind nicht 2FA, aber ein Fingerabdruck und ein Passwort sind 2FA.

Biometrie funktioniert nicht über ein Netzwerk, unabhängig davon, ob Sie die Fingerabdrücke eines Menschen scannen oder " Fingerabdruck "eines Computers, da Sie nicht überprüfen können, ob der Client nicht lügt, es sei denn, Sie haben einen vertrauenswürdigen Agenten bereit. "Der Kunde ist in den Händen des Feindes." - Raph Koster (Spieledesigner, kein Sicherheitsexperte, aber der Rat ist gut angewendet.) Ohne diesen vertrauenswürdigen Agenten sind biometrische Daten nur zur Identifizierung nützlich, nicht zur Authentifizierung (*).

Der nächste Authentifizierungsfaktor etwas, das Sie haben, ist normalerweise nicht von etwas zu unterscheiden, das Sie als Computer kennen. TOTP-Seeds, Kennwörter, Sitzungstoken, private RSA-Schlüssel usw. sind nur Bytes für einen Computer und befinden sich irgendwann im RAM. Menschen können davonkommen, dass TOTP-Seeds, Sitzungstoken, kryptografische Schlüssel und dergleichen zweite Faktoren sind, da es sehr unwahrscheinlich ist, dass Menschen diese auswendig lernen können. Daher benötigen sie Zugriff auf separate Hardware (oder zumindest etwas, das aufgeschrieben ist).

Es gibt jedoch Dinge, die ein Computer nicht im Voraus "wissen" kann. Wenn Sie über ein Hardwaregerät verfügen, das kryptografische Vorgänge ausführt und den privaten Schlüssel auf eine Weise speichert, die nicht kopiert werden kann (ohne offensichtliche Anzeichen von Manipulationen), wie z. B. einen U2F-Dongle, gilt dies als etwas, das der Computer hat, aber nicht. Ich weiß es nicht. In ähnlicher Weise können Informationen, die außerhalb des Bandes gesendet werden, auch als etwas betrachtet werden, über das der Computer verfügt, und nicht als etwas, das er kennt. Beispielsweise kann ein Token per E-Mail, FTP oder per SMS gesendet werden. Abhängig von Ihrem Bedrohungsmodell kann das einfache Öffnen einer Verbindung an einem anderen Port gut genug sein, um automatisierte Überwachungstools zu täuschen, obwohl ich es einem aktiven Lauscher nicht anvertrauen würde.

Apropos Bedrohungsmodelle, die aktuellen Bedrohungsmodelle gegen Benutzer, die Passwörter verwenden, sind nicht nur ein Faktor. Das Bedrohungsmodell besteht darin, dass die meisten Benutzer Kennwörter wiederverwenden, Kennwörter mit niedriger Entropie haben und dass fast alle Daten eines Menschen in mehrere Datenverletzungen einbezogen wurden, einschließlich vieler Datenverletzungen, die nie erkannt oder gemeldet wurden. Da Computer keine Probleme haben, sehr lange und wirklich zufällige Kennwörter zu speichern, und jedes Kennwort speichern können, das ihnen zugewiesen wurde, ist es trivial, für jedes Dienstkonto ein eindeutiges Kennwort mit hoher Entropie einzurichten.

Fußnoten:

(*) Die Identifizierung unterscheidet sich von der Authentifizierung darin, dass ich mich als Königin des Mars identifizieren kann, aber nicht als Königin des Mars authentifiziert werden kann. Ein Benutzername ist eine Identifikation, ein Benutzername und ein Passwort sind eine Authentifizierung. Ein Fingerabdruck ist eine Identifikation, aber ein Fingerabdruck, der von einem vertrauenswürdigen Agenten erstellt wurde, der den Prozess überwacht, ist eine Authentifizierung.

Tatsächlich gibt es eine Reihe von Schemata, um Biometrie zur Authentifizierung über Netzwerke zu verwenden.Ich denke jedoch, dass die Biometrie nur auf Geräten verwendet wird und unter der Haube alles wirklich PKI ist.https://fidoalliance.org/how-fido-works/
Es könnte wahrscheinlich Möglichkeiten geben, einen nicht wiederverwendbaren Retina-Scan mit einem einzigen Dienst zu erstellen.Sie können ein Video der Netzhaut aufnehmen und zur Authentifizierung an den Server senden. Der Server kann mithilfe einer (derzeit wahrscheinlich nicht verfügbaren) Hashing-Technik prüfen, ob dasselbe Video wiederverwendet wurde oder ob es sich um eine neue Originalaufnahme handelt (die Technik, um dies zu überprüfen)müsste in der Lage sein, eine echte neue Aufnahme von einer alten Aufnahme mit einigen Änderungen im Fotoeinkauf zu unterscheiden)
Wenn ich Sie also richtig verstehe, wird das Zulassen einer Verbindung nur von einer bestimmten IP- oder Computername und das Verwenden eines Dienstkontos / PW als MFA betrachtet?
@Jammin4CO, Wenn diese Verbindung völlig unabhängig von der Verbindung war, über die Sie sich authentifizieren möchten, vom Authentifizierungsserver stammt und eingerichtet wurde, um ein Out-of-Band-Token für die einmalige Verwendung zu senden, dann ja.Es ist nicht nur eine neue Verbindung, sondern die Tatsache, dass sie außerhalb des Bandes und außerhalb der Kontrolle des Kunden liegt, macht sie zu einem separaten Faktor von nur etwas, das Sie kennen.
@Falco Wie macht man einen Retina-Scan ohne Beteiligung eines Menschen?Wenn ein Mensch beteiligt sein muss, ist er nicht automatisiert und daher kein [Software-] Dienstkonto.(Es ist nur ein normales menschliches Konto, in dem ein Softwaredienst das Kennwort bereitstellt (einer der Faktoren).)
Peteris
2019-08-01 14:50:49 UTC
view on stackexchange narkive permalink

Netzwerkstandort als "etwas, das Sie sind"

Eine Möglichkeit, die Sicherheit von Diensten zu verbessern, die eine automatisierte Verbindung zu bestimmten Konten benötigen, besteht darin, die sichere Authentifizierung (z. B. ein tls / ssh-Clientzertifikat) durch strikte Vernetzung zu erweitern Einschränkungen - Wenn ein automatisierter Dienst zweimal täglich eine Verbindung von System A zu System B herstellen muss, sollte System B nicht nur die Anforderung authentifizieren, sondern auch Verbindungen für diesen Dienst / Port / Konto ablehnen, die nicht von der IP-Adresse von stammen System A.

Nicht kopierbare Anmeldeinformationen

Eine andere Möglichkeit, sich den Geheimnissen automatisierter Dienste zu nähern, besteht darin, sie nicht kopierbar zu machen, dh die Software, auf der die Geschäftslogik ausgeführt wird, verfügt nicht über Voller Zugriff auf diese Anmeldeinformationen, jedoch nur ein Link zu einem "Signatursystem" auf einem HSM oder "Software-HSM", bei dem die Geheimnisse im Allgemeinen nicht extrahiert werden können, sondern nur deren Verwendung auf eingeschränkte Weise. In diesem Fall kann das Hauptsystem, wenn es kompromittiert ist, die Geheimnisse, die später nach Belieben verwendet werden sollen, immer noch nicht kopieren. Sie können nur in Echtzeit auf sie zugreifen, ohne Protokollierung, Ratenbeschränkungen und andere Einschränkungen umgehen zu können.

Ich würde mir selbst antworten.Du hast es geschafft!Nicht kopierbare Anmeldeinformationen (d. H. Zertifikate, TPM, Hardwarebescheinigung) sind der Weg.Und daran arbeite ich aktiv
Raimonds Liepiņš
2019-08-01 15:45:54 UTC
view on stackexchange narkive permalink

2FA für Dienstkonten wird nicht benötigt und es wäre schmerzhaft, wenn Sie es tatsächlich einrichten würden.

Stellen Sie sich vor, Sie hätten möglicherweise 100 Dienstkonten, jedes Mal, wenn Ihr System heruntergefahren wird und Sie Wenn Sie sich erneut authentifizieren müssten, müssten Sie die 2FA jedes Mal selbst bestätigen. Wenn Sie dies nicht tun würden, wäre die 2FA sinnlos.

Möglichkeiten zum Sichern eines Dienstkontos:

Ich bin mir wirklich nicht sicher, wonach die Prüfer dies wünschen, aber wenn Sie ihnen genügend Beweise dafür liefern, dass Ihre Dienstkonten gesichert sind, sollte es dir gut gehen.

Dirk-Willem van Gulik
2019-08-02 18:02:14 UTC
view on stackexchange narkive permalink

Der springende Punkt ist sicherlich im Zusammenhang mit der Frage, welches Schutzniveau für solche Dienstkonten erforderlich ist. Was sind die Risiken? Und wie können Sie diese abmildern? Und können Sie angesichts des Prüfungswinkels zeigen, wie Sie diesen Kompromiss geschlossen haben? Und verfolgen Sie verbleibende Risiken?

Normalerweise erstelle ich ein einfaches &-Bedrohungsmodell für Schauspieler, wobei ich nicht funktionale Anforderungen wie Verfügbarkeit, Zugriff in Ausnahmefällen, Robustheit, Governance und organisatorische Fluidität besonders beachte.

Im Allgemeinen stelle ich fest, dass Dienstkonten dann in drei Blöcke unterteilt sind: 1) diejenigen, die in der Organisation weit verbreitet sind und deren „Macht“ Sie so weit minimieren können, dass die Risiken von 2FA oder anderer Komplexität allmählich übergewichtet werden die Risiken eines "gemeinsamen Geheimnisses". 2) Diejenigen, die routinemäßig ziemlich mächtig sind, da sie Servicewartung, Upgrades und was nicht dreht und 3) diejenigen, die wirklich Ihre ultimativen / letzten Ausweg-Ausnahmen sind - und, obwohl sie selten verwendet werden, wo Sie versehentliche Verluste verhindern wollen - sogar wenn die Dinge schlimm sind.

Die erste Klasse besteht oft aus gemeinsamen Geheimnissen mit guter Überwachung, Governance und was nicht als Schadensbegrenzer. Oder führt Sie dazu, eine gut gesicherte Bastion / Webinterface auf etwas mit solider Sicherheit aufzubauen - das nur das Auslösen einiger sehr spezifischer Routineoperationen ermöglicht.

Für die dritte Klasse - Analyse findet häufig die Einführung von 2FA oder ähnlich sehr unerwünscht - da sie in extremen Situationen arbeiten müssen, in denen Fragilität ein Problem darstellt. Daher greift man häufig auf Offline-Passwörter in versiegelten Umschlägen in Safes zurück, um das Risiko eines Diebstahls von & zu minimieren. Und erhalten Sie im Gegenzug Robustheit (und Salted / Hashes auf der Validierungs- / Serverseite). Anschließend koppeln Sie dies mit Ihrem physischen Gouvernance- und Audit-Prozess.

Aber es ist immer diese Mittelklasse, die das Problem ist - sehr mächtig, oft benutzt. Und manchmal von mehreren Personen. Aber Sie wollen wirklich keine Betrüger oder den Verlust dieses Zugangs. Sogar oder besonders, wenn Sie das Personal wechseln, erfahren Sie von einer Sicherheitsverletzung und so weiter.

Hier liegt also der Kompromiss zwischen dem "Schmerz" von 2FA und der Benutzerfreundlichkeit.

Nach meiner Erfahrung hilft eine Art 2FA-Minderung häufig bei Ihrer Gesamtrisikobewertung, da sie das Bild nicht klonfähig macht und gleichzeitig die Notwendigkeit beseitigt, Dinge wie Passwörter oder das Risiko zu ändern

Übliche Lösungen sind Sätze von x509- oder SSH-Schlüsseln auf USB-Token oder Chipkarten (manchmal sogar ohne PIN). Da diese die Authentifizierung an einem zeitlichen und räumlichen Punkt verankern.

André LFS Bacci
2019-08-03 18:31:15 UTC
view on stackexchange narkive permalink

Nein zu 2FA, Ja zu Client-Zertifikaten

Gemäß der Antwort Geir Emblemsvag ist 2FA nur ein anderes Passwort. Es ist eine Problemumgehung für Fleischbeutel strike> Menschen und ihre Passwörter mit niedriger Entropie.

Aber Maschinen sind schnell und könnten (oder besser, sollten ) arbeiten mit sehr hoher Entropie bei jedem Zugriff . Es sollten niemals Daten im Klartext übertragen werden.

Die Überprüfung des Clientzertifikats auf dem Server / Dienst ist eine Möglichkeit, dies zu gewährleisten. Es wird sichergestellt, dass die Daten immer verschlüsselt sind und Sie eine Dienstauthentifizierung erhalten und sich kostenlos identifizieren.



Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 4.0-Lizenz, unter der er vertrieben wird.
Loading...