Русская Википедия:Атака Pass-the-hash

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Атака Pass-the-hash — один из видов атаки повторного воспроизведения. Она позволяет атакующему авторизоваться на удалённом сервере, аутентификация на котором осуществляется с использованием протокола NTLM или LM.

Этот метод может быть использован против любого сервера/сервиса, использующего протокол аутентификации NTLM или LM, вне зависимости от используемой на компьютере жертвы операционной системы.

Описание

В системах, использующих протокол аутентификации NTLM, пароли никогда не передаются по каналу связи в открытом виде. Вместо этого они передаются соответствующей системе (такой, как контроллер домена) в виде хешей на этапе ответа в схеме аутентификации Вызов-ответШаблон:Sfn.

Приложения Windows запрашивают у пользователя пароль в открытом виде, а затем вызывают API (например, LsaLogonUserШаблон:Sfn), которые преобразуют пароль в LM хеш и NTLM хешШаблон:Sfn и передают их в процессе аутентификации.[Прим. 1]Шаблон:Sfn Анализ протоколов показал, что для успешной аутентификации не обязательно знать пароль в открытом виде, вместо этого может использоваться только его хеш.

После получения каким-либо образом пары {имя пользователя — хеш пароля пользователя}, криптоаналитик получает возможность использовать эту пару для выполнения атаки по сторонним каналам и аутентификации на удаленном сервере под видом пользователя.Шаблон:Sfn При использовании данной атаки отпадает необходимость полного перебора значений хеш-функции для нахождения пароля в открытом виде.Шаблон:Sfn В основе атаки лежит слабость в реализации протокола сетевой аутентификации. Она заключается в том, что хеши паролей передаются без использования соли, а потому остаются неизменными от сессии к сессии (до тех пор, пока не изменяется пароль пользователя).Шаблон:Sfn Другими словами, для атакующего хеши паролей эквивалентны самим паролям.

История

Атака pass the hash изначально была опубликована Полом Эштоном в 1997Шаблон:Sfn. В основе этой атаки лежала возможность пройти аутентификацию на Samba SMB клиенте с использованием хеша пароля пользователя. При этом клиент не требовал пароля в открытом виде (Следующие версии Samba и некоторые сторонние реализации SMB и NTLM протоколов также поддерживали эту функциональность).

Поскольку этот способ атаки основывался на сторонней реализации Samba SMB клиента, он был подвержен некоторым серьезным ограничениям с точки зрения перспективности использования. Так как SMB протокол продолжал развиваться с течением времени, сторонние разработчики были вынуждены поддерживать изменения и дополнения, вносимые в протокол в новых версиях Windows/SMB (исторически это осуществлялось с помощью метода обратной разработки). Это означает, что даже после успешной NTLM аутентификации с использованием атаки pass the hash, некоторые Samba SMB клиенты могли не поддерживать необходимый криптоаналитику функционал.

Также из-за применения в атаке сторонней реализации Samba SMB клиента, было невозможно использовать встроенные приложения Windows такие как Net.exe или Active Directory Users and Computers, поскольку для аутентификации они запрашивали у атакующего/пользователя пароль в открытом виде, а не принимали хеш.

В 2007 Хернан Очоа опубликовал программу «Pass-the-Hash Toolkit»Шаблон:Sfn. С её помощью можно было во время работы системы изменить имя пользователя, доменное имя и хеш пароля, занесенные в кеш сервером проверки подлинности локальной системы безопасности после аутентификации пользователяШаблон:SfnШаблон:Sfn. Благодаря этому становилось возможным выполнить атаку pass the hash с использованием стандартных средств Windows, и, таким образом, обойти встроенные в систему средства проверки аутентификации.

Приложение также предоставляло новую технику атаки, позволявшую извлечь хеши паролей, сохраненные в кеш-памяти процесса lsass.exe. Данная техника вскоре стала широко использоваться для проведения испытаний на проникновение и атак. Этот метод сбора хешей паролей превосходит использовавшиеся ранее (например, извлечение хешей из локальной базы данных SAM с использованием pwdump или аналогичных программ), поскольку позволяет извлечь из оперативной памяти имя пользователя/доменное имя/хеш пароля пользователей домена (и администраторов домена), авторизованных в системе. Этот метод, например, позволяет получить хеши паролей авторизованных пользователей домена, которые не хранятся на жестком диске.Шаблон:Sfn Благодаря этому становится возможным скомпрометировать весь домен Windows NT после компрометации одного участника этого домена. Более того, атака может быть выполнена сразу, без необходимости проводить ресурсозатратную подготовку методом полного перебора.

Впоследствии программа была заменена приложением «Windows Credential Editor», расширявшим исходную функциональность и добавлявшим поддержку новых операционных систем.Шаблон:SfnШаблон:Sfn Некоторые антивирусы воспринимают данное приложение как вредоносную программу.Шаблон:SfnШаблон:Sfn

Сбор хешей

Прежде чем атака pass the hash может быть осуществлена, необходимо получить хеши паролей, соответствующие целевым аккаунтам. С этой целью атакующий может следующие методы сбора хешей:

  • Кешированные хеши паролей пользователей, прошедших аутентификацию в системе, могут быть прочитаны из базы данных SAM любым пользователем с правами администратора или с помощью различных утилит (например, pwdump).Шаблон:Sfn Администратор может запретить кеширование хешей паролей, так что данный метод работает не всегда.
  • Считывание хешей из локальной базы данных SAM.Шаблон:Sfn Поскольку эта база данных содержит сведения только о локальных пользователях, при использовании домена криптоаналитик не сможет пройти аутентификацию в других сервисах этого домена. Однако если локальный пароль администратора используется в других системах домена, атакующий получает возможность использовать хеши локального аккаунта для удаленного доступа к таким системам.
  • Анализ трафика между сервером и клиентом при аутентификации Вызов-ответШаблон:Sfn. Поскольку полученные хеши зашифрованы, необходимо выполнить полный перебор для получения хешей паролей.
  • Извлечение хешей, сохраненных системойШаблон:Sfn в памяти процесса lsass.exe. Хеши, полученные таким методом, могут принадлежать пользователям/администраторам домена (например, вошедших в систему через RDP). Таким образом, этот метод может быть использован для компрометации всего домена.

Меры противодействия

Любая система, использующая NTLM/LM протокол аутентификацииШаблон:Sfn в сочетании с любым протоколом связи (SMB, FTP, RPC, HTTP и другие)Шаблон:Sfn, подвержена атаке pass the hash. От данной атаки трудно защититься, поскольку существуют многочисленные эксплойты для Windows, позволяющие атакующему получить права администратора и осуществить сбор хешей. Более того, компрометация всего домена Windows может быть осуществлена с использованием одного участника этого домена.Шаблон:Sfn Многочисленные программы для проведения испытаний на проникновение могут быть использованы для автоматического поиска уязвимостей в системе.

Для защиты от атаки pass the hash применяется метод комплексной защитыШаблон:SfnШаблон:Sfn: использование межсетевого экрана, системы предотвращения вторжений, IPsec, антивирусных программ, полное шифрование диска, аутентификация с использованием стандарта IEEE 802.1X, уменьшение числа пользователей с правами администратораШаблон:Sfn, своевременная установка исправлений безопасностиШаблон:Sfn. Запрет системе Windows на кеширование хешей паролей может помешать атакующему извлечь эти значения из памяти. На практике это означает возможность проведения атаки только после входа жертвы в систему.Шаблон:Sfn В сценарии атаки на хеши паролей администраторов домена может использоваться возможность прохождения ими аутентификации в скомпрометированной системе. Разрешение администраторам домена проходить аутентификацию только в доверенных серверах проверки подлинности локальной системы безопасности сужает вектор атаки.Шаблон:Sfn Принцип минимальных привилегий предполагает предоставление пользователю минимально необходимых прав доступа для выполнения любых операций.Шаблон:Sfn Запрет на использование в системе протокола аутентификации NTLM/LM может повысить защищенность системыШаблон:Sfn, хотя протокол Kerberos также подвержен данной атаке.Шаблон:SfnШаблон:Sfn Запрет на использование отладчика может помешать атакующему извлечь хеши из памяти процессов.Шаблон:Sfn

Режим ограниченного администрирования, добавленный в Windows в 2014 году в обновлении для системы безопасности, разработан для снижения эффективности данного метода атаки.Шаблон:Sfn

Примечания

Шаблон:Примечания

Шаблон:Примечания

Литература

Книги
Статьи
Сайты


Ошибка цитирования Для существующих тегов <ref> группы «Прим.» не найдено соответствующего тега <references group="Прим."/>