En el boletín de seguridad MS03-026 también se hace referencia a RPC.
¿Sustituye esta revisión a la proporcionada en dicho boletín?
Sí.
La revisión de seguridad proporcionada con este boletín reemplaza a la
del boletín MS03-026 y también a la incluida en el boletín MS01-048.
¿Cuál
es el alcance de estas vulnerabilidades?
En este boletín se tratan tres vulnerabilidades diferentes. Las dos
primeras son vulnerabilidades de
saturación de búfer, mientras que
la tercera es de
denegación de servicio. Un
intruso que consiguiera explotar alguna de las vulnerabilidades de
saturación de búfer podría lograr el control completo de un equipo
remoto. Esto le daría la posibilidad de llevar a cabo cualquier acción
en el sistema, por ejemplo, modificar páginas Web, dar formato al disco
duro o agregar nuevos usuarios al grupo de administradores local.
Un
intruso que consiguiera sacar provecho de la vulnerabilidad de
denegación de servicio podría hacer que el servicio RPCSS se bloqueara o
dejara de responder.
Para
llevar a cabo este ataque, el intruso debería poder enviar al servicio
RPCSS un mensaje con un formato erróneo especial que provocara el
funcionamiento incorrecto del sistema de destino de forma que pudiera
ejecutarse código arbitrario.
¿Cuál
es la causa de estas vulnerabilidades?
Las vulnerabilidades se deben a que el servicio RPCSS de Windows no
comprueba correctamente las entradas de mensajes en determinadas
circunstancias. Tras establecer una conexión, un intruso podría enviar
un mensaje RPC diseñado especialmente para hacer que la infraestructura
de activación de
DCOM subyacente en el servicio RPCSS del sistema remoto fallara de modo que pudiera ejecutarse código
arbitrario.
¿Qué
es DCOM?
El Modelo de objetos componentes distribuido (DCOM, Distributed
Component Object Model) es un protocolo que permite la comunicación
de componentes de software a través de una red. Denominado anteriormente
"Network OLE", DCOM está diseñado para utilizarse en varios protocolos
de transporte de red, incluidos los protocolos de Internet como HTTP.
Para obtener más información acerca de DCOM, visite el siguiente sitio
Web (en inglés):
www.microsoft.com/com/tech/dcom.asp
¿Qué
es RPC?
Llamada a procedimiento remoto (RPC, Remote Procedure Call) es un
protocolo que los programas pueden utilizar para solicitar un servicio
de un programa ubicado en otro equipo de una red. RPC contribuye a la
interoperabilidad porque el programa que lo utiliza no necesita entender
los protocolos de la red mediante los que se establece la comunicación.
En RPC, el programa que realiza la solicitud es el cliente y el que
proporciona el servicio es el servidor.
¿Qué
son CIS y RPC sobre HTTP?
RPC sobre HTTP versión 1 (Windows NT 4.0, Windows 2000) y versión 2
(Windows XP, Windows Server 2003) introduce compatibilidad con un nuevo
protocolo RPC de transporte que permite a RPC operar sobre los puertos
TCP 80 y 443 (sólo en la versión 2). De este modo, un cliente y un
servidor pueden comunicarse en presencia de la mayor parte de los
servidores proxy y servidores de seguridad. Servicios Internet COM (CIS,
COM Internet Services) permite a DCOM usar el protocolo RPC sobre
HTTP para establecer la comunicación entre los clientes y los servidores
DCOM.
En la
siguiente dirección URL puede encontrar más información de "RPC sobre
HTTP" para Windows Server 2003 (en inglés):
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/rpc/rpc/remote_procedure_calls_using_rpc_over_http.asp
En la
siguiente dirección URL puede encontrar más información de Servicios
Internet COM (en inglés):
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndcom/html/cis.asp
¿Cómo
se puede saber si está instalado CIS o RPC sobre HTTP?
Para determinar si un servidor tiene instalados Servicios Internet COM o
RPC sobre HTTP, siga estos pasos:
En
Panel de control, haga doble clic en Agregar o quitar programas
y, después, haga doble clic en Agregar o quitar componentes de
Windows.
Se inicia el Asistente para componentes de Windows.
Haga
clic en Servicios de red y, después, en Detalles.
Si
las casillas de verificación Proxy de Servicios Internet COM
(en Windows 2000 Server) o Proxy de RPC sobre HTTP (en
Windows Server 2003) están activadas, la compatibilidad con CIS o RPC
sobre HTTP está habilitada en el servidor.
Nota:
también puede buscar "rpcproxy.dll" en instalaciones de Windows 2000 y
Windows Server 2003 si desea determinar de forma remota o mediante
programación si están instalados CIS o RPC sobre HTTP.
Para
buscar un archivo específico en el equipo: haga clic sucesivamente en
Inicio, Buscar y Archivos o carpetas. Después, escriba
el nombre del archivo que desee buscar.
La búsqueda puede tardar varios minutos, según el tamaño del disco duro.
¿Qué
problema tiene el servicio RPCSS?
Hay un defecto en el servicio RPCSS que se ocupa de la activación DCOM.
El error es el resultado del tratamiento incorrecto de los mensajes con
formato erróneo. Este error en particular afecta al servicio RPCSS
subyacente que se usa en la activación DCOM, que escucha en los puertos
UDP 135, 137, 138 y 445, y en los puertos TCP 135, 139, 445 y 593.
Además, puede escuchar en los puertos 80 y 443 si se habilita CIS o RPC
sobre HTTP.
Si
envía un mensaje RPC con un formato erróneo especial, un intruso podría
hacer que el servicio RPCSS de un sistema fallara de forma que en él
pudiera ejecutarse código arbitrario.
¿Este
defecto se encuentra en el asignador de extremos de RPC?
No. Aunque el asignador de extremos de RPC comparte el servicio RPCSS
con la infraestructura DCOM, en realidad el defecto es propio de la
infraestructura de la activación DCOM. El asignador de extremos de RPC
permite a los clientes RPC determinar el número de puerto asignado a un
determinado servicio RPC. Un extremo es un identificador específico del
protocolo correspondiente a un servicio de un equipo host. En el caso de
protocolos como TCP o UDP, se trata de un puerto. En el caso de
canalizaciones con nombre, se trata del nombre de una canalización.
Otros protocolos usan otros extremos específicos.
¿Qué
podría hacer un intruso que aprovechara estas vulnerabilidades?
Un intruso que consiguiera aprovechar las vulnerabilidades de saturación
de búfer podría ejecutar código con privilegios Local System en el
sistema afectado. De esta forma, podría realizar cualquier tipo de
acción en el sistema como, por ejemplo, instalar programas; ver, cambiar
o eliminar datos; o crear cuentas nuevas con todos los privilegios.
Un
intruso que consiguiera sacar provecho de la vulnerabilidad de
denegación de servicio podría hacer que el servicio RPCSS fallara o
dejara de responder.
¿Cómo
podría aprovechar un intruso estas vulnerabilidades?
Para aprovechar estas vulnerabilidades, un intruso debería crear un
programa que pudiera comunicarse con un servidor vulnerable a través del
puerto TCP o UDP afectado para enviar un tipo concreto de mensaje RPC
con un formato incorrecto. La recepción de dicho mensaje provocaría
errores en el servicio RPCSS del sistema vulnerable de modo que pudiera
ejecutarse código arbitrario.
También sería posible obtener acceso al componente afectado a través de
otra vía, por ejemplo, iniciando una sesión en un sistema de forma
interactiva o utilizando otra aplicación similar que pasara parámetros
de forma local o remota al componente vulnerable.
¿Quién podría aprovechar estas vulnerabilidades?
Cualquier usuario que pueda enviar un mensaje RPC al servicio RPCSS de
un sistema afectado podría intentar aprovechar estos puntos vulnerables.
El hecho de que el servicio RPCSS esté presente en todas las versiones
de Windows de forma predeterminada implica básicamente que cualquier
usuario que pueda establecer una conexión con un sistema afectado podría
intentar hacer uso de estas vulnerabilidades.
Sigo
usando Microsoft Windows NT 4.0 Workstation aunque ya no recibe soporte
técnico. Sin embargo, este boletín tiene una revisión para este sistema.
¿Por qué?
El ciclo de vida del producto Windows NT 4.0 Workstation ha finalizado,
como se ha mencionado anteriormente, y en general Microsoft no
proporciona revisiones para dicho sistema. Sin embargo, dada la
naturaleza de esta vulnerabilidad, el hecho de que el final del ciclo de
vida ha tenido lugar recientemente y la cantidad de sistemas con Windows
NT 4.0 Workstation que aún se siguen explotando, Microsoft ha decidido
hacer una excepción en el caso de esta vulnerabilidad.
No aseguramos que esto se siga haciendo para las vulnerabilidades que se
descubran posteriormente, pero nos reservamos el derecho a crear y poner
a disposición de los clientes otras revisiones cuando sea necesario. Los
clientes deberían plantearse la migración de los equipos con Windows NT
4.0 Workstation a alguna plataforma comercializada para evitar la
exposición a futuras vulnerabilidades.
En el
sitio siguiente hay información adicional acerca del ciclo de vida de
productos de equipos de escritorio de Windows (en inglés):
http://microsoft.com/windows/lifecycle/desktop/consumer/components.mspx
Sigo
usando Microsoft Windows NT 2000 Service Pack 2 aunque ya no recibe
soporte técnico. Sin embargo, en este boletín hay una revisión que se
instala en Service Pack 2. ¿Por qué?
El ciclo de vida de Windows 2000 Service Pack 2 ha finalizado, como se
ha mencionado anteriormente, y en general Microsoft no proporciona
revisiones para dicho sistema. Sin embargo, dada la naturaleza de esta
vulnerabilidad, el hecho de que el final del ciclo de vida ha tenido
lugar recientemente y la cantidad de sistemas con Windows 2000 Service
Pack 2 que se utilizan, Microsoft ha decidido hacer una excepción en el
caso de esta vulnerabilidad.
No aseguramos que esto se siga haciendo para las vulnerabilidades que se
descubran posteriormente, pero nos reservamos el derecho a crear y poner
a disposición de los clientes otras revisiones cuando sea necesario. Los
clientes deberían plantearse la migración de los sistemas con Windows
2000 Service Pack a alguna plataforma comercializada para evitar la
exposición a futuras vulnerabilidades.
En el
sitio siguiente hay información adicional acerca del ciclo de vida de
productos de equipos de escritorio de Windows (en inglés):
http://microsoft.com/windows/lifecycle/desktop/consumer/components.mspx
¿Hay
alguna herramienta que pueda detectar los sistemas de una red que no
tengan instalada la revisión del boletín MS03-039?
Sí. Microsoft ha lanzado una herramienta que puede servir para examinar
una red en busca de sistemas que no tengan instalada la revisión
(parche) del boletín de seguridad MS03-039. En el artículo
827363 de Microsoft Knowledge
Base se ofrecen más detalles de esta herramienta.
¿Cómo
funciona esta revisión de seguridad?
La revisión de seguridad soluciona la vulnerabilidad modificando la
implementación de DCOM para que compruebe correctamente la información
que recibe.
Soluciones:
¿Existe alguna solución que permita bloquear el aprovechamiento de esta
vulnerabilidad mientras compruebo o evalúo la revisión de seguridad?
Sí. Aunque Microsoft recomienda encarecidamente que todos los clientes
apliquen la revisión de seguridad lo antes posible, hay varias
soluciones que se pueden aplicar mientras tanto para evitar este modo de
aprovechar esta vulnerabilidad. No se garantiza que estas soluciones
esporádicas impidan todas las vías posibles de ataque.
Debe
tenerse en cuenta que estas soluciones son medidas temporales, ya que
sólo ayudan a bloquear las formas de ataque pero no corrigen la
vulnerabilidad subyacente.
Bloquee los puertos UDP 135, 137, 138 y 445, y los puertos TCP 135,
139, 445 y 593 en su servidor de seguridad, y deshabilite Servicios
Internet COM (CIS) y RPC sobre HTTP, que escuchan en los puertos 80 y
443, en los sistemas afectados.
Estos puertos se utilizan para iniciar una conexión RPC con un equipo
remoto. Al bloquearlos en el servidor de seguridad, evitará que los
sistemas situados detrás de dicho servidor de seguridad sean víctimas
de algún ataque que intente aprovechar estos puntos vulnerables.
También debería proteger y bloquear cualquier otro puerto RPC
configurado específicamente en el equipo remoto.
Si están habilitados, CIS y RPC sobre HTTP permiten a las llamadas
DCOM operar a través del puerto TCP 80 (y 443 en Windows XP y Windows
Server 2003). Asegúrese de deshabilitar CIS y RPC sobre HTTP en todos
los sistemas afectados.
En el
artículo
825819 de Microsoft Knowledge
Base (en inglés) puede encontrar más información acerca de cómo
deshabilitar CIS.
Para
obtener más información relativa a RPC sobre HTTP, consulte
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/rpc/rpc/rpc_over_http_security.asp.
Use Servidor de seguridad de conexión a Internet (sólo disponible en
Windows XP y Windows Server 2003) y deshabilite Servicios Internet COM
(CIS) y RPC sobre HTTP, que escuchan en los puertos 80 y 443, en los
equipos afectados.
Si utiliza Servidor de seguridad de conexión a Internet (CIF,
Internet Connection Firewall) en Windows XP o Windows Server 2003
para proteger su conexión a Internet, el tráfico RPC entrante desde
Internet se bloqueará de forma predeterminada. Asegúrese de que CIS y
RPC sobre HTTP están deshabilitados en todos los equipos afectados.
En el
artículo
825819 de Microsoft Knowledge
Base (en inglés) puede encontrar más información acerca de cómo
deshabilitar CIS.
Para
obtener más información relativa a RPC sobre HTTP, consulte
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/rpc/rpc/rpc_over_http_security.asp.
Bloquee los puertos afectados con un filtro IPSEC y deshabilite
Servicios Internet COM (CIS) y RPC sobre HTTP que escuchan en los
puertos 80 y 443, en los equipos afectados.
Puede proteger las comunicaciones de red en equipos basados en Windows
2000 mediante Seguridad de Protocolo Internet (IPSec, Internet
Protocol Security). En los artículos de Microsoft Knowledge Base
313190 y
813878 (en inglés) puede
encontrar información detallada acerca de IPSec y de cómo aplicar
filtros. Asegúrese de que CIS y RPC sobre HTTP están deshabilitados en
todos los equipos afectados.
En el
artículo
825819 de Microsoft Knowledge
Base (en inglés) puede encontrar más información acerca de cómo
deshabilitar CIS.
Para
obtener más información relativa a RPC sobre HTTP, consulte
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/rpc/rpc/rpc_over_http_security.asp.
-
Deshabilite
DCOM en todos los equipos afectados
Cuando un equipo forma parte de una red, el protocolo DCOM en línea
habilita los objetos COM de ese equipo para comunicarse con objetos COM
de otros equipos. Puede deshabilitar DCOM en un equipo determinado para
ayudar a protegerlo ante esta vulnerabilidad, aunque con ello
deshabilitará todas las comunicaciones entre los objetos de ese equipo y
los de otros equipos.
Si
deshabilita DCOM en un equipo remoto, no podrá obtener acceso de forma
remota a dicho equipo cuando vuelva a habilitarlo. Para volver a
habilitar DCOM, necesitará acceso físico al equipo.
En el
artículo
825750 de Microsoft Knowledge
Base (en inglés) puede encontrar información acerca de cómo deshabilitar
DCOM.
Nota:
en
Windows 2000, los métodos descritos anteriormente sólo funcionarán en
sistemas donde se ejecute Service Pack 3 o una versión posterior. Los
clientes que utilicen Service Pack 2 o una versión anterior deberían
actualizar el sistema con un Service Pack posterior o usar alguna de las
soluciones temporales.