Vulnerabilidad "Relative Shell Path" en Windows NT y 2000


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 (ejemplo: C:\), a continuación en el directorio de sistema (ejemplo: C:\WINNT\System32), y por último en la carpeta de Windows (ejemplo: 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:

MS- 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 

MS-Windows 2000 Professional, Server, y Advanced Server:
    http://www.microsoft.com/Downloads/Release.asp?ReleaseID=23359 

RIPPER
Moderador de la lista METALHACK
Webmaster de Hackgroup
ICQ# 75368962