Actualizado el 14-01-2007
versión para imprimir
¿Qué es un troyano?
Un troyano es un cualquier programa "disfrazado" bajo la apariencia de otra
aplicación inofensiva (una utilidad, un juego ...)
Aunque hay muchos tipos de
codigo malicioso, como virus, que pueden ocultarse de esta forma, y por tanto
son troyanos, aqui empleamos el término para referirnos a las back doors,
puertas traseras abiertas inadvertidamente en nuestro PC que posibilitan que sea
controlado de forma remota por otra persona.
Estos troyanos constan de dos partes, el Servidor y el Cliente: el PC se comunica con el exterior por medio de puertos. Varios de ellos estan reservados para las comunicaciones mas usuales (irc, navegación, correo), pero quedan otros libres. Si un programa es capaz de abrir puertos libres, y dejarlos en posición de escucha, y si este programa es controlable de forma remota, tenemos un "troyano".
El "Servidor" es la parte que se manda a la víctima, y que se encarga de abrir y dejar a la escucha un puerto del PC, a traves del cual el atacante tendrá acceso a la máquina.
Por su parte, el "Cliente" es la parte que retiene el atacante, y es el programa que se conecta al puerto que el Servidor dejó abierto, solicita que se realice la conexión y después comienza a transmitir información.
Los puertos que se dejan a la escucha generalmente son altos, es decir puertos que pasan del número 500 o el 1000, para garantizar que ningún otro programa pueda estar usándolos y cancelar la conexión del troyano.
Usualmente los troyanos (la parte del servidor) nos llegaran bajo apariencia de otra aplicación inofensiva y al ejecutarse se instalan de forma inadvertida, siendo capaces de detectar cuando estamos conectados a la red, e incluso avisar (por mail, icq) al atacante.
El grado de acceso a nuestro ordenador que proporciona un troyano es variable, y suele incluir la posibilidad de listado y visualizado de ficheros; acceso a las unidades de almacenamiento (la famosa apertura de la puerta del CD) y del ratón, visualización de nuestra pantalla, transferencia y borrado de ficheros etc.
PRECAUCIONES
Es esencial observar unas cautelas esenciales durante nuestra permanencia en
la red:
a) No ejecutar programas provenientes de fuentes desconocidas
(chistes, animaciones, etc.).
b) Instalar un antivirus o programa específico
con detección de virus troyanos, Back Orifice y similares.
c) hacer de vez en
cuando un scan a los puertos de nuestro ordenador para ver cuales estan
abiertos.
d) vigilar los procesos que arrancan desde el inicio con msconfig y
las conexiones abiertas con netstat.
MSCONFIG
El troyano, una vez instalado, se ejecuta en cada inicio del PC y permanece a
la escucha. Si vamos el botón inicio | ejecutar y alli escribimos
msconfig se nos abrirá una ventana; dando en ella a la pestaña de
inicio nos saldrá una lista de todos los procesos que windows carga
al iniciarse. Es el primer sitio donde mirar en búsqueda de
troyanos.
Atención: el troyano no saldrá en la lista de tareas o
aplicaciones que se nos muestran con ctrl-alt-spr o
alt-tab.
NETSTAT
El netstat es un comando de DOS que facilita información sobre los puertos
del PC.
Se ejecuta desde una sesión de DOS, es decir, mientras estamos
conectados a internet, y en el momento en que pensamos que sufrimos una
intrusión, se pulsa el botón de inicio/programas/dos, y aparece una ventana con
el prompt de DOS: C:\WINDOWS\.
Tecleando "netstat" sin comillas, obtenemos una lista de las conexiones
abiertas. Cualquier conexión no prevista puede ser un troyano.
La orden
NETSTAT soporta diversos parámetros. Los más útiles son -a y -n, de tal forma
que si escribimos en una sesion DOS (boton inicio | programas | dos)
netstat -an veremos todas las conexiones y puertos a la escucha, en
formato numérico.
Búsqueda del ejecutable
Naturalmente, los programas exe introducidos en nuestro PC no suelen llevar
nombres como "troyano.exe", "Back_oriffice.exe", o "netbus.exe"., sino que
llevan nombres susceptibles de pasar desapercibidos, haciendonos pensar que se
trata de otra aplicación del sistema.
Cualquier antivirus moderno es capaz de
detectar y borrar los troyanos mas conocidos.
A continuación te indicamos
como puedes localizar y limpiar a mano los dos mas conocidos, BO y NETBUS.
Como siempre que se trata de actuar dentro del registro de windows, extrema
las precauciones
1.- BACK ORIFICE
Este troyano consta de un archivo ejecutable (*.exe) y una librería (*.dll), asi como de una entrada en el registro de windows. Su puerto por defecto es el 31337, si bien es posible configurarlo a gusto del atacante.
El programa se recibe principalmente como un ejecutable de cualquier tipo con una extensión aproximada de 122 Kb.
Lógicamente el atacante solo puede acceder a nuestro PC durante nuestra conexión a una red.
Para sacar provecho de este programa, el atacante debe conocer el número de IP de la máquina que hará de servidor, o victima. Pese a que esta IP suele ser dinámica, asignada en cada conexión (con las excepciones cada vez mas numerosas de conexiones adsl) el obtener el número de IP es sencillisimo cuando el usuario está en redes de chat (irc) o icq. Las últimas versiones de los troyanos se encargan ademas de avisar al atacante cuando la víctima se conecta a la red
El ejecutable principal del B.O. es el archivo BOSERVE.EXE, que puede tomar
cualquier otro nombre aleatorio. La libreria toma el nombre WINDLL.DLL y ambos
se ubican en el directorio c:|WINDOWS|SYSTEM.
El programa
genera una entrada en el registro para asegurarse su funcionamiento al encender
el pc: HKEY_LOCAL_MACHINE|SOFTWARE|Microsoft
|Windows|CurrentVersion|RunServices| nombre_del_BO_server
La forma de operar será eliminar esta entrada del registro. Reiniciar el
ordenador y borrar el server (su ruta y nombre nos lo indicaba la rama del
registro borrada) y la librería dll.
Pueden existir otros dos archivos
BOFILEMAPPINGKEY y BOFILEMAPPINGCON que almacenan capturas de teclado
La version 2.0 de Bach Orifice crea (en la rama del registro de windows ya
mencionada) una entrada con el siguiente
valor:Umgr32.exe=C:|Windows|System|Umgr32.exe e
b) NETBUS
El netbus utiliza por defecto los puertos 12345 y 12346, aunque puede ser configurado para acceder por otros puertos. La versión 2.0 abre el puerto 20034
Por defecto, el programa ejecutable del troyano se suele instalar en
c:/windows y su nombre puede ser patch.exe (v 1.60), sysedit.exe (v 1.50) y
explore.exe, siendo su tamaño de 462 a 483 Kb.
Ten cuidado si buscas
estos archivos en tu ordenador, porque hay varias aplicaciones que tienen
legítimos archivos patch.exe; explore.exe podria confundirse con el genuino
explorer.exe; windows trae un sysedit.exe en C:|windows|system. El
de netbus está en c:/windows. Y por ultimo, recuerda que puede haber sido
renombrado
Las ultimas versiones de netbus pueden crear algunos archivos
accesorios en nuestro sistema, como Access.txt, Patch.ini o IP.txt
Desinstalación de netbus
Localiza en el registro windows la siguiente
rama:HKEY_LOCAL_MACHINE|SOFTWARE|Microsoft|Windows|CurrentVersion|Run
En búsqueda de una entrada que puede tener cualquiera de los
siguientes aspectos:NetBus = "C:\WINDOWS\SYSEDIT.EXE"
SYSEDIT, "C:\windows\sysedit.exe /nomsg"
PATCH, "C:\windows\patch.exe /nomsg"
La version
netbus 2.0 se registra en la rama RunServices, como Netbus Server Pro.
Al
borrar esta rama nos aseguramos que no se cargue en memoria al reiniciar el PC;
reiniciamos y localizamos los archivos en la ruta indicada, y los borramos. Nos
aseguramos de vaciar despues la papelera de reciclaje.
NOTAS:
El nombre puede ser en principio cualquiera. Sin embargo cualquier
programa que lleve a continuacion una orden tipo /nomsg o /noadd (por ejemplo
C:\windows\patch.exe /nomsg) con toda probabilidad será netbus.