Durante el proceso de inicio de sesión de un usuario en Windows NT y
2000 se ejecuta la aplicación «Explorer.exe», que se encuentra en el
directorio de Windows. Debido a un error de Microsoft al no
especificar la trayectoria absoluta de este fichero, es posible situar
un troyano con el mismo nombre en el raíz que se ejecutará con los
privilegios del usuario que inicie la sesión.
Cada vez que un usuario inicia la sesión, Windows NT y 2000 leen
la entrada del registro:
HLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Shell
para conocer el fichero que deben ejecutar como Shell, por defecto
«Explorer.exe», sin indicar la trayectoria absoluta.
Cuando en Windows no se especifica la trayectoria de un fichero
inicia una búsqueda en el siguiente orden:
1. Busca en el directorio actual
2. Si el fichero no ha sido localizado, busca en los directorios
especificados en:
HLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\Path
3. Si tampoco es localizado, busca en los directorios especificados
en: HKEY_CURRENT_USER\Environment\Path
Esto quiere decir que, durante el inicio de sesión, en primer lugar
intenta localizar a «Explorer.exe» en el raíz (ejem: C:\), a
continuación en el directorio de sistema (ejem: C:\WINNT\System32),
y por último en la carpeta de Windows (ejem: C:\WINNT), donde se
encuentra el fichero.
Por defecto todos los usuarios del sistema tienen permisos de
escritura sobre el directorio raíz, lo que facilita que un atacante
local pueda situar un troyano renombrado como «Explorer.exe» en
el raíz, que se ejecutaría cada vez que un usuario inicie la
sesión con sus privilegios de seguridad.
Microsoft argumenta que no especifica una trayectoria absoluta
porque podría causar problemas de compatibilidad con software
comercial, que interrogan también el registro de Windows para
conocer el nombre del Shell, y no están preparados para leer
una trayectoria completa. Es por esta razón que no es posible,
o al menos recomendable, corregir la vulnerabilidad mediante
la inclusión de la trayectoria absoluta en la entrada del registro.
Para solucionar el problema Microsoft ha modificado el código
de Inicio de sesión para que anteponga la trayectoria adecuada
antes del nombre del fichero.
Los parches para corregir esta vulnerabilidad, según plataforma,
puede ser descargados de las siguientes direcciones:
Microsoft Windows NT 4.0 Workstation, Windows NT 4.0 Server,
y Windows NT 4.0 Server, Enterprise Edition:
http://www.microsoft.com/Downloads/Release.asp?ReleaseID=23360
Microsoft Windows 2000 Professional, Server, y Advanced Server:
http://www.microsoft.com/Downloads/Release.asp?ReleaseID=23359
Microsoft Windows NT 4.0 Server, Terminal Server Edition:
No disponibles aun.
Más información:
Boletín de seguridad (MS00-052) «Relative Shell Path
bernardo@hispasec.com
Deja una respuesta