Аутентификация — краеугольный камень системы безопасности. Она дает некоторую гарантию того, что пользователь или клиентский компьютер не таят угрозы и что им можно доверять. Но как бы то ни было, аутентификации, к сожалению, не всегда уделяют достаточно внимания. Между тем без аутентификации невозможно должным образом наделить объект правами и средствами управления доступом в соответствии с его идентичностью.
С идеей аутентификации связано множество ошибочных представлений. В предлагаемой статье я разъясню ряд основных концепций, касающихся аутентификации Windows, и помогу читателям составить представление о том, как эффективно использовать этот механизм для предоставления защищенного доступа к ресурсам сети. В статье также рассматриваются базовая концепция управления аутентификацией Windows и роль политики в защите паролей.
Я начну с простого на первый взгляд аспекта управления аутентификацией — с переустановки паролей.
Проблема с паролями
В большинстве сетей Windows реализован однофакторный механизм аутентификации, как правило, на основе паролей. «Однофакторным» этот механизм называют потому, что успешное удостоверение идентичности пользователя осуществляется на основе всего лишь одного фактора — пароля. В случае с паролями этот фактор относится к категории известных пользователю идентифицирующих признаков. Использовать пароли в качестве фактора аутентификации весьма удобно: для этого не требуется ни специальных аппаратных средств, ни внесения в списки регистрации. Однако аутентификация, построенная на известных пользователю идентифицирующих признаках, имеет свои слабости.
Пароли легко забываются, а многократный ввод паролей становится монотонной процедурой. Кроме того, пользователи нередко выбирают пароли, которые можно запомнить без особого труда и которые, соответственно, легко угадываются взломщиками.
Более того, пользователи могут забывать свои пароли, и в таких случаях они обращаются с просьбой о переустановке паролей к сотрудникам службы поддержки, нагружая их дополнительной работой. В относительно крупных организациях переустановка паролей вырастает в такую проблему, что администраторам приходится устанавливать средства переустановки паролей, управляемые самими пользователями. Однако надо сказать, что переустановка паролей — и в тех случаях, когда эту операцию выполняют сотрудники ИТ-подразделения, и когда этим занимаются сами пользователи, — связана с большим риском.
Люди есть люди
Опасность такого подхода, когда переустановкой паролей занимаются сотрудники ИТ-подразделения, состоит в том, что пользователи или сотрудники службы поддержки могут стать объектами социальных манипуляций. Кроме того, сотрудники службы поддержки могут злоупотреблять своими полномочиями и выступать от лица других пользователей. Возникает необходимость в специальной подготовке сотрудников службы поддержки, с тем чтобы они внимательно проверяли запросы на переустановку паролей, перед тем как выполнять эти запросы, и понимали, когда к ним применяются методы социальной инженерии.
В некоторых службах поддержки верификация проводится следующим образом: добавочный (телефонный) номер лица, обратившегося с запросом, сопоставляется с добавочным номером пользователя, за которого выдает себя проситель. Но, в сущности, этот метод позволяет получать доступ к приложениям, транзакциям и информации всякому, кто имеет доступ в ту или иную рабочую комнату. Ведь разве у сотрудников службы поддержки есть способ убедиться в том, что человек на другом конце провода не является посторонним, проникшим в офис?
В некоторых организациях для переустановки пароля необходимо получить заверенный цифровой подписью запрос от начальника пользователя. После этого сотрудники службы поддержки должны связаться с пользователем и сообщить ему новый пароль.
Еще один способ состоит в том, что сотрудники службы поддержки направляют пользователю новый пароль по голосовой почте. В этом случае гарантией сохранности пароля является PIN-код голосовой почты пользователя. В сочетании с заверенным подписью запросом начальника этот метод может с достаточной степенью надежности подтверждать аутентичность переустановки паролей — все зависит от защищенности системы голосовой почты.
В некоторых организациях сотрудники службы поддержки получают доступ к последним четырем цифрам номера социального страхования каждого сотрудника. Впервые услышав об этом методе, я не мог сдержать улыбку. Ведь это все равно что дать каждому работнику пароль из четырех цифр и позабыть о том, что требуются более длинные и устойчивые к взломам пароли. Вот классический метод, применяемый против центров обработки вызовов всех типов: организатор атаки постоянно звонит в центр, каждый раз попадает к другому представителю и каждый раз называет другую комбинацию символов, пытаясь обойти защиту.
Руководитель службы поддержки (особенно если в компании функционирует крупное подразделение, осуществляющее поддержку) должен проследить за тем, чтобы сотрудники организовали базу данных звонков пользователей, где будут фиксироваться все звонки с просьбами о переустановке паролей или получении другой конфиденциальной информации. Перед тем как выполнять любой поступивший запрос, сотрудники должны просматривать в этой базе данных информацию о звонках, связанных с каждым пользователем.
Для снижения риска злоупотреблений со стороны служащих ИТ-отдела, уполномоченных осуществлять переустановку паролей, необходимо организовать четкую систему аудита переустановленных паролей. Следует проводить проверки на месте, с тем чтобы убедиться: пароль был переустановлен в ответ на звонок в службу поддержки или на другой зафиксированный запрос. Сотрудники службы поддержки должны знать, что их работа находится под контролем. Все эти меры снижают опасность произвольных переустановок паролей.
Автоматическая аутентификация
Применение автоматических средств переустановки паролей экономит немало рабочего времени сотрудников службы поддержки и устраняет угрозы, связанные с использованием методов социальной инженерии или мошенничества со стороны недобросовестных служащих. Но даже такие управляемые самими пользователями системы должны предусматривать проверку подлинности запросов.
Самые лучшие системы из тех, что мне приходилось видеть, предусматривают подтверждение прав на доступ к приложению (обычно речь идет о Web-приложении корпоративной сети) со стороны начальника пользователя или владельца другой доверенной учетной записи. Затем пользователь вводит четыре последние цифры своего номера карты социального страхования.
Для успешной работы таких систем требуется, чтобы пользователь и его начальник физически находились в одном и том же месте. Иначе возникают проблемы: пользователь должен сообщить начальнику часть своего номера социального страхования, чтобы тот получил возможность изменить его пароль.
Другие средства самообслуживания позволяют пользователям переустанавливать забытые пароли по телефону; при этом применяются средства распознавания речи и проверяется номер социального страхования. Если программные средства распознавания речи достаточно эффективны и программа способна динамически выбирать образцы текста, которые пользователь должен повторить, такие решения вполне подходят.
Некоторые средства переустановки паролей осуществляют проверку идентичности пользователей с помощью ряда вопросов и ответов, основанных на персональных данных пользователя, таких как девичья фамилия матери пользователя или кличка его собаки. Будьте осторожны с подбором используемых при этом вопросов: некоторые ответы легко угадываются, и такие средства переустановки могут потребовать внесения в список регистрации дополнительных данных для новых пользователей.
Средства самообслуживания почти полностью устраняют риск, связанный с доставкой новых паролей пользователям, поскольку пользователь после аутентификации сам вводит новый пароль в средство переустановки паролей. Тем не менее проектировать, создавать и устанавливать такие средства нужно с учетом соображений безопасности: только так можно защитить приложение от взлома.
Определение политики паролей
Экран 1. Просмотр политики паролей для пользователей домена |
Как почти любая система, в которой используется аутентификация с паролем, Windows позволяет определить требования к надежности паролей (а следовательно, и аутентификации). Политика паролей в домене определяется в одном или нескольких объектах групповой политики (GPO), связанных с корневым каталогом домена. Не следует путать политику паролей в домене с политикой паролей для локальных учетных записей, которую также можно установить через GPO. По умолчанию в корневом каталоге существует всего один GPO, который называется Default Domain Policy. Если открыть этот GPO и перейти в Computer ConfigurationWindows SettingsSecurity SettingsAccount PoliciesPassword Policy, то можно увидеть политики паролей, применяемые ко всем пользователям домена (экран 1). Прежде чем настраивать эти параметры, необходимо разобраться, какие проблемы можно решить с помощью политики паролей, а какие нет.
Угрозы для паролей
Две основные опасности для паролей — попытки разгадать пароли в сети и внесетевой взлом. Стараясь разгадать пароли в сети, взломщик многократно пытается зарегистрироваться — вручную или с помощью программы — с именем пользователя и отгаданным паролем. В зависимости от протокола аутентификации, внесетевой взлом может произойти, когда злоумышленник похищает базу данных учетных записей пользователей, в которой хранятся хеши всех паролей, а затем применяет специальный инструмент для поиска паролей, соответствующих каждому хешу. Инструмент взлома обычно выполняет манипуляции с алгоритмом хеширования над набором возможных паролей (списком обычных слов или списком, генерируемым из набора символов) до тех пор, пока не будет найден пароль, хеш которого совпадает с одним из хешей в украденной базе данных учетных записей. На данном этапе инструмент взлома обнаруживает пароль, связанный с пользователем, и передает его взломщику.
Между отгадыванием и взломом есть фундаментальные различия. Чтобы взломать пароль, необходим хеш или информация на основе хеша. В некоторых случаях можно взломать пароль, получив информацию, производную от хеша, например из пакетов запрос/ответ протокола аутентификации NT LAN Manager (NTLM), перехваченных в сети. Затем, если в распоряжении злоумышленника есть хорошая программа и достаточно времени, можно вычислить пароли. В новейших программах взлома используются таблицы со списками всех возможных паролей и их хешей. С помощью таких расчетных таблиц раскрыть пароль можно почти мгновенно.
Чего не может политика паролей
Взломщики могут перебрать все возможные комбинации символов в пароле или, что еще проще, отыскать хеш в расчетной таблице, поэтому длинные пароли — малоэффективная защита от атак со взломом. Для защиты от взлома паролей необходимо помешать злоумышленнику получить хеши паролей или производную информацию.
Чтобы извлечь хеши паролей в пригодном для анализа формате из SAM или Active Directory (AD), в среде Windows необходимы административные полномочия или физический доступ. Помешать перехвату сетевого трафика аутентификации, пригодного для анализа, трудно, но, применяя надежные протоколы аутентификации, такие как Kerberos или NTLMv2 (вместо NTLM), ограничив физический доступ в центр телекоммуникаций и построив полностью коммутируемую сеть, можно сильно усложнить задачу злоумышленника.
Умелые взломщики могут использовать протокол Address Resolution Protocol (ARP), чтобы направить пакеты из коммутаторов через нужный узел сети. Для защиты от таких хитроумных атак на локальную сеть необходимо использовать передовые технологии защиты, например стандарт IEEE 802.1x и IPsec. При использовании 802.1x компьютер, подключаемый к порту одного из коммутаторов сети, должен пройти аутентификацию, прежде чем коммутатор сможет задействовать этот узел для передачи или приема пакетов. IPsec позволяет компьютеру проверить подлинность других компьютеров перед сеансом связи и отвергнуть ложные системы. IPsec также обеспечивает шифрование пакетов.
Что могут политики паролей
Итак, такие методы, как требование минимальной длины или сложности, не защитят от взлома пароля. Но политики паролей помогут отразить атаки с угадыванием со стороны внутренних и внешних злоумышленников. Усложненные пароли длиной не менее семи символов повышают устойчивость сети против атак с угадыванием.
Экран 2. Образец политики блокирования |
Проникнуть в сеть будет еще труднее, если применить продуманную политику блокирования, которая реализована в большинстве сетей с паролем. Политика блокирования для Windows состоит из трех значений, которые определяют, сколько попыток ввода пароля разрешается для каждой учетной записи в течение заданного периода времени и какие действия следует предпринять, если пользователь превышает этот порог. Например, на экране 2 показана политика, ограничивающая пользователя пятью последовательными попытками (пять неверных попыток входа) в течение 24 часов (1440 минут). Если значение длительности блокирования — 0, то администратор или другой пользователь с делегированными полномочиями должен разблокировать защищенную учетную запись. Такая политика блокировки подходит для многих компаний.
Неизбежное зло
Когда-нибудь мы заменим пароли двухфакторными механизмами аутентификации, включающими биометрический контроль или маркеры, но пока аутентификация на основе паролей остается неизбежным злом как с точки зрения пользователей, так и с позиции сотрудников ИТ-подразделений. Данный тип аутентификации подразумевает частую смену паролей, а это небезопасный процесс, открывающий перед злоумышленниками возможности атаки по разным направлениям.
Пока в сетях Windows используется механизм аутентификации на базе паролей, необходимо уделять пристальное внимание процессу переустановки паролей и следить за тем, чтобы достаточные средства контроля были реализованы на каждом его этапе. С помощью этих средств можно убедиться, что запросы изменения пароля законны, а новые пароли отсылаются их настоящим владельцам.
Эффективность политики паролей зависит от многих факторов, и каждая организация должна самостоятельно выбрать оптимальный подход. Требуя от пользователей, чтобы их пароли были достаточно сложными и блокируя действия взломщиков после нескольких неудачных попыток угадывания, можно эффективно использовать возможности системы аутентификации Windows на базе паролей.
Рэнди Франклин Смит - редактор Windows IT Pro и ведущий инструктор и разработчик курсов для программы по безопасности Windows NT/2000 института MIS Training. Его компания, Monterey Technology Group, занимается консалтингом в области информационной безопасности. Связаться с ним можно по адресу: rsmith@montereytechgroup.com