рограмма L0phtCrack позволяет вычислять пароли, используя два различных метода. При использовании первого метода применяется поисковая словарная таблица, которую определяет специальный файл словаря. Хэшированные пароли для всех слов в файле словаря уже являются вычисленными и сравниваются со всеми паролями для пользователей данной SAM. Когда имеется соответствие — пароль известен. Этот метод чрезвычайно быстр. Тысячи пользователей могут быть проверены при помощи 300 КБ файла словаря всего за несколько минут на обычном PII. Недостаток этого метода состоит в том, что при помощи словаря можно определить только очень простые пароли, которые существуют ванглийском языке (словарный запас которого не превышает 100 тыс. слов). Для открытия словаря word-english вам необходимо выполнить команду “File” (Файл) к “Open Wordlist File” (Открыть словарь). Второй метод использует последовательный перебор набора символов типа A-Z или A-Z и 0-9 (и также других наборов) и вычисляет хэш для каждого возможного пароля для этих символов. Единственный недостаток данного метода — время. Данный метод использует интенсивный перебор значений, что требует больших вычислительных мощностей. Чем больший набор символов вы указали в меню “Tools” (Сервис)к “Оptions” (Параметры), тем дольше времени требуется для перебора всех значений. Набор символов A-Z требует приблизительно 7 часов вычислений на 600 герцовых процессорах PIII или Athlon. Представьте себе, что через какие-нибудь 7 часов вы будете иметь ключи от системы и будете эдаким маленьким богом, местного значения или не местного, как повезет. Набор A-Z и 0-9 требует приблизительно трое суток. Однако программа L0phtCracks разработана с учетом возможности интенсивных и долговременных вычислений и может использовать преимущества многопроцессорных систем. Если вы не хотите, чтобы программа присутствовала в панели задач, выберите в меню “Window” (Окно) к “Hide, Ctrl+Alt+L to Show” (Спрятать, для вывода на экран нажмите Ctrl+Alt+L). При запуске данной программы на многопроцессорном сервере она будет выполняться низким приоритетом, используя вычислительные возможности неактивного центрального процессора. Программа регулярно, через каждые пять минут, сохраняет результаты вычислений, что позволяет восстанавливать состояние вычислений в случаях отключения питания или перезагрузок. Открытие файла, с которым программа работала до перезагрузки можно из меню “File” (Файл) к “Оpen Password File” (Открыть файл паролей). Инсталляция Для инсталляции просто разархивируйте дистрибутивный архив в любой каталог на жестком диске. Создайте ярлык к программе l0phtcrack.exe (или l0phtcrack95.exe для Windows 95/98). Кроме того, если вы физически подключены к данной локальной сети и используете Windows NT 4.0 (или Window 2000), вы можете использовать сетевой sniffer readsmb.exe, при помощи которого можно получить пароли клиентских машин Windows 3.11/95/95 и MS-DOS. Перед использованием сетевого sniffer'а необходимо предварительно установить сетевой NDIS-драйвер, который входит в дистрибутивный комплект. Этот драйвер может работать только поверх драйвера реально присутствующей в системе сетевой Ethernet-платы и использует протокол CSMA-CD. Для установки NDIS-драйвера откройте апплет “Network” (Сеть) в панели управления. На вкладке “Protocols” (Протоколы) нажмите кнопку “Add” (Добавить). Затем нажмите кнопку “Have Disk” (Установить с диска) и определите каталог, в который вы установили L0phtCrack и в котором находится файл Oemsetup.inf. После перезагрузки вы сможете использовать сетевой sniffer readsmb.exe для перехвата паролей клиентских машин Windows. Получение хэшированных паролей Перед вычислением паролей необходимо получить доступ к хэшированным паролям. Существуют три основных метода получения хэшированных паролей: непосредственно из системного реестра, из файла SAM или при помощи сетевого sniffer'а. Получение хэшированных паролей непосредственно из реестра Если вы обладаете административными привилегиями, вы можете получить хэшированные пароли, используя команду “Tools” (Сервис) к “Dump Password from Registry” (Получить дамп пароля из реестра). Для этого укажите имя компьютера или адрес IP в формате \ \ Computer_name или \ \ IP-address. Однако сервер Windows NT/2000 может запретить попытку доступа к системному реестру по сети, если сконфигурирован надлежащим образом. Кроме того, если версия Windows NT/2000 локализована, для группы “Administrator” используется переведенное на другой язык слово, например для русского языка “Администратор”. Для того, чтобы программа L0phtCrack корректно обратилась к дампу системного реестра удаленного компьютера, вам необходимо изменить ключ системного реестра на вашем локальном компьютере. Для этого запустите программу regedit.exe и отредактируйте значение ключа HKEY_CURRENT_USER\ Software\ LHI\ L0phtCrack\ AdminGroupName. Присвойте значению этого ключа название группы “Administrator” для локализованной версии Windows NT (2000). Получение хэшированных паролей из файла SAM Вы можете получить хэшированные пароли из файла SAM на жестком диске, с резервной ленты или дискеты ERD (Emergency Repair Disk). Системный реестр NT фактически сохранен в нескольких различных файлах на системном диске в каталоге %SystemRoot%\ SYSTEM32\ CONFIG\. Если вы имеете физический доступ к компьютеру с установленной операционной системой Windows NT/2000, вы можете загрузить машину при помощи системной дискеты DOS и использовать программу типа NTFSDOS (http://www.ntinternals.com/ntfs20r), чтобы скопировать файл SAM на гибкий диск. Затем вы можете использовать команду программы L0phtCrack “Import SAM File” (Импорт SAM-файла), которая расположена в меню “File” (Файл), чтобы извлечь хэшированный пароль из файла SAM. Если вы работаете с компьютером Windows NT (2000) удаленно, то вам остается только воспользоваться резервной копией базы SAM, которая хранится в каталоге %SystemRoot%\ REPAIR\. Кроме того, если у вас имеется возможность получить доступ к кассетам стримера, на который производится ежедневный backup или к дискетам ERD, то вы можете скопировать файл SAM оттуда. Если вам удалось использовать дискету ERD, скопируйте оттуда сжатый файл sam._ и затем выполните команду: EXPAND SAM._ SAM Затем разжатый файл sam._ может импортироваться в L0phtCrack. Однако если администратор системы установил Service Pack 3 for NT 4.0 и использует утилиту SYSKEY для дополнительной криптоустойчивой шифрации файлов реестра, то программа L0phtCrack (это справедливо для версий более ранних, чем L0phtCrack 2.5) не сможет произвести импорт файла SAM. Использование сетевого sniffer'а для получения хэшированных паролей Если администратор системы использует утилиту SYSKEY и вам отказано в доступе к системному реестру по сети, имеется третий метод для получения хэшированных паролей. Для этого используется сетевой sniffer, который выполняет прослушивание и отбор пакетов для всех устройств в физическом сегменте Ethernet-сети. Сетевой sniffer, включенный с L0phtCrack, реализован в виде файла readsmb.exe, который работает только в Windows NT 4.0 (в последней версии программы реализован сетевой sniffer для Windows 95/98). Для запуска сетевого sniffer'а следует использовать команду: READSMB > PASSWD Как вы видите из данной команды, вся информация, полученная сетевым sniffer'ом, будет перенаправляться в текстовый файл passwd. Для сбора всех хэшированных паролей пользователя достаточно запустить sniffer один раз утром, в период времени, когда большинство пользователей приходит на работу и производит регистрацию в сети. Затем вы можете прервать работу этой программы и открыть файл passwd вL0phtCrack. Для включения режима отладки sniffer'а используйте команду -v: READSMB -V На медленных машинах -v опция может приводить к тому, что readsmb будет пропускать некоторые пакеты, так что эта опция действительна только для отладки и исследования. Выделение паролей из хэша После того, как вы получили набор хэшированных паролей и загрузили их в программу L0phtCrack, а также открыли словарь word-english, вы можете приступить к вычислению настоящих текстовых паролей. Для начала этой операции выполните команду “Run” (Запуск) из меню “Tools” (Сервис). Опции, установленные в диалоговом окне “Tools Options” по умолчанию, определяют, что сначала будет произведено вычисление паролей при помощи словаря word-english. Затем будет производится определение паролей при помощи последовательного перебора заданных значений, что требует уже более длительного времени. L0phtCrack сохраняет состояние вычислений каждые 5 минут в *.LC файл. Новые возможности L0phtCrack 2.52 ■ Увеличение быстродействия на 450% за счет оптимизированного ассемблерного кода для Pentium, Pentium MMX, Pentium Pro и Pentium II и III. Это приводит к увеличению быстродействия. Все алфавитно-цифровые пароли могут быть найдены за трое суток на Pentium II/450. ■ Новый гибридный метод расшифровки объединяет самые лучшие качества словарного и метода прямого подбора. ■ Возможность подключения национальных словарей. ■ Реализация сетевого SMB sniffer'а для операционных систем Windows 95/98. ■ Встроенная утилита PWDUMP2, которая позволяет произвести извлечение хэшированных паролей из файла SAM, зашифрованного при помощи утилиты SYSKEY из SP3. Утилита PWDUMP2 http://www.webspan.net/~tas/pwdump2/ позволяет получить список хэшированных паролей даже в системе с включенной утилитой SYSKEY. Данная программа может функционировать, если только пользователь, ее запустивший, имеет привилегию “Отладка программ” и является членом группы Administrators. Кроме того, данная утилита может использоваться в том случае, если с атакуемой системы удалось получить копию базы данных безопасности системы. ■ Получение паролей Windows NT при помощи PWL-файлов. Если вы получили доступ к клиентским компьютерам Windows 3.11/95/98, которые функционируют в локальной сети, вы можете узнать пароль системного администратора или других бюджетов в домене Windows NT косвенным образом. Для этого необходимо собрать все доступные *.PWL файлы, которые располагаются в системных каталогах Windows 3.11/95/98. Для расшифровки этих файлов вы можете использовать программу repwl.exe, которую можно найти по адресу http://webdon.com /vitas/pwltool.htm. Это одна из лучших программ для вычисления паролей из PWL-файлов, которая почти мгновенно может вычислить любой пароль. Открыв при помощи кнопки “Browse” (Пролистать) PWL-файл, выберите в списке нужный набор символов и затем нажмите кнопку “Search Password” (Поиск пароля). Найденные таким образом пароли помогут вам затем получить доступ к главному доменному серверу Windows NT. Но помните, что для более совершенной защиты системные администраторы, которые посообразительней, могут не ограничиться применением специальных утилит, но могут установить вручную еще более жесткие права на объекты файловой системы. В частности, за рекомендациями по установке таких ограничений они могут обратиться по адресу: http://www.microsoft.com/ntserver/security/exec/overview/ Secure_NTInstall.asp Соответственно там же можно искать и противоядие от их мощной защиты. К счастью, у дяди Билли работают еще такие люди, которые могут совершить ошибку, и благодаря таким людям мы можем проникнуть в систему через те дыры, которые они нам предоставляют. В частности, одной из таких дыр является возможность повысить свой уровень привилегий и войти в группу администраторов, а потом… Достигается это с помощью программы GetAdmin.exe (автор — Константин Соболев). Правда, в Service Pack 4 возможность эта устранена, но рискнуть стоит. Идея, заложенная в ней, довольно-таки проста и гениальна. Системные процессы в NT работают, как правило, под System Account, а значит, имеют на локальном рабочем месте администраторские права. Делайте вывод. Но, к сожалению, Billy сработал оперативно, в SP4 это уже залатали. Но не стоит отчаиваться: кто ищет, тот всегда найдет.
|