Методы устранения угроз

Существует ряд методов устранения угроз, которые можно использовать для повышения безопасности паролей. Эти методы реализуются с помощью одной или нескольких из следующих четырех основных технологий.

Технология Описание
Cryptoapi CryptoAPI предоставляет набор функций, которые помогают применять криптографические подпрограммы к целевым сущностям. CryptoAPI может предоставлять хэши, хэши, хэши, шифрование и расшифровку, чтобы упоминание своей основной функциональности. CryptoAPI также имеет другие функции. Дополнительные сведения о шифровании и CryptoAPI см. в разделе Основные сведения о шифровании.
Доступ к спискам управления Список управления доступом (ACL) — это список средств защиты, которые применяются к объекту . Объект может быть файлом, процессом, событием или другими объектами, которые имеют дескриптор безопасности. Дополнительные сведения о списках управления доступом см. в разделе Списки контроль доступа (ACL).
API защиты данных API защиты данных (DPAPI) предоставляет следующие четыре функции, которые используются для шифрования и расшифровки конфиденциальных данных: CryptProtectData, CryptUnprotectData, CryptProtectMemory и CryptUnprotectMemory.
Сохраненные имена пользователей и пароли Функции хранилища, которые делают обработку паролей пользователей и других учетных данных, таких как закрытые ключи, более простой, согласованной и безопасной. Дополнительные сведения об этой функции см. в разделе CredUIPromptForCredentials.

 

Эти технологии доступны не во всех операционных системах. Таким образом, степень повышения безопасности зависит от того, какие операционные системы используются. Ниже приведены технологии, доступные в каждой операционной системе.

Операционная система Технология
Windows Server 2003 и Windows XP
  • Cryptoapi
  • Доступ к спискам управления
  • API защиты данных
  • Сохраненные имена пользователей и пароли
Windows 2000

 

В следующих методах устранения угроз используется одна или несколько из четырех технологий. Нельзя использовать методы, требующие использования технологий, не включенных в операционную систему.

Получение паролей от пользователя

Если пользователь может настроить пароль, следует принудительно использовать надежные пароли. Например, требовать, чтобы пароли были минимальной длиной, например восемь символов или более. Пароли также должны содержать прописные и строчные буквы, цифры и другие символы клавиатуры, такие как знак доллара ($), восклицательный знак (!) или больше (>).

Получив пароль, быстро используйте его (используя как можно меньше кода), а затем удалите все остатки пароля. Это позволяет свести к минимуму время, доступное злоумышленнику для "перехвата" пароля. Компромиссом этого метода является частота, с которой пользователь должен получать пароль; однако этот принцип следует применять везде, где это возможно. Сведения о том, как правильно получить пароли, см. в разделе Запрос учетных данных пользователя.

Избегайте предоставления параметров пользовательского интерфейса "Запомнить пароль". Часто пользователи требуют использовать этот параметр. Если вы должны предоставить его, как минимум, убедитесь, что пароль сохраняется в безопасном режиме. Дополнительные сведения см. в разделе Хранение паролей далее в этом разделе.

Ограничение попыток ввода пароля. После определенного количества неудачных попыток заблокируйте пользователя на определенный период времени. При необходимости можно удлинить время отклика для каждой попытки до максимального значения. Этот метод направлен на победу над угадывающими атаками.

Хранение паролей

Никогда не храните пароли в виде открытого текста (без шифрования). Шифрование паролей значительно повышает их безопасность. Сведения о хранении зашифрованных паролей см. в разделе CryptProtectData. Сведения о шифровании паролей в памяти см. в разделе CryptProtectMemory. Храните пароли в как можно меньшем месте. Чем больше мест хранится пароль, тем выше вероятность того, что злоумышленник может найти его. Никогда не храните пароли на веб-странице или в веб-файле. Хранение паролей на веб-странице или в веб-файле позволяет легко их скомпрометировать.

После шифрования пароля и его сохранения используйте безопасные списки управления доступом, чтобы ограничить доступ к файлу. Кроме того, можно хранить пароли и ключи шифрования на съемных устройствах. Хранение паролей и ключей шифрования на съемном носителе, таком как смарт-карта, помогает создать более безопасную систему. После получения пароля для определенного сеанса карта можно удалить, тем самым устранив вероятность того, что злоумышленник может получить к нему доступ.