Documento informativo sobre seguridad de Microsoft: Una vulnerabilidad en Internet Explorer podría permitir la ejecución remota de código

Seleccione idioma Seleccione idioma
Id. de artículo: 961051 - Ver los productos a los que se aplica este artículo
Expandir todo | Contraer todo

En esta página

INTRODUCCIÓN

Microsoft ha publicado un asesoramiento acerca de este problema para los profesionales de TI de seguridad de Microsoft. El asesoramiento de seguridad contiene información adicional relacionada con la seguridad. Para ver el asesoramiento de seguridad, visite el siguiente sitio Web de Microsoft:
http://www.microsoft.com/technet/security/advisory/961051.mspx

Solución

Para evitar este problema, utilice cualquiera de los métodos siguientes.

Nota Debe ejecutar los comandos descritos en este artículo como administrador. En Windows Vista y Windows Server 2008, debe ejecutar los comandos desde un símbolo del sistema elevado. Para abrir un símbolo del sistema elevado, siga estos pasos:
  1. Haga clic en Inicio , escriba cmd en el cuadro de búsqueda y, a continuación, presione ENTRAR.
  2. En la lista de resultados, haga clic con el botón secundario del mouse en cmd y, a continuación, haga clic en Ejecutar como administrador .

Método 1: Utilizar una lista de control de acceso del sistema (SACL) para deshabilitar OLEDB32.dll para las aplicaciones menos

Esta solución es similar a la "usar SACL entradas para deshabilitar OLEDB32.dll" solución alternativa que se describe más adelante en este artículo. Esta solución es más selectiva acerca de las aplicaciones que se impide tener acceso a OLEDB32.DLL. Todavía se bloquea Internet Explorer. Sin embargo, la mayoría de otras aplicaciones no son. Esto tiene la ventaja de proteger Internet Explorer de ataque. Sin embargo, aún permite otras aplicaciones que dependen OLEDB32.DLL funcione correctamente.

Para proporcionar este tipo de protección selectiva, esta solución se basa en el hecho de que Internet Explorer se ejecuta con el modo protegido activado de forma predeterminada. Esto significa que el proceso iexplore.exe se ejecuta en un nivel de integridad baja. Para obtener más información acerca de qué significa esto y cómo funciona esto, visite la siguiente página Web de Microsoft:
http://msdn.microsoft.com/en-us/library/bb250462.aspx
El mecanismo de integridad posibilita a procesos de bloque de escritura a objetos asegurables como los archivos que tienen un mayor nivel de integridad. Esto se consigue aplicar una entrada de nivel de integridad especial a la SACL para un objeto.

Nota También es posible bloquear un proceso de poder leer o ejecutar objetos asegurables un mayor nivel de integridad.

Cómo utilizar esta solución

notas
  • Esta solución sólo se aplica a Windows Vista y versiones posteriores de Windows.
  • Para utilizar esta solución, debe estar ejecutando Internet Explorer con modo protegido activado. Esto requiere que tanto el modo protegido como el control de cuentas de usuario (UAC) están habilitadas. Ésta es la configuración predeterminada. Para determinar si el modo protegido está habilitado, examine la barra de estado de Internet Explorer.
Para utilizar esta solución provisional, siga estos pasos:
  1. Guarde el siguiente texto en una carpeta temporal:
    • sistemas de 32 bits
      Guardar el texto siguiente en un archivo de texto que se denomina "BlockAccess_x86.inf":
      [Unicode]
      Unicode=yes
      [Version]
      signature="$CHICAGO$"
      Revision=1
      [File Security]
      "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll",2,"S:(ML;;NWNRNX;;;ME)"
    • sistemas de 64 bits
      Guardar el texto siguiente en un archivo de texto que se denomina "BlockAccess_x86.inf":
       [Unicode]
      Unicode=yes
      [Version]
      signature="$CHICAGO$"
      Revision=1
      [File Security]
      "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll",2,"S:(ML;;NWNRNX;;;ME)"
      guardar el texto siguiente a un archivo de texto que se denomina "BlockAccess_x64.inf":
       [Unicode]
      Unicode=yes
      [Version]
      signature="$CHICAGO$"
      Revision=1
      [File Security]
      "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll",2,"S:(ML;;NWNRNX;;;ME)"
  2. Abra un símbolo de administrador elevado en la carpeta temporal.
  3. En el símbolo del sistema, escriba el comando siguiente y presione ENTRAR:
    SecEdit/configurar/db BlockAccess.sdb/cfg < archivo inf >
  4. Una vez finalizado el comando, debe recibirá un mensaje similar al siguiente:
    La tarea finalizó correctamente.
    Consulte el archivo %windir%\Security\Logs\Scesrv.log para obtener información detallada.

Cómo validar esta solución

Puede utilizar el comando icacls para determinar si la solución se ha aplicado. Para ello, utilice uno de los siguientes:
  • sistema operativo para un 32 bits
    En el símbolo del sistema, escriba el comando siguiente y presione ENTRAR:
    icacls "%ProgramFiles%\Common comunes\System\Ole DB\oledb32.dll"
  • sistema operativo para un 64 bits
    En el símbolo del sistema, escriba los comandos siguientes y presione ENTRAR:
    icacls "%ProgramFiles%\Common comunes\System\Ole DB\oledb32.dll"

    icacls "% ProgramFiles (x 86) %\Common comunes\System\Ole DB\oledb32.dll",2,"S:(ML;;NWNRNX;;;ME)"
Cada vez que ejecuta el comando icacls , buscar en el resultado de la línea siguiente.
Level:(NW,NR,NX) obligatorio de Label\Medium obligatorio
Si la línea está presente y incluye valores tanto NR NX, se ha aplicado correctamente la solución. Sin embargo, si falta la línea, o si falta uno de los valores NR o NX, la solución no se ha correctamente aplicada.

El efecto de esta solución

Esta solución sólo afecta a ADO y OLE DB aplicaciones que se ejecutan en Internet Explorer. No es habitual. Esta solución tiene un efecto mínimo porque todos los otros procesos que se están ejecutando en el nivel de integridad media o superior aún podrán cargar y usar OLEDB32.dll.

Cómo deshacer esta solución

Para deshacer la solución provisional, siga estos pasos:
  1. Guarde el siguiente texto en una carpeta temporal:
    • sistemas de 32 bits
      Guardar el texto siguiente en un archivo de texto que se denomina "unBlockAccess_x86.inf":
      [Unicode]
      Unicode=yes
      [Version]
      signature="$CHICAGO$"
      Revision=1
      [File Security]
      "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll",2,"S:(ML;;NW;;;ME)"
    • sistemas de 64 bits
      Guardar el texto siguiente en un archivo de texto que se denomina "unBlockAccess_x86.inf":
      [Unicode]
      Unicode=yes
      [Version]
      signature="$CHICAGO$"
      Revision=1
      [File Security]
      "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll",2,"S:(ML;;NW;;;ME)"
      guardar el texto siguiente a un archivo de texto que se denomina: "unBlockAccess_x64.inf":
      [Unicode]
      Unicode=yes
      [Version]
      signature="$CHICAGO$"
      Revision=1
      [File Security]
      "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll",2,"S:(ML;;NW;;;ME)"
  2. Abra un símbolo de administrador elevado en la carpeta temporal.
  3. En el símbolo del sistema, escriba el comando siguiente y presione ENTRAR:
    SecEdit/configurar/db UnblockAccess.sdb/cfg < archivo inf >
  4. Una vez finalizado el comando, debe recibirá un mensaje similar al siguiente:
    La tarea finalizó correctamente.
    Consulte el archivo %windir%\Security\Logs\Scesrv.log para obtener información detallada.
Utilice el comando icacls para comprobar que la solución se ha quitado. A continuación, puede eliminar los archivos UnblockAccess.sdb y UnblockAccess.inf. Consulte la sección "Cómo validar esta solución provisional" de "Método 1" para obtener más información sobre cómo utilizar el comando icacls para comprobar la solución se ha quitado.

Método 2: Deshabilitar la funcionalidad de "Posición de fila" de OLEDB32.dll

importante Esta sección, el método o la tarea contiene pasos que indican cómo modificar el registro. Sin embargo, pueden producirse problemas graves si modifica incorrectamente el registro. Por tanto, asegúrese de que siga estos pasos cuidadosamente. Realice una para agregar protección, copia de seguridad del registro antes de modificarlo. A continuación, puede restaurar el registro si se produce un problema. Para obtener más información acerca de cómo realizar una copia de seguridad y restaurar el registro, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
322756Cómo realizar una copia de seguridad y restaurar el registro de Windows
Para deshabilitar la funcionalidad de "Posición de fila" de OLEDB32.dll, elimine la siguiente subclave del registro de posición de fila:
HKEY_CLASSES_ROOT\CLSID\{2048EEE6-7FA2-11D0-9E6A-00A0C9138C29}

El efecto de deshabilitar la funcionalidad de "Posición de fila" de OLEDB32.dll

Todas las aplicaciones de ADO que utilice la propiedad RowPosition y la información relacionada se ven afectadas. Todas las aplicaciones de OLE DB que utilizan la biblioteca de posición de filas de OLE DB se ven afectadas. Se ve afectado MSHTML.

Cómo deshacer esta solución

Utilice el siguiente archivo de registro para restaurar la subclave de posición de fila:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\CLSID\{2048EEE6-7FA2-11D0-9E6A-00A0C9138C29}]
@="Microsoft OLE DB Row Position Library"
[HKEY_CLASSES_ROOT\CLSID\{2048EEE6-7FA2-11D0-9E6A-00A0C9138C29}\InprocServer32]
@="C:\\Program Files\\Common Files\\System\\Ole DB\\oledb32.dll"
"ThreadingModel"="Both"
[HKEY_CLASSES_ROOT\CLSID\{2048EEE6-7FA2-11D0-9E6A-00A0C9138C29}\ProgID]
@="RowPosition.RowPosition.1"
[HKEY_CLASSES_ROOT\CLSID\{2048EEE6-7FA2-11D0-9E6A-00A0C9138C29}\VersionIndependentProgID]
@="RowPosition.RowPosition"

Método 3: Unregister OLEDB32.dll

Para anular el registro OLEDB32.dll, utilice uno de los procedimientos siguientes.

Nota Debe ejecutar los comandos como administrador.
  • para versiones compatibles de Windows 2000, Windows XP, Windows Server 2003, Windows Vista y Windows Server 2008 para sistemas de 32 bits
    En el símbolo del sistema, escriba el comando siguiente y presione ENTRAR:
    Regsvr32.exe/u "Programa de programa\Archivos comunes\System\Ole DB\oledb32.dll"
  • para las versiones de Windows XP Professional x 64 Edition, Windows Server 2003 x 64 Edition, Windows Vista x 64 Edition, Windows Server 2008 para x 64 compatibles-basada Systems y Windows Server 2008 para sistemas basados en Itanium
    En el símbolo del sistema, escriba los comandos siguientes y presione ENTRAR:
    Regsvr32.exe/u "Programa de programa\Archivos comunes\System\Ole DB\oledb32.dll"

    Regsvr32.exe/u "Archivos de programa (x 86) \Common Files\System\Ole DB\oledb32.dll"

El efecto de anular el registro OLEDB32.dll

Las aplicaciones que dependen de acceso a datos de OLE DB no funcionarán.

Cómo deshacer esta solución

Para deshacer esta solución, utilice uno de los procedimientos siguientes.

Nota Debe ejecutar los comandos como administrador.
  • para versiones compatibles de Windows 2000, Windows XP, Windows Server 2003, Windows Vista y Windows Server 2008 para sistemas de 32 bits
    En el símbolo del sistema, escriba el comando siguiente y presione ENTRAR:
    regsvr32.exe "Programa de programa\Archivos comunes\System\Ole DB\oledb32.dll"
  • para las versiones de Windows XP Professional x 64 Edition, Windows Server 2003 x 64 Edition, Windows Vista x 64 Edition, Windows Server 2008 para x 64 compatibles-basada Systems y Windows Server 2008 para sistemas basados en Itanium
    En el símbolo del sistema, escriba los comandos siguientes y presione ENTRAR:
    Regsvr32.exe "Programa de programa\Archivos comunes\System\Ole DB\oledb32.dll"

    Regsvr32.exe "Archivos de programa (x 86) \Common Files\System\Ole DB\oledb32.dll"

Método 4: Usar entradas de la SACL para deshabilitar OLEDB32.dll

Puede utilizar las entradas de la SACL para deshabilitar OLEDB32.dll. Para ello, utilice uno de los procedimientos siguientes.

Nota Debe ejecutar los comandos como administrador.
  • para versiones compatibles de Windows 2000, Windows XP y Windows Server 2003
    En el símbolo del sistema, escriba el comando siguiente y presione ENTRAR:
    cacls "programa de programa\Archivos comunes\System\Ole DB\oledb32.dll"/E/P everyone: N
  • para las versiones de Windows XP Professional x 64 Edition y Windows Server 2003 x 64 Edition, Windows Server 2003 para sistemas con Itanium compatibles
    En el símbolo del sistema, escriba los comandos siguientes y presione ENTRAR:
    cacls "programa programa\Archivos comunes\System\Ole DB\oledb32.dll"/E/P everyone: N

    cacls "archivos de programa (x 86) \Common Files\System\Ole DB\oledb32.dll"/E/P everyone: N
  • para versiones compatibles de Windows Vista y Windows Server 2008 para sistemas de 32 bits
    En el símbolo del sistema, escriba los comandos siguientes y presione ENTRAR:
    takeown/f "Programa de programa\Archivos comunes\System\Ole DB\oledb32.dll"

    icacls "programa de programa\Archivos comunes\System\Ole DB\oledb32.dll"/save %TEMP%\oledb32.32.dll.TXT

    icacls "programa de programa\Archivos comunes\System\Ole DB\oledb32.dll"/deny everyone:(F)
  • para las versiones de Windows Vista x 64 Edition, Windows Server 2008 para sistemas basados en 64, x y Windows Server 2008 para sistemas con Itanium compatibles
    En el símbolo del sistema, escriba los comandos siguientes y presione ENTRAR:
    takeown/f "Programa de programa\Archivos comunes\System\Ole DB\oledb32.dll"

    icacls "programa de programa\Archivos comunes\System\Ole DB\oledb32.dll"/save %TEMP%\oledb32.32.dll.TXT

    icacls "programa de programa\Archivos comunes\System\Ole DB\oledb32.dll"/deny everyone:(F)

    TAKEOWN/f "Archivos de programa (x 86) \Common Files\System\Ole DB\oledb32.dll"

    icacls "\Common Files\System\Ole DB\oledb32.dll"/save %TEMP%\oledb32.64.dll.TXT de archivos de programa (x 86)

    icacls "archivos de programa (x 86) \Common Files\System\Ole DB\oledb32.dll"/deny everyone:(F)

El efecto de anular el registro OLEDB32.dll

Las aplicaciones que dependen de acceso a datos de OLE DB no funcionarán.

Cómo deshacer esta solución

Para deshacer esta solución, utilice uno de los siguientes:

Nota Debe ejecutar los comandos como administrador.
  • para versiones compatibles de Windows 2000, Windows XP y Windows Server 2003
    En el símbolo del sistema, escriba el comando siguiente y presione ENTRAR:
    cacls "programa de programa\Archivos comunes\System\Ole DB\oledb32.dll"/E/R todos
  • para las versiones de Windows XP Professional x 64 Edition y Windows Server 2003 x 64 Edition, Windows Server 2003 para sistemas con Itanium compatibles
    En el símbolo del sistema, escriba los comandos siguientes y presione ENTRAR:
    cacls "programa de programa\Archivos comunes\System\Ole DB\oledb32.dll"/E/R todos

    cacls "archivos de programa (x 86) \Common Files\System\Ole DB\oledb32.dll"/E/R todos
  • para versiones compatibles de Windows Vista y Windows Server 2008 para sistemas de 32 bits
    En el símbolo del sistema, escriba el comando siguiente y presione ENTRAR:
    icacls "Archivos de Programa\archivos comunes\System\Ole DB" /RESTORE %TEMP%\oledb32.32.dll.TXT
  • para las versiones de Windows Vista x 64 Edition, Windows Server 2008 para sistemas basados en 64, x y Windows Server 2008 para sistemas con Itanium compatibles
    En el símbolo del sistema, escriba los comandos siguientes y presione ENTRAR:
    icacls "Archivos de Programa\archivos comunes\System\Ole DB" /RESTORE %TEMP%\oledb32.32.dll.TXT

    icacls "Archivos de programa (x 86) \Common Files\System\Ole DB" /RESTORE %TEMP%\oledb32.64.dll.TXT

Cómo determinar si está ejecutando una edición de 64 bits de Windows de 32 bits o

Si no está seguro de qué versión de Windows que esté ejecutando o si es una versión de 32 bits o una versión de 64 bits, abra información del sistema (Msinfo32.exe) y revise el valor que aparece para Tipo de sistema . Para ello, siga estos pasos:
  1. Haga clic en Inicio y a continuación, haga clic en Ejecutar o en Iniciar búsqueda .
  2. Escriba msinfo32.exe y, a continuación, presione ENTRAR.
  3. En Información del sistema , revisar el valor de Tipo de sistema .
    • Para ediciones de 32 bits de Windows, el valor de tipo de sistema es x equipo basado en 86 .
    • Para ediciones de 64 bits de Windows, el valor de tipo de sistema es x equipo basado en 64 .
Para obtener más información acerca de cómo determinar si está ejecutando una edición de 32 ó 64 bits de Windows, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
827218Cómo determinar si el equipo se está ejecutando una versión de 32 bits o una versión de 64 bits del sistema operativo Windows

Propiedades

Id. de artículo: 961051 - Última revisión: domingo, 14 de diciembre de 2008 - Versión: 3.3
La información de este artículo se refiere a:
  • Windows Internet Explorer 7
  • Windows Internet Explorer 7 for Windows XP
  • Windows Internet Explorer 7 for Windows Server 2003
  • Windows Internet Explorer 7 for Windows Server 2003 IA64
  • Windows Internet Explorer 7 in Windows Vista
  • Windows Internet Explorer 8
  • Microsoft Internet Explorer 6.0 Service Pack 2
  • Service Pack 1 de Microsoft Internet Explorer 6.0
  • Microsoft Internet Explorer 6.0
  • Microsoft Internet Explorer 5.01 Service Pack 4
  • Windows Server 2008 Datacenter without Hyper-V
  • Windows Server 2008 Enterprise without Hyper-V
  • Windows Server 2008 for Itanium-Based Systems
  • Windows Server 2008 Standard without Hyper-V
  • Windows Server 2008 Datacenter
  • Windows Server 2008 Enterprise
  • Windows Server 2008 Standard
  • Windows Web Server 2008
  • Service Pack 1 para Windows Vista sobre las siguientes plataformas
    • Windows Vista Business
    • Windows Vista Enterprise
    • Windows Vista Home Basic
    • Windows Vista Home Premium
    • Windows Vista Starter
    • Windows Vista Ultimate
    • Windows Vista Enterprise 64-bit edition
    • Windows Vista Home Basic 64-bit edition
    • Windows Vista Home Premium 64-bit edition
    • Windows Vista Ultimate 64-bit edition
    • Windows Vista Business 64-bit edition
  • Windows Vista Business
  • Windows Vista Enterprise
  • Windows Vista Home Basic
  • Windows Vista Home Premium
  • Windows Vista Starter
  • Windows Vista Ultimate
  • Windows Vista Enterprise 64-bit edition
  • Windows Vista Home Basic 64-bit edition
  • Windows Vista Home Premium 64-bit edition
  • Windows Vista Ultimate 64-bit edition
  • Windows Vista Business 64-bit edition
  • Microsoft Windows Server 2003 Service Pack 1 sobre las siguientes plataformas
    • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
    • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
    • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
    • Microsoft Windows Server 2003, Web Edition
    • Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
    • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
  • Microsoft Windows Server 2003, Datacenter x64 Edition
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Microsoft Windows Server 2003, Standard x64 Edition
  • Microsoft Windows XP Professional x64 Edition
  • Microsoft Windows Server 2003 Service Pack 2 sobre las siguientes plataformas
    • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
    • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
    • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
    • Microsoft Windows Server 2003, Web Edition
    • Microsoft Windows Server 2003, Datacenter x64 Edition
    • Microsoft Windows Server 2003, Enterprise x64 Edition
    • Microsoft Windows Server 2003, Standard x64 Edition
    • Microsoft Windows XP Professional x64 Edition
    • Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
    • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
  • Microsoft Windows XP Service Pack 2 sobre las siguientes plataformas
    • Microsoft Windows XP Home Edition
    • Microsoft Windows XP Professional
  • Service Pack 3 para Microsoft Windows XP sobre las siguientes plataformas
    • Microsoft Windows XP Home Edition
    • Microsoft Windows XP Professional
Palabras clave: 
kbmt kbregistry kbexpertiseinter kbinfo kbsecadvisory kbsecurity kbsecvulnerability kbsurveynew KB961051 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 961051

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com