
Інвентаризація rpc-служб
Не меньшей популярностью, чем инвентаризация с помощью службы имен NetBIOS, пользуется инвентаризация с помощью службы Microsoft RPC Endpoint Mapper (MSRPC), использующей TCP-порт 135. Информация, получаемая с помощью MSRPC, не сильно отличается от информации, предоставляемой протоколом SMB, но MSRPC практически всегда запускается в локальных сетях систем семейства Windows NT, а нередко к ней можно получить доступ и через Internet (это делается, например, для поддержки службы Exchange).
Системная служба удаленного вызова процедур (RPC) представляет собой механизм взаимодействия между процессами (IPC), который позволяет осуществлять обмен данными и вызывать функции из других процессов. Другой процесс может быть запущен на локальном компьютере, в локальной сети или на удаленном компьютере; для получения доступа к нему используется подключение по глобальной (WAN) или виртуальной частной (VPN) сети. Служба RPC выступает в роли службы отображения конечных точек RPC и диспетчера служб СОМ (Component Object Model). Служба удаленного вызова процедур необходима для запуска многих других служб.
Инвентаризация
с помощью RPC-служб
Популярность |
7 |
Простота |
8 |
Опасность |
1 |
Степень риска |
5 |
Запрос к RPC-службам преобразования портов является проверенным методом злоумышленников для сбора информации на UNIX-компьютерах. В системах Windows служба преобразования портов (роrtmарреr) называется распределителем конечной точки (RPC — Endpoint Mapper) и также позволяет получить сведения о RPC-службах. Программа edump предоставляет данные об IP-адресах хостов и номерах портов, открытых для получения запросов RPC-служб (хотя и в очень неудобной форме).
Основное внимание следует обратить на строки int, обозначающие интерфейсы RPC-служб, а также на следующие за ними записи binding и annot, В строке binding указываются IP-адрес и номер порта хоста, на которые ожидаются запросы этой RPC-службы (от слова bind — привязка), например 192.168.234.43[1025], а строка annot (annotation — комментарий) зачастую содержит стандартное имя службы конечной точки (порта), например 'IPSec Policy agent endpoint'.
К числу более современных средств, предназначенных для получения сведений о конечных точках служб MSRPC, можно отнести программу rpcdump. Существует несколько версий программы rpcdump.ехе, которые не следует путать с программой rpcdump (средство для создания запросов к службе portmapper на TCP-порту UNIX-хостов), написанной в 1999 году Дэвидом Литчфилдом (David Litchfield). Две другие версии используются для создания запросов к службе MSRPC одна из пакета Resource Kit, а вторая создана Тоддом Сабином (Todd Sabin) и входит в его набор программ RPC Tools. Программа rpcdump Тодца Сабина опрашивает все интерфейсы каждого зарегистрированного RPC-сервера с помощью функции API RpcMgmtlnqlf Ids, что позволяет предоставить дополнительные сведения, а не просто вывести список зарегистрированных интерфейсов сервера. Программа Сабина как и epdump выводит последовательный перечень портов. Программа rpcdump из набора Resource Kit при выводе данных распределяет их по типу интерфейса, что позволяет отличать локальные RPC-службы от RPC-служб, доступных по сети.
Не трудно догадаться, что предоставленная информация будет очень полезна злоумышленнику. Он сможет строить дальнейшие атаки в зависимости от доступных RPC-служб. Как правило, самой полезной информацией подобного отчета является внутренний IP-адрес многоканальных систем, а также виртуальный IP-адрес, одного и того же сервера, которые предоставляются как привязки к портам для RPC-служб. Эти сведения помогут хакеру понять, с какой системой он имеет дело и какие RPC-службы запущены.
Меры
противодействия инвентаризации RPC-служб
Бюллетень |
Нет |
BID |
Нет |
Исправлено в SP |
Нет |
Фиксируется |
Нет |
Несмотря на усилия Microsoft по уменьшению числа устанавливаемых по умолчанию служб в системе Windows Server 2003, служба RPC Endpoint Mapper по-прежнему доступна по умолчанию и предстааляет угрозу несанкционированного разглашения потенциально опасной информации. Таким образом, наилучшим средством защиты является блокирование TCP/UDP-порта 135. Это может вызвать затруднения для организаций, которые используют Web-приложения на основе MSRPC, например Exchange. В этом случае необходимо оставлять открытым TCP-порт 135 для клиентов службы MAPI (Messaging Application Programming Interface — интерфейс прикладного программирования для электронной почты). В качестве решения можно предложить использовать службу OWA (Outlook Web Access) вместо MAPI или использовать RPC поверх HTTP (TCP-порт 593). Кроме того, можно рассмотреть варианты установки брандмауэра или создания виртуальной частной сети (VPN) для предварительной проверки доступа к RPC-службам.
Для обеспечения возможности более точного управления, доступ к каким именованным каналам может быть предоставлен анонимным пользователям, можно в Security Policy (Политика безопасности) для параметра "Network access: Named pipes that can be accessed anonymously" ("Доступ по сети: доступные анонимно именованные каналы") удалить запись EPMAPPER.
Не забывайте, что служба Endpoint Mapper только перенаправляет клиентов на соответствующий порт RPC-службы приложения, и не забудьте также заблокировать эти порты.