Notas de diseño de la arquitectura del sistema (87) -Virus informáticos y prevención

El rápido desarrollo de la tecnología informática y la tecnología de redes ha aportado una gran comodidad al trabajo, el estudio y la vida de las personas. La computadora se ha convertido en una herramienta moderna indispensable para las personas. Sin embargo, la aparición de virus informáticos ha provocado malestar y ansiedad en las personas y, al mismo tiempo, ha presentado desafíos para las personas.

1 Descripción general de los virus informáticos

El concepto de virus informático fue propuesto por primera vez por el Dr. F. Cohen, un experto estadounidense en investigación de virus informáticos. Para la definición de virus informático, diferentes países y diferentes expertos dan diferentes definiciones desde diferentes ángulos. Según el artículo 28 del Reglamento de la República Popular de China sobre la protección de los sistemas de información informática: "Un virus informático se refiere a un grupo de computadoras que se compilan o insertan en programas informáticos que destruyen las funciones de las computadoras o destruyen datos, afectan el uso de las computadoras y pueden reproducirse. Instrucciones o códigos de programa ”. Esta definición tiene fuerza y ​​autoridad legal en China.

Al igual que los virus biológicos, la capacidad de replicación de los virus informáticos permite que los virus informáticos se propaguen rápidamente y, a menudo, es difícil de erradicar. Pueden adjuntarse al sistema host o los archivos, y cuando el sistema se ejecuta o los archivos se transfieren de un usuario a otro, se propagan junto con la ejecución del sistema o la transferencia de archivos.

En el ciclo de vida de un virus, un virus generalmente pasa por cuatro etapas: etapa de incubación, etapa de infección, etapa desencadenante y etapa de ataque. La mayoría de los virus funcionan de una manera específica y, por lo tanto, también dependen de un sistema operativo específico o una plataforma de hardware específica. Por lo tanto, los atacantes suelen utilizar los detalles y las debilidades de un sistema en particular para diseñar programas de virus.

1.1 Características de los virus informáticos

Hay muchos tipos de virus informáticos, pero todos tienen características comunes, a saber, infecciosos, no autorizados, latentes y destructivos. La infectividad de los virus informáticos se refiere a la capacidad de los virus de replicarse en otros hosts, como sistemas o archivos. Ésta es la característica básica de los virus.

La desautorización significa que la ejecución del programa de virus no requiere el consentimiento del usuario y es desconocido para el usuario. La latencia es una condición necesaria para la supervivencia del virus, es decir, el virus acecha en el sistema sin que la gente lo note. La destructividad significa que el virus puede activarse automáticamente bajo ciertas condiciones y destruir la computadora, que es una característica del virus. La naturaleza latente y no autorizada del virus hace que el comportamiento del virus sea impredecible y también aumenta la dificultad de detección del virus. Cuanto más destructivas sean las condiciones desencadenantes del virus, más fuerte será el contagio, pero al mismo tiempo su latencia disminuye. Un virus debe ser infeccioso, pero no es necesario que posea otros atributos.

1.2 Clasificación de virus informáticos

Existen muchas clasificaciones diferentes de virus informáticos de acuerdo con diferentes estándares de clasificación:

Según el sistema operativo, se puede dividir en virus que atacan sistemas DOS, virus que atacan sistemas Windows, virus que atacan sistemas Unix / Linux, virus que atacan sistemas OS / 2, virus que atacan sistemas Macintosh, virus que atacan teléfonos móviles y otros sistemas operativos. Sobre el virus.

Según el método de enlace, los virus informáticos se pueden dividir en virus de código fuente, virus incrustados, virus Shell, virus de macro, virus de secuencias de comandos y virus del sistema operativo.

Según el daño, los virus informáticos se pueden dividir en virus benignos y virus viciosos.

Según el medio de transmisión, los virus informáticos se pueden dividir en virus independientes y virus de red.

1.3 La composición de los virus informáticos

El programa de virus generalmente se compone de un módulo de infección, un módulo de activación, un módulo de destrucción y un módulo de control principal y, en consecuencia, tareas completas como la infección, activación y destrucción de virus. También hay algunos virus que no tienen todos los módulos.

(1) Módulo de infección

El módulo de infección es la parte donde se propaga el virus y es responsable de propagar virus informáticos de un sistema o archivo a más sistemas o archivos. Cada virus tiene una marca de autoidentificación llamada marca infecciosa o firma de virus. Cuando un programa de virus infecta un sistema o archivo, la marca de infección debe escribirse en un área específica del sistema o archivo, como el programa host, el registro, la pista física, etc., como una marca de que el sistema o archivo ha sido infectado para evitar infecciones repetidas. , Potencia el efecto latente del virus. Las principales funciones del módulo de infección son: buscar un sistema o archivo infeccioso; verificar si hay una marca de infección en el sistema o archivo y juzgar si el sistema o archivo ha sido infectado; si no hay marca de infección, luego realizar la operación de infección y reemplazar el código del virus Se implanta en el sistema anfitrión o archivo para completar una infección.

(2) Módulo disparador

El módulo de activación de virus comprueba principalmente si se cumple la condición de activación predeterminada, y si se cumple, se llama al módulo de infección o destrucción correspondiente para realizar acciones de infección y destrucción. La condición de activación del virus tiene muchas formas, como fecha, hora, teclado, programa específico encontrado, conexión de red encontrada, vulnerabilidad del sistema encontrada, número de infecciones, número de llamadas de interrupción específicas, etc. Según las condiciones desencadenantes, se puede controlar la frecuencia de infección y destrucción del virus, de modo que el virus pueda llevar a cabo acciones de infección y destrucción en un estado oculto.

(3) Destruye el módulo

El módulo destructivo es responsable de implementar las acciones destructivas del virus. Estas acciones destructivas pueden dañar programas y datos, reducir el rendimiento del sistema, interferir con el funcionamiento del sistema y algunos virus pueden incluso dañar el hardware de la computadora. También hay algunos módulos de daños por virus que no tienen comportamientos de daño malicioso obvios y solo muestran fenómenos específicos en el equipo del sistema infectado.Este módulo a veces se denomina módulo de rendimiento.

(4) Módulo de control principal

El módulo de control principal generalmente controla el funcionamiento del programa antivirus. Cuando se ejecuta el programa de infección, primero se ejecuta el módulo de control principal del virus.

2 Nuevas tendencias en el desarrollo de virus en el entorno de red

Si bien Internet ha aportado comodidad al trabajo y la vida de las personas, también ha aportado "comodidad" a la generación y desarrollo de una gran cantidad de nuevos virus. Hoy, cuando Internet está altamente desarrollado, el número de virus informáticos ha aumentado considerablemente, sus canales de transmisión se han vuelto más diversos y la velocidad de infección se ha vuelto más rápida.

Además de los métodos anteriores, como la copia mutua de archivos y la infección cruzada entre sistemas, los virus informáticos actuales se propagan automáticamente en la red más a través de páginas web, correos electrónicos, uso compartido de redes de área local y vulnerabilidades del sistema. Algunos virus epidémicos a menudo se propagan rápidamente por todo el país y el mundo en dos o tres días con la ayuda de Internet.

Por ejemplo, el virus de correo electrónico es uno de los tipos de virus de Internet más populares en la actualidad. Agrega programas de ejecución de virus peligrosos a los archivos adjuntos de correo electrónico y textos de tentación en el cuerpo del correo electrónico para inducir a los destinatarios a ejecutar programas de virus de archivos adjuntos. Para lograr su propósito de activación. En la actualidad, la mayoría de estos virus se dirigen a los programas Microsoft Outlook y Outlook Express y se propagan en forma de correos electrónicos con virus enviados a través de los contactos de la libreta de direcciones de Windows. No solo daña a las personas, sino que también puede hacer que los servidores de correo de Internet consuman una gran cantidad de recursos de red debido al envío y la recepción de una gran cantidad de correos adjuntos con virus, hasta que el servidor de correo falla. Además, debido a que la mensajería instantánea en Internet es muy utilizada, el uso de MSN, QQ, OICQ, etc. para propagar virus se ha convertido en una tendencia de las epidemias de virus en los últimos años. Es muy probable que los virus puedan transmitir automáticamente información dañina a través de este software para lograr una transmisión automática.

En la actualidad, hay muchos virus que se propagan a través del uso compartido de redes de área local. En el sistema Windows ampliamente utilizado, la gestión compartida, los puertos especiales, etc. están activados de forma predeterminada, y algunas versiones del sistema incluso tienen permisos de escritura. De esta manera, el virus puede infectar directamente los archivos en la carpeta correspondiente de la computadora de destino o escribir el virus en el sistema correspondiente después de buscar los recursos compartidos de la red de área local, para tener la oportunidad de ejecutarse en la computadora de destino. También es por esta razón que muchos virus causarán una infección generalizada en una red de área local después de infectar una computadora, y es difícil eliminar el virus sin desconectar la conexión de red.

En el entorno de red actual, los programas maliciosos más comunes son los programas caballo de Troya, también conocidos como programas de puerta trasera. La mayoría de ellos usan vulnerabilidades del sistema o puertos libres, instalan los programas de caballo de Troya correspondientes en el sistema y usan software especial para monitorear la computadora host a través de Internet, de esta manera para obtener autorización de acceso a archivos del sistema host y recopilar información del sistema host, como Información personal del usuario, número de cuenta bancaria y contraseña, número de cuenta del juego en línea, etc. Debido a que la velocidad de transmisión de la red es muy rápida, la velocidad de infección del virus en el entorno de la red también es muy rápida. Los alguna vez sensacionales "Shockwave", "Sasser" y otros virus están todos pocos días después de que se descubran las vulnerabilidades del sistema correspondientes. Se extendió por todo el mundo. Se puede decir que la variedad y propagación de virus informáticos hoy en día es más rápida que nunca.

3 Detección y eliminación de virus informáticos

3.1 Detección de firmas

El llamado método de verificación de virus de código de característica consiste en extraer el código de característica después de obtener la muestra del virus (por ejemplo, el código de característica del virus Yankee es hexadecimal "F47A2C00", la cadena "Fun Time" en el virus de la hora feliz, etc. ) y luego escanee el archivo de destino o la memoria a través del código de función. Si se encuentra dicha firma, significa que ha sido infectado con este virus y luego elimine el virus de forma selectiva.

La tecnología de firma es el primer método de detección de virus adoptado por muchos software antivirus. El método de detección de firmas detecta virus. El método es simple, preciso y rápido. Puede identificar el nombre del virus y tiene una baja tasa de falsas alarmas. Sin embargo, la tecnología de firmas solo puede diagnosticar virus informáticos conocidos, y su velocidad de respuesta siempre será inferior a la de los virus, y no puede detectar virus desconocidos y virus deformados, y no puede tratar con virus ocultos.

Con el desarrollo de los virus informáticos, siguen apareciendo nuevos virus e incluso algunos virus tienen funciones de deformación automática. Por ejemplo, los virus de "cuello atascado", el software antivirus que utiliza la tecnología tradicional de búsqueda de firmas de virus a menudo tienen dificultades para hacer frente a estos virus deformados. Por esta razón, la gente ha propuesto una tecnología de filtrado de firmas de amplio espectro, que puede compensar las deficiencias anteriores hasta cierto punto.

3.2 Detección de suma de comprobación

Primero calcule la suma de verificación del contenido del archivo normal y los datos del sector del sistema normal, y escriba la suma de verificación en la base de datos para su almacenamiento. Durante la detección, compruebe si la suma de comprobación del contenido actual del archivo es coherente con la suma de comprobación original guardada, de modo que se pueda encontrar si el archivo o sector está infectado. Este método se denomina detección de suma de comprobación.

Las ventajas de la tecnología de detección de suma de comprobación son: el método es simple, se pueden encontrar virus desconocidos y también se pueden encontrar cambios sutiles en los archivos comprobados. Sin embargo, no puede reconocer el tipo de virus. Además, debido a que la infección por virus no es el único motivo de los cambios en el contenido del archivo, los cambios en el contenido del archivo pueden ser causados ​​por programas normales, por lo que la tecnología de detección de suma de comprobación está sujeta a varias restricciones y este método también afectará la velocidad de ejecución de los archivos. Además, la suma de comprobación no puede detectar archivos nuevos, como archivos transferidos desde la red, archivos copiados de discos y CD, archivos en archivos de respaldo y archivos comprimidos, etc.

3.3 Supervisión del comportamiento

Con la escalada continua de virus y luchas antivirus en los últimos años y la velocidad cada vez mayor de nuevos virus, la tecnología antivirus tradicional va a la zaga de los virus y es cada vez más incapaz de satisfacer las necesidades de antivirus. Es más necesario adoptar tecnología antivirus general para proteger las computadoras. Seguridad. Las tecnologías comunes de detección de virus que se han estudiado y adoptado ampliamente en esta etapa incluyen la tecnología de monitoreo del comportamiento de los virus, la tecnología de escaneo heurístico y la tecnología de máquinas virtuales.

A través de la investigación, se encuentra que no importa cuán inteligentemente estén disfrazados, los virus siempre tienen algunos comportamientos que son diferentes de los programas normales, y estos comportamientos son muy raros en aplicaciones normales Estas son las características de comportamiento de los virus.

Las características comunes del comportamiento de los virus incluyen: escribir archivos ejecutables, escribir el área de arranque del disco, alternar entre programas de virus y programas host, reubicar los programas en sí y obtener direcciones de función API buscando en la tabla de índice de funciones.

Con estas funciones, puede controlar el virus y emitir una alarma cuando el programa antivirus está activo. El uso de este método de detección de características de comportamiento no solo puede detectar virus conocidos, sino también nuevos virus desconocidos, sin importar qué tipo de virus o si está deformado. Sin embargo, la tecnología de monitoreo del comportamiento también puede generar falsas alarmas y no identificar los nombres de los virus.

3.4 Escaneo heurístico

Sobre la base de la tecnología de escaneo de firmas, utilice el análisis del código del virus para obtener algún conocimiento heurístico estadístico y estático, que se puede utilizar en la tecnología de escaneo heurístico estático (Escaneo Heurístico). El escaneo heurístico analiza principalmente la secuencia de instrucciones en un archivo y, según el conocimiento estadístico, se juzga que el archivo puede estar infectado o no, de modo que se pueden encontrar virus desconocidos. Por lo tanto, la tecnología de escaneo heurístico es un método probabilístico que sigue las leyes de la teoría de la probabilidad.

Los primeros programas de escaneo heurístico utilizaban tecnología de descompilación de código como base de implementación. Este tipo de software de detección de virus almacena internamente decenas de miles de tipos de tablas de salto de código de comportamiento de virus, y cada entrada corresponde a la secuencia de código necesaria de un tipo de comportamiento de virus, como el código utilizado por el virus para formatear un disco. El software de escaneo de virus heurístico utiliza tecnología de descompilación de código para descompilar el código del archivo detectado, y luego, con el apoyo de estas tablas, el uso de métodos efectivos como el "análisis de código estático" y el "método de comparación de similitud de código" pueden Detecte variantes de virus conocidos y determine si el archivo contiene virus desconocidos.

Debido al código de virus en constante cambio, la implementación específica de la tecnología de escaneo de virus heurístico es bastante complicada. Generalmente, este tipo de software de detección de virus debe poder identificar y detectar muchas secuencias de instrucciones de código de programa sospechosas, como formatear operaciones de disco, buscar y ubicar varios programas ejecutables, implementar operaciones residentes en memoria y ejecutar solo llamadas de subrutinas. Operaciones de pila, instrucciones para saltar al encabezado del archivo a una gran distancia (como más de dos tercios de la longitud del archivo). En términos generales, solo una operación de función sospechosa no es suficiente para activar una alarma de virus. Pero si hay varias operaciones sospechosas al mismo tiempo, es probable que el programa de destino sea un programa de virus.

3.5 Máquina virtual

Virus automórfico, también conocido como virus polimórfico o virus polimórfico. Los virus deformados automáticamente cambian automáticamente sus propios códigos de programa y códigos de firma cada vez que infectan el host. Entre los representantes de este tipo de virus se incluyen los virus "fantasma".

En términos generales, el virus de deformación automática utiliza las siguientes operaciones para cambiarse continuamente: reemplazar el código original con código equivalente; cambiar el orden de las instrucciones que no están relacionadas con el orden de ejecución; agregar muchas instrucciones basura; comprimir el código original del virus O cifrado, etc. Porque el virus de deformación automática cambia continuamente su código y cada infección usa una clave diferente. Al comparar los códigos de virus de los archivos infectados entre sí, también es difícil encontrar los mismos códigos de firma estables que se puedan utilizar como características de virus, por lo que es imposible detectar dichos virus con los métodos de detección tradicionales. Sin embargo, los virus auto-morphing también tienen una regla común: es decir, no importa cómo cambie el virus, cada virus auto-morphing debe restaurarse cuando se ejecuta.

Para detectar virus deformados automáticamente, ha surgido un nuevo método de detección de virus: la "tecnología de máquina virtual". Esta tecnología utiliza métodos de software para permitir que el virus simule parte de las instrucciones del sistema y llamadas a funciones en un entorno virtual, e interprete y ejecute el código del virus. Además, la operación de simulación no tiene un impacto real en el sistema y se pueden obtener los resultados de la operación del programa. Basado en el análisis de la operación del programa, y ​​luego determinar si hay un virus.

Independientemente del tipo de cifrado, invisibilidad y otros métodos de camuflaje que utilice el virus, siempre que esté en el entorno virtual creado por la máquina virtual, el virus desaparecerá automáticamente con el proceso en ejecución (en realidad, la máquina virtual lo restaurará dinámicamente). Con base en los principios de diseño mencionados anteriormente, la máquina virtual tiene grandes ventajas en el procesamiento de encriptación, transformación y deformación de virus. El método de detección de la máquina virtual en realidad utiliza software para realizar el proceso de simulación de descompilación manual, seguimiento dinámico inteligente y análisis de código en ejecución, que es más eficiente y más preciso. El antivirus ha entrado en una nueva era que combina el análisis dinámico y estático del análisis estático puro, mejorando enormemente el nivel de detección de virus conocidos y desconocidos. Durante un largo período de tiempo en el futuro, la tecnología de la máquina virtual tendrá un gran desarrollo.

3.6 Eliminación de virus

Eliminar el código de virus del host y restaurarlo a un sistema o programa que puede ejecutarse normalmente se denomina eliminación de virus. En la mayoría de los casos, se puede utilizar software antivirus o procesamiento manual para restaurar archivos o sistemas infectados. No todos los archivos infectados se pueden desinfectar y no todos los hosts infectados se pueden restaurar de forma eficaz.

Dependiendo del tipo de virus y su comportamiento de destrucción, después de que un virus se infecta, si los datos del host no se eliminan, a menudo se pueden restaurar; si los datos del host se eliminan o cubren por el virus, o si el virus destruye la relación lógica de los datos del host, a menudo no se puede restaurar.

4 Prevención de virus informáticos

"La prevención es más importante que la cura", lo mismo ocurre con los virus informáticos. En el proceso de uso diario de la computadora, se puede realizar un trabajo preventivo al mismo tiempo para evitar la infección por virus en gran medida y reducir la pérdida de datos y material innecesario.

La mejor forma de prevenir los virus informáticos es no intercambiar archivos con el mundo exterior, pero esto es imposible. En el trabajo, las personas a menudo intercambian diversos datos con el mundo exterior. El intercambio de una gran cantidad de información con el mundo exterior crea las condiciones para la infección y propagación del virus. Para proteger su computadora de daños por virus, debe al menos:

(1) El software antivirus debe estar instalado en la computadora.

(2) No utilice software de origen desconocido o software no confirmado; tenga mucho cuidado con los programas y documentos descargados de Internet. Antes de ejecutar archivos o abrir documentos, verifique si hay virus; medios obtenidos del exterior y su contenido Los archivos deben revisarse en busca de virus antes de su uso; los archivos comprimidos deben descomprimirse y revisarse en busca de virus.

(3) Los archivos adjuntos de correo electrónico deben verificarse en busca de virus antes de abrirlos, y verificar si hay virus antes de enviar el correo electrónico; no ejecute archivos adjuntos de correo electrónico de fuentes desconocidas, especialmente los programas de archivos adjuntos que se sugiere implementar en el cuerpo del correo electrónico con texto seductor.

(4) Utilice software antivirus para escanear el sistema con regularidad.

(5) Asegúrese de que el motor de exploración y la base del código de virus del software antivirus utilizado estén actualizados, ya que el motor de exploración antiguo y la base de código de virus no detectarán nuevos virus.

(6) Para evitar que los virus de arranque dañen el sistema, se debe crear un disco de arranque de emergencia inmediatamente después de instalar el sistema, de modo que si la tabla de particiones del disco duro está dañada, el disco de emergencia se puede arrancar y el área y la partición de arranque de respaldo Las tablas, etc. se restauran directamente.

(7) Se deben realizar copias de seguridad de algunos archivos importantes con regularidad para poder restaurarlos desde la copia de seguridad en caso de que el sistema resulte dañado por un virus.

(8) Utilice la herramienta de escaneo de seguridad para escanear el sistema y el host con regularidad. Si se encuentran vulnerabilidades, busque soluciones a tiempo para reducir la posibilidad de ser infectado por virus y gusanos.

(9) Cuando utilice software antivirus, es mejor comprobar primero el virus y luego determinar si se debe realizar la operación antivirus después de encontrar el archivo de virus. Debido a que la verificación de virus no es una operación peligrosa, puede producir falsos positivos, pero nunca causará ningún daño al sistema; mientras que el antivirus es una operación peligrosa, y algunas operaciones pueden destruir archivos.

(10) Establecer el sistema de gestión de control y prevención de virus informáticos de la unidad; impartir formación antivirus a los usuarios de ordenadores.


Supongo que te gusta

Origin blog.csdn.net/deniro_li/article/details/108900791
Recomendado
Clasificación