domingo, 6 de noviembre de 2011

Funcionamiento de un antivirus

                    (P) Hugo Napoli, 2011                    

Nota importante: la falta de experiencia me hizo caer en la incorrecta utilización de imágenes. Este es un problema ético que ya estoy comenzando a solucionar. En breve quedará resuelto. Gracias por tu comprensión.

Otra nota importante: el cierre de MegaUpLoad ha dejado inoperantes algunos enlaces de mis post, como le ha pasado a muchísima gente en el mundo. Estoy resubiendo mi material a RapidShare, MediaFire, HotFile, FileServe y GigaSize. Pasarán algunos días hasta que pueda solucionar esto. Algunos enlaces ya están reparados y funcionan correctamente. El resto, aún no. Gracias por tu paciencia.


Artículo original tomado de http://www.vsantivirus.com/fdc-funcionamiento-antivirus.htm
Autor: Fernando de la Cuadra
Actualización y modificaciones groseras: Hugo Napoli

Contacto al autor del post original:
Fdelacuadra@pandasoftware.com

(*) Fernando de la Cuadra es Editor Técnico Internacional de Panda Software (http://www.pandasoftware.com)

Funcionamiento de un programa antivirus




Desde que fueron diseñados los primeros virus (creados como experimentos en los años 80) hasta los últimos, una de las mayores preocupaciones de cualquier usuario de ordenador ha sido la entrada de código maligno en su sistema.


Para evitar que los virus infecten nuestro Windows y se diseminen a su antojo -al igual que las sanguinarias garrapatas bajo el pelo de un pobre, fiel e indefenso perro- solamente existen dos soluciones.


- La primera es encapsular al ordenador en un ambiente no hostil -método conocido como "operar en la burbuja"- es decir, desconectar el equipo de la red y de Internet, y prescindir del uso de cualquier unidad externa de almacenamiento o flujo de datos, tales como la lectora de disquetes, el CD y DVD-ROM, y las unidades extraíbles como discos externos, pendrives y memorias flash o de cualquier otro tipo. Únicamente así tendremos la absoluta seguridad de que no va a entrar ningún virus a nuestro Sistema. Pero tampoco entrará ningún dato que no sea por el teclado, un touchpad o un escáner, por ejemplo, lo que haría de nuestro ordenador una sólida e invulnerable máquina, pero completamente alejada del propósito para el cual es concebido hoy día el computador: la navegación en Internet, la conexión con el mundo a través de las redes sociales, y la centralización, administración y orden del trabajo y de las funciones multimedia y de pasatiempos. Si no existe información entrante, no hay datos que procesar. Si esa es su idea, ya puede ir deshaciéndose de su potente PC con procesador veloz de varios núcleos, gran cantidad de memoria RAM, aceleradora gráfica prohibitiva y disco de capacidad descomunal y volver al viejo y querido Windows 98 corriendo a la velocidad del rayo sobre un eficiente Pentium III, el cual le dará alguna que otra satisfacción similar a la que le da el soberbio ordenador "burbuja".


- La segunda solución, es la instalación de una completa solución de seguridad. Al decir "completa", me refiero a brindarle a Windows una segura protección mediante firewall, antivirus,  antiespías, anti rootkit, antispam, anti phishing, anti malware... Con todo esto, podrás tener la seguridad de que ningún -o casi ningún- código o programa dañino entrará en tu sistema como "Perico por su casa".

Pero... ¿de qué manera es realizado este control? ¿Se realiza poniendo un clon cibernético de Steven Seagal (en bancarrota, preparado a las apuradas, sin más meta que el sensacionalismo agresivo, irresponsable y xenófobo) sobre una torreta de código binario? (*)

¿Por qué un antivirus permite que se instale un juego y no permite que se copie un virus?


Veamos cómo funciona.


Un programa antivirus no es más que un sistema que analiza información de muy diverso tipo y, en caso de encontrar líneas de código que se presuponen dañinas para el usuario (software malintencionado o potencialmente peligroso), dañinas para los programas (violencia ejercida contra los mismos por códigos ilegales introducidos para que el programa funcione bajo condiciones no permitidas como el caso de los cracks, patches, etc.) y de cualquier índole similar, procede a su eliminación, sustitución por el código correspondiente, o desinfección, en alguna medida.
El análisis de la información se produce de muy diferentes maneras, dependiendo de su origen. (...) No se analiza del mismo modo el tráfico desde los disquetes o los medios ópticos hacia el ordenador, que el correo electrónico, o el flujo de paquetes de la red local o Internet. El principio de funcionamiento es similar, pero con matices.






La información que parte del "Sistema origen", debe llegar al "Sistema destino". El sistema origen podría ser un DVD, y el sistema destino, el disco duro del ordenador. O bien el origen podría ser un ISP donde está almacenado un mensaje de correo, y su destino, el sistema de comunicación de Windows de la máquina cliente o Winsock.


El funcionamiento del mecanismo de interceptación de la información varía en función de su implantación en los diferentes Sistemas Operativos de Microsoft, en las aplicaciones, o bien en la necesidad de propósitos concretos.

El mecanismo de interceptación debe ser específico para cada Windows o para cada componente sobre el que se va a implantar. Por ejemplo, en el caso de Windows 95 y 98, está formado por un controlador virtual conocido como VxD que monitoriza constantemente la actividad del disco. De esta manera, cada vez que se interprete que se va a acceder a la información del disco (...), el antivirus interceptará la llamada a la lectura o escritura del disco, analizará la información que se va a leer o grabar, y la analizará.


Esta misma operación se realiza, por ejemplo, a través de un controlador (driver) en modo kernel (operando en el núcleo del Sistema) también en Windows NT, 2000 y XP (...).


En el caso de los antivirus no diseñados directamente para Sistemas Operativos, sino para implementarse sobre otras aplicaciones, el mecanismo de intercepción es distinto.
Por ejemplo, en el caso de un antivirus para Firewalls CVP (Content Vectoring Protocol -especificación utilizada en servidores de antivirus-), es el propio firewall el que facilita la información al antivirus para su análisis (...). O en el caso de un antivirus para SendMail (agente de transporte de correo) es MilterAPI (interfaz para la gestión de contenidos) el que facilita la interceptación de la información.



En determinadas ocasiones no existe un mecanismo propio de interceptación proporcionado por el antivirus -como puede ser (...) VxD- o por la aplicación -como el CVP-. En este caso, se deben utilizar mecanismos especiales entre la aplicación y el antivirus, es decir, recursos que intercepten la información y se la faciliten al antivirus, proporcionando una integración completa para la desinfección de los virus.

Una vez analizada la información -por el método que sea-, si se ha detectado cualquier peligro, se llevan a cabo dos acciones:

1. devolver la información limpia al mecanismo de interceptación que, a su vez, la devolverá al Sistema para que siga su curso hasta el destino final. Es decir, si estábamos recibiendo un correo electrónico infectado, desinfectarlo y permitir que el correo llegue a la bandeja de entrada, o si estábamos copiando un fichero con contenido viral, dejar que se termine el proceso de copia una vez tratada la información correspondiente.

2. emitir una alarma a la interfaz del usuario. Estas interfaces de usuario pueden ser también de muy diverso tipo. En un antivirus diseñado para una estación de trabajo que emplee únicamente caracteres ASCII como el Sistema Operativo AS-400 o DOS o alguno de interfaz similar, esta alarma puede manifestarse como un mensaje mostrado en pantalla.


Pero en una solución para servidores, la alarma puede consistir en un mensaje de correo electrónico, un mensaje a la red interna, una entrada en un informe de actividad o una comunicación de algún tipo a la herramienta de gestión del antivirus.


Como vemos, el antivirus no hace ningún milagro extraño, ni es una pieza de software a la que debamos mirar con extrañeza. Es un aliado de nuestra seguridad (...) funcionando con una actualizada y cuidada tecnología y suma precisión. Pensemos que para copiar unos cuantos MegaBytes a nuestro disco duro, el antivirus debe ser capaz de poder comparar entre decenas de miles de líneas de código -en tiempo real-, sin que la marcha normal del equipo se interrumpa ni el usuario lo perciba demasiado.

Ya va quedando más que claro, que la seguridad que ofrece un antivirus es muy elevada y nos evitará más de un disgusto... (...) ¿o no?




Motores de búsqueda

Independientemente de cómo se haya conseguido la información a analizar, entra en acción la parte más importante de un antivirus: el funcionamiento del motor de búsqueda de virus y su importante mecanismo. Este motor se encarga de buscar virus en la información que ha sido interceptada y, si corresponde, desinfectarla.

Esta búsqueda de información se lleva a cabo también de dos maneras.



Una consiste en comparar la información recibida con una base de datos de virus (las llamadas "firmas de virus"). Si coincide la información con los patrones previamente conocidos (registrados en las firmas), se concluye en que existe infección viral.


La otra manera es "averiguar" si lo que se está analizando puede ser peligroso, aún sin saber a ciencia cierta si se trata de un virus o no.
Éste es el llamado "método heurístico".

Para ello, se analiza el modo en el cual se comporta la información, y se compara con una lista de patrones conocidos de comportamientos peligrosos.


Por ejemplo, si se encuentra que un fichero tiene capacidad de formatear un disco duro utilizando un procedimiento suspicaz, dudoso o no controlado, el antivirus puede avisar al usuario. Quizá no sea un virus, sino un nuevo sistema de formateo que el usuario está instalando en el sistema; sin embargo, la acción de por sí, es peligrosa. Es el usuario, ante la alerta que le da el antivirus el que debe decidir si elimina el peligro o no.

Cada uno de estos procesos tienen sus ventajas e inconvenientes. Si nos fiamos únicamente del sistema de firmas de virus, deberemos actualizarlo todos los días al menos una vez. Teniendo en cuenta que se están descubriendo decenas de virus nuevos cada día, dejar un antivirus más de dos o tres días sin actualizar es bastante arriesgado.

Y el sistema heurístico puede que nos alerte de elementos que sean de fiar. Si acostumbramos a trabajar con determinados programas que pueden ser considerados peligrosos pero son perfectamente controlables y necesarios, las alertas nos cansarán. Sobre todo los programadores y técnicos en reparación de PC pueden preferir desactivarlo. A título personal diré que no me parece ésta una buena medida. Prefiero confiar plenamente en el antivirus, aún dedicándome a trabajar en la Informática y habiendo pasando más de una vez por distracciones que me han costado la pérdida de un tan necesitado como "sospechoso" programa. Una vez que empiezas a desactivar el antivirus temporalmente, te empiezas a exponer a las infecciones. Lo digo por experiencia.




Antivirus residentes y bajo demanda

Cuando se habla de un antivirus hay que hacer una distinción muy clara entre los dos tipos de antivirus que hay.


(...) Los antivirus residentes, de los cuales hemos hablado fundamentalmente en el artículo, que son los más complejos y más necesarios, y (...) están constantemente vigilando el sistema para evitar que no haya intrusiones, y (...) los analizadores bajo demanda. Éstos últimos, si bien utilizan el mismo motor de búsqueda que el utilizado por los de protección residente, se encargan de analizar partes del sistema solamente cuando el usuario lo ordena. Son llamados en ocasiones especiales. Puede usarse, por ejemplo para analizar un pendrive, o para revisar la información antigua y no utilizada. Este último sistema se recomienda fundamentalmente en PCs obsoletos y de muy bajos recursos, puesto que es harto sabido que la instalación de un antivirus "residente" o de escaneo "en tiempo real", hará que nuestro Windows se enlentezca levemente en su uso general, y groseramente en ocasiones en que se dispara un análisis programado de todo el equipo o una actualización automática del antivirus no prevista por el usuario.


Busca en el blog más información sobre virus y antivirus. Puede que ello te ayude a completar el panorama y a comprender mejor el tema.

Notas: en cursiva, figura lo modificado e introducido por mí en el texto original. Con "(...)", se ha señalado la omisión de texto irrelevante.




(*) Lo que sigue no tiene nada que ver con el post. Puedes optar por no leerlo. Si lo lees y te sientes agraviado porque herí tu sensibilidad con esta información objetiva, real y testimonial, seguramente será porque los comentarios que haré a continuación han tocado a un protagonista de películas que está entre tus predilectos del cine. También ha de ser porque no posees un grado de sensibilidad mínimo ni capacidad de crítica y autocrítica. Si este es el caso, sabrás comprender que así como estás molesto tú por este insignificante agravio, estoy molesto mil veces más yo por el insulto gratuito, la osadía, el patrioterismo barato, necio e ignorante de algunos yanquis (a otros yanquis los quiero mucho -no soy xenófobo ni miro a EEUU con recelo-), y la falta de tolerancia, de respeto y de responsabilidad de tu ídolo. La explicación que debo sobre mi molestia personal, justificada y compartida por muchísimas personas en cuanto al conocido mal actor de películas de acción de mala calidad, nada tiene que ver con el ilustre autor original del post, al cual no tengo el agrado de conocer.

Hugo Napoli.


Jueves, 4 de agosto de 2005Actualizado a las 13:52 (CET) - Internet time @536 by Swatch
POLÉMICA EN URUGUAY
Un filme de Steven Seagal desata la ira del Gobierno uruguayo

EFE
El actor en una foto de archivo. (Foto: EL MUNDO)
El actor en una foto de archivo. (Foto: EL MUNDO)
NOTICIAS RELACIONADAS
MONTEVIDEO.- El Gobierno de Uruguay rechazó "los mensajes" acerca de ese país contenidos en la película 'Submerged', protagonizada por la estrella del cine de acción Steven Seagal, y estudia la posibilidad de entablar acciones judiciales. La producción estadounidense, dirigida por Anthony Hickox, trata sobre un submarino secuestrado por terroristas y escondido en las cercanías de la costa uruguaya.

En la película, que se rodó en Bulgaria,Uruguay está gobernado por un dictador corrupto, abundan los narcotraficantes y la embajadora estadounidense es asesinada.
"El Gobierno expresa su total rechazo a los mensajes contenidos en la trama de ficción" de la película, "cuyos valores de base están reñidos con la defensa del ser humano, que históricamente ha sostenido nuestro pueblo", señala un comunicado de la Presidencia de Uruguay.
La Administración del presidente socialista Tabaré Vázquez manifestó su "más enérgico repudio a la utilización del nombre de nuestro país, así como el pabellón nacional, asociándolos a la acción terrorista, en un marco de banalización de la violencia".
Tras expresar su rechazo "al uso de los medios masivos de comunicación en forma contraria a la promoción y desarrollo de la paz entre los pueblos", el Gobierno uruguayo destacó "la vocación de paz del pueblo uruguayoy la actitud pacífica del Estado".
A la vez, subrayó su decisión de "realizar todas las acciones que por derecho correspondan", a fin de "revertir el inmerecido efecto dañino que los contenidos de dicha película han de producir".
Sin embargo, el director de Cultura del ministerio de Educación y Cultura, Luis Mardones, se mostró cauteloso sobre la posibilidad de emprender acciones legales.
"Que la película causa un daño y un perjuicio para la imagen del Uruguay es claro, pero antes de iniciar los caminos de un posible juicio de indemnización hay que pensar los esfuerzos, el tiempo y el coste que ello significa, para un resultado incierto", declaró Mardones a la prensa.

http://www.elmundo.es/elmundo/2005/08/04/cultura/1123148054.html