Глава 7. УЯЗВИМОСТЬ NOVELL NETWARE
|
Уязвимость NOVELL NETWARE Стандартным заблуждением относительно компании Novell является то, что ее программные продукты несколько устарели и утратили актуальность (по крайней мере в этом нас стараются убедить сообщества Microsoft и UNIX). Несмотря на отсутствие настойчивой рекламы, а также на то, что в последние годы рынок программного обеспечения компании Novell не расширялся, до ее забвения все же еще очень далеко. Во всем мире имеется более сорока миллионов пользователей NetWare, и риск потери важных корпоративных данных чрезвычайно высок. В этой книге будут рассматриваться различные версии NetWare, однако основное внимание мы уделим системе NetWare 4.x с клиентом Client32 — наиболее популярной в настоящее время. Однако если вы приобрели NetWare 5, не расслабляйтесь: многие из описываемых в данной главе атак, а также контрмеры против них по-прежнему актуальны. |
Соединение без регистрации Первым шагом взломщика является создание анонимного соединения (attachment) с сервером Novell. Для того чтобы разобраться с понятием "соединения", нужно понять, что происходит в процессе регистрации NetWare. Процесс регистрации на сервере NetWare реализован компанией Novell следующим образом. До аутентификации сервером к нему необходимо сначала присоединиться. Соединение и регистрация не являются взаимозаменяемыми. Другими словами, если регистрация завершилась неудачно, то соединение будет сохранено. Так что для соединения нет необходимости использовать корректное имя пользователя и пароль. Как вы скоро узнаете, присоединившись к компьютеру с системой NetWare, взломщик может сразу же приступать к своему черному делу. On-Site Admin В набор средств обеспечения безопасности администратор должен включить утилиту On-Site Admin. Она представляет собой средство администрирования NetWare с графическим интерфейсом, разработанное компанией Novell. Утилита On-Site Admin предоставляет информацию о серверах и деревьях, а также практически исчерпывающие данные, позволяющие оценить состояние системы защиты. При разработке этого приложения разработчики Novell приняли разумное решение, однако его можно использовать и против вас. Достаточно забавно, что теперь приложение On-Site Admin является одним из основных средств хакинга Novell. snlist и nslist Утилиты snlist и nslist позволяют создать соединение с сервером точно так же, как и приложение On-Site Admin, только из командной строки. Утилита snlist работает быстрее nslist и хорошо подходит для наших целей, однако nslist оказывается не менее полезной, поскольку позволяет получить полный адрес сервера. Обе программы можно использовать без параметров, чтобы присоединиться ко всем серверам локальной сети. Такой способ соединения создает предпосылки для того, чтобы в полной мере "вкусить прелести" хакинга. Если у вас возникли проблемы соединения с серверами Novell, проверьте наличие основного сервера. Для этого откройте диалоговое окно NetWare Connections и убедитесь в том, что в нем имеется сервер, перед именем которого указан символ *. Перед выполнением этих операций необходимо, чтобы существовал как минимум один присоединенный сервер. Если после этого проблема не исчезла, выделите другой сервер и щелкните на кнопке Set Primary. При использовании утилит командной строки необходимо запустить новый сеанс командной строки (cmd.exe для NT или command. com для Win 9x). В противном случае возникнет много ошибок и потребуется потратить много времени на их устранение.
Контрмеры против соединения Нам неизвестно ни одного механизма, с помощью которого можно отключить возможность соединения с сервером NetWare. В настоящее время этот вопрос остается нерешенным, в том числе и в NetWare 5. |
Поиск "незакрытых" дверей После того как взломщики составили представление о самом "здании" (пользователях и серверах), можно перейти к подбору ключей к дверным замкам (подбору паролей). Наиболее вероятно, что для решения этой задачи взломщики попробуют зарегистрироваться. Сейчас в их распоряжении имеются все имена пользователей. Осталось лишь узнать несколько паролей. chknull Для взломщика (и администратора) чрезвычайно важное значение имеют несколько утилит системы NetWare, в частности chknull. Эта утилита имеется на серверах NetWare 3.x и 4.x, на которых установлен контекст связки. Она оказывается абсолютно бесценной как для взломщиков, так и для администратора, и позволяет выполнять поиск пустых или легко подбираемых паролей. Не забывайте о том, что при создании новой учетной записи система NetWare не требует задания пароля (если не используется соответствующий шаблон). В результате многие пользовательские учетные записи создаются с нулевыми паролями, оставляя тем самым "широко распахнутые двери" на многие серверы Novell. Эту проблему усложняет еще то обстоятельство, что для многих пользователей простота важнее обеспечения безопасности. В результате подавляющее большинство пользователей применяют легко запоминающиеся пароли (что зачастую приводит к нарушению политики обеспечения безопасности). Usage: chknull [-p] [-n] [-v] [wordlist .,.] Примечательной особенностью поиска нулевых паролей является то, что при каждой попытке запись о неудачной попытке регистрации не создается. Последний параметр утилиты chknull (поддерживающий поиск паролей по словам, заданным в командной строке) работает не всегда, так что не стоит возлагать на него большие надежды. Если в процессе инвентаризации сервера возникли проблемы с использованием утилиты chknull, проверьте наличие основного сервера (его можно задать, щелкнув на кнопке Set Primary). Сделать это можно в диалоговом окне NetWare Connections.
Контрмеры против использования chknull Защититься от утилиты chknull очень просто. Однако в зависимости от конкретной ситуации все же могут возникнуть различные трудности. Любая из следующих рекомендаций позволит воспрепятствовать успешному применению утилиты chknull.
1. Выберите команду Details. |
Получение привилегий администратора Как было продемонстрировано выше, в большинстве случаев получить доступ на уровне пользователей очень просто. Для этого достаточно воспользоваться утилитой chknull, чтобы обнаружить пользователей без паролей, либо прибегнуть к их подбору. Следующим шагом большинства взломщиков будет получение прав администратора на сервере или дереве. Для решения этой задачи существует два основных метода:
Несанкционированное получение данных На этой стадии многие злонамеренные взломщики будут предпринимать попытки несанкционированного получения данных. Другими словами, они будут пытаться зарегистрироваться везде, где это возможно, и найти доверчивых пользователей, хранящих пароли в незашифрованном виде. Такой подход способен принести гораздо больше выгоды, чем это может показаться на первый взгляд.
He забывайте о том, что пользователь, с помощью учетной записи которого вы зарегистрировались, может и не иметь доступа ко всем этим каталогам. Однако вы можете оказаться счастливчиком. Каталоги SYSTEM и ETC особенно важны, поскольку в них содержатся жизненно важные конфигурационные файлы сервера. Их может просмотреть лишь пользователь с правами администратора. Контрмеры против несанкционированного получения данных Контрмеры, позволяющие предотвратить попытки взломщика несанкционированно получить данные на томах NetWare просты и очевидны. Оба совета предполагают ограничение прав пользователей.
nwpcrack Утилита nwpcrack представляет собой средство взлома паролей систем NetWare 4.x С ее помощью можно взломать пароль определенного пользователя с использованием словаря. В приведенном примере была обнаружена группа администраторов. После регистрации в качестве пользователя появляется возможность увидеть пользователей, имеющих права, эквивалентные администраторам, или просто тех из них, кто является членом группы администраторов, MIS и т.д. Проделав это, в группе администраторов были обнаружены пользователи DEOANE и JSYMOENS. Именно с них и стоит начать атаку.
Не пытайтесь применять утилиту nwpcrack к учетным записям администраторов, если включен режим блокировки вторжений. В противном случае может быть заблокирована учетная запись за пределами дерева. Перед тестированием с помощью утилиты nwpcrack учетной записи ADMIN (или эквивалентной) нужно создать ее резервную копию. В системе Windows NT не может возникнуть подобного состояния DoS, поскольку в ней нельзя заблокировать исходную учетную запись администратора, если не используется дополнительная утилита из набора NTRK, passprop. Если с помощью утилиты nwpcrack будет обнаружен активный режим выявления вторжений, то вы получите сообщение tried password«password» с тем же паролем, выведенным повторно. Это будет свидетельствовать о том, что сервер NetWare больше не будет принимать запросы на регистрацию от этого пользователя. Тогда нужно нажать комбинацию клавиш <Ctrl+C>, чтобы выйти из программы, поскольку в противном случае на консоли сервера появится хорошо знакомое сообщение DS-5.73-32: intruder lock-out on account Admin ("Блокирование вторжения для учетной записи Admin"). А это совсем не входит в планы взломщика.
Контрмеры: защита от утилиты nwpcrack Защититься от подбора пароля пользователей (скорее всего, администраторов) с помощью утилиты nwpcrack очень просто. Вот некоторые рекомендации.
|
Изъяны приложений В терминах служб TCP/IP после установки системы NetWare по умолчанию используется лишь несколько открытых портов, включая Echo (7) и Chargen (19) — не очень много для потенциальных атак (за исключением очевидной генерации состояния отказа в обслуживании, DoS). Однако при добавлении служб Web, FTP, NFS и telnet появляются новые открытые порты, такие как 53, 80, 111, 888, 893, 895, 897, 1031 и 8002. Сценарии Perl в системе NetWare Первоначально проблема была обнаружена в начале 1997 года, так что если вы используете более ранние версии системы NetWare 4.x или IntraNetWare, то потери защищенности может и не возникнуть. Однако суть проблемы заключается в том, что взломщик может выполнять сценарии Perl из любого места тома, включая рабочие каталоги пользователей и системные каталоги, такие как LOGIN и MAIL. Контрмеры: защита от сценариев Perl К сожалению, предлагаемая контрмера далеко не идеальна и заключается в том, чтобы либо полностью отказаться от использования службы, либо обновить ее до новой версии. Другими словами, выполните одно из следующих действий.
или
Служба FTP системы NetWare Этот изъян средств поддержки FTP присутствует лишь в исходной FTP-службе IntraNetWare. Конфигурационные параметры, используемые по умолчанию, разрешают анонимным пользователям доступ File Scan к каталогу SYS:ETC. В этом каталоге содержится файл netinfo.cfg (и другие важные конфигурационные файлы). Контрмеры: защита службы FTP Принципы зашиты службы FTP системы NetWare аналогичны контрмерам против использования сценариев Perl. Необходимо либо запретить использование службы либо обновить программное обеспечение.
Версия ftpserv.nlm для системы NetWare 4.11 по умолчанию запрещает анонимный доступ пользователей. Web-сервер NetWare Об уязвимости Web-сервера системы NetWare стало известно в 1996 году. Более ранние версии Web-сервера системы NetWare 4.x не способны проверять параметры, передаваемые его файлу convert.bas сценариями на языке Basic. В результате взломщики могут без проблем увидеть любой файл системы, включая autoexec.ncf, Idremote.ncf и netinfo.cfg. Для проверки степени уязвимости вашего сервера выполните следующие действия. Контрмеры: защита Web-сервера NetWare Выполните обновление до самой последней версии Web-сервера компании Novell, обратившись по адресу http://www.support.novell.com, или как минимум до версии 2.51R1, Компанией Novell были исправлены сценарии Basic, содержащиеся в каталоге SCRIPTS. Теперь с их помощью можцо открыть лишь определенные файлы, перечень которых жестко ограничен. |
Ложные атаки (PANDORA) Если все предыдущие попытки получения привилегий администратора закончились неудачей, то можно прибегнуть к нескольким ложным атакам с применением пакетов NCP. Средства для осуществления таких атак разработаны в центре исследований NMRC (Nomad Mobile Research Center, http://www.nmrc.org) и называются Pandora (http://www.nmrc.org/pandora/download.html). В настоящее время доступна версия 4.0, однако в данной книге рассматриваются возможности версии 3.0. Для работы пакета Pandora необходимо выполнение нескольких обязательных условий.
gameover Одного имени утилиты gameover вполне достаточно, чтобы узнать, для чего она предназначена. Утилита gameover позволяет взломщику предоставить пользователю привилегии, эквивалентные администратору. Это достигается с помощью передачи серверу 4.x ложного NCP-запроса, в результате чего им будет обработан запрос SET EQUIVALENT TO.
Запустите утилиту gameover следующим образом. Gameover<cr> После этого можно зарегистрироваться в качестве пользователя ECULP и получить права администратора. Здорово, не правда ли? Контрмеры: защита от утилит Pandora Для защиты от утилит из пакета Pandora существует много различных способов, и их перечень во многом зависит от архитектуры узла NetWare. Вообще, для предотвращения хакинга с применением описанных средств нужно следовать следующим рекомендациям:
|
Получив права администратора на сервере... С этого момента самая тяжелая часть работы взломщика осталась позади. Теперь в его распоряжении права администратора сервера и, скорее всего, значительная часть дерева. Следующим шагом является получение доступа к утилите rconsole сервера и сбор файлов NDS. Хакинг утилиты rconsole Получить пароль к утилите rconsole можно несколькими способами, однако на самом деле существует лишь один простой путь, который зависит от степени медлительности администратора. По умолчанию пароль к утилите rconsole хранится в виде незашифрованного текста. Это можно проверить следующим образом.
Контрмеры против использования незашифрованных паролей утилиты rconsole Предотвратить такую опасность очень просто. Компания Novell предлагает механизм шифрования пароля утилиты rconsole с помощью команды remote encrypt. Вот что для этого необходимо сделать. В настоящее время не существует модулей обновления, позволяющих защититься от декодирования зашифрованных паролей утилиты rconsole (а ля Разрушитель!). Для получения самой свежей информации по этому вопросу регулярно обращайтесь ПО адресу http://oliver.efri.hr/~crv/security/bugs/ |
Получение доступа к файлам NDS После приобретения пароля утилиты rconsole осталось выполнить завершающий шаг — получить доступ к файлам NDS. В системе NetWare файлы NDS содержатся в скрытом каталоге _netware тома SYS. Доступ к этому каталогу можно получить лишь через доступ к консоли (для взломщика — утилите rconsole). Для "захвата" файлов NDS существует много методов. И как вы скоро убедитесь, у каждого взломщика имеются свои любимые приемы. netbasic. nlm (SYS: SYSTEM) Набор средств разработки программного обеспечения NetBasic представляет собой язык сценариев, который изначально был разработан компанией High Technology Software Corp. (для краткости HiTecSoft). С его помощью можно конвертировать сценарии NetBasic в формат NLM (NetWare Loadable Module) компании Novell и использовать их на Web-сервере системы NetWare. Компонент netbasic.nlm имеет уникальную особенность, которая изначально была обнаружена взломщиками: с его помощью из командной строки можно про смотреть весь том, включая скрытый каталог _netware. dsmaint Может оказаться, что на целевом сервере язык сценариев NetBasic не установлен. В этом случае придется воспользоваться альтернативным средством — dsmaint. Этот модуль NLM не является стандартным компонентом NetWare 4.11, однако его можно загрузить с Web-узла компании Novell http://www. support.novell.com. Файл называется DS411P.EXE. Однако будьте осторожны: при использовании компонента dsmaint работа службы каталога будет автоматически завершена, так что не стоит использовать его в рабочее время. Для того чтобы вернуться к исходному состоянию службы каталогов, необходимо запустить процесс восстановления. Другими словами, эти действия лучше не выполнять на рабочем сервере. jcmd За последние шесть лет компания JRB Software Limited разработала прекрасные утилиты для системы NetWare, многие из которых можно применять для аудита ее системы безопасности. Однако в отличие от сценариев NetBasic, утилита jcmd не позволяет скопировать открытые файлы NDS. Так что, как и модуль dsmaint.nlm, ее не рекомендуется устанавливать на рабочем сервере. Для обхода этого ограничения необходимо выгрузить службу каталогов. Чтобы скопировать файлы NDS с помощью утилиты jcmd, выполните следующие действия. 8. dir *.* (для того чтобы с помощью модуля jcmd увидеть имена файлов, нужно использовать символы шаблона) Контрмеры против "захвата" файлов NDS Меры защиты против "захвата" данных NDS сводятся к уменьшению количества средств, которые могут быть для этого использованы. Взлом файлов NDS Как только взломщики смогли скопировать файлы NDS, можно считать, что они выполнили большую часть поставленной задачи. Сделайте все возможное, чтобы не допустить этого. Как только получены файлы NDS, взломщики, скорее всего, предпримут попытку взломать эти файлы, воспользовавшись специальными средствами. Для этого подойдет любая из свободно распространяемых программ, например IMP, разработанная Шейдом (Shade), или утилиты crypto/crypto2 из пакета Pandora. 4. Запустите утилиту crypto или crypto2 для взлома файла password.nds "в лоб" или с использованием словаря, как показано на следующем рисунке.
IMP 2.0 Программа IMP, разработанная Шейдом (Shade), имеет графический интерфейс и позволяет использовать оба режима: прямого взлома и с использованием словаря. Второй режим оказывается чрезвычайно быстрым: при использовании словаря размером 933,224 слов весь процесс на компьютере Pentium с частотой 200 МГц занимает лишь несколько минут. Единственным ограничением программы IMP является то, что пароли всех учетных записей должны иметь одну и ту же длину (к счастью, IMP рядом с именем пользователя отображает и длину пароля).
|
Редактирование журналов регистрации Профессиональные взломщики обязательно выполнят эту задачу, чтобы скрыть следы своей деятельности. Сделать это можно, отключив систему аудита, изменив время последнего обращения и модификации файлов, а также откорректировав файлы журналов. Отключение системы аудита При выполнении своих злонамеренных действий умные взломщики обязательно проверят, установлена ли система аудита, а затем отключат регистрацию определенных событий. Вот несколько шагов, которые предпримет взломщик, чтобы отключить систему аудита для службы каталогов и серверов. Изменение атрибутов файлов Если взломщик изменил файл autoexec.ncf или netinfo.cfg, то ему вряд ли захочется, чтобы об этом кому-либо стало известно. Для изменения даты последнего обращения к этим файлам прекрасно подходит утилита SYS:PUBLIC\filer. Как и команда touch систем UNIX и NT, filer — это утилита DOS, предназначенная для поиска файлов и изменения их атрибутов. Модифицировать атрибуты файла очень просто. Для этого нужно сделать следующее. |
Журналы консольных сообщений Утилита conlog.nlm предоставляет возможность записи консольных сообщений и ошибок, например о выявлении вторжений и блокировании учетных записей. Получив доступ к утилите rconsole, взломщик без проблем может ввести команду unload conlog, отключив режим регистрации сообщений в файле, а затем снова включить этот режим и возобновить запись сообщений в совершенно новый файл console.log. При этом предыдущий файл удаляется, а вместе с ним и все записанные ошибки и сообщения. Грамотный системный администратор должен рассматривать такую ситуацию как попытку взлома. К сожалению, на практике ее иногда относят к разряду необъяснимого. Контрмеры против редактирования журналов регистрации Следите за изменениями файлов console.log и sysSerr.log. Порекомендовать какие-либо простые способы защиты нельзя. Контролируйте администраторов (или взломщиков), которые знают о том, что решаемая ими задача может оказаться неразрешимой. И проверяйте содержимое файлов журналов в надежде на то, что в них найдут отражение сообщения об отключении системы аудита. "Потайные ходы" Самым эффективным "потайным ходом" системы NetWare является то, чего вы никогда не сможете добиться самостоятельно,— "осиротевшие" объекты (orphaned object). Использование скрытого объекта OU (Organizational Unit), содержащего пользователя с правами, эквивалентными администратору, и правами опекунства на свой собственный контейнер, позволит эффективно скрыть этот объект. При выполнении п. 8 будьте осторожны, поскольку после этого контейнер и созданный объект-пользователь станут невидимыми для всех пользователей, включая Admin. Администраторы не смогут увидеть или удалить этот объект. Сокрытие объекта от администратора оказывается возможным из-за того, что в дереве NDS можно отменить права supervisor для любого объекта или свойства. 9. Теперь зарегистрируйтесь с помощью только что созданного "потайного хода". Не забывайте, что в дереве вы не сможете увидеть новый контейнер. Следовательно, в процессе регистрации потребуется ввести контекст вручную, как видно на следующем рисунке. Для получения более подробной информации обратитесь на Web-узел хакерской лаборатории NMRC (Nomad Mobile Research Centre) (http://www.nmrc.org). Симпл Номад (Simple Nomad) подробно описал эту технологию в разделе Unofficial Hack FAQ по адресу http://www.nmrc.org/faqs/hackfaq/ hackfaq.html. Контрмеры против "потайныхходов" Для защиты от подобных нападений можно использовать несколько средств, как свободно распространяемых, так и коммерческих. |
Резюме Несмотря на большой путь, пройденный компанией Novell в процессе разработки надежной сетевой операционной системы, многие вопросы обеспечения безопасности оказались вне ее поля зрения. В данной главе вы увидели, насколько легко предпринять атаку на сервер NetWare, получить доступ к дереву NDS и серверу на уровне пользователей, а затем — с правами администратора. Были рассмотрены различные слабые стороны системы NetWare, а также средства, с помощью которых взломщик может получить полный контроль на всем деревом NDS. |