Un programa que pasa parámetros de tamaño de pantalla no válidos produce una infracción de acceso

Seleccione idioma Seleccione idioma
Id. de artículo: 311486 - Ver los productos a los que se aplica este artículo
Este artículo se ha archivado. Se ofrece "tal cual" y no se volverá a actualizar.
Expandir todo | Contraer todo

En esta página

Síntomas

Las versiones enumeradas al principio del artículo incluyen la vulnerabilidad siguiente: Al ejecutar un programa local que pasa parámetros no válidos más pequeños que el tamaño de la pantalla, esto produce una violación de acceso. Como resultado, Windows deja de responder (se cuelga).

Código de ejemplo

Se sabe que el siguiente código de ejemplo sin compilar produce este comportamiento:
#include <stdio.h>

int main(void)
{
while(1)
printf("\t\t\b\b\b\b\b\b");
return 0;
}
				

Causa

Este comportamiento se produce porque Windows comprueba parámetros no válidos que sean más grandes que el tamaño de la pantalla, pero actualmente no comprueba parámetros no válidos que sean más pequeños.

Solución

Windows XP

Para resolver este problema, obtenga el Service Pack más reciente para Windows XP. Para obtener información adicional, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
322389 Cómo obtener el Service Pack más reciente para Windows XP
La versión en inglés de esta revisión debe tener los atributos de archivo siguientes o posteriores:
   Fecha        Hora   Versión      Tamaño   Nombre de archivo
   -----------------------------------------------------------
   02-nov-2001  21:43  5.1.2600.19  272.384  Winsrv.dll
   02-nov-2001  21:43  5.1.2600.19  272.384  Winsrv.dll
				

Windows 2000

Para resolver este problema, obtenga el Service Pack más reciente para Windows 2000. Para obtener información adicional, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
260910 Cómo obtener el Service Pack más reciente para Windows 2000
La versión en inglés de esta revisión debe tener los atributos de archivo siguientes o posteriores:
   Fecha        Hora      Versión        Tamaño     Nombre de archivo
   ------------------------------------------------------------------
   05-nov-2001  18:57     5.0.2195.4572    222.480  Gdi32.dll
   05-nov-2001  18:57     5.0.2195.4272    731.920  Kernel32.dll
   25-jun-2001  18:17     3.10.0.103        47.808  User.exe
   05-nov-2001  18:57     5.0.2195.4314    402.192  User32.dll
   05-nov-2001  18:57     5.0.2195.4345    371.984  Userenv.dll
   27-sep-2001  15:00     5.0.2195.4426  1.731.536  Win32k.sys
   30-oct-2001  18:17     5.0.2195.4575    178.960  Winlogon.exe
   05-nov-2001  18:58     5.0.2195.4553    243.472  Winsrv.dll
   05-nov-2001  18:58:00  5.0.2195.4272    731.920  Kernel32.dll
   05-nov-2001  18:58     5.0.2195.4426  1.731.536  Win32k.sys
   05-nov-2001  18:58     5.0.2195.4553    243.472  Winsrv.dll
				

Estado

Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados al principio de este artículo. Este problema se corrigió primero en el Service Pack 3 (SP3) de Microsoft Windows 2000 y en el Service Pack 1 (SP1) de Microsoft Windows XP.

Más información

Esta actualización hace que Windows compruebe límites inferiores. El archivo Winsrv.dll se ve directamente afectado por esta actualización, pero los archivos siguientes se incluyen debido a problemas de dependencia:
User.exe
User32.dll
Win32k.sys
Gdi32.dll
Userenv.dll
Kernel32.dll
Winlogon.exe

Propiedades

Id. de artículo: 311486 - Última revisión: lunes, 24 de febrero de 2014 - Versión: 2.2
La información de este artículo se refiere a:
  • Service Pack 1 de Microsoft Windows 2000
  • Service Pack 2 de Microsoft Windows 2000
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Advanced Server
  • Service Pack 1 de Microsoft Windows 2000
  • Service Pack 2 de Microsoft Windows 2000
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional Edition
Palabras clave: 
kbnosurvey kbarchive kbbug kbfix kbshell kbwin2000presp3fix kbqfe kbwin2000sp3fix kbsecurity kbwinxpsp1fix kbhotfixserver KB311486

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