| Trucos Web | Trucos Windows | Trucos Win XP | Trucos Grabadoras | Trucos Visual Basic | Trucos Google |

 

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_MACHINE\System\CurrentControlSet\Services\ Nombre del Servicio

Por esta razon, 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:

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

    Tasklist /SVC

    ... y a continuación, presione Enter.
Te 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).

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

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

  1. Haga clic en el boton Inicio en la barra de tareas de Windows y, a continuación, en Ejecutar.
  2. En el cuadro de diálogo Abrir, escriba CMD y, a continuación, presione la tecla Enter.
  3. 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 estabilidad y seguridad de su sistema y no deberia ser terminado.

Uso de recursos del sistema

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%) éste uso de CPU no debe ser permanente, o sea no debe ocupar CPU en todo momento a menos que en tu 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í, sospecha de que estas siendo atacado externamente por algun bicho que aprovecha la vulnerabilidad RPC. (más abajo)

SVCHOST, los puertos que abre y su configuracion con Firewalls

Como vimos anteriormente, SVCHOST.exe puede aparecer varias veces cargado en el sistema, de hecho, mientras escribo éste 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, pero, como si fuera poco, si tienes un Firewall, y alguna vez has visto listados los puertos que el proceso SVCHOST.exe tiene para sí, encontraras 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 estes en busca de procesos maliciosos como Adware, software espía, etc, puedes confiar en que los puertos abiertos relacionados con SVCHOST.exe no han sido abiertos con mala intencion. 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
Si la conexion es de tipo ENTRADA
BLOQUEAR

Si el protocolo es UDP
Si 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 este es su caso, (si experimenta momentos en que el Firewall le pregunta sobre que una aplicacion solicita conexion de salida usando protocolo TCP), convendría definir esta regla:

Si el protocolo es TCP
Si la conexion es de tipo SALIDA
BLOQUEAR

Ataques a tu sistema mediante RPC

El Proceso ó Archivo SVCHOST consume 100% CPU

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

Mediante dicha vulnerabilidad, existen y continuan apareciendo infinidad de bichos que aprovechan este agujero para insertarse en tu sistema y empezar a hacer todo tipo de travesuras, bicho que normalmente se conoce como msblaster o alguna mutacion.

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

Inmediatamente ve descargando e instalando los dos parches para el Agujero del LSASS y el RPC/DCOM

Cuando los instales, reinicias, te conectas a Internet y compruebas si el uso de CPU del archivo SVCHOST.EXE es ahora normal. Si no lo es, y notas que continua igual que antes, entonces publica el registro detallado de las aplicaciones de tu sistema usando la aplicacion, HIJACKTHIS.


IMPORTANTE:

Si lo que tienes es el gusano, con el antivirus NO BASTA, tienes que parchear el error (con el parche RPC, que corrige el agujero de una vez por todas) porque existen infinidad de bichos que aprovechan ese agujero pero que utilizan otro nombre, por lo que si el Antivirus no es tan potente, desconocerá las nuevas mutaciones.

Para tener claro...

  • 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úpate si el uso de procesador por parte de SVCHOST.EXE es excesivo, no debe ser mas 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í, sospecha de que estas siendo atacado externamente por algun bicho que aprovecha la vulnerabilidad RPC.

 

 

Todo sobre Windows

Procesos del Administrador de Tareas del XP El proceso SVCHOST.EXE
La consola de Recuperación del XP Para que sirve el archivo Pagefile.sys
Reparar el Registro del XP Explicación de un archivo DLL
Diferencias entre Windows XP Home y Professional Faq Errores Windows
Conectividad limitada o nula Tabla Errores Windows
Límite de 10 conexiones en Windows XP + SP2 Recuperar Sistema XP
Menús Ocultos del Windows XP Reparar "Restaurar Sistema" XP
Servicios del Windows XP Desactivar "Restaurar Sistema" XP
Cómo leer pantallazos azules Características Windows XP-Vista Starter
Archivo-Fichero HOSTS (restaurar-editar) Atajos de Teclado Windows
Compartir Conexión a Internet en Windows Comandos de la consola en Windows XP
Comandos protocolo TCP/IP en Windows