Techniken zur Bedrohungsminderung
Es gibt eine Reihe von Techniken zur Bedrohungsminderung, die Sie verwenden können, um Kennwörter besser zu schützen. Diese Techniken werden mithilfe einer oder mehrerer der folgenden vier primären Technologien implementiert.
Technologie | Beschreibung |
---|---|
CryptoAPI | CryptoAPI stellt eine Reihe von Funktionen bereit, mit denen Sie kryptografische Routinen auf Zielentitäten anwenden können. CryptoAPI kann Hashes, Digests, Verschlüsselung und Entschlüsselung bereitstellen, um die primäre Funktionalität zu erwähnen. CryptoAPI verfügt auch über andere Features. Informationen zu Kryptografie und CryptoAPI finden Sie unter Cryptography Essentials. |
Zugriffssteuerungslisten | Eine Zugriffssteuerungsliste (ACL) ist eine Liste der Sicherheitsschutzmechanismen, die für ein Objekt gelten. Ein Objekt kann eine Datei, ein Prozess, ein Ereignis oder ein anderes Objekt sein, das über einen Sicherheitsdeskriptor verfügt. Weitere Informationen zu ACLs finden Sie unter Zugriffssteuerungslisten (ACLs). |
Datenschutz-API | Die Datenschutz-API (DPAPI) bietet die folgenden vier Funktionen, die Sie zum Verschlüsseln und Entschlüsseln vertraulicher Daten verwenden: CryptProtectData, CryptUnprotectData, CryptProtectMemoryund CryptUnprotectMemory. |
Gespeicherte Benutzernamen und Kennwörter | Speicherfunktionalität, die die Behandlung von Kennwörtern und anderen Anmeldeinformationen von Benutzern erleichtert, z. B. private Schlüssel, einfacher, konsistenter und sicherer. Weitere Informationen zu dieser Funktionalität finden Sie unter CredUIPromptForCredentials. |
Diese Technologien sind nicht auf allen Betriebssystemen verfügbar. Daher hängt das Ausmaß, in dem die Sicherheit verbessert werden kann, davon ab, welche Betriebssysteme beteiligt sind. Hier sind die Technologien, die in jedem Betriebssystem verfügbar sind.
Betriebssystem | Technologie |
---|---|
Windows Server 2003 und Windows XP |
|
Windows 2000 |
|
Die folgenden Techniken zur Bedrohungsminderung verwenden eine oder mehrere der vier Technologien. Techniken, die die Verwendung von Technologien erfordern, die nicht im Betriebssystem enthalten sind, können nicht verwendet werden.
Abrufen von Kennwörtern vom Benutzer
Wenn Sie zulassen, dass der Benutzer ein Kennwort einrichtet, erzwingen Sie die Verwendung sicherer Kennwörter. Fordern Sie beispielsweise an, dass Kennwörter eine Mindestlänge wie acht Zeichen oder mehr aufweisen. Kennwörter sollten auch erforderlich sein, um Groß- und Kleinbuchstaben, Zahlen und andere Tastaturzeichen wie das Dollarzeichen ($), Ausrufezeichen (!), oder größer als (>) enthalten.
Nachdem Sie ein Kennwort erhalten haben, verwenden Sie es schnell (mit so wenig Code wie möglich), und löschen Sie dann alle Reste des Kennworts. Dadurch wird die Zeit minimiert, die einem Eindringling zur Verfügung steht, um das Kennwort "abfangen" zu können. Der Kompromiss mit dieser Technik ist die Häufigkeit, mit der das Kennwort vom Benutzer abgerufen werden muss; Der Grundsatz sollte jedoch wo möglich eingesetzt werden. Informationen zum ordnungsgemäßen Abrufen von Kennwörtern finden Sie unter Anfordern des Benutzers nach Anmeldeinformationen.
Vermeiden Sie die Bereitstellung von "Kennwort merken"-Benutzeroberflächenoptionen. Häufig fordern Benutzer diese Option an. Wenn Sie es angeben müssen, stellen Sie mindestens sicher, dass das Kennwort sicher gespeichert wird. Weitere Informationen finden Sie im Abschnitt "Kennwörter speichern" weiter unten in diesem Thema.
Beschränken Sie die Kennworteingabe. Nach einer bestimmten Anzahl von Versuchen ohne Erfolg sperren Sie den Benutzer für eine bestimmte Zeitspanne. Verlängern Sie optional die Antwortzeit für jeden Versuch über ein Maximum. Diese Technik zielt darauf ab, einen Erratenangriff zu besiegen.
Speichern von Kennwörtern
Speichern Sie Kennwörter niemals im Nur-Text (unverschlüsselt). Das Verschlüsseln von Kennwörtern erhöht ihre Sicherheit erheblich. Informationen zum Speichern verschlüsselter Kennwörter finden Sie unter CryptProtectData. Informationen zum Verschlüsseln von Kennwörtern im Speicher finden Sie unter CryptProtectMemory. Speichern Sie Kennwörter an so wenigen Stellen wie möglich. Je mehr Orte ein Kennwort gespeichert werden, desto größer ist die Wahrscheinlichkeit, dass ein Eindringling es finden könnte. Speichern Sie niemals Kennwörter auf einer Webseite oder in einer webbasierten Datei. Das Speichern von Kennwörtern auf einer Webseite oder in einer webbasierten Datei ermöglicht es ihnen, leicht kompromittiert zu werden.
Nachdem Sie ein Kennwort verschlüsselt und gespeichert haben, verwenden Sie sichere ACLs, um den Zugriff auf die Datei zu beschränken. Alternativ können Sie Kennwörter und Verschlüsselungsschlüssel auf Wechselmedien speichern. Durch das Speichern von Kennwörtern und Verschlüsselungsschlüsseln auf einem Wechselmedium, z. B. einer Smartcard, wird ein sichereres System erstellt. Nachdem ein Kennwort für eine bestimmte Sitzung abgerufen wurde, kann die Karte entfernt werden, wodurch die Möglichkeit entfernt wird, dass ein Eindringling Darauf zugreifen kann.