Александр Поляков - ведущий аудитор информационной безопасности компании Digital Security.
Довольно часто при проведении аудита на соответствие стандарту PCI DSS, да и аудита безопасности в целом, приходится сталкиваться с отсутствием правильно настроенных парольных политик. Собственно из-за этого в итоге мы и получаем на выходе пароли типа «12345» и прочие уже приевшиеся аудиторскому глазу наборы символов, которые потом мелькают в очередном обзоре самых популярных паролей. И если на контроллере домена худо-бедно политика настроена, да и то, в основном, потому что настраивается по умолчанию, то в СУБД мы видим довольно грустную картину. А ведь чем по сотне раз на дню объяснять пользователям кошмары про подбор паролей, не проще ли один раз внедрить адекватную парольную политику и избавиться уж как минимум от 90% популярных паролей, тем более, что в этом нет ничего сложного и весь набор технических требований раздела 8.5 стандарта, как ни странно, можно реализовать даже не прибегая к дополнительным приложениям, потратив минимальное количество времени.
Итак, не будем больше терять драгоценного времени и приступим к настройке парольной политики в СУБД Oracle. Определимся с техническими требованиями:
- Изменение пароля пользователя не реже одного раза в 90 дней.
- При смене пароля запрещается выбор в качестве нового какого-либо из последних четырех использовавшихся данным пользователем паролей.
- Блокирование учетной записи после шести неудачных попыток ввода пароля.
- Блокирование учетной записи пользователя не менее чем на 30 минут, либо пока администратор не снимет блокировку.
- Блокирование рабочей сессии пользователя не более чем через 15 минут простоя.
- Использование в пароле не менее семи символов.
- Использования в пароле как цифр, так и букв.
Теперь перейдём к реализации. Собственно, основная часть требований реализуется при помощи настройки профилей:
Проверить установленные значения можно следующим запросом:
Для выполнения требования 7 необходимо указать так называемую функцию проверки, в которой можно настроить более тонкие параметры и даже, при желании, внедрить любые свои функции. Пример данной функции находится по умолчанию в директории $ORACLE_HOME/rdbms/admin/UTLPWDMG.SQL.
Для соответствия требованиям необходимо внести в эту функцию одно изменение, а именно - найти в скрипте строку, отвечающую за длину пароля и изменить значение с 4 на 7 (от себя добавлю, что лучше поставить 9):
Для того, чтобы ввести в эксплуатацию данную функцию, необходимо запустить модифицированный в предыдущем пункте скрипт UTLPWDMG.SQL от имени пользователя SYS. После чего необходимо добавить её в наш профиль следующей командой:
Вот, в общем то и всё, что касается технических требований. Более подробно о тонких настройках парольной политики и написании своей функции проверки, а также о других настройках безопасности СУБД Oracle можно прочитать в моей книге «Безопасность Oracle глазами аудитора: нападение и защита».
|