Уязвимость, найденная в Windows 2000 DCOM,
позволяет посылать произвольные части памяти DCOM клиента в открытом виде. Данные могут содержать как
безопасную информацию, так и очень чувствительную информацию, включая пароли.
Когда клиент делает запросы на сервер, он сначала соединяется с сервером. Т.е. он должен сообщить серверу, что требуется использовать RPC интерфейс. Первый раз, когда он это делает на данном подключении, происходит 'bind' запрос на сервер. Если клиент хочет использовать дополнительные интерфейсы с тем же самым подключением, он может сделать запрос 'alter context' на сервер. Из-за природы DCOM, клиенты обычно делают множество запросов 'alter context' за все время активного подключения.
Проблема состоит в том, что запросы 'alter context', в дополнение к посылке надлежащих данных запроса, содержат большой блок пространства памяти клиента. Дополнительные данные содержат примерно 1000 байтов, и обычно игнорируются сервером. Однако, эти данные пропускают потенциально чувствительную информацию в сеть.
В некоторых случаях, в этих данных могут содержаться чувствительные пароли в открытом виде.
Пример: На W2K SP1, запустите пустой mmc.exe. Добавьте в WMI Control snap-in.
Сконфигурируйте его для соединения с другим компьютером, и используйте ' Log on as' диалог, чтобы определить мандаты. Затем просмотрите свойства от удаленной машины. Эта операция пошлет пароль пользователя в открытом виде.
DCOM трафик не ограничен никаким специфическим портом, но обычно используются порты выше
135 и динамические порты от 1024 до 5000. Уязвимость найдена в Windows 2000sp2.