EL MISTERIOSO ARCHIVO SVCHOST.EXE

El archivo Svchost.exe se encuentra en la carpeta C:\WINDOWS\system32\svchost.exe en Windows XP y C:\WINNT\system32\svchost.exe en Windows 2000.


Al iniciarse, Svchost.exe comprueba la parte de servicios del Registro para elaborar la lista de servicios que necesita cargar. Se pueden ejecutar múltiples instancias de Svchost.exe al mismo tiempo. Cada sesión de Svchost.exe puede contener un conjunto de servicios, para que se puedan ejecutar servicios autónomos, en función de cómo y cuándo se inició Svchost.exe. Esto permite un control mejor y una depuración más sencilla.


Los grupos Svchost.exe están identificados en la siguiente clave del Registro:


HKEY_LOCAL_MACHINE\Software\Microsoft\ WindowsNT\CurrentVersion\Svchost

Cada valor contenido en esta clave representa un grupo Svchost distinto y se muestra como un ejemplo independiente cuando se consultan los procesos activos.

Cada valor es un valor REG_MULTI_SZ que contiene los servicios que se ejecutan en el grupo Svchost. Cada grupo Svchost puede contener uno o varios nombres de servicio que se extraen de la siguiente clave del Registro, cuya clave Parámetros contiene un valor ServiceDLL:

HKEY_LOCAL_MACHINESystemCurrentControlSetServices Nombre del Servicio

Por esta razón, suele aparecer varias veces en la lista de procesos en ejecucion.

Para ver la lista de servicios que se ejecutan en Svchost y los otros procesos:

  • Haga clic en el boton Inicio en la barra de tareas de Windows y, a continuación, en Ejecutar.
  • En el cuadro de diálogo Abrir, escriba CMD y, a continuación, presione la tecla Enter.
  • Ahora en la ventana de la consola de comandos, escriba:

    Tasklist /SVC

... y a continuación presione Enter.

Le aparecerá un listado de los procesos activos y los servicios del sistema asociados con dichos procesos "si los hay" (en caso contrario muestra N/D, no disponible).

La lista de tareas muestra una lista de los procesos activos. El modificador /SVC muestra la lista de servicios activos para cada proceso.

Si tiene Windows XP Professional y quiere obtener más informacion sobre los servicios que el proceso SVCHOST está ejecutando en estos momentos haga esto:

  • Haga clic en el boton Inicio en la barra de tareas de Windows y, a continuación, en Ejecutar.
  • En el cuadro de diálogo Abrir, escriba CMD y, a continuación, presione la tecla Enter.
  • Ahora en la ventana de la consola de comandos, escriba:

    tasklist /svc /fi "imagename eq svchost.exe"

... y a continuación presione Enter.

En este caso se mostrarán sólo los procesos SVCHOST.exe y sus servicios asociados.

Y la respuesta a la típica pregunta de si hay que cerrar o eliminar el proceso SVCHOST, no, no hay que tocarlo, este programa es importante para la estabilidad y seguridad de su sistema y no debería ser eliminado.

Uso de memoria

  • SVCHOST.EXE puede llegar a ocupar hasta unos 60MB de la memoria de sistema.
  • SVCHOST.EXE puede aparecer listado en la lista de procesos muchas veces por cada servicio que éste tenga activos.

Uso de procesador

El uso de procesador por parte de SVCHOST.EXE no debe ser mas de 20% en algunos casos (en mi caso personal en este momento solo un 0%). Este uso de CPU no debe ser permanente, o sea no debe ocupar CPU en todo momento, a menos que en su sistema se esté ejecutando alguna aplicacion de red crítica que siginifique el uso de todos estos recursos en todo momento. Si no es así, sospeche de que está siendo atacado externamente por algun gusano que aprovecha la vulnerabilidad RPC.

Como vimos anteriormente, SVCHOST.exe puede aparecer varias veces cargado en el sistema. De hecho, mientras escribo este artículo, SVCHOST.exe aparece en la lista de procesos 6 veces, ocupando algo así como 45MB de memoria. Este aparece cargando los servicios DcomLaunch, TermService, RpcSs,AudioSrv, Browser, CryptSvc, Dhcp, dmserver, ERSvc, EventSystem, FastUserSwitchingCompatibility, helpsvc, HidServ, lanmanserver, lanmanworkstation, Netman, Nla, rasAuto, RasMan, Schedule, seclogon, SENS, SharedAccess, ShellHWDetection, Tapisrvc, Themes, trkWks, winmgmt, wscsvc, wuauserv, WZCSVC, LmHosts, SSDPSRV, upnphost, WebClient, stisvc y HTTPFilter.

Como si fuera poco, si tiene un Firewall, y alguna vez ha visto listados los puertos que el proceso SVCHOST.exe tiene para sí, encontrará que SVCHOST.exe es el responsable de tener abiertos varios puertos del sistema.

SVCHOST.exe no solo es el responsable de cargar varios servicios, tambien abre numerosos puertos de conexion a nuestro sistema.

En mi caso, SVCHOST.exe tiene abiertos los siguientes puertos:

  • Con protocolo TCP: 135 y 2869
  • Con protocolo UDP: 53, 1035, 1036, 1900, 2030 y 3031

Cuando esté en busca de procesos maliciosos como Adware, software espía, etc, puede confiar en que los puertos abiertos relacionados con SVCHOST.exe no han sido abiertos con mala intención. Claro que ataques externos en contra de esos puertos (por ejemplo: Ataques a Llamadas a Procedimiento Remoto RPC "call—RPC—attacks" en contra del puerto 135) no se pueden descartar.

En el mundo de los Firewalls, al proceso del archivo SVCHOST.exe, se le conoce como [GENERIC HOST PROCESS FOR WIN32 SERVICES].

La mayoría de los Firewalls traen reglas predefinididas cuando las conexiones son de salida, pero cuando hay peticiones entrantes, toca definir dos reglas:

  • Si el protocolo es TCP y la conexion es de tipo ENTRADA: BLOQUEAR
  • Si el protocolo es UDP y la conexion es de tipo ENTRADA: BLOQUEAR

Hay casos raros, muy raros... en que las reglas predefinidas de conexiones de salida no son suficientes. Si éste es su caso (si experimenta momentos en que el Firewall le pregunta sobre una aplicación que solicita conexión de salida usando protocolo TCP), convendría definir esta regla:

  • Si el protocolo es TCP y si la conexion es de tipo SALIDA: BLOQUEAR

Si experimenta problemas de lentitud, y nota que el proceso SVCHOST.exe está consumiendo recursos de CPU de forma excesiva y sin control, es muy probable que esté siendo objeto de ataques mediante la vulnerabilidad conocida del RPC.

Mediante dicha vulnerabilidad, existen y continuan apareciendo infinidad de gusanos que aprovechan este agujero para insertarse en su sistema y empezar a hacer todo tipo de travesuras.

Si cree estar siendo víctima del MS Blaster o alguna de sus miles de mutaciones:

  • Inmediatamente vaya descargando e instalando los dos parches para el Agujero del LSASS y el RPC/DCOM. Cuando los instale, reinicie, se conecta a Internet y compruebes si el uso de CPU del archivo SVCHOST.EXE es ahora normal. Si no lo es, y nota que continua igual que antes, entonces publice el registro detallado de las aplicaciones de su sistema usando la aplicacion, HIJACKTHIS.
  • Si lo que tiene es el gusano, con el antivirus NO BASTA, tiene que parchear el error (con el parche RPC, que corrige el agujero de una vez por todas), porque existen infinidad de gusanos que aprovechan ese agujero, pero que utilizan otro nombre. Por lo que si el Antivirus no es tan potente, desconocerá las nuevas mutaciones.
  • El archivo se llama SVCHOST.exe, no confundir con virus que se hacen llamar SVHOST.exe o SVCSHOST.exe, etc.
  • Este archivo SVCHOST.exe sólo debe aparecer en Windows 2000 y XP.
    • Su ubicacion debe ser C:\WINDOWS\system32\svchost.exe en Windows XP y C:\WINNT\system32\svchost.exe en Windows 2000.
  • No importa si SVCHOST.EXE aparece repetido varias veces en la lista de procesos, esto es normal.
  • SVCHOST.EXE puede llegar a ocupar hasta unos 60MB de la memoria de sistema. Solo preocúpese si el uso de procesador por parte de SVCHOST.EXE es excesivo, no debe ser más de 20% en algunos casos. (en mi caso personal solo un 1%) El uso del CPU es aleatorio y circunstancial, no debe ocupar CPU en todo el momento. Si es así, sospeche de que está siendo atacado externamente por algun gusano que aprovecha la vulnerabilidad RPC.

Comentarios

Entradas populares