V2.10.3 Service Authentication
Requirement:#
Verify that passwords are stored with sufficient protection to prevent offline recovery attacks, including local system access.
Explanation:#
Чтобы предотвратить атаки с восстановлением пароля в автономном режиме, пароли должны храниться безопасным образом для защиты от несанкционированного доступа. Этого можно добиться, используя надежные алгоритмы шифрования паролей и добавляя соли к хэшам, чтобы сделать их еще более безопасными. Хэш — это односторонняя функция, которая преобразует пароль в строку символов фиксированной длины, которую сложно реконструировать. Соление хэша включает в себя добавление случайных данных к паролю перед его хешированием, что затрудняет злоумышленникам использование предварительно вычисленных таблиц хэшей для взлома паролей. Кроме того, чтобы обеспечить достаточную защиту от доступа к локальной системе, хешированные пароли должны храниться в зашифрованном формате, например, с ключами шифрования, которые отделены от системы и недоступны для неавторизованных пользователей. Доступ к зашифрованному хранилищу паролей также должен быть ограничен только теми, у кого есть законная возможность, например администраторами, отвечающими за управление паролями.
Remediation:#
Чтобы убедиться, что пароли хранятся с достаточной защитой для предотвращения атак автономного восстановления, необходимо выполнить следующие действия:
- Определить место хранения паролей.
В зависимости от системы или приложения пароли могут храниться в разных местах, включая таблицы базы данных, файлы конфигурации или программное обеспечение хранилища паролей.
- Проверить шифрование.
Если пароли хранятся в базе данных или файле, убедиться, что они зашифрованы с использованием безопасного алгоритма шифрования, такого как AES или RSA. Если они хранятся в хранилище паролей, убедиться, что программное обеспечение хранилища использует безопасные методы шифрования.
- Проверить управление ключами шифрования.
Ключ шифрования имеет решающее значение для безопасности зашифрованных паролей. Убедитесь, что ключ шифрования надежно хранится, и доступ к нему разрешен только авторизованному персоналу. Кроме того, убедитесь, что ключ шифрования регулярно меняется, чтобы снизить риск несанкционированного доступа.
- Подтвердить безопасность места хранения ключа шифрования.
Убедиться, что место хранения ключа шифрования безопасно, например аппаратный модуль безопасности (HSM) или защищенный сервер. Кроме того, убедитесь, что доступ к месту хранения разрешен только уполномоченному персоналу.
- Проверить использование хэшей с солью.
Чтобы еще больше повысить защиту паролей, убедиться, что хэши с солью используются для хранения паролей. Соль добавляет к паролю уникальное значение до того, как он будет хеширован, что затрудняет взлом пароля злоумышленниками с помощью предварительно вычисленной хеш-таблицы.