Techniki ograniczania zagrożeń
Dostępnych jest wiele technik ograniczania zagrożeń, których można użyć do lepszego zabezpieczenia haseł. Te techniki są implementowane przy użyciu co najmniej jednej z następujących czterech podstawowych technologii.
Technologia | Opis |
---|---|
CryptoAPI | CryptoAPI udostępnia zestaw funkcji, które ułatwiają stosowanie procedur kryptograficznych do jednostek docelowych. CryptoAPI może dostarczać skróty, skróty, szyfrowanie i odszyfrowywanie, aby wspomnieć o jego podstawowej funkcjonalności. CryptoAPI ma również inne funkcje. Aby dowiedzieć się więcej o kryptografii i interfejsie CryptoAPI, zobacz Cryptography Essentials. |
Listy kontroli dostępu | Listalisty kontroli dostępu (ACL) to lista zabezpieczeń, która ma zastosowanie do obiektu. Obiekt może być plikiem, procesem, zdarzeniem lub czymkolwiek innym, który ma deskryptor zabezpieczeń. Aby uzyskać więcej informacji na temat list ACL, zobacz listy kontroli dostępu (ACL). |
Interfejs API ochrony danych | Interfejs API ochrony danych (DPAPI) udostępnia następujące cztery funkcje używane do szyfrowania i odszyfrowania poufnych danych: CryptProtectData, CryptUnprotectData, CryptProtectMemoryi CryptUnprotectMemory. |
Przechowywane nazwy użytkowników i hasła | Funkcja magazynu, która sprawia, że obsługa haseł użytkowników i innych poświadczeń, takich jak klucze prywatne, łatwiejsze, bardziej spójne i bezpieczniejsze. Aby uzyskać więcej informacji na temat tej funkcji, zobacz CredUIPromptForCredentials. |
Te technologie nie są dostępne we wszystkich systemach operacyjnych. W związku z tym zakres, w jakim można poprawić zabezpieczenia, zależy od tego, które systemy operacyjne są zaangażowane. Poniżej przedstawiono technologie, które są dostępne w każdym systemie operacyjnym.
System operacyjny | Technologia |
---|---|
Windows Server 2003 i Windows XP |
|
Windows 2000 |
|
Poniższe techniki ograniczania zagrożeń używają co najmniej jednej z czterech technologii. Nie można używać technik wymagających użycia technologii, które nie są uwzględnione w systemie operacyjnym.
Pobieranie haseł od użytkownika
Gdy zezwolisz użytkownikowi na skonfigurowanie hasła, wymuś użycie silnych haseł. Na przykład wymagaj, aby hasła mają minimalną długość, taką jak osiem znaków lub więcej. Hasła powinny być również wymagane do uwzględnienia wielkich i małych liter, cyfr i innych znaków klawiatury, takich jak znak dolara ($), wykrzyknik (!) lub większy niż (>).
Po otrzymaniu hasła użyj go szybko (jak najmniej kodu), a następnie wymazaj wszystkie elementy hasła. Minimalizuje to czas dostępny dla intruza w celu "pułapki" hasła. Kompromis z tą techniką to częstotliwość pobierania hasła od użytkownika; należy jednak stosować zasadę wszędzie tam, gdzie jest to możliwe. Aby uzyskać informacje na temat prawidłowego pobierania haseł, zobacz Monituj użytkownika o poświadczenia.
Unikaj podawania opcji interfejsu użytkownika "zapamiętaj hasło". Często użytkownicy będą domagać się posiadania tej opcji. Jeśli musisz go podać, upewnij się, że hasło zostanie zapisane w bezpieczny sposób. Aby uzyskać informacje, zobacz sekcję Przechowywanie haseł w dalszej części tego tematu.
Ogranicz próbę wprowadzania hasła. Po określonej liczbie prób bez powodzenia zablokuj użytkownika przez pewien czas. Opcjonalnie wydłuża czas odpowiedzi dla każdej próby na maksymalną wartość. Ta technika ma na celu pokonanie ataku zgadywania.
Przechowywanie haseł
Nigdy nie przechowuj haseł w postaci zwykłego tekstu (niezaszyfrowane). Szyfrowanie haseł znacznie zwiększa ich bezpieczeństwo. Aby uzyskać informacje na temat przechowywania zaszyfrowanych haseł, zobacz CryptProtectData. Aby uzyskać informacje na temat szyfrowania haseł w pamięci, zobacz CryptProtectMemory. Przechowywanie haseł w jak najmniejszej liczbą miejsc. Im więcej miejsc jest przechowywane hasło, tym większe prawdopodobieństwo, że intruz może go znaleźć. Nigdy nie przechowuj haseł na stronie internetowej ani w pliku internetowym. Przechowywanie haseł na stronie internetowej lub w pliku internetowym umożliwia ich łatwe naruszenie.
Po zaszyfrowaniu hasła i zapisaniu go użyj bezpiecznych list ACL, aby ograniczyć dostęp do pliku. Alternatywnie można przechowywać hasła i klucze szyfrowania na urządzeniach wymiennych. Przechowywanie haseł i kluczy szyfrowania na nośniku wymiennym, takim jak karta inteligentna, pomaga utworzyć bardziej bezpieczny system. Po pobraniu hasła dla danej sesji można usunąć kartę, co spowoduje usunięcie możliwości uzyskania dostępu do niej przez intruza.