Cómo asegurar Windows XP: cierra todos sus puertos vulnerables

(Si leyendo este artículo/tutorial sientes el impulso de soltarme el tópico '¿para qué empeñarse en seguir usando XP?', puedes ahorrártelo: no es para ti; probablemente la solidaridad y la empatía tampoco son valores que te importen...).

Nivel de dificultad del Tutorial: Medio
Tiempo estimado: alrededor de 1h 30'.


¿Todavía a vueltas con XP...?


El Sistema Operativo Windows XP empezó a ser obsoleto a partir del pasado 8 de Abril de 2014. Prácticamente un año. Y cada día lo será un poco más. Es una realidad. Como expliqué en Windows XP desaparece ¿Qué hacer? Consejos para empresas y particulares, SIN DUDA lo más sensato es pasarse a otro S.O. para evitar nuevas vulnerabilidades ante las que XP ya no estará protegido. Especialmente ante cualquier uso que implique una conexión a Internet.

¿Es o ha sido XP un sistema que destaque por su seguridad? Es una pregunta interesante. La respuesta es: NO. Pero lo podía haber sido, de no ser por la dejadez -sin pensar mal- de algún ingeniero jefe de MS. Windows XP ha destacado sobre todo por ser el S.O. que mayor ESTABILIDAD Y POTENCIALIDAD ofreció en comparación con los anteriores, posiblemente también con los posteriores.

Lo más probable es que cambiar a un nuevo S.O. -actualmente Windows 8, quizás Windows 10- te comporte tener que comprar un nuevo equipo u ordenador -o varios, si tienes una empresa-. Para todos aquellos que ahora mismo no podáis afrontar esto, ahí va un buen consejo si decidís seguir usando XP -aparte de los que ya dí en el mencionado artículo- con una mayor seguridad: cerrar permanentemente TODOS los puertos que vienen abiertos por defecto en XP y que comportan riesgos potenciales. (A una empresa con una red de varios equipos esto no le resultará tan práctico como a un particular, pero puede comentarlo con su experto informático).

Medidas generales de protección para XP


Según mi parecer y el de reputados expertos, éstos son los niveles o 'capas' de seguridad a aplicar en general a un equipo con XP, especialmente DESPUÉS-DE-ABRIL DE 2014 -cuando finalizó el soporte de MS para este S.O.- por orden de importancia:

  • Primera Capa de Seguridad: Cerrar los puertos abiertos por defecto en XP.
  • Segunda Capa de Seguridad: Usa el sentido común. Especialmente cuando navegas por Internet en páginas 'de riesgo'. No aceptes nunca peticiones o advertencias extrañas, no te bajes ni instales ninguna aplicación que te propongan, no hagas ningún caso si te dicen que se ha detectado un virus o problema en tu sistema o en tu conducta, aunque te digan que son la policía o el FBI, etc. Infórmate bien antes de aceptar cualquiera de estas acciones. Si crees que necesitas tal o cual solución, déjalo para más tarde y búscala siempre en la página oficial de su creador. Si tu equipo ha sido gravemente infectado o comprometido, deja de usarlo y pide ayuda.
  • Tercera Capa de Seguridad: Si usas habitualmente un Router, comprueba que está debidamente actualizado, y que su firewall o cortafuegos está activo y bien configurado. Es un componente esencial. Pide ayuda si hace falta.
  • Cuarta Capa de Seguridad: Comprueba que el cortafuegos o Firewall de Windows nativo de XP., o no-nativo de Windows si lo tuvieses, está activado y funciona sin problemas. Dado que XP no recibirá más actualizaciones, su firewall o cortafuegos es inherentemente inseguro, además nunca ha protegido las conexiones salientes, sólo las entrantes. Aunque es mejor que no usar nada. Si algún software cortafuegos de terceros 'potente' y confiable todavía soporta XP, plantéate anular el nativo de Windows y usar ese otro. Una opción interesante es Comodo Firewall.
  • Quinta Capa de Seguridad: Algunos Servicios de Windows son innecesarios e incluso obsoletos, para un uso bastante general, por lo que pueden también ser deshabilitados. Previamente hay que investigar qué dependencias tienen con otros servicios, controladores o procesos, para no interferir en el correcto funcionamiento del S.O. -esto ya se contempla en este Tutorial, y en el siguiente-. Cuantos menos procesos/servicios estén ejecutándose por defecto, más seguro será tu XP.
  • Sexta Capa de Seguridad: Especialmente si tienes instalado XP Professional, haber aplicado otras medidas importantes en el Editor de Directivas de Grupo. Para un S.O. desactualizado, la protección que ofrece esta capa es relativa, pero tiene todavía su fuerza. Es posible instalar/activar el Editor de Directivas de Grupo en XP Home -hay algún tutorial en Internet-.


¿Puertos? ¿Y eso qué es?


Los puertos son la manera cómo tu equipo se comunica con el exterior, tanto con Internet como con otros ordenadores de una supuesta Intranet o red interna. Son las 'puertas' a través de las cuales se envía y se recibe información con servidores de Internet o con equipos de una red local. Hay hasta 65535 puertos disponibles para comunicarse con el exterior en todo equipo con Windows instalado, de hecho en cualquier equipo con un S.O. 'estándar'. Esto viene de una normativa universal, en la que cada puerto tiene una función concreta determinada por la IANA (Agencia de Asignación de Números de Internet). (Si sientes curiosidad, aquí puedes verlos/descargar el listado en formato .txt).

P.e. está el puerto 21, que por defecto sirve para explorar o descargar archivos de un servidor vía FTP. O el puerto 80, usado por defecto -aunque puede ser otro- por cualquier navegador para cargar y mostrar el contenido HTTP de cualquier página web. O el 25 y el 110, que suelen usarse para programas/clientes de correo electrónico SMTP y POP3, respectivamente. O el puerto 531, usado para conexiones IRC tipo 'chat'. Y así muchos otros.


Asegurando un S.O. inseguro conectado a la Red: ¿por qué es esencial cerrar los puertos abiertos?


Por cuestiones como las siguientes:
  1. Un puñado de esos puertos dejados abiertos en Windows son especialmente sensibles a ser atacados por robots maliciosos que pululan por Internet, los cuales buscan colarse directamente al corazón de tu S.O. y causar serios daños sin apenas darte cuenta. Este problema no atañe sólo a XP, sino que viene perpetuándose de forma crónica en versiones posteriores de Windows. Los cortafuegos mejorados de estas nuevas versiones palian el defecto. Si añadimos la protección de un router con cortafuegos incorporado, al que solemos conectarnos la mayoría de veces, ocurre que la gente no percibe que en sí mismo se trata de un grave defecto. (En el S.O. Mac OS X de Apple prácticamente todos los puertos vienen cerrados por defecto, lo que parece una decisión mucho más sensata).
  2. Todos los puertos dejados abiertos por Windows corresponden a procesos o servicios en ejecución, vulnerables u obsoletos, muchos de los cuales no has usado ni vas a usar jamás, y que están 'esperando' comunicar algo o que 'algo' exterior se comunique con ellos. (Ver más abajo el apartado dedicado a los cortafuegos y su eficacia). Para cerrar un puerto, casi siempre hay que 'terminar' el proceso o servicio al que está asociado.
  3. Para un usuario 'promedio' o particular, la mayoría de esos procesos o servicios pueden desactivarse sin problemas, sin que el funcionamiento general del equipo ni las habituales tareas relacionadas con Internet se resientan.
  4. Naturalmente, el cierre de puertos no te protegerá de que tú mismo hagas clic en algún enlace peligroso y aceptes la descarga e instalación de software malintencionado. Así que usa también, y mucho, la prudencia y el SENTIDO COMÚN, que debe ser SIEMPRE la primera barrera de seguridad. Recuerda que XP es YA un sistema operativo obsoleto y vulnerable, aunque pueda seguir usándose por un tiempo aplicando medidas sensatas, como las ofrecidas en este Tutorial.
  5. La seguridad frente a las amenazas de la Red no fue una prioridad para los ingenieros que desarrollaron Windows XP. Este S.O. es la auténtica base para el desarrollo de las versiones posteriores de Windows, ya sea Vista, o la versión 7, o la versión 8, o incluso la versión 10. Realmente desde entonces Microsoft NO ha aportado NADA significativamente NUEVO o REVOLUCIONARIO en el campo de la computación para el usuario medio de Windows, más allá de ciertas mejoras en cuanto a fiabilidad y seguridad -algunas bastante dudosas- y otras en cuanto a interfaz -algunas bastante inútiles, y otras crónicamente defectuosas, como algunas relativas al shell o interfaz de Windows Explorer-.
  6. Aplicando las medidas sugeridas en este Tutorial, más un mínimo sentido común por parte del usuario, XP puede usarse todavía POR UN TIEMPO con cierta seguridad. Las principales limitaciones serán la falta de nuevas actualizaciones del propio S.O. y la falta de soporte, sobre todo en cuanto a controladores para dispositivos 'de nueva hornada' y en cuanto al software de terceros.

Haz invisible tu XP en la Red


Si sigues usando Windows XP para Internet, de lo que aquí se trata es de hacer a tu equipo indetectable ante esos cientos o miles de amenazas automatizadas que pululan por la Red y que, esencialmente, buscan atacar sigilosamente los puertos dejados abiertos en tu sistema. Lo que no es ninguna broma.

Lo dice un reputado experto en sistemas informáticos:
"El aseguramiento o refuerzo de un sistema, no importa de qué tipo sea, pasa SIEMPRE por reducir el número de sus servicios de red que están en escucha."
Servicios de red = puertos.


¿Qué hay de los cortafuegos basados en software y los de los routers? ¿Y de los antivirus y antimalwares?


Quizás pienses que, por tener XP su propio cortafuegos o firewall, o por estar usando habitualmente un router con cortafuegos incorporado, o por tener el mejor 'antibichos' del mercado ya estás bien protegido, y que el manejo de los puertos se realiza automáticamente de forma 'inteligente' y segura para tí. Pero creer ciegamente en esto es un error.

Cada día más compañías desarrolladoras de cortafuegos, antivirus, antimalware, etc. dejan de dar soporte a XP. Pero es que ninguno de estos pretendidos productos para la seguridad de tu equipo logró nunca 'atraparlo' todo.

Para complicar las cosas, existen softwares maliciosos y muy sigilosos que, de repente, desactivan funciones esenciales de los mejores cortafuegos o 'suites' de seguridad sin que te enteres.

Respecto al firewall nativo de XP: sin duda será objeto de nuevos tipos de ataques, ante los que YA NO tendrá protección actualizada. Su principal e histórico defecto, sin embargo, es que NUNCA bloquea las conexiones salientes: si tu equipo recibe un archivo infectado, y éste empieza a atacar a otros equipos externos o a comunicarse con quién-sabe-dónde enviando quién-sabe-qué información personal tuya, el firewall de XP no lo detecta.

Y respecto a los cortafuegos de los routers, no todos son igual de eficaces, o puedes tenerlo desactivado sin saberlo, o por un tiempo puede no funcionar bien -p.e. tras una actualización defectuosa del firmware del aparato-. También hay routers muy 'caprichosos'. Algunos vienen por defecto bastante desprotegidos, o pueden manipularse fácilmente desde el exterior de la línea, incluso via WiFi. O bien tienes instalado XP en un portátil, y un día te encuentras con que tienes que conectarlo a un módem que no lleva cortafuegos incorporado.


¿Hay realmente un problema con la seguridad de los puertos en Windows XP?

Por lo que vengo comentando, yo diría que SÍ. Algunos expertos lo han descrito de este modo:

"Tal como viene por defecto, Windows conectado a Internet es todavía un objetivo fácil para muchos softwares maliciosos. Es como si dejases tu coche aparcado en un barrio indeseable de tu ciudad, con las puertas desbloqueadas, la llave en el contacto y una nota en el cristal que dijese 'Por favor no me robes'".
"Un director 'senior' de Microsoft para la 'computación confiable', dijo que cuando se diseñó XP la compañía se centró sólo en las mayores expectativas del usuario: 'lo que los clientes demandaban era la compatibilidad de red y la compatibilidad de aplicaciones.' La cuestión de la seguridad en red, por tanto, no fue prioritaria."

¿Usar XP como usuario con derechos limitados?


Corren todavía por ahí cientos decenas de consejos acerca de cómo 'asegurar' Windows XP, sobre todo frente a Internet. P.e. dejar de usarlo como 'usuario con derechos de Administrador' -que así es como viene por defecto-; sin embargo esta aproximación no es realista: resulta que en este modo tienes restricciones un tanto absurdas, p.e. no puedes ni siquiera configurar o ajustar el reloj del sistema. Y muchos de los programas que instalas en tu equipo presuponen que tienes permisos de administrador para ejecutarlos...

Que no.

Que ninguno de esos consejos es tan eficaz como el cierre de TODOS los puertos.

Mi experiencia personal


Soy un usuario veterano de Windows desde sus primeras versiones, así como de sus más recientes. Pese a que se han escrito miles y miles de líneas acerca de cómo hacer más seguro Win XP, en base a mi experiencia -y la de bastantes expertos- afirmo que la mejor y más tranquilizadora acción, y de lejos, es cerrar y hacer invisibles al exterior todos los puertos de ese Windows. 

Todavía uso a veces mi viejo equipo con XP para ejecutar ciertos programas -algunas aplicaciones geniales sólo funcionan con este S.O.- o incluso para consultar algo por Internet, con todos los puertos cerrados a cal y canto, como usuario Administrador, y hace tiempo que dejé de usar cualquier tipo de 'antibichos' residente, es decir siempre monitorizando -en un equipo viejo y limitado esto le quita parte de sus recursos-. Tengo en mi equipo con XP cinco o seis 'antibichos' en modo no-residente, sólo para analizar puntualmente y bajo demanda archivos descargados. Muy de vez en cuando hago un escaneo 'online' con las principales webs de 'antibichos'. Hace mucho tiempo que mi equipo no ha sufrido infección alguna. NADA.

(¿Qué 'antibichos' no-residentes uso en mi viejo equipo con XP? Ahí van: ESET SysInspector, de ESET; Emsisoft Emergency Kit, de Emsisoft; Comodo Cleaning Essentials, de Comodo; Avira PC Cleaner, de Avira -tiene su truco dejarlo en modo no-residente-; Spybot Search & Destroy, de Safer-Networking -puede configurarse en modo 'portable' o no-residente; TDSSKiller, de Kaspersky, clásica y buena herramienta. Personalmente dejé de utilizar MBAM o 'MalwareBytes AntiMalware', por ser últimamente demasiado intrusivo pese a disponer de una buena base de datos. Naturalmente tengo otros programitas para comprobaciones puntuales relacionadas con la seguridad.)


Antes de empezar


  • Deberás tener instalado Windows XP más la mega-actualización SP3, más TODAS las actualizaciones posteriores a SP3. -p.e. mediante Windows Update, que estarán disponibles hasta mediados de 2015-. Habiendo finalizado oficialmente el soporte para XP, esto es imperativo.
  • Te aconsejo usar XP como usuario perteneciente al grupo de administradores, es decir NO COMO USUARIO 'INVITADO' o con derechos limitados. Pese a que tiempo atrás se aconsejase, usar XP como usuario limitado limitará la funcionalidad general del sistema y de las aplicaciones, dicho de otro modo, tu comodidad y productividad.
  • IMPORTANTE: Si tu equipo es una Estación de trabajo, es decir forma parte de un dominio o una red local de ordenadores o Intranet basada en MS Windows, o usas ciertos dispositivos en red -como una impresora remota- en principio NO te conviene aplicar las siguientes acciones. PERO... debo advertirte que seguir usando software de Microsoft para mantener una red de equipos bajo XP -la cual a su vez se conecta a Internet- es ALTAMENTE inseguro en términos de seguridad. Muchas de tales funcionalidades pueden lograrse igualmente mediante software distinto al de MS. Si necesitas que tu PC con Windows XP 'se comunique' con otros dispositivos en tu hogar a través de un router, p.e. con un smartphone, no debería haber grandes problemas: puedes usar p.e. el protocolo FTP desde/hacia el Explorer de Windows y, del lado del smartphone, alguna aplicación que habilite un servidor FTP -como p.e. ES File Explorer desde el S.O. Android-.
  • Algunos de los pasos a seguir sólo son aplicables a XP Professional, por referirse a funcionalidades que no están en la versión XP Home de este S.O. Por ejemplo: Escritorio remoto, Directivas de grupo, Acceso y compartición de archivos en un dominio de Windows Server, o Acceso a otros perfiles de usuario. Si tienes XP Home, no te preocupes: si ves algún paso que no puedes aplicar, sigue adelante con el siguiente.

Toma precauciones


  • Antes de iniciar los pasos de este Tutorial, crea un Punto de Restauración del Sistema (Inicio->Todos los programas->Accesorios->Herramientas del sistema->Restaurar sistema). Si algo fuese mal -improbable si sigues bien sus Pasos- podrás revertir el sistema al estado previo a los cambios. Si tuvieses desactivado el Servicio de Restauración del Sistema -quizás para ahorrar recursos o espacio-, puedes bajarte e instalarte la aplicación ERUNT, que hará una copia de seguridad del Registro de Windows, la cual puedes restaurar ante cualquier imprevisto. Léete sus instrucciones, están en inglés pero son sencillas.
  • Es aconsejable que IMPRIMAS esta página, si es que tienes una impresora conectada a tu equipo. O bien que la guardes como página completa, para abrirla en tu navegador predeterminado sin que estés conectado. O que la guardes como archivo pdf -p.e. usando el complemento Print pages to PDF para el navegador Firefox (clica en el botón Versions y elige la última disponible)-. La idea es tener la información siempre a mano sin necesidad de conectarte a Internet, ya que algunos de los siguientes pasos re-ajustan precisamente parámetros de tu conexión a la Red.

Entendiendo las acciones que vas a realizar:


  • En algunos de los siguientes Pasos, la expresión cmd se refiere a la acción de abrir una ventana de comandos o 'símbolo del sistema' de Windows: Inicio->Ejecutar->escribe cmd y dale a la tecla Intro. En la ventana que se abre teclea las órdenes que te indique en cada caso, y dale cada vez a Intro para que se ejecuten. Para cerrar la ventana, escribe exit y dale a Intro.
  • En otras ocasiones, deberás modificar algún valor de alguna clave del Registro de Windows. Lo ideal es que YA estés familiarizado/a con su funcionamiento. ¿Cómo se abre el Registro de Windows?: Inicio->Ejecutar->escribe regedit32.exe->dale a la tecla Intro.
  • También a veces tendrás que modificar el 'Tipo de Inicio' de ciertos Servicios de Windows, a los cuales accedes así: Inicio->Panel de control->Herramientas administrativas->Servicios, o bien así: Inicio->Ejecutar->teclea services.msc->tecla Intro. Haciendo doble-clic en un servicio, te abre por defecto su pestaña General, en la que puedes modificar el 'Tipo de Inicio' (p.e. de Automático a Deshabilitado). Los cambios en cualquiera de estos Servicios se traducen en modificaciones del Registro, de ahí la importancia de hacer previamente una copia de seguridad de éste.
  • En otras pocas ocasiones deberás modificar el estado por defecto de un controlador de Windows -suelen ser archivos con extensión .sys-. Esto se consigue o bien modificando una entrada del Registro, o bien mediante el Administrador de dispositivos, al que se accede vía Icono Mi PC (Escritorio)->Clic derecho->Propiedades->Pestaña Hardware->Botón Administrador de dispositivos.
  • Es indicado seguir los siguientes pasos en el orden en que los presento. La razón es porque algunos servicios o controladores dependen a su vez de otros, por lo que es mejor deshabilitar en primer lugar aquellos que les preceden en jerarquía. Sin embargo, si sigues un orden diferente te aparecerán advertencias en el Visor de Sucesos de tu Windows, que deberían desaparecer al completar el Tutorial.

Comprueba AHORA los puertos de tu XP con netstat


Puedes -y deberías- saber en cualquier momento QUÉ puertos de tu sistema XP están abiertos y 'a la escucha'. Experiméntalo varias veces: 1) con tu equipo no-conectado a Internet, 2) tu euipo sólo conectado, y 3) conectado y con el navegador abierto.

Abre una ventana de comandos o cmd, teclea en ella  netstat -ban  y dale a Intro (en la siguiente imagen tomada de Internet se usa netstat -ano; a partir del SP2, netstat -ban  te da más información). Verás algo parecido a ésto:

Se trata de un equipo conectado a Internet pero sin el navegador abierto -en la columna Estado sólo consta listening, que significa a la escucha, no hay ninguna conexión establecida o 'established'. Un equipo, por cierto, que no ha aplicado el cierre de los puertos vulnerables.

Siguiendo con esa imagen, en la columna Proto -protocolo o tipo de puerto- verás que hay puertos TCP y UDP abiertos (sólo ten presente que los puertos UDP son bastante más vulnerables que los TCP). En la columna Dirección local fíjate en lo que va después de los dos puntos, p.e.: TCP 0.0.0.0:445 te dice que el equipo local está dispuesto a aceptar CUALQUIER dirección IP a través del puerto 445. O bien UDP 192.168.1.36:137 te dice que el puerto 137 está abierto para cualquier dirección IP encaminada a través de la tarjeta de red del equipo. Y así varios otros. Mal asunto, pues se trata de puertos vulnerables.

La columna Dirección remota indica a qué dirección IP de Internet se ha conectado o está dispuesto a conectarse el equipo. Para el tipo de puertos TCP la dirección 0.0.0.0:0 significa que están abiertos a cualquier dirección IP externa, lo mismo que la expresión *:* para los puertos UDP.

Técnicamente la cosa tendría más matices.

Esta otra imagen (aquí sí, usando netstat -ban) es de un equipo conectado a Internet, con su navegador Firefox abriendo algunos puertos (normal y confiable, si confías en Firefox) y todos los demás cerrados por defecto, EXCEPTO el puerto 1025, ligado a un proceso distinto, que está en listening o 'a la escucha':


Debajo de Conexiones activas, la columna Dirección remota te dice que cualquier dirección IP (0.0.0.0:0) PUEDE ser aceptada a través del puerto abierto (1025) indicado en la correspondiente Dirección local (en realidad aceptará cualquier dirección IP externa, pero sólo si el proceso que abre ese puerto lo considera adecuado). Ese puerto 1025, aun sin estar conectado, permanece abierto por el proceso alg.exe, (ver más abajo cómo desactivarlo).

Fíjate que en las demás líneas hay otros puertos abiertos por el navegador, en este caso firefox.exe. Si cierras este último, comprobarás que a su vez también se cierran. Éste es el comportamiento ideal de cualquier puerto: ser abierto sólo cuando lo pide un proceso legítimo, y cerrarse inmediatamente cuando ese proceso deja de estar activo. Por cierto, el puerto 443 corresponde al protocolo https, es decir que en el navegador se abrieron algunas pestañas con página 'segura'. Ningún problema.

Resumen de uso del comando netstat:


  • El comando netstat -ban es una valiosa herramienta incluida en tu Windows XP. Te indica QUÉ puerto deja abierto QUÉ proceso, indicándote el nombre completo de este último -loquesea.exe-.
  • Aunque los puertos UDP sean más inseguros que los TCP, el objetivo DEBE SER que NO exista NINGÚN puerto abierto o 'a la escucha' en tu equipo, ni UDP ni TCP, ya sea antes o después de conectarte a Internet.
  • Una dirección del tipo 0.0.0.0 significa que potencialmente se está aceptando CUALQUIER DIRECCIÓN IP EXTERNA para el puerto indicado en Dirección local de esa conexión.
  • Una Dirección remota del tipo 127.0.0.1 significa que esa conexión sale o va a parar al equipo local o 'localhost', es decir tu propio ordenador, el cual por sí mismo tiene exactamente esa dirección IP. Tu equipo con XP realiza conexiones consigo mismo, aunque te suene raro. En principio no hay de qué preocuparse. Más o menos significa que esa dirección remota 'muere' en una 'no-dirección' de tu equipo local.
  • Una dirección del tipo 192.168.1.loquesea es también local: la asigna la tarjeta de red de tu equipo para comunicarse con 'algo' externo a ella dentro de una misma red local. Generalmente apunta al router que utilizas para conectarte a Internet. Lo cual implica la protección de puertos mediante firewall o cortafuegos incorporado en ese router. Que no siempre es 100% segura, como comenté antes.
  • Bajo la columna Estado, si en algún momento ves la expresión TIME_WAIT, significa que tu equipo reconoce esa conexión como activa, pero no usada en ese momento, es decir que probablemente está a punto de cerrarse.

Cerrando puertos en XP. Paso a paso

¿Pero no hay ningún software que lo haga todo?


Existían básicamente dos programitas que afirmaban cerrar la mayoría de puertos dejados abiertos en XP. Aunque no lo hacían con todos los que incluyo más abajo en el apartado 'Cerrando los puertos dinámicos por encima del 1024'.

Esos dos programas son 'Windows Worms Doors Cleaner' y 'Seconfig'. No los aconsejo, pero si te interesa quizás aún puedes encontrarlos en la web de Softpedia. Ambos afirman hacer lo mismo -Seconfig parece cerrar más puertos, pero WWDC parece más eficiente en lo que hace-, sin embargo aplican medidas distintas, de modo que si cierras puertos con uno y luego ejecutas el otro, éste te dirá que algún puerto aún no está cerrado. Apenas existe documentación acerca de los cambios que realizan en el Registro. Tanto uno como otro realizan, en algún punto, acciones innecesarias o incluso equivocadas. Tales contrariedades son suficiente motivo para evitar estos programas y realizar todo el proceso a mano.

En fin...

Me he esforzado en que cada uno de los siguientes pasos incluya sólo lo estrictamente necesario, y lo he intentado repasar todo en mi propio equipo. Disculpa si encuentras algo reiterativo o superfluo: nadie es perfecto.

"Si inhabilito x, pero dejo y, ¿seguiré siendo capaz de hacer z?" La mayoría de veces el profesional al que se le pregunta intentará cambiar de tema o salirse de él lo más rápido posible a fin de evitar mostrar su ignorancia...

Intenta seguirlos en el orden aquí presentado, aunque no es  imprescindible con tal que los realices todos...


Paso 1 - 'Purgando' elementos de tu Conexión de Red:


Esto va a allanar el camino en bastantes aspectos: iniciará la desactivación de los muy vulnerables protocolos NetBios y SMB, evitará que cualquier programa indeseable los reinicie sin tu consentimiento, así como la aparición de futuros avisos de error en el Visor de sucesos.

AVISO (y no lo repetiré más): Se entiende que has renunciado a mantener cualquier red local de ordenadores usando software de MS.

Pasos a seguir:

Vamos a desactivar un cliente y un protocolo de red innecesarios:
  1. Vete a Inicio->Panel de control->Conexiones de red->selecciona Conexión de área local o bien el nombre de la conexión que sueles utilizar->Propiedades->selecciona Cliente para redes Microsoft->dale al botón Desinstalar->No reinicies todavía el equipo aunque te lo pida->Continúa con el punto siguiente:
  2. En la misma ventana de Propiedades dentro de Conexiones de red, selecciona Compartir impresoras y archivos para redes Microsoft->dale al botón Desinstalar->en principio, tras esto, en esa ventana deberían quedar tan sólo el Protocolo Internet (TCP/IP), el servicio Programador de paquetes QoS, y quizás también el protocolo Microsoft TCP/IP versión 6. Estos dos últimos también los puedes desinstalar sin problemas, o al menos desactivar (desmarcando su casilla correspondiente)->Acepta y cierra->Si te pide reiniciar el sistema, no lo hagas aún.
  3. Repito: en la ventana de Propiedades de Conexiones de red debe quedar al menos necesariamente el ítem Protocolo Internet (TCP/IP), de lo contrario no dispondrás de conexión a Internet.
  4. Ahora sí, reinicia el equipo si antes se te pidió.
  5. Vete a Inicio->Panel de control->Firewall de Windows->pestaña Excepciones->comprueba que la casilla Compartir archivos e impresoras esté desmarcada.

Observarás que en Servicios de Windows ya no aparecen los siguientes -han sido deshabilitados 'radicalmente'-: el servicio Servidor, el servicio Estación de trabajo y otro que depende de éstos, denominado Examinador de equipos.

Bien.

Otros servicios que a su vez dependían de estos tres tampoco aprecerán más: se trata del servicio Inicio de sesión en red y del servicio Servicio de Alerta-.

Perfecto, actualmente ya no sirven para gran cosa. Esto evitará la aparición de errores administrativos en el Visor de sucesos de Windows.

Paso 2 - Puertos 137, 138 y 139:


Los puertos del 137 al 139 -los hay de tipo TCP y UDP- están relacionados con la funcionalidad NetBios sobre TCP/IP, la cual es -al menos como la implementó MS y ellos mismos reconocen- obsoleta, altamente insegura y probablemente no necesitas para nada. En realidad, el agujero de seguridad dejado abierto por MS en los puertos 137, 138 y 139 es histórica y legendariamente TREMENDO, hasta tal punto que hoy día la mayoría de ISP o Proveedores de Servicios de Internet ya bloquean por ti desde sus 'centrales' el uso de tales puertos, dado que MS no ha hecho prácticamente NADA por solucionar este fatal 'agujero negro' en sus S.O. Windows.

Pasos a seguir:

  1. Vete a Inicio->Panel de control->Conexiones de red.
  2. Clic derecho sobre el icono de la conexión que usas para Internet. Dale a Propiedades.
  3. Un clic sobre Protocolo Internet (TCP/IP) para seleccionarlo.
  4. Dale al botón Propiedades.
  5. En la pestaña General que te aparece, dale a Opciones avanzadas.
  6. Vete a la pestaña WINS.
  7. Marca o selecciona Deshabilitar NetBios sobre TCP/IP.
  8. Dale a Aceptar cada vez para salir de todas las ventanas abiertas.
  9. Si en Conexiones de red tuvieses más de una conexión creada, repite los pasos anteriores para todas ellas.
  10. Vete a Servicios de Windows (ya explicado más arriba). Busca el servicio Ayuda de NETBIOS sobre TCP/IP y cambia su 'Tipo de Inicio' a Deshabilitado.
  11. Reinicia el sistema.
  12. Comprueba, en cmd y mediante netstat -ban, sin conectar y conectado, que esos puertos ya no aparecen para nada.

Paso 3 - Puerto 445:


Corresponde a la funcionalidad denominada Servicios de Directorio de Microsoft, también al proceso lsass.exe, encargado de gestionar todos los procesos de autentificación del sistema y su seguridad local, pero fundamentalmente al protocolo SMB (Server Message Block), también conocido como 'Samba', que en teoría MS sacó para sustituir al obsoleto NetBios, (ver el apartado anterior sobre los puertos 137 a 139), y que a su vez se demostró también altamente inseguro (¿alguien dijo incompetencia, querido Bill Gates...?). SMB es lo que permite compartir archivos e impresoras en una red sobre el protocolo TCP.

La horrorosa vulnerabilidad con NetBios y los puertos 137 a 139 se intentó solventar con este nuevo protocolo SMB, pero de hecho MS no hizo más que empeorar las cosas: sin proponérselo -o quién sabe- añadió un nuevo puerto vulnerable a ser atacado por una inmensa legión de robots maliciosos, el 445. Cualquier malware con las herramientas adecuadas para penetrar a través de este puerto 445, podía además seguir penetrando en el equipo del usuario a través de la vulnerabilidad no resuelta de NetBios. Un desastre, vamos.

Debes saber que el hecho de permanecer este puerto abierto en infinidad de equipos corriendo Windows -y no sólo XP- ha dejado -y de hecho sigue dejando- la puerta abierta a ser infectado por el fatídico virus o gusano Sasser, o el Conficker, entre muchos otros.

Por éstas y otras razones de seguridad más técnicas, ¡cerrar el puerto 445 en XP es un asunto de IMPORTANCIA CRÍTICA!

La buena noticia es que el puerto 445 también puede cerrarse sin demasiado esfuerzo, aunque te toca leer un poco.

Hay 2 opciones de pasos a seguir. Es IMPORTANTE que lo leas bien, si no quieres quedarte sin conexión a Internet:
  • La Opción 1 es la que probablemente usarás. Es para el caso de que necesites que el servicio Cliente DHCP siga activo (lo más habitual), de modo que tu equipo acepte la IP que el router le asigna automática y aleatoriamente en cada conexión, que es como suele venir por defecto. Haz una comprobación: te vas a menú Inicio->Panel de control->Conexiones de red->selecciona la conexión que sueles usar->clic derecho->Propiedades->selecciona Protocolo Internet (TCP/IP)->botón Propiedades. Si te aparece marcado Obtener una dirección IP automáticamente, que es como viene por defecto, sin duda debes aplicar esta Opción 1.
  • La Opción 2 es para el caso de que hayas deshabilitado el servicio Cliente DHCP y, por tanto, hayas configurado las propiedades de tu Conexión de red para no usar automáticamente cualquier IP que te da el router, sino siempre la misma (no se trata de la IP pública que sale a Internet). Haz una comprobación: te vas a menú Inicio->Panel de control->Conexiones de red->selecciona la conexión que sueles usar->clic derecho->Propiedades->selecciona Protocolo Internet (TCP/IP)->botón Propiedades. Si te aparecen una serie de parámetros (números) para Dirección IP, Máscara de subred, Puerta de enlace predeterminada y para las DNS, eso es que tú o alguien configuró la conexión de este modo. Ningún problema. Seguramente el servicio Cliente DHCP está deshabilitado -y si no lo está, ya lo puedes deshabilitar ahora mismo, a no ser que otra conexión de red en tu equipo lo necesite- y puedes aplicar perfectamente esta Opción 2.

Ahí van los pasos para cada una de estas 2 opciones:

Pasos a seguir:


Opción 1:

Por la razón ya expuesta, necesitas mantener activo el servicio Cliente DHCP, que depende a su vez del controlador NetBios a través de Tcpip y, por tanto, NO puedes ni debes aplicar la Opción 2. Sin embargo, puedes igualmente cerrar el puerto 445 deshabilitando sólo el protocolo SMB:
  1. Abre el Registro de Windows y vete a esta clave: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Parameters
  2. En la semi-ventana de la derecha, haz clic derecho sobre un espacio en blanco y selecciona Nuevo->Valor DWORD. Ponle el siguiente nombre: SMBDeviceEnabled. Deja el apartado de Datos en 0x00000000(0), tal como está. Cierra.
  3. Reinicia el sistema.
  4. Comprueba mediante cmd y netstat -ban que el puerto ya no sigue abierto.

Opción 2:

No necesitas que el servicio Cliente DHCP siga activo, ni el controlador del cual éste depende: NetBios a través de Tcpip.

(Los primeros 3 pasos hacen lo mismo que el 4. Son distintas formas de hacer lo mismo)
  1. Vete al Administrador de dispositivos (ya explicado más arriba). Despliega el menú Ver y selecciona Mostrar dispositivos ocultos.
  2. Localiza, dentro de Controladores que no son Plug and Play, uno denominado NetBios a través de Tcpip.
  3. Clic derecho sobre él->Propiedades->pestaña Controlador. En el recuadro Inicio, cambia el Tipo (de inicio) de Sistema (como viene por defecto) a Deshabilitado. Dale a Aceptar. Cierra.
  4. OPCIÓN ALTERNATIVA A LOS 3 ANTERIORES PASOS: Abre el Registro de Windows->Vete a la clave HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\ ->busca el nombre de valor Start y cambia sus datos a '4' (0x00000004).
  5. Dado que no necesitas el servicio Cliente DHCP, vete a Servicios de Windows y comprueba que está deshabilitado. Si no lo estaba, hazlo ahora.
  6. Reinicia el sistema.
  7. Comprueba mediante cmd y netstat -ban que el puerto ya no está abierto.

Paso 4 - Puertos 500 y 4500:


El puerto UDP 500 corresponde al Protocolo IKE o 'Internet Key Exchange' (un protocolo de intercambio de claves encriptadas para Internet, actualmente obsoleto). Junto con el puerto UDP 4500, están ligados al servicio denominado Servicios IPSEC (son las siglas para Protocolo de Seguridad de Internet), también obsoleto e inseguro. Se cierran sin grandes complicaciones desactivando este último.

IMPORTANTE: Si usas un software VPN basado en IPSEC -no deberías-, probablemente no funcionará tras aplicar este paso, así que quizá no debas cerrar este puerto. Lo mejor, en mi opinión, es cerrarlo y cambiarte a otro VPN más confiable.

Pasos a seguir:

  1. Para cerrar este puerto, es tan sencillo como ir a Servicios de Windows (ver más arriba) y deshabilitar Servicios IPSEC. Ya sabes:
  2. Vete a ese servicio->Propiedades->pestaña General->cambias el 'Tipo de Inicio' a Deshabilitado.
  3. Reinicia el sistema.
  4. Comprueba mediante cmd y netstat -ban que el puerto ya no sigue abierto.

Paso 5 - Puerto 1900:


Corresponde al servicio/proceso SSDPSRV, denominado por los desarrolladores de Microsoft con el 'bonito y diáfano' nombre de Servicio de descubrimientos SSDP. Tiene que ver con UPnP, es decir con la compartición de impresoras en Red, también con el proceso/servicio que gobierna el puerto 5000, descrito a continuación de éste. Cerrar el puerto 1900 es relativamente sencillo.

Pasos a seguir:

  1. Vete a Servicios de Windows.
  2. Localiza el servicio denominado Servicio de descubrimientos SSDP.
  3. Cambia su 'Tipo de inicio' a Deshabilitado.
  4. No cierres aún la ventana de Servicios de Windows...
  5. ATENCIÓN: Otros 2 servicios dependen de éste para funcionar. No te preocupes, son también prescindibles. Uno de ellos, si no lo está ya, DESHABILÍTALO AHORA, de lo contrario te aparecerá un error en el Visor de sucesos de Windows. Es el siguiente:
    • Servicio de uso compartido de red del Reproductor de Windows Media
  6. El otro lo deshabilitarás en el Paso siguiente para cerrar el puerto 5000.
  7. Ahora sí, reinicia el sistema.
  8. Comprueba mediante cmd y netstat -ban que el puerto ya no está abierto.
  9. ¿TODAVÍA SIGUE ABIERTO el puerto 1900?: (Si después de este paso deshabilitaste el puerto 5000, y posteriormente también el servicio Mensajero, esto no debería ocurrir). Abre el Registro de Windows->Vete a la clave HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectPlayNATHelp\DPNHUPnP
  10. Localiza el siguiente valor o, si no existe, créalo (del tipo Valor DWORD): UPnPMode
  11. En la sección Información de valor o bajo la columna Datos, escribe o comprueba que existe el valor '2' (sin las comillas).
  12. Acepta. Cierra. Reinicia el sistema si hace falta. Comprueba mediante netstat -ban que el puerto se ha cerrado definitivamente.

Paso 6 - Puerto 5000:


Corresponde al servicio upnphost, denominado Host de dispositivo Plug and Play universal. Conocido también como UPnP. Básicamente se utiliza para compartir impresoras en red o en Internet, cosa que seguramente como usuario particular no has hecho ni harás nunca. Curiosamente, el propio FBI norteamericano, a través de su Centro Nacional de Protección de Infraestructuras, en un rarísimo episodio de solidaridad ciudadana llegó a aconsejar tanto a particulares como a empresas usuarios de Windows que deshabilitasen UPnP, por considerarlo altamente vulnerable. Poco después dejó de mencionarlo, pero fue como para tomar nota de lo 'gordo' que vieron que debía ser el agujero...

Diversas vulnerabilidades descubiertas desde hace más de 10 años por expertos en seguridad, que afectan a TODAS las versiones Windows, tienen que ver con el servicio UPnP. En principio parecería que cualquier Firewall de Windows es capaz de bloquear estos intentos de 'hackeo', pero dado que XP ya no será más actualizado, es imperativo cerrar los puertos 1900 y 5000. Resulta que UPnP, que no contempla el uso de ningún encriptado, se diseñó para la comunicación entre dispositivos de una red local, pero NUNCA para una red que a su vez estuviese expuesta al exterior -p.e. a Internet-. Los fabricantes de routers, por desgracia, parecen no tomar todavía nota de esto y siguen implementando y dejando activo por defecto su propio servicio UPnP.

Y es que, si en tu casa o trabajo usas un router, es probable que incluya también un servicio UPnP en su menú de configuración. Te aconsejo desactivarlo, lo que además hará que el firewall o cortafuegos de ese router funcione más eficazmente. Igualmente es buena idea impedir su uso en programas o dispositivos que incluyan su opción, como Skype, consolas de juego o algunos de intercambio P2P. (Existen sitios web que ofrecen realizar chequeos de cuán expuesto está tu router a vulnerabilidades UPnP).

Pasos a seguir:

En principio, si seguiste los pasos para cerrar el anterior puerto 1900 del modo que indiqué, probablemente se habrá deshabilitado también este servicio y, con ello, habrás cerrado el puerto 5000 que upnphost dejaba abierto.

Sin embargo no lo des por seguro. Comprueba lo siguiente:
  1. Vete a Servicios de Windows.
  2. Localiza el servicio Host de dispositivo Plug and Play universal.
  3. Doble-clic sobre él->pestaña General.
  4. Comprueba que su 'Tipo de Inicio' está establecido en Deshabilitado. Si no lo está, deshabilítalo ahora.
  5. Este último paso viene a completar la desactivación de UPnP en Windows XP: Vete a Inicio->Panel de control->Firewall de Windows->pestaña Excepciones->Comprueba que la casilla para Entorno UPnP está desmarcada.
  6. Reinicia el sistema si hace falta, es decir si este servicio no estaba ya en Deshabilitado.
  7. Si usas un router en tu casa o trabajo y tienes acceso a su configuración, considera desactivar su funcionalidad UPnP, como he mencionado antes. Esto no atañe a la configuración de Windows, pero muchos expertos en seguridad lo aconsejan.

Paso 7 - Puerto 3389:


No siempre verás este puerto abierto, pero es importante anular la posibilidad de que llegue a estarlo. Tiene que ver con el componente/servicio de Windows denominado Terminal Server. Y con la funcionalidad Escritorio Remoto (Remote Desktop en inglés), que viene a ser lo mismo con el nombre cambiado.

Terminal Server o Remote Desktop permite registrarse en tu equipo local desde un cliente o equipo remoto, o al revés, a otro equipo remoto desde tu equipo local, y acceder a la interfaz gráfica de ese escritorio. Claramente es muy inseguro permitir conexiones remotas a/desde un S.O. desactualizado, así que lo ideal es desactivar ambos.

Algunas cuestiones que puedes plantearte:

Paso 7.1: ¿Vienes usando Escritorio Remoto de Windows? ¿Hay que reforzarlo, o buscarle alternativas?

Todavía hay quien usa, y bastante, esta funcionalidad. Si es tu caso, no apliques los siguientes pasos, plantéate instalar un firewall más eficiente que el nativo de XP, y desde él permite sólo que se acceda remotamente desde una IP fija concreta. El equipo remoto deberá disponer de una IP fija, o al menos un estrecho rango de IPs concretas. Pero esto puede ser todavía inseguro...

Representa que hay un modo más seguro de seguir usando Escritorio Remoto en XP, incluso Microsoft tiene una versión nueva para éste. Si te interesa, te paso alguna información para empezar a 'tirar del hilo' (en inglés):

http://www.mobydisk.com/techres/securing_remote_desktop.html
http://www.petri.com/download_rdp_client_60.htm

También hay quien afirma que únicamente es seguro utilizar el Escritorio Remoto nativo de XP mediante una conexión VPN. Cuestión de investigarlo.

Aparte existen alternativas no-MS que ofrecen, e incluso mejoran -dicen- lo que hace Escritorio Remoto en Windows. Usándolas deberías poder deshabilitar este último, tal como propongo. Destaco estas tres, creo que todas ellas gratuitas para usuarios particulares:

- NeoRouter
- NoMachine
- TeamViewer

Paso 7.2: Deshabilitando Escritorio Remoto.

AVISO: Perderás la función de Cambio Rápido de Usuario

Si en tu equipo con XP tienes varias cuentas de usuario y sueles cambiar de una a la otra, quizás tampoco te interese desactivar Terminal Server/Escritorio Remoto, ya que el cambio rápido de usuario depende de Servicios de Terminal Server. Yo te sugiero que SÍ lo hagas, aunque con ello pierdas esta funcionalidad bastante secundaria, por las razones dadas al principio de este artículo. (Más info sobre este puerto y sus vulnerabilidades)

Pasos a seguir:

  1. Vete a Servicios de Windows.
  2. Localiza el servicio denominado Servicios de Terminal Server. Clic derecho->Propiedades.
  3. Comprueba que su 'Tipo de Inicio' está establecido en Deshabilitado. Si no lo está, deshabilítalo ahora.
  4. Ya puestos, localiza también el servicio Registro remoto. Clic derecho->Propiedades. Cambia su 'Tipo de inicio' a Deshabilitado si aún no lo estaba.
  5. Como he mencionado, hay otro servicio que depende de Terminal Server para funcionar. Se trata de Compatibilidad de cambio rápido de usuario. Localízalo y cambia su 'Tipo de Inicio' a Deshabilitado, para evitar errores en el 'Visor de sucesos' de Windows. (¿Qué hacía este servicio? Como su nombre indica, permite cambiar de un usuario a otro dentro de tu equipo, sin tener que reiniciar el S.O. y sin que se cierren -teóricamente- las aplicaciones que tenías abiertas en el usuario previo).
Toca ahora aplicar otra acción para desactivar del todo Escritorio Remoto y, ya de paso, Asistencia Remota, ambas funciones consideradas hoy altamente inseguras en XP:
  1. Vete al Icono Mi PC->botón derecho Propiedades. Se abrirá el cuadro de Propiedades del sistema.
  2. Vete a la pestaña Remoto. Desmarca ambas casillas, la de Asistencia remota y la de Escritorio remoto, si no lo están ya. Acepta y cierra.
Finalmente, es importante revisar que el cortafuegos o Firewall de Windows funcione correctamente (aunque sólo bloquee las conexiones entrantes) y no permita más conexiones a través de estos servicios:
  1. Vete a Inicio->Panel de control->Firewall de Windows->en la pestaña General, comprueba que está Activado. Lo ideal sería marcar también la casilla No permitir excepciones (deberías marcarla si tu equipo es portátil y utilizas conexiones públicas o no-confiables), pero si estás en una conexión confiable y has dado permiso a alguna aplicación, p.e. de intercambio P2P para usar algún puerto concreto, no la marques.
  2. Vete a su pestaña Excepciones, comprueba que las casillas para Escritorio remoto y para Asistencia remota están desmarcadas. Si no, hazlo ahora.
  3. Ya de paso, todavía dentro de la pestaña Excepciones, comprueba que en el listado de Programas y servicios no aparece ninguna aplicación extraña. Si ves alguna que no conoces ni te suena de nada, márcala y elimínala (si es de algún programa instalado que habías olvidado, no te preocupes, cuando vuelvas a usarlo el Firewall volverá a pedirte su desbloqueo).
Modo paranoico: Lo siguiente no es necesario, pero si no usas ni vas a usar nunca Escritorio Remoto, puedes desinstalarlo como componente del S.O. Windows. No es mala idea:
  1. Vete a Inicio->Panel de control->Agregar o quitar programas.
  2. En el panel lateral, clica en Agregar o quitar componentes de Windows.
  3. Localiza el componente Terminal Server y desmárcalo. 
  4. Dale a Siguiente->Acepta y cierra.
  5. Reinicia el sistema si se te pide.

Sea como fuere, el puerto 3389 ya no debería aparecer al comprobarlo mediante el comando netstat -ban.

Paso 8 - Puerto 123:


Corresponde al servicio denominado Horario de Windows.

Es una lástima tener que cerrar este puerto -considerado inseguro por muchos expertos-, ya que es de los pocos que PARECERÍA ofrecer una funcionalidad realmente interesante para cualquier usuario: mantener el reloj del sistema siempre 'en hora' cuando se conecta a la Red, es decir sincronizado con algún servicio horario externo y exacto.

(Algunos equipos, sobre todo antiguos, tienden a adelantarse o retrasarse más de unos cuantos segundos tras varios ciclos de apagados o reinicios, o tras permanecer varios días apagados).

Alguien ha hecho notar que, aunque mantengas este servicio funcionando, da igual que cambies la URL del 'servidor horario' con el que quieres que tu equipo se sincronice: tu Windows siempre se conectará a un servidor de Microsoft, generalmente del tipo time.windows.com. ¿Un defecto del sistema? Quién sabe...

En fin, es importante mantener el reloj horario del sistema lo más cerca posible de la hora exacta, de lo contrario algunos servicios que ofrecen ciertas webs -como Windows Update- pueden no funcionar del todo bien, aunque tampoco hay que obsesionarse: en general esto sólo ocurre con desfases de más de entre uno y cinco minutos.

No es una solución ideal, pero existen en Internet alternativas para, de vez en cuando, comprobar que el reloj de tu sistema está más o menos sincronizado -en general no importan unas decenas de segundos de desfase- con la hora exacta. P.e. tienes la web Hora.es. Puedes colocar un enlace a esa web, p.e. en la barra de marcadores de tu navegador, y sincronizar manualmente el reloj de tu equipo de vez en cuando.

Pasos a seguir:

  1. Para cerrar este puerto, pues ya sabes: te vas a Servicios de Windows y localizas y deshabilitas Horario de Windows:
  2. Clic derecho sobre el servicio Horario de Windows->Propiedades->pestaña General->cambias el 'Tipo de Inicio' a Deshabilitado.
  3. Reinicia el sistema.
  4. Comprueba mediante cmd y netstat -ban que el puerto ya no sigue abierto.

Paso 9 - Puerto 135:


Es parte de la funcionalidad RPC o Llamada a Procedimiento Remoto, el cual es de hecho un Servicio ESENCIAL de Windows que NUNCA debe ser deshabilitado. También está ligado a los protocolos DCOM, que permiten a ciertos usuarios y otros equipos ejecutar programas en tu computadora, y que probablemente como usuario particular nunca llegues a necesitar. Sin embargo el dichoso puerto 135, dejado por Windows siempre abierto o en estado de escucha o 'listening', es para algunos el más difícil de cerrar.

Ha sido -y sigue siendo- la puerta de entrada del fatídico virus o gusano Blaster, entre otras amenazas que pululan la Web.

En realidad lo que sucede es que no existe buena información al respecto, o es muy confusa, por lo que muchos supuestos expertos recomiendan equivocadamente cerrarlo mediante un cortafuegos. La misma Microsoft, ya en 2003, reconocía el alto riesgo inherente a dejar el puerto 135 abierto, pero no sacó ningún parche para solventarlo -cosa incomprensible-: en vez de eso recomendó simplemente bloquearlo mediante cortafuegos. Lo cual, si bien no deja de ser un consejo positivo, no asegura un 100% de protección -cualquier cortafuegos basado en software puede fallar, desactivarse sin darte cuenta, ser 'hackeado' por algún virus o malware, o de repente dejar de soportar XP como es el caso actualmente-.

Pero es que SÍ que existe un modo de cerrar definitivamente el puerto 135, y no es demasiado complejo. Veamos...

Pasos a seguir:

(Hay una primera tanda de pasos, del 1 al 7. Si tras aplicarlos el puerto 135 sigue abierto y/o a la escucha, completa el proceso aplicando los pasos del 8 al 10).
  1. Abre el Registro de Windows: menú Inicio->Ejecutar->teclea regedit32.exe->dale a la tecla Intro->se abrirá el Registro de Windows.
  2. Vete a esta clave del Registro: HKEY_LOCAL_MACHINE\Software\Microsoft\OLE
  3. En la columna de la derecha, localiza el valor 'EnableDCOM' y modifica sus datos, que probablemente están por defecto en 'Y'. En vez de esos pones 'N' (sin las comillas). Comprueba también que los valores 'EnableDCOMHTTP' y 'EnableRemoteConnect' de esa misma columna estén en 'N'. Acepta.
  4. Vete a la siguiente clave del Registro: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\RPC
  5. Doble clic sobre el valor de cadena múltiple llamado 'DCOM Protocols'. Elimina SÓLO estos dos valores dentro del cuadro 'Value data', y dale después a Aceptar:
    ncacn_ip_tcp REG_SZ rpcrt4.dll
    ncacn_ip_udp REG_SZ rpcrt4.dll
  6. Reinicia el sistema.
  7. Abre cmd y comprueba, tecleando netstat -ban, que el puerto ya no aparece ni en escucha ni conectado.
  8. ¿TODAVÍA SIGUE ABIERTO...?: Si tras aplicar lo anterior y reiniciar el sistema, el puerto 135 sigue 'a la escucha', regresa a ese valor de cadena múltiple 'DCOM Protocols' y elimina TODOS los valores dentro del cuadro 'Value data'. Acepta. (Pueden ser valores similares a los siguientes, incluyendo aquí los dos anteriores:
    ncacn_ip_tcp REG_SZ rpcrt4.dll
    ncacn_nb_tcp REG_SZ rpcrt4.dll
    ncacn_np REG_SZ rpcrt4.dll
    ncacn_ip_udp REG_SZ rpcrt4.dll
    ncacn_http REG_SZ rpcrt4.dll
    )
  9. Reinicia el sistema.
  10. Abre cmd y comprueba, tecleando netstat -ban, que el puerto 135 ya no aparece ni a la escucha ni conectado.

Paso 10 - Cerrando los puertos 'dinámicos' a partir del 1024:


Los puertos entre el 0 y el 1024 son denominados 'puertos regulados': significa que cada uno de ellos tiene una función definida y universal. De hecho al principio de este artículo/tutorial ya mencioné que existe un organismo, denominado IANA, que en su momento designó esta franja de puertos y definió para qué sirve cada uno.

Tanto en Windows como en otros sistemas, existen ciertos procesos o servicios que por defecto abren puertos hacia la Red -ya sea interna o externa-, pero resulta que no abren por defecto ninguno de los puertos específicamente regulados, sino simplemente el primer 'puerto disponible' que encuentran. Es decir el primer puerto dentro del rango de 'puertos efímeros' o 'dinámicos' o 'no-regulados', los cuales empiezan más allá del 1024, concretamente a partir del puerto 1025, éste incluido.

Por eso, porque estos servicios/procesos pueden abrir cualquier puerto por encima del 1024, no los defino aquí por el número de puerto, sino por los servicios/procesos en sí mismos. Generalmente pueden desactivarse sin más, y en un S.O. Windows son sobre todo los siguientes:

Paso 10.1 - Coordinador de transacciones distribuidas de Microsoft:


Alguien dice que este servicio, además de cualquier nº de puerto aleatorio por encima del 1024, también tiende a usar el puerto 3372. Da igual, vamos a deshabilitarlo y 'se acabó' el problema.

Pasos a seguir:

  1. Para cerrar cualquier puerto que este proceso deja abierto, es tan sencillo como ir a Servicios de Windows (ver más arriba) y deshabilitar el servicio Coordinador de transacciones distribuidas de Microsoft. Ya sabes:
  2. Te vas a ese servicio->Propiedades->pestaña General->cambias el 'Tipo de Inicio' a Deshabilitado.
  3. Reinicias el sistema.

Paso 10.2 - Servicio de puerta de enlace de capa de aplicación:


El proceso detrás de este servicio es alg.exe. Hasta que se aplicó el SP2 de XP, era necesario para el funcionamiento del cortafuegos o Firewall de Windows, pero dado que ya tienes el SP3 instalado -requisito indispensable para seguir este Tutorial- más todas las actualizaciones posteriores, es ya un servicio prescindible.

Pasos a seguir:

  1. Para cerrar cualquier puerto que este proceso deja abierto, de nuevo es tan sencillo como ir a Servicios de Windows (ver más arriba) y deshabilitar el servicio Servicio de puerta de enlace de capa de aplicación. Ya sabes:
  2. Te vas a ese servicio->Propiedades->pestaña General->cambias el 'Tipo de Inicio' a Deshabilitado.
  3. Reinicias el sistema.

Paso 10.3 - Mensajero (o Messenger)


No hay que confundir este servicio denominado Mensajero (en inglés Messenger o Windows Messenger) correspondiente al proceso msmsgs.exe, con otras aplicaciones o programas de la misma Microsoft (la verdad es que podrían haberse esmerado más en la denominación de todas estas aplicaciones), p.e. con MSN Messenger, o con Live Messenger. No son lo mismo. Tampoco tiene nada que ver con tu navegador web ni con ningún programa de correo electrónico.

Mensajero es un servicio básicamente ligado a una red interna de ordenadores. Transmite 'cierto' tipo de mensajes a través del servicio de alertas entre los 'equipos cliente' y el servidor, p.e. para que el administrador de una red envíe alertas administrativas a los otros usuarios de esa red, ya sea para informar cuando se completa un trabajo de impresión, o para informar cuando falla la alimentación del equipo y se pasa a un sistema de alimentación ininterrumpida (SAI). Todo esto según la propia Microsoft.

Después del SP2 de XP, este servicio en teoría ya viene deshabilitado por defecto. En teoría. El problema es que, de seguir activo, otros programas 'no nativos' de Windows encuentran la manera de usar o 'secuestrar' el servicio Mensajero, fácilmente además. P.e. tu antivirus para enviarte molestas notificaciones. O incluso desde ciertas webs mientras navegas en Internet, para enviarte publicidad igualmente molesta.

Si anteriormente cerraste los puertos 137, 138 y 139, más el 445, más el 135, ya tienes parte del trabajo hecho, dado que Mensajero se apoya en parte sobre NetBIOS sobre TCP/IP. De hecho, según Microsoft, el servicio Mensajero usa nada menos que los puertos UDP 135, 137 y 138, más los puertos TCP 135, 139 y 445, más un número de puerto dinámico, es decir, por encima del 1024. Vaya con el Mensajero éste...

Pasos a seguir:

  1. Puedes cerrar los puertos que este proceso aún deje abiertos yendo a Servicios de Windows y deshabilitando, en este caso, el servicio Mensajero. Ya sabes cómo:
  2. Te vas a ese servicio->Propiedades->pestaña General->cambias el 'Tipo de Inicio' a Deshabilitado.
  3. Vamos ahora a desinstalar del todo este servicio de tu sistema: vete a Inicio->Ejecutar y copia/pega lo siguiente (sin las comillas): 'RunDll32 advpack.dll,LaunchINFSection %windir%\INF\msmsgs.inf,BLC.Remove'
  4. Le das a Aceptar, esperas a que finalice lo que sea que haga, y listos...
  5. Reinicias el sistema.

Paso 10.4 - Cliente DNS


El servicio Cliente DNS -denominado técnicamente Dnscache- no se corresponde con ningún proceso localizable en Windows. Tiene que ver con el Directorio Activo o Active Directory, el cual más adelante (en un próximo artículo/tutorial) verás que es inseguro y que es mejor desactivar. Deshabilitando este servicio ahora, realizas parte del trabajo.

Por otro lado, la gestión de las DNS (resolución de nombres de dominio de la Internet) del lado de Win XP no es muy eficiente: este servicio incluye una 'caché' que no siempre se vacía cuando debiera. Lo cual constituye otra razón de peso para desactivar de una vez por todas el servicio Cliente DNS en XP y, en vez de eso, confiar la gestión de las DNS mientras 'navegas' a tu ISP o Proveedor de Servicios de Internet, que cada vez son más eficientes, o a algún otro proveedor de DNS de terceros -DynDNS, Comodo, Google,... esto ya es a gusto y confianza de cada uno-.

Pasos a seguir:

  1. Como de costumbre, te vas a Servicios de Windows y haces doble-clic sobre el servicio denominado Cliente DNS (o bien clic derecho sobre él->Propiedades).
  2. En la pestaña General cambias el 'Tipo de Inicio' a Deshabilitado.
  3. Se suele aconsejar también desactivar la 'caché de socket' utilizada por el servicio Dnscache de XP. Ya he mencionado que, a muchos usuarios, esta caché de DNS manejada por el sistema no les funciona adecuadamente. Por lo tanto, es prescindible. Para ello:
  4. Abre el Registro de Windows y vete a la clave HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters\
  5. En la semi-ventana de la derecha, haz clic derecho sobre un espacio en blanco y selecciona Nuevo->Valor DWORD. Ponle el siguiente nombre: MaxCachedSockets. Deja el apartado de Datos en 0x00000000(0), tal como está. Cierra.
  6. Reinicia el sistema.

Anexo 1.- Ya has cerrado todos los puertos de tu XP. ¿Aún hay procesos que abren puertos...?


Si mediante el comando netstat -ban aún descubres que hay procesos que abren puertos de tu sistema hacia el exterior, y ves que no se trata de tu navegador ni del bucle de retorno de Firefox -explicado en el siguiente Anexo-, quizá es que:
  • No has seguido bien los pasos de este Tutorial.
  • Tienes instalado algún programa que está siempre funcionando y que abre algún puerto inesperado. Ve a Inicio->Ejecutar->escribe 'msconfig' (sin las comillas)->Aceptar->Ya dentro de la Utilidad de configuración del sistema, en su pestaña Inicio, desmarca todo aquello que consideres prescindible: probablemente tu sistema seguirá funcionando sin problemas, puede que hasta más fluido. El programa CCleaner es incluso más efectivo para esta tarea: Menú Herramientas->Inicio->pestaña Windows->desactivas (no borres si no estás segurísimo) lo que te parezca superfluo.
  • Estás infectado con algún tipo de malware o virus, el cual ha penetrado en tu sistema hasta el nivel de conseguir hacer esto, e intenta conectarse con quién-sabe-qué-o-dónde. Toma nota del nombre del proceso que abre ese puerto -en principio ya te lo indicará netstat -ban, e inicia a partir de ahí una investigación en Internet para hallar la forma de desinfectarlo.
  • He pasado por alto algún detalle (como apunté antes, en general no existe información clara, concisa y coincidente sobre el cierre de puertos en XP). Coméntamelo e intentaré solventarlo. Nadie es perfecto y el tema es complejo...

Sea como fuere, te recomiendo leer en este mismo blog el artículo Re-asegurando y aligerando tu Windows XP, (paciencia, estoy a punto de publicarlo) que viene a ser un poco la continuación de éste.


Anexo 2.- ¿Usas el navegador Firefox? ¿Qué es el 'bucle de retorno' de conexión local? ¿Por qué deja siempre abiertos un par de puertos?


Una vez que has cerrado todos los puertos de tu Windows XP, y si usas Firefox como navegador, es interesante observar lo siguiente, usando de nuevo el comando netstat ahora que has aprendido a usarlo. Al parecer esto no sucede con ningún otro navegador, y ya te adelanto que no está claro si se trata de un defecto o una virtud. Tratándose de Mozilla/Firefox, no parece un problema. Pero...

Cuando lo abres, Firefox establece siempre una conexión 'en bucle' (loopback en inglés) con tu propio equipo local, es decir con esa IP 'que no va a ninguna parte': 127.0.0.1. Una conexión, sin embargo, que no está precisamente 'a la escucha', sino 'establecida' (established en inglés). Y que permanece así mientras Firefox sigue abierto. Observa esta instantánea de lo que arroja netstat -ban en un equipo con todos sus puertos cerrados y con Firefox abierto pero sin ser usado durante un minuto:



Te darás cuenta que Firefox mantiene en todo momento una conexión abierta con el equipo local (que tiene siempre la IP 127.0.0.1). Y que se trata de una conexión en 'bucle de retorno' -así lo llaman los desarrolladores de Firefox- porque se conecta hacia/desde esa misma IP local mediante los mismos dos puertos. Va del uno al otro, y del otro al uno; o bien de una Dirección local a una Dirección remota. Ésta simplemente devuelve la comunicación -sea lo que sea lo que contenga- de nuevo a la Dirección local. Es por tanto un bucle, que no parece expuesto a ninguna dirección remota externa. En el caso de la imagen, la cosa sucede entre el puerto 4936 y el 4937, pero esos puertos suelen diferir cada vez que cierras y abres Firefox.

En principio la cosa no parece preocupante, dado que como mucho va a parar a 127.0.0.1, la dirección de red local 'que no va a ninguna parte'. Pero más de uno se pregunta para qué necesita Firefox mantener una conexión constante en bucle con el propio equipo donde está instalado. Yo he decidido no preocuparme del asunto (sigo confiando en Firefox, que es prácticamente el único navegador de código libre y abierto y con una potente comunidad de colaboradores). Los desarrolladores de Firefox lo mencionan, pero no lo aclaran:

Conexión de bucle de retorno:
Una conexión de bucle de retorno (a la dirección IP 127.0.0.1) puede hacerla Firefox en máquinas que no son Unix
-tipo Windows y Mac-. En este caso, el navegador se está comunicando con él mismo y se recomienda no bloquear esta comunicación. Consulta el bug 100154 para obtener más información.
(El bug 100154 está en inglés, data de 2001/2002 y, la verdad, no aclara nada. La expresión 'se recomienda' sugiere que simplemente confiemos en ellos. Vale.)


Anexo 3.- Insospechada ventaja añadida al cierre de puertos en XP


Cerrando todos los puertos de XP, es posible que hayas cerrado a la vez alguno de los 'backdoors' o puertas traseras a través de los cuales Windows envía datos personales TUYOS hacia MS, o hacia quién-sabe-dónde.

No hay forma de comprobarlo, pero la existencia de esas 'puertas traseras' está más que constatada por reputados expertos en seguridad informática.

Quién sabe...

7 comentarios:

  1. gracias por esta información , me ha sido de gran ayuda de nuevo gracias.......

    ResponderEliminar
  2. Esta información es oro para cualquier usuario de xp. Muchas gracias

    ResponderEliminar
    Respuestas
    1. Disculpa la demora.
      Con todo esto de los actuales y turbios ciberataques a nivel global, no me cabe ninguna duda de que lo más y mejor que podemos hacer para prevenirnos es cerrar todos los puertos de nuestro computador.
      Espero publicar en breve una entrada para aplicarlo a Win 7 y Win 8, pero ya te adelanto que los procedimientos son prácticamente los mismos que los descritos aquí.
      ¡Gracias por comentar!

      Eliminar
  3. Gracias viejo, buena explicacion!

    ResponderEliminar
  4. Muy buena guia, personalmente me a sido de gran ayuda,aunque yo uso windows 10 i al parecer los puertos 135/445 no se cierran de ninguna manera, siempre continuan a la escucha apesar de haber aplicado todos los pasos.

    Tengo una duda que tal vez podrias resolverme:es normal el uso que el sistema use los puertos 49664,49665,49666,49667,49668,4971?esos puertos mas los ya dichos 135 y 445 son los que estan a la escucha.
    Un saludo i gracias por la guia una vez mas.

    ResponderEliminar
    Respuestas
    1. Hola y bienvenido/a Jasyaryar (¿de qué supernova eres?)

      Lamento no haber probado todavía los pasos del tutorial con Win 10. Jaja... La verdad es que no me manejo aún con Win 10.

      Espero que, a no tardar, recicle yo este tutorial pero esta vez para Win 7 hasta Win 10, y mejor resumido. Con tanta amenaza cibernética global supongo que a más de uno le interesará. Tu info es igualmente valiosa para mí.

      (Si alguien puede aportar algo al respecto de cómo cerrar los puertos 135 y 445 en Windows 10, en esta sección de comentarios, ¡bienvenido será!)

      Vamos a ver. Respecto a los otros puertos que mencionas que el sistema abre y están a la escucha, y viendo la numeración consecutiva que muestran, probablemente corresponden a una única aplicación concreta. Revisa cuáles se inician automáticamente al iniciarse tu S.O. Desactiva cualquiera sospechosa, una cada vez, y haz el test de puertos en cada ocasión, puede que así la localices.

      Eso sería preocupante sólo si la aplicación causante fuese maliciosa. Si en cambio es p.e. un navegador confiable, deja de serlo y entra dentro de lo normal, sobre todo si al cerrar ese navegador/aplicación los puertos tb se cierran.

      Lo dicho en el tutorial: el objetivo es esencialmente cerrar/ocultar los puertos que por defecto los S.O. dejan abiertos por defecto, lo cual incluye unos cuantos fijos por debajo del 1024, y otros tantos dinámicos por encima (los propios de Windows no suelen estar muy por encima).

      Habría aquí una consideración secundaria o de fondo, que algunos expertos se hacen: ¿es en realidad cualquier S.O. Win una especie de macro-virus?

      Saludos

      Eliminar

Resssopla aquí tu pregunta, tu respuesta, tu duda o tu fantasía...