Se ha anunciado la existencia de una vulnerabilidad en la
implementación RPC de algunos sistemas Windows a través de la cual
un atacante puede lograr la ejecución de código.

Remote Procedure Call (RPC) es un protocolo empleado por los sistemas
operativos Windows para proporcionar mecanismos de comunicación entre
procesos de forma que un programa que se ejecute en un sistema pueda
ejecutar código en un sistema remoto de forma transparente. La
implementación de Microsoft de este protocolo está derivada del
protocolo RPC de la OSF (Open Software Foundation) pero con la
inclusión de algunas extensiones específicas de Microsoft.

El protocolo RPC se utiliza para que un programa pueda ejecutar código
en un ordenador remoto. Por ejemplo, se utiliza el protocolo RPC para
la compartición de las impresoras de una red. En el caso de Windows,
el servicio RPC está asociado al puerto 135/tcp.»

Existe una vulnerabilidad en la parte de RPC que negocia con el
intercambio de mensajes sobre TCP/IP. El fallo resulta provocado por
un tratamiento incorrecto de mensajes mal construidos. Esta
vulnerabilidad en particular afecta al interfaz DCOM (Distributed
Component Object Model) con RPC, que escucha en el puerto TCP/IP 135.
Este interfaz trata la petición de activación de objetos DCOM enviadas
por las máquinas cliente al servidor (como rutas UNC).

Para explotar esta vulnerabilidad, un atacante debe enviar peticiones
especialmente mal construidas al sistema remoto a través del puerto
135. Se ven afectadas por este problema Windows NT 4.0, Windows NT 4.0
Terminal Services Edition, Windows 2000, Windows XP y Windows Server
2003.

En Windows, a diferencia de los sistemas *nix, no existe una forma
fácil de deshabilitar este protocolo. Por lo tanto, la medida de
protección más efectiva es el bloqueo del tráfico mediante cortafuegos
u otras medidas de protección perimetral

Las actualizaciones publicadas por Microsoft para evitar este problema
pueden descargarse desde:
Windows NT 4.0 Server
http://microsoft.com/downloads/details.aspx?FamilyId=2CC66F4E-217E-4FA7-BDBF-DF77A0B9303F&displaylang=en
Windows NT 4.0 Terminal Server Edition
http://microsoft.com/downloads/details.aspx?FamilyId=6C0F0160-64FA-424C-A3C1-C9FAD2DC65CA&displaylang=en
Windows 2000
http://microsoft.com/downloads/details.aspx?FamilyId=C8B8A846-F541-4C15-8C9F-220354449117&displaylang=en
Windows XP 32 bit Edition
http://microsoft.com/downloads/details.aspx?FamilyId=2354406C-C5B6-44AC-9532-3DE40F69C074&displaylang=en
Windows XP 64 bit Edition
http://microsoft.com/downloads/details.aspx?FamilyId=1B00F5DF-4A85-488F-80E3-C347ADCC4DF1&displaylang=en
Windows Server 2003 32 bit Edition
http://microsoft.com/downloads/details.aspx?FamilyId=F8E0FF3A-9F4C-4061-9009-3A212458E92E&displaylang=en
Windows Server 2003 64 bit Edition
http://microsoft.com/downloads/details.aspx?FamilyId=2B566973-C3F0-4EC1-995F-017E35692BC7&displaylang=en

Antonio Ropero
antonior@hispasec.com

Más información:

Buffer Overrun In RPC Interface Could Allow Code Execution (823980)
http://www.microsoft.com/technet/security/bulletin/MS03-026.asp

What You Should Know About Microsoft Security Bulletin MS03-026
http://www.microsoft.com/security/security_bulletins/MS03-026.asp

Buffer Overrun in Windows RPC Interface
http://lsd-pl.net/special.html

CERT® Advisory CA-2003-16 Buffer Overflow in Microsoft RPC
http://www.cert.org/advisories/CA-2003-16.html

Compártelo: