Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СРС_ИПОВС_МСЗИ.doc
Скачиваний:
41
Добавлен:
05.06.2015
Размер:
1.79 Mб
Скачать

Брешь в безопасности rds службы iis

RDS имеет уязвимость, которая используется для взлома IIS через Web-сервер Microsoft NT. Данный эксплоит использует IIS и ошибку в компонентах доступа к данным для запуска произвольных команд без проверки прав пользователя. Посредством RDS конечные пользователи могут получать один или более наборов за­писей ADO (ActiveX Data Object) с удаленного компьютера с помощью протоколов HTTP, HTTPS или DCOM.

Для того чтобы RDS работал правильно, в нем должны быть установлены следующие компоненты.

  • Со стороны клиента необходима установка компонентов RDS DataControl и RDS DataSpace. Данные компоненты устанавливаются в составе Internet Explorer версии 4.0 или выше.

  • На сервере должны быть установлены компоненты RDS DataFactory, Custom Business Objects и ASP. Данные компоненты устанавливаются в составе пакета NT 4 Option Pack или в программы дополнительной настройки MDAC — MDAC_TYP. EXE. Эти пакеты входят в базовый состав ОС Windows 2000 Server.

  • Компонент Microsoft Jet Database Engine необходим для обеспечения доступа к базам данных Access (. mdb). Этот компонент устанавливается в составе MDAC.

Эксплоит состоит в посылке запроса объекту RDS DataFactory и одновременном ис­пользовании двух недостатков, позволяющих выполнить команду. Первый недостаток за­ключается собственно в системе безопасности объекта DataFactory, который позволяет проводить запросы без необходимой аутентификации. Вторая ошибка состоит в непра­вильной обработке механизмом баз данных Jet содержимого, находящегося между двумя символами вертикальной черты. Снова неполное тестирование программного продукта привело к наличию бреши в системе безопасности, которую можно было бы не допустить.

Для обнаружения попытки взлома с помощью оригинальной версии программы, предоставленной RFP, можно выполнять следующие действия:

  • перехватывать запросы HEAD, POST или GET к библиотеке /msadc/msadcs.dll;

  • сканировать строки запросов, проверяя наличие команд cmd /с или command /с;

  • сканировать строки запросов для обнаружения /msadc/msadcs.dll/VbBusObjClsGetRecordset;

  • сканировать строки запросов для обнаружения /msadc/msadcs.dll/VbBusObjClsGetMachineName;

  • сканировать строки запроса для выявления обращений к AZ Z;

  • сканировать строки запроса для выявления строки MIME " ! ADM! ROX! YOUR! WORLD! "

Можно проводить сканирование для выявления других строк, присутствующих в программе. Это, конечно, будет необходимо только в том случае, если операционная система и программное обеспечение сервера устанавливались не в стандартные папки.

Помните также, что взломщику не составит никакого труда изменить программу до такого состояния, что стандартные механизмы обнаружения не смогут заметить ее.

Совместно используемые ресурсы

Одной из наиболее часто обсуждаемых уязвимостей в безопасности Microsoft является работа с совместно используемыми ресурсами. Компания Microsoft пыталась максимально упростить использование своих продуктов, однако это упрощение привело к тому, что ПО с заводской настройкой почти не защищено от взлома.

Стоит отметить, что большинство остальных описанных в этой главе эксплоитов используют довольно ограниченный набор уязвимостей, однако данный эксплоит заслужи­вает более подробного рассмотрения. Открытие совместного доступа к ресурсам очень популярно у пользователей продуктов Microsoft. Поскольку совместный доступ может по-разному использоваться взломщиком, в данном разделе будут в общем рассмотрены осо­бенности безопасности совместного использования ресурсов.

Описание протокола Server Message Blocks (SMB)

Server Message Blocks— Блоки сообщений сервера могут передаваться как протоколами NetBIOS или NetBEUI, так и протоколами TCP/IP или IPX и используются для связи между клиентами Windows 3.x, Windows 9.x и Windows NT. SMB используются для удаленного доступа к общим папкам и файлам. При установке по умолчанию операционных систем Windows З.х/Windows 9.x любой пользователь может сделать папку или файл на своем компьютере совместно используемым ресурсом. Системный администратор, который отвечает за сеть размером в несколько сотен машин должен либо полностью запретить со­вместный доступ, либо постоянно следить за всеми доступными в сети ресурсами. Удален­ный доступ к общим ресурсам и скрытым общим ресурсам по умолчанию (в случае исполь­зования Windows NT) производится через порты 137, 138 и 139.

Как работает эксплоит? Первым делом взломщик должен узнать IP-адрес жертвы. Существует множество программ, позволяющих сделать это, и одной из них является программа Netlnfо

Существует много программ, которые позволяют удаленно определить, какая операционная система установлена на компьютере, например nmap (www. insecure. org) или queso (www.apostols.org/projectz). Кроме того, многие системные администраторы часто упрощают взломщику работу, называя компьютеры например NTServerl или NT40WINS. Имена и IP-адреса этих машин могут быть добавлены в файл LMHOSTS на компьютере взломщика, после чего он получит доступ к ним. Вы удивитесь, когда узнаете, сколько компаний использует такую систему именования компьютеров. Компания должна испытать серьезные неприятности, прежде чем имена корпоративных серверов будут изменены.

После того как взломщик добавит наиболее привлекательные для взлома компьютеры в файл LMHOSTS, он может просто выполнить из командной строки команду net view. Команда net view может быть запущена на любом компьютере с ОС компании Microsoft, в которой установлена поддержка сети Microsoft. Зная, что источник многих взломов находится в локальной сети, системные администраторы обычно сводят комментарии в разделе remarks к минимуму. Однако иногда случается так, что администратор создает схему именования, которая не выдает секреты компании, а в комментариях содержатся описания наподобие "Primary Domain Controller" или "Exchange Server", что еще больше упрощает работу взломщика.

Следующим шагом взломщика должна быть установка нулевого сеанса. Нулевой сеанс— это анонимное подключение к системе Windows NT, которое не требует от пользователя имени или пароля. Это соединение используется компьютерами на базе NT для связи, однако может быть использовано и взломщиком для сбора информации. Нулевые сеансы могут быть установлены с компьютерами на базе Windows 9.x/NT и Windows 2000. Существует также много программ, которые автоматически устанавливают нулевые сеансы и позволяют извлечь много информации с удаленного компьютера. В наиболее простом случае нулевой сеанс может быть установлен с помощью команды net use.

Net use \\xxx.xxx.xxx.xxx\IPC$ ""/user:""

Существуют также программы, которые выполняют сканирование доступных ресурсов. Одной из таких популярных программ является Legion 2.1, которую можно получить по адресу: www.securityfocus.com. После нахождения общих ресурсов Legion также определит, на каких дисках находятся эти ресурсы. В следующем разделе данная программа будет описана более детально.

Нулевой сеанс позволяет получить дополнительную информацию, которая облегчает работу взломщика. Популярная бесплатная программа под названием Cerberus Internet Scanner (CIS) может быть загружена с узла www.cerberus-infosec.co.uk. Программа CIS находит на компьютерах с заданными IP-адресами или именами совместно используемые ресурсы и службы, а также проверяет, нет ли в системе учетных записей с пустым полем пароля. По различным причинам программа CIS очень полезна.

Если взломщик хочет проникнуть в систему, он может попробовать воспользоваться программой взлома паролей. Однако перед тем как применить метод полного перебора, можно попытаться просто угадать пароли известных пользователей. По умолчанию ОС Windows NT создает две учетных записи, Guest и Administrator, однако чаще всего администраторы системы блокируют учетную запись Guest и переименовывают запись Administrator. CIS получает информацию об остальных учетных записях, что значительно упрощает подбор паролей.

Кроме того, что нулевой сеанс является потенциальным источником информации о всех пользователях системы, а также позволяет получать неавторизированный доступ к ресурсам системы, в последнее время появились вирусы, использующие нулевые сеансы и совместные ресурсы для распространения по сети.

Чтобы надежно защититься от такого типа атак, нужно убедиться, что только необходимые папки предоставлены в совместное использование. Кроме того, совместные ресурсы обязательно должны быть защищены надежными паролями. Вы можете полностью отключить нулевые сеансы, заблокировав доступ к портам 137, 138 и 139 на главном брандмауэре.

Для машин, которые не находятся в локальной сети и подключены к Internet, отключите использование NetBIOS на внешнем сетевом интерфейсе. Кроме того, поскольку многие взломы происходят изнутри организации, максимально ограничьте количество совместно используемых ресурсов. По возможности администратор сети должен полностью заблокировать общий доступ на рабочих станциях Windows 9.x, чтобы пользователь не мог открыть ресурсы без ведома компьютерного отдела. Программа Windows 95 Policy Editor (poledit. exe) позволяет сделать это.

Компьютеры на базе Windows NT Workstation обезопасить намного проще, однако администратор должен проверить настройку по умолчанию, чтобы быть уверенным в отсутствии дыр в системе безопасности. В сети, где установлены только компьютеры на базе NT, можно отключить авторизацию с использованием Lanman, добавив значение LMCompatabilityLevel типа REG_DW0RD=4 в следующий ключ:

HKEY_LOCAL_MACHINE\Systen\CurrentControl-Set\Controf\LSA

Однако основой безопасности компании является серьезное отношение как администратора, так и пользователей к безопасности. Несмотря на то, что о проблемах, связанных с NetBIOS и NetBEUI, стало известно несколько лет назад, многие организации до сих пор не сделали ничего, чтобы укрепить свою систему безопасности. Государственные учреждения США начали делать это только после официального приказа. Пользователи должны разбираться в вопросах безопасности и чувствовать собственную ответственность за безопасность компании. Государственные учреждения двигаются в правильном направлении, и теперь дело за частными компаниями.

Legion

Программа Legion является сканером NetBIOS и позволяет обнаружить доступные ресурсы в большом диапазоне IP-адресов. Кроме того, Legion имеет функцию взлома паро­лей совместно используемых ресурсов.

Описание протокола: перечень компонентов.

Программа Legion производит обнаружение совместно используемых ресурсов в два этапа. На первом этапе проводится простое сканирование портов и поиск систем, которые отреагируют на попытку соединения с портом TCP 139 (NetBIOS-ssn).

На втором этапе процедуры обнаружения программа подключается к тем системам, которые ответили во время первого этапа. При этом Legion снова устанавливает соединение с портом NetBIOS-ssn.

Описание протокола: функция взлома пароля.

С точки зрения описания протокола, функция взлома пароля программы Legion достаточно проста. Происходит почти такая же последовательность действий, как и в процессе установки сеанса NetBIOS с сервером SMB. Главное отличие заключается в том, что программа взлома пароля использует реальное имя сервера (которое вводится пользователем), а не имя *SMBSERVER, которое передается в запросе сеанса NetBIOS. После того как сеанс установлен, клиент передает SMB команду выбора учетной записи. Эта учетная запись имеет NetBIOS-имя компьютера клиента.

После того как была выбрана учетная запись, программа просто повторяет запрос на NetBIOS-подключение, каждый раз передавая разные пароли. Если пароль неправильный, сервер SMB отвечает "Bad password" и ждет следующего запроса.

Точным признаком попытки получения информации с помощью программы Legion, как и с помощью других программ такого типа, является попытка подключения к компьютеру через порт TCP 139. К сожалению, компания Microsoft не предусмотрела в своих ОС средств мониторинга и протоколирования событий такого типа. В ОС Windows NT попытка получения информации об общих ресурсах системы приводит к возникновению события Privilege Use Success Event #576, которое заносится в журнал аудита безопасности. Попытка подбора пароля вызывает возникновение события Logon/Logoff Failure #579 (а в случае успеха также события #539). Данные события также заносятся в журнал аудита безопасности.

Стоит сказать, что программы ведения журнала Microsoft записывают только имена рабочих станций, с которых производились попытки подключения (эти имена можно легко подделать, поэтому полагаться на такую информацию нельзя). При этом IP-адреса компьютеров, с которых производилась попытка подключения, не заносятся в журнал, что значительно усложняет процесс отслеживания взломщика.

Метод защиты от данного типа взлома зависит от того, какой ОС вы пользуетесь. Для OC Windows 9x.

  1. Если система не подключена к LAN и не должна предоставлять совместный доступ к своим файлам и папкам, отключите службы "Client for Microsoft Networks" и "File and printer sharing for Microsoft Networks" для всех сетевых адаптеров, использующих TCPIIP.

  2. Если ваш компьютер подключен к локальной сети и вы должны использовать NetBIOS для предоставления общего доступа к ресурсам, придерживайтесь правила ограничения полномочий. Это правило заключается в том, что для совместного доступа можно открывать только необходимые файлы и папки, доступ может быть "только для чтения" и открываться лишь отдельным пользователям с максимально сложными паролями.

  3. Можно установить персональный брандмауэр, который запрещает постоянные обращения к NetBIOS через TCP. Кроме того, эта программа должна вести журнал событий.

Для систем Windows NT.

1. Запретите анонимным пользователям подключаться к нулевому сеансу и запретите получение системной информации посредством нулевого сеанса. Для этого нужно установить ключ реестра под названием RestrictAnonymous. Чтобы узнать больше по этому вопросу, обратитесь к статье Q143474 базы знаний Microsoft.

  1. Если ваш компьютер подключен к сети и вы должны использовать ресурсы NetBIOS, придерживайтесь принципа ограничения полномочий при создании совместно используемых ресурсов. (Открывать только необходимые папки, по возможности "только для чтения" и только для отдельных пользователей.)

  2. Установите персональный брандмауэр и настройте политику безопасности, которая запретит внешний доступ к NetBIOS через TCP/IP (порты TCP и UDP 135-139). Кроме того, нужно постоянно следить за журналом событий, чтобы вовремя засечь попытку взлома.

  3. Настройте политику учетных записей таким образом, чтобы после нескольких неудачных попыток подключения соответствующая учетная запись блокировалась системой.

Для сети.

Заблокируйте все обращения к портам NetBIOS на внешних брандмауэрах и маршрутизаторах.