¿Qué es exactamente un troyano? ¿Cómo prevenirlo y cómo eliminarlo?
¿Qué es un caballo de Troya?
El caballo de Troya (en adelante, caballo de Troya) se llama "casa de Troya" en inglés. Su nombre proviene del caballo de Troya de la mitología griega. .
Es una herramienta de piratería basada en control remoto y tiene las características de ocultación y no autorización.
El llamado ocultamiento significa que para evitar que el troyano sea descubierto, los diseñadores del troyano utilizarán varios medios para ocultarlo, incluso si se descubre que el servidor está en peligro. infectado con el troyano, a menudo sólo puede mirarlo porque no puede determinar su ubicación específica, suspiró "Horse".
La llamada no autorización significa que una vez que el terminal de control está conectado al servidor, el terminal de control disfrutará de la mayoría de los derechos operativos del servidor, incluida la modificación de archivos, la modificación del registro y el control del mouse, teclado, etc., y estos El poder no lo proporciona el servidor, sino que lo roba a través del programa troyano.
Desde la perspectiva del desarrollo de un troyano, básicamente se puede dividir en dos etapas.
Al principio, cuando Internet todavía se basaba en la plataforma UNIX, se produjeron caballos de Troya. Las funciones de los programas de caballos de Troya en ese momento eran relativamente simples. A menudo incrustaban un programa en un archivo del sistema. utilizaba instrucciones de salto para ejecutar algunas funciones del caballo de Troya. Durante este período, la mayoría de los diseñadores y usuarios de caballos de Troya eran personal técnico y debían tener un conocimiento considerable de redes y programación.
A medida que la plataforma WINDOWS se hizo cada vez más popular, aparecieron algunos programas troyanos basados en operaciones gráficas. La mejora de la interfaz de usuario permitió a los usuarios operar troyanos con habilidad sin tener que tener demasiados conocimientos profesionales. Las intrusiones también se producen con frecuencia y, como las funciones de los caballos de Troya se han vuelto cada vez más perfectas durante este período, el daño al servidor también es mayor.
Así que los troyanos se han desarrollado hasta el día de hoy y han utilizado todos los métodos posibles. Una vez controlados por los troyanos, su computadora no tendrá ningún secreto.
En vista del enorme daño de los troyanos, los presentaremos en detalle en tres partes: principios, defensa y contraataque e información. Esperamos que todos comprendan a fondo los caballos de Troya como un caballo de Troya. método de ataque.
Principios
Conocimientos básicos
Antes de presentar los principios de los caballos de Troya, hay algunos conocimientos básicos de los caballos de Troya que debemos explicar de antemano, porque Hay muchos lugares a continuación. Mencione estos contenidos.
Un sistema troyano completo consta de una parte de hardware, una parte de software y una parte de conexión específica.
(1) Parte de hardware: la entidad de hardware necesaria para establecer una conexión troyana. Controlador: La parte que controla remotamente el servidor. Servidor: La parte controlada remotamente por el terminal de control. INTERNET: El terminal de control controla remotamente el servidor y es el operador de red para la transmisión de datos.
(2) Parte de software: el programa de software necesario para realizar el control remoto. Programa de control: El programa utilizado por el control para controlar remotamente el servidor. Programa caballo de Troya: Programa que se cuela en el servidor y obtiene sus permisos de funcionamiento. Programa de configuración de troyano: un programa que establece el número de puerto, las condiciones de activación, el nombre del troyano, etc. del programa troyano para ocultarlo más en el servidor.
(3) Parte específica de conexión: los elementos necesarios para establecer un canal troyano entre el servidor y el extremo de control a través de INTERNET. IP del controlador, IP del servidor: es decir, la dirección de red del extremo del control y del servidor, que también es el destino de la transmisión de datos por parte del troyano. Puerto final de control, puerto de caballo de Troya: es decir, la entrada de datos del extremo de control y del extremo del servidor. A través de esta entrada, los datos pueden llegar directamente al programa final de control o al programa caballo de Troya.
Principio del caballo de Troya
El proceso de uso de herramientas de piratería del caballo de Troya para llevar a cabo una intrusión en la red se puede dividir aproximadamente en seis pasos (consulte la figura a continuación para obtener más detalles). Seis pasos a continuación. Analicemos el principio de ataque del caballo de Troya.
1. Configuración del troyano
En términos generales, un troyano bien diseñado tiene un programa de configuración del troyano, que se utiliza principalmente para lograr las dos funciones siguientes: <. /p>
p>
(1) Disfraz de troyano: para ocultar el troyano lo mejor posible en el lado del servidor, el programa de configuración del troyano utilizará una variedad de métodos de disfraz, como modificar iconos, agrupar archivos, personalización de puertos, autodestrucción, etc. Hablaremos de esto en La información detallada se proporciona en la sección "Difusión de troyanos".
(2) Comentarios de información: el programa de configuración del troyano establecerá el método o la dirección de los comentarios de información, como la configuración de la dirección de correo electrónico, el número de IRC, el número de ICO, etc. para los comentarios de información. en "Los detalles de la información se proporcionan en la sección Comentarios.
2. Difusión de troyanos
(1) Métodos de propagación:
Hay dos formas principales de propagar troyanos: una es a través del CORREO ELECTRÓNICO, el extremo de control. Envíe el programa del caballo de Troya como un archivo adjunto en el correo electrónico. Siempre que el destinatario abra el archivo adjunto, el sistema estará infectado con el caballo de Troya; el otro es la descarga de software. nombre del proveedor de descarga de software. En cuanto al programa, después de la descarga, tan pronto como ejecute estos programas, el troyano se instalará automáticamente.
(2) Método de disfraz:
En vista de la nocividad de los troyanos, muchas personas todavía tienen una cierta comprensión del conocimiento de los troyanos, lo que tiene un cierto efecto inhibidor sobre la propagación de los troyanos. Esto es lo que los diseñadores de troyanos no quieren ver, por eso han desarrollado una variedad de funciones para disfrazar los troyanos con el fin de disminuir el estado de alerta de los usuarios y engañarlos.
(1) Modificar el ícono
Cuando ves este ícono en el archivo adjunto del E-MAIL, ¿crees que es un archivo de texto? Pero tengo que decirte, ¿esto? También puede ser un programa troyano. Ya existen caballos de Troya que pueden cambiar el ícono del programa servidor troyano a íconos de varios archivos como HTML, TXT, ZIP, etc. Esto es bastante confuso, pero actualmente no hay ningún troyano. Los caballos que cumplen esta función son raros y el disfraz no es impecable, por lo que no hay necesidad de estar alerta y sospechar todo el día.
(2) Archivos empaquetados
Este método de disfraz consiste en agrupar el caballo de Troya en un programa de instalación. Cuando se ejecuta el programa de instalación, el caballo de Troya ingresa secretamente al sistema. En cuanto a los archivos incluidos, generalmente son archivos ejecutables (es decir, EXE, COM y otros archivos).
(3) Visualización de error
Cualquier persona con algún conocimiento sobre caballos de Troya sabe que si no hay respuesta al abrir un archivo, probablemente se trate de un programa de caballo de Troya. El caballo de Troya también es consciente de este defecto y algunos troyanos han proporcionado una función llamada visualización de errores. Cuando el usuario del servidor abre el programa troyano, aparecerá un cuadro de mensaje de error como se muestra en la siguiente figura (que por supuesto es falso. El contenido del error se puede definir libremente y la mayoría de ellos se personalizarán con algo como "). ¡El archivo está dañado y no se puede abrir!" Cuando los usuarios del servidor creyeron que la información era cierta, el caballo de Troya invadió silenciosamente el sistema.
(4) Puertos personalizados
Muchos puertos troyanos antiguos están arreglados, lo que hace que sea más fácil determinar si el troyano está infectado. Simplemente verifique el puerto específico para conocer la infección. Qué tipo de troyano hay, por eso ahora muchos troyanos nuevos han agregado la función de personalizar el puerto. El usuario final del control puede seleccionar cualquier puerto entre 1024---65535 como puerto del troyano (generalmente no elija puertos por debajo de 1024), por lo que. que Determinar el tipo de troyano infectado trae problemas.
(5) Autodestrucción
Esta función es para suplir un defecto del caballo de Troya.
Sabemos que cuando un usuario del servidor abre un archivo que contiene un troyano, el troyano se copiará a sí mismo en la carpeta del sistema WINDOWS (directorio C:\WINDOWS o C:\WINDOWS\SYSTEM). En términos generales, el archivo troyano original y el archivo del sistema. El tamaño de los archivos troyanos en la carpeta es el mismo (excepto el troyano incluido con el archivo), por lo que el amigo que ha sido atacado por el troyano solo necesita encontrar el archivo troyano original en las cartas recibidas recientemente y en el software descargado. y luego vaya al archivo del sistema según el tamaño del troyano original. Simplemente busque archivos del mismo tamaño y determine cuál es un troyano. La función de autodestrucción del troyano significa que después de instalarlo, el archivo troyano original se destruirá automáticamente, lo que dificulta a los usuarios del servidor encontrar el origen del troyano. También es difícil eliminar el troyano sin ayuda. de herramientas de destrucción de troyanos.
(6) Cambio de nombre de los troyanos
Los nombres de los archivos de los troyanos instalados en la carpeta del sistema generalmente son fijos, así que simplemente siga algunos artículos sobre cómo eliminar troyanos y busque en la carpeta del sistema de acuerdo con la imagen Al buscar archivos específicos, puede determinar qué troyano ha sido atacado. Por lo tanto, muchos troyanos ahora permiten a los usuarios del control personalizar libremente el nombre del archivo troyano después de la instalación, lo que dificulta determinar el tipo de troyano con el que están infectados.
3. Ejecute el troyano
Después de que el usuario del servidor ejecute el troyano o el programa que lo incluye, el troyano se instalará automáticamente. Primero cópiese en la carpeta del sistema WINDOWS (directorio C:\WINDOWS o C:\WINDOWS\SYSTEM) y luego establezca las condiciones de activación del troyano en el registro, el grupo de inicio y el grupo que no es de inicio, para que el troyano pueda instalarse Eso es todo. Después de la instalación, puede iniciar el troyano. El proceso específico se muestra en la siguiente figura:
(1) Activar el troyano según las condiciones de activación
Las condiciones de activación se refieren a las condiciones de inicio. el troyano, que generalmente aparece en los ocho lugares siguientes:
1. Registro: abra las cinco claves principales denominadas Ejecutar y EjecutarServicios en HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\ y busque los valores de las claves. que puede usarse para iniciar el troyano.
2. WIN.INI: Hay un archivo de configuración win.ini en el directorio C:\WINDOWS Ábralo en modo texto. Hay comandos de inicio load= y run= en el campo [windows]. En general, la parte inferior está en blanco. Si hay un programa de inicio, puede ser un troyano. 3.SYSTEM.INI: Hay un archivo de configuración system.ini en el directorio C:\WINDOWS Ábralo en modo texto. Hay una línea de comando en [386Enh], [mic], [drivers32]. mando del caballo de Troya.
4.Autoexec.bat y Config.sys: estos dos archivos en el directorio raíz de la unidad C también pueden iniciar troyanos. Sin embargo, este método de carga generalmente requiere que el usuario del control establezca una conexión con el servidor y luego cargue el archivo con el mismo nombre que agregó el comando de inicio del troyano al servidor para sobrescribir estos dos archivos.
5.*.INI: El archivo de configuración de inicio de la aplicación. El extremo de control utiliza las características de estos archivos para iniciar el programa y carga el archivo preparado con el mismo nombre con el comando de inicio del caballo de Troya. el servidor para cubrir este archivo con el mismo nombre, de modo que se pueda lograr el propósito de iniciar el troyano.
6. Registro: abra HKEY_CLASSES_ROOT\file type\shell\open\command clave primaria y vea su valor de clave.
Por ejemplo, el troyano doméstico "Binghe" modifica el valor clave en HKEY_CLASSES_ROOT\txtfile\shell\open\command, cambiando "C:\WINDOWS\NOTEPAD.EXE 1" a "C:\WINDOWS\SYSTEM\SYXXXPLR.EXE" 1 ". En este momento, después de hacer doble clic en un archivo TXT, el archivo se abrió originalmente usando el Bloc de notas, pero ahora inicia un programa troyano. También cabe señalar que no sólo los archivos TXT, los troyanos se pueden iniciar modificando los valores clave de los comandos de inicio de HTML, EXE, ZIP y otros archivos. La única diferencia radica en la clave principal del "tipo de archivo". TXT es txtfile y ZIP es WINZIP, puedes intentar encontrarlo.
7. Archivo agrupado: para lograr esta condición de activación, primero el extremo del control y el extremo del servidor deben haber establecido una conexión a través del caballo de Troya, y luego el usuario final del control utiliza una herramienta de software para agrupar el archivo del caballo de Troya. con una aplicación y luego cargarlo en el servidor para sobrescribir el archivo original, de modo que incluso si se elimina el troyano, siempre que ejecute la aplicación incluida con el troyano, el troyano se instalará nuevamente.
8. Menú de inicio: También puede haber condiciones de activación para troyanos en la opción "Inicio --- Programa --- Inicio".
(2) Proceso de ejecución del troyano
Una vez activado el troyano, ingresa a la memoria y abre el puerto troyano predefinido para prepararse para establecer una conexión con el terminal de control. En este momento, el usuario del servidor puede escribir NETSTAT -AN en modo MS-DOS para verificar el estado del puerto. Generalmente, la computadora personal no tendrá puertos abiertos cuando esté fuera de línea. Si hay un puerto abierto, debe prestar atención. si está infectado con troyanos. Los siguientes son dos ejemplos del uso del comando NETSTAT para verificar el puerto después de que la computadora está infectada con el troyano:
Entre ellos, ① es el estado de visualización cuando el servidor y el extremo de control están conectados, ② es que el servidor y el extremo de control aún no han establecido una conexión muestran el estado en ese momento.
Al descargar software, enviar cartas, chatear en línea, etc., algunos puertos deben abrirse durante el proceso de Internet. Los siguientes son algunos puertos de uso común:
Entre (1)1. ---Puertos 1024: Estos puertos se denominan puertos reservados, que se utilizan especialmente para algunos programas de comunicación externos, como FTP usando 21, SMTP usando 25, POP3 usando 110, etc. Sólo unos pocos troyanos utilizan puertos reservados como puertos troyanos.
(2) Puertos serie superiores a 1025: al navegar por sitios web en línea, el navegador abrirá varios puertos serie para descargar texto e imágenes al disco duro local. Todos estos puertos son puertos serie superiores a 1025.
(3) Puerto 4000: Este es el puerto de comunicación de OICQ.
(4) Puerto 6667: Este es el puerto de comunicación de IRC. Además de los puertos mencionados anteriormente, básicamente se pueden excluir. Si descubre que hay otros puertos abiertos, especialmente puertos con valores relativamente grandes, debe sospechar si está infectado con un troyano, por supuesto, si el troyano tiene la función. de personalizar puertos, entonces cualquier puerto puede ser un puerto troyano.
4. Fuga de información:
En general, los troyanos bien diseñados tienen un mecanismo de retroalimentación de información. El llamado mecanismo de retroalimentación de información significa que después de que el troyano se instala exitosamente, recopilará información de software y hardware del lado del servidor e informará al usuario final de control a través de CORREO ELECTRÓNICO, IRC o ICO. La siguiente imagen es un correo electrónico típico de comentarios de información.
A partir de este correo electrónico podemos conocer cierta información de software y hardware del servidor, incluido el sistema operativo utilizado, el directorio del sistema, el estado de la partición del disco duro, la contraseña del sistema, etc. Entre esta información, la más importante es la IP del servidor, porque solo obteniendo este parámetro el extremo de control puede establecer una conexión con el extremo del servidor. Explicaremos el método de conexión específico en la siguiente sección.
5. Establecer una conexión:
En este apartado explicamos cómo se establece la conexión del troyano.
El establecimiento de una conexión troyana debe cumplir primero dos condiciones: en primer lugar, que el programa troyano esté instalado en el servidor, en segundo lugar, que tanto el terminal de control como el servidor deben estar en línea; De esta forma, el terminal de control puede establecer una conexión con el servidor a través del puerto troyano. Para facilitar la explicación, utilizamos diagramas para explicar.
Como se muestra en la figura anterior, la máquina A es el extremo de control y la máquina B es el servidor. Para que la máquina A establezca una conexión con la máquina B, debe conocer el puerto del caballo de Troya y la dirección IP de la máquina. B. Dado que el puerto del caballo de Troya es la máquina A, está configurada de antemano y es un elemento conocido, lo más importante es cómo obtener la dirección IP de la máquina B. Hay dos métodos principales para obtener la dirección IP de la máquina B: retroalimentación de información y escaneo de IP. El primero se introdujo en la sección anterior, por lo que no entraremos en detalles en el escaneo de IP. Debido a que la máquina B está equipada con un programa troyano, su puerto troyano 7626 está abierto, ahora la máquina A solo escanea en busca de hosts. con el puerto abierto 7626 en el segmento de dirección IP. Por ejemplo, la dirección IP de la máquina B en la imagen es 202.102.47.56. Cuando la máquina A escanea esta IP y descubre que su puerto 7626 está abierto, esta IP se agregará al. lista, luego la máquina A puede enviar una señal de conexión a la máquina B a través del programa de control del troyano. El programa troyano en la máquina B responderá inmediatamente después de recibir la señal. Cuando la máquina A reciba la señal de respuesta, abrirá un puerto 1031 inmediatamente. conectado al puerto troyano 7626 de la máquina B. En este momento, realmente se establece una conexión troyana. Vale la pena mencionar que escanear todo el rango de direcciones IP obviamente requiere mucho tiempo y es laborioso. En términos generales, el extremo de control primero obtiene la dirección IP del servidor a través de la retroalimentación de información. Dado que la dirección IP del acceso telefónico a Internet es dinámica. es decir, la dirección IP del usuario es diferente cada vez que accede a Internet. Sí, pero esta IP cambia dentro de un cierto rango. En la imagen, la IP de la máquina B es 202.102.47.56, por lo que el rango de cambio de la máquina. La IP de Internet de B es 202.102.000.000 --- 202.102.255.255, por lo que cada vez que finalice el control, simplemente busque este rango de direcciones IP para encontrar la máquina B.
6. Control remoto:
Una vez establecida la conexión troyana, aparecerá un canal entre el puerto de control y el puerto troyano, como se muestra en la siguiente figura.
Puerto de control El programa de control en el servidor puede usar este canal para contactar al programa troyano en el servidor y controlar remotamente el servidor a través del programa troyano. A continuación presentaremos los derechos de control específicos de los que puede disfrutar el terminal de control, que son mucho mayores de lo que cree.
(1) Robo de contraseñas: los troyanos pueden detectar todas las contraseñas en texto claro, * o almacenadas en caché en CACHE. Además, muchos troyanos también proporcionan funciones de grabación de pulsaciones de teclas, que registrarán cada pulsación del teclado en el. servidor, por lo que una vez que un caballo de Troya lo invade, la contraseña será fácilmente robada.
(2) Operación de archivos: el terminal de control puede eliminar, crear, modificar, cargar, descargar, ejecutar, cambiar atributos y otras operaciones en los archivos en el servidor a través del control remoto, que básicamente cubre WINDOWS Todos los archivos funciones de operación en la plataforma.
(3) Modificar el registro: el extremo de control puede modificar el registro del servidor a voluntad, incluida la eliminación, creación o modificación de claves primarias, subclaves y valores de claves. Con esta función, el terminal de control puede prohibir el uso de la unidad de disquete y de la unidad de CD-ROM del servidor, bloquear el registro del servidor y establecer las condiciones de activación de los troyanos en el servidor para que sean más sutiles y una serie de operaciones avanzadas.
(4) Operación del sistema: este contenido incluye reiniciar o apagar el sistema operativo del servidor, desconectar la red del servidor, controlar el mouse y el teclado del servidor, monitorear las operaciones del escritorio del servidor, ver los procesos del servidor, etc. El terminal de control puede incluso enviar información al servidor en cualquier momento. Imagine que cuando de repente aparece un párrafo en el escritorio del servidor, sería sorprendente que no lo hiciera.