Virus y
ataques externos: prevención y eliminación
| |
|
En
muchas ocasiones, los problemas que surgen durante el uso de PC se originan o
se deben a factores externos al hardware y al software utilizado.
Los mas conocidos son los virus, los cuales han evolucionado y crecido en
número y variantes, pero también existen otras clases de ataques externos que
pueden confundir al técnico mas experto.
Índice del curso:
1. ¿Qué
es un Virus?
2. Clasificación
de los Virus
3. Antivirus
4. Herramientas
para Facilitar el Trabajo
5. Diagnóstico
General
6. Pruebas
Masivas (Burn-In o Stress Tests)
7. Diagnóstico
Específico
8. Espías
9. Benchmarking.
Uso de un benchmark
10. Utilitarios
Un virus es simplemente un
pequeño programa el cual se agrega automáticamente a una aplicación
convencional de manera tal que cuando ésta sea utilizada, se incorporará a
otras aplicaciones (infectando así a todas las que tengamos).
Cuando se haya dispersado
por todas nuestras aplicaciones, puede quedar latente a la espera de algún
evento para causar algún daño. Un evento puede ser una fecha determinada, la
ejecución de una aplicación en particular, etc., es decir, cualquier cosa que
suceda en el entorno del funcionamiento de nuestras aplicaciones.
No sólo DOS
y Windows 9X/Me. Algunos creen que los virus son un mal del DOS y sus
sucesores, como Windows 95, y afirman que en Unix ese problema no existe. A
pesar que La cantidad de virus desarrollados para DOS y Windows 95 es superior
a la de cualquier otro S.O., NT/2000, OS/2 y Unix en todas sus versiones
también sufren ataques de virus aunque más limitados porque son S.O. con
seguridad incorporada al sistema de archivos. Además, así como Atenas era
considerada el centro de la cultura, Unix es visto como el palacio de los
hackers.
Hace algunos años, en DOS
y Windows 9X/Me, los virus únicamente infectaban a los archivos ejecutables
(.EXE, .COM) y a los drivers que se cargaban desde el archivo CONFIG.SYS, sin
embargo, ahora existen otros tipos de virus los cuales se insertan en
documentos, como por ejemplo los de Word y Excel.
A continuación, brindamos
una clasificación completa de los virus informáticos:
- De Archivos. Infectan archivos
ejecutables y drivers. Al ejecutar una aplicación, es probable que la misma se
infecte.
- De Partición (MBR).
Infectan al MBR de un disco duro. Pueden borrarse fácilmente sin necesidad de
un antivirus arrancando con un diskette limpio (con la certeza del 100 % de que
no se encuentra infectado por ningún virus) y ejecutando el comando FDISK /MBR
desde la línea de comandos.
- De Sector de
Inicio. Infecta el código ejecutable del sector de arranque de
un medio de almacenamiento. Cuando se intenta bootear desde este medio, el
virus pasa a memoria y puede hacer lo que desee.
- De Macro. Modifican las secuencias
de instrucciones pregrabadas (macros) ubicadas en un documento o en plantillas
(por ejemplo: de Word o Excel) de manera tal que al abrirlos, pueden ejecutar
acciones no deseadas, como por ejemplo, destruir el contenido del documento.
- Multipartido. Utiliza una
combinación de técnicas para propagarse, como por ejemplo: infectar archivos y
sectores de inicio.
- Troyano. Es un virus que no se
propaga por sí sólo, por lo cual es necesario que se copie e instale
manualmente en la PC a infectar. Se oculta en programas que dicen hacer una
cosa pero esconden posibilidades de hacer otras. Un ejemplo de este tipo de
virus es aquél que al ser ejecutado en una PC habilita funciones para el
control de la misma en forma remota, sin el consentimiento del usuario e
invadiendo su privacidad.
-Stealth (Fantasmas). Se esconden a
sí mismos. Si un virus de este tipo se encuentra en la memoria, cuando
cualquier programa intenta leer el archivo infectado, resulta engañado y cree
que el virus no se encuentra en el archivo. El virus residente en la memoria se
encarga de cambiar el contenido que se informa.
- Polimórfico. Se cambia a sí mismo
cada vez que se propaga, por lo cual, al intentar identificarlo buscando una
secuencia de bytes que lo caractericen, no se lo encuentra. Cambia su contenido
en forma aleatoria y dificulta su identificación.
-De Camuflaje. Utilizan trucos para esconderse de los
antivirus.
- De Acción Directa. En el mismo
momento en el que infectan, disparan su acción destructiva o principal
objetivo, como ser destruir archivos o mostrar un mensaje de broma.
-Residentes. Se mantienen dentro de
la memoria y esperan que ocurra un evento para disparar su acción destructiva u
objetivo principal.
Existen algunos virus
residentes que nunca se disparan.
Mitos y leyendas. Hay que tener en cuenta un concepto
fundamental para no caer en creencias, mitos ni leyendas que nada tienen
que ver con la realidad: una vez apagada el PC, se pierde todo el contenido de
la memoria y el único lugar en donde puede quedar un virus es en los medios de
almacenamiento, es decir, diskettes, discos duros, CD-ROM, etc., o bien en la
Flash BIOS (tener mucho cuidado con estos últimos), pero si desactivamos esta
última, ¡Los virus no quedan registrados en el reloj, ni en la motherboard, ni
en la memoria caché.
Los virus suelen afectar
al correcto funcionamiento del PC y de las aplicaciones que corren sobre ésta
cuando la han infectado, por lo que cual no sería extraño que dejen de
funcionar aplicaciones, o la máquina se quede colgada con frecuencia o
aparezcan mensajes inesperados.
La acción destructiva de
un virus puede incluir la eliminación de archivos, destrucción de particiones o
sistemas de archivos completos, instalación de mensajes no deseados,
modificación del contenido de documentos, etc. Cuando hacen efecto, los
resultados pueden ser muy perjudiciales, por lo cual siempre es conveniente
tener las copias de seguridad al día.
Los antivirus son las
herramientas que tenemos disponibles para identificar la presencia de los virus
en los PC y eliminarlos. Normalmente poseen algunas de las siguientes
herramientas bien diferenciables entre sí:
- Utilitario para la copia
de seguridad, limpieza y recuperación de áreas críticas del sistema de
archivos.
- Rastreadores de virus,
que intentan identificar la presencia de virus en nuestros medios de
almacenamiento mediante diferentes técnicas de análisis, para que no se escape
ninguna de las clases de virus mencionados anteriormente. Entre otras, las
técnicas más comunes son las siguientes:
- Análisis de
Firmas. Utilizando una base de datos con las firmas (secuencia
de bytes característica que aparece en los archivos infectados por ese virus)
de cada uno de los virus que ya fueron identificados se rastrean los archivos o
sectores de arranque por la presencia de las mismas y en caso afirmativo se
identificará al mismo como infectado. Dado que la detección de los virus es
dependiente de la base de datos de firmas, esta última deberá estar actualizada
para que el resultado del proceso sea confiable. Es por ello que un buen
paquete antivirus debe ofrecer actualizaciones cada pocos días. Utilizar esta
técnica de rastreo con una base de datos de más de un mes no brinda ninguna
seguridad.
- Análisis
Heurístico.
Es una tecnología inteligente que intenta buscar indicios de actividad de virus
tales como código para formatear una unidad, para quedar residente en memoria,
cambios en archivos ejecutables o cualquier otro algoritmo sospechoso. Como se
buscan indicios, puede resultar en falsas alarmas, pero al menos brinda un
nivel más de seguridad que el simple análisis de firmas. Su desventaja es que
puede resultar un poco lento debido al análisis a llevar a cabo.
- Anti-stealth. Los antivirus que utilizan esta técnica
son capaces de eliminar las trampas tendidas por los virus stealth explicados
anteriormente cuando clasificamos los virus.
Juntas o
separadas. Todas
estas herramientas pueden estar integradas en una única interfaz con el usuario
o tratarse de aplicaciones separadas. Ello dependerá exclusivamente del
fabricante y de las plataformas en las cuales corra cada una de ellas, por
ejemplo: un utilitario de recuperación de áreas críticas sería difícil de
ejecutar desde Windows 9X/Me o NT/2000 en modo gráfico, ya que si se perdieron
las particiones es imposible arrancar en ese modo.
- Limpiadores de virus,
que intentan eliminar el código ingresado por el virus recuperando el contenido
original del archivo infectado antes de ser atacado. Hay algunos virus que no pueden
ser eliminados, por lo cual se deberá proceder a cambiar el nombre del archivo
o eliminarlo.
El software ilegal, el
intercambio de diskettes, y todos los servicios de Internet que no sean
provistos por empresas reconocidas son fuentes de alto riesgo para la
adquisición de virus. Existen muchos paquetes antivirus, de los cuales
deberemos evaluar las características que ofrece cada uno de ellos para decidir
cuál utilizar. Sin lugar a dudas, debemos tener uno, pues muchos de los
problemas generados en las PC son a causa de estas malignas porciones de código
que no se las puede considerar software.
La forma de remover un
virus dependerá exclusivamente del antivirus que utilicemos y deberemos
consultar la documentación que acompaña al mismo.
La intención de este
capítulo fue la de dejar claro el daño que puede hacer un virus, clasificarlos
y explicar el funcionamiento básico de los antivirus. El tema es muy largo y
justificaría un libro por sí solo, pero vimos todo lo necesario como para
prevenimos e identificar los problemas relacionados con los virus.
Las herramientas son
necesarias para llevar a cabo las tareas de diagnóstico, reparación,
instalación y/o actualización. Éstas nos ayudarán a realizar algunas tareas más
rápidamente. Todos los conceptos explicados anteriormente deben estar claros
antes de enfocarnos en las herramientas.
Clasificación de
las Herramientas
Cuando hablamos de
diagnóstico, reparación, instalación y actualización de PC, surgen dos clases
de herramientas que nos ayudarán a llevar a cabo más rápidamente los
procedimientos que utilizamos para realizar estas tareas: herramientas
basadas en hardware y/o software y herramientas mecánicas.
1.- Herramientas Basadas en Hardware y/o Software
Las herramientas basadas en
hardware y/o software se pueden clasificar en:
- Diagnóstico general.
- Pruebas masivas (Bumn-In o Stress Tests).
- Diagnóstico específico.
- Espías.
- Utilitarios.
Se ha desarrollado un gran
mercado alrededor de esta clase de herramientas. Hay empresas especialmente
dedicadas a producirlas y en cada clase tendremos casi con seguridad más de una
para evaluar.
2.- Shareware. Además, no debemos dejar
de lado a todas las herramientas shareware de excelente calidad que podemos
bajar de Internet y probarlas sin costo alguno.
A continuación,
analizaremos en detalle cada una de estas clases y brindaremos una serie de
ejemplos.
Se encargan de comprobar
el funcionamiento correcto de la mayoría de los componentes críticos del
sistema como microprocesador, coprocesador matemático, memoria principal,
memorias caché, discos duros, unidades de diskette, etc.
Realizan una serie de
pruebas de bajo nivel sobre cada uno de los componentes y generan un informe
con el resultado de todas las pruebas efectuadas. Si encuentran algún problema
en uno de los pasos de una prueba, nos dan información acerca del posible
componente defectuoso y en la mayoría de los casos podremos consultar con la
documentación de la herramienta la cual nos ampliará detalles sobre cómo se
interpreta el problema y cómo podríamos solucionarlo.
No es un ser
humano, pero... Podemos
considerar a los resultados del uso de herramientas basadas en hardware y/o
software como los diagnósticos que nos brinda un médico: se puede equivocar. Si
le tenemos desconfianza, deberemos recurrir a otro doctor para que efectúe el
diagnóstico y si ambos coinciden posiblemente les demos la razón. Lo mismo pasa
con estas herramientas, aunque a veces muchas coinciden en el origen del
problema, pero como su capacidad de análisis es reducida no termina ayudándonos
demasiado y tenemos que hacer un diagnóstico más minucioso por nuestra cuenta.
Las herramientas basadas
en software requieren que el sistema arranque correctamente para poderlos
ejecutar, por lo cual a veces resultan útiles solamente para diagnosticar
fallas intermitentes o bien problemas en el funcionamiento de componentes que
no son críticos, como ser la tarjeta de sonido, el puerto serie o el mouse.
Los siguientes son algunos
ejemplos de herramientas de esta clase basadas en software:
- Checklt Pro Deluxe de
Touchstone Corp.
- Norton Diagnostics incorporado a Norton Utilities.
- Micro-Scope de Micro 2000.
- QA PIus.
- Troubleshooter de AllMicro, Inc.
- WinSleuth Gold Plus de Eware.
En la mayoría de los
casos, las pruebas pueden ejecutarse todas juntas como un lote (en modo batch),
seleccionando cuáles de todas ellas se quieren ejecutar o bien en forma
individual si ya sabemos por dónde está el problema y queremos efectuar un
diagnóstico específico.
Loopbacks. Para efectuar una prueba completa
con estas herramientas, muchas veces es necesario utilizar conectores de señal
de retorno (loopback cable) para simular que tenemos dispositivos conectados en
algunos puertos y así poder verificar el funcionamiento de todos los
componentes involucrados en la transmisión y recepción de datos a través de
estas interfaces.
Las herramientas basadas
en hardware nos ayudan a efectuar un diagnóstico más rápidamente cuando la PC
no arranca y no da signos de vida. Las más comunes son las siguientes:
- Tarjetas POST. Algunas se conectan en una ranura
de expansión libre y otras menos comunes en el zócalo que aloja al BIOS. Poseen
una serie de LED que indican el estado mientras el sistema intenta arrancar y
en caso no lograrlo, guardan el paso del POST en el cual se frenó el proceso.
Acompañadas de documentación que incluyen códigos del POST para una gran
variedad de fabricantes y de una punta lógica de tres estados para verificar
señales en puntos clave, permiten detectar fallas de hardware a bajo nivel que
muchas veces resultan difíciles de localizar. Las capacidades de estas tarjetas
pueden ser aún mayores, aunque son muy costosas y la decisión de invertir en
una dependerá de la cantidad de PC que no arrancan y llegan a nuestro taller de
reparación.
Ejemplos de estas tarjetas son The Discovery Card de ALLMicro, Inc. y
Post-Probe y Pocket Post de Micro 2000.
- Tarjetas
Verificadoras de Fuentes de Alimentación.. En la mayoría de los casos pueden
funcionar insertándolas en una ranura de expansión libre en la motherboard o
bien conectándoles directamente la fuente de alimentación a verificar. Se
encargan de controlar que la fuente de alimentación entregue las tensiones
correctas con variaciones dentro de la tolerancia permitida, que las salidas
estén libres de picos de tensión, ruido, etc. Son útiles para asegurarse de que
la fuente está en perfectas condiciones pues aunque se trata de un componente
de un costo relativamente bajo, es fundamental para el funcionamiento del
equipo.
Un ejemplo de estas tarjetas es PC PowerCheck de Micro 2000.
- Tarjetas
Detectores de Conflictos. Se instalan en una ranura de expansión libre en la
motherboard y poseen una serie de indicadores para detectar conflictos con IRQ,
DMA, etc., además de otra función adicional que pueden brindar para
diagnosticar problemas.
Ejemplos de estos productos: Omni Analyzer y IRQest Plus de Micro 2000.
- Verificadores de Módulos de Memória.
Son instrumentos que
permiten conectarle un módulo de memoria y realizan una verificación completa
del mismo para diagnosticar problemas que pudiera tener el mismo.
La adquisición de
cualquiera de estas soluciones hardware dependerán del uso que se les pueda dar
y de un análisis del costo/beneficio.
Las pruebas masivas,
conocidas como Burn-In o Stress Tests, constituyen un mecanismo de control de
calidad mediante el cual se somete el equipamiento electrónico al
funcionamiento constante al límite por un período de tiempo. La idea es que si
bajo esta carga de trabajo no presenta fallas, es muy probable que no lo haga
por un largo período de tiempo o nunca, pero si las presenta durante la prueba
masiva se evitará entregar un sistema y que al poco tiempo el usuario descubra
un defecto en el mismo.
Nada es imposible.
Debemos tener
en cuenta que estas pruebas no garantizan que los componentes no presenten
fallos, sino que reducen la posibilidad que aparezcan al poco tiempo.
En la mayoría de los casos
son herramientas basadas en un software que se encarga de correr una serie de
diagnósticos generales, como los vistos anteriormente, por un período de tiempo
sin necesidad de asistencia por parte del usuario, es decir, quedan corriendo
en modo batch exigiendo al máximo a cada uno de los componentes. El tiempo
mínimo para dejar corriendo estas pruebas masivas es de 24 horas.
Ejemplos de software de este tipo son: Micro-Scope Burn-In de Micro 2000 y 486
System Burn-ln, shareware.
Las herramientas que caen
bajo esta clase son una especialización de las de diagnóstico general, pues se
concentran en diagnosticar la menor cantidad de componentes posibles para poder
resolver el problema que se presente y no solamente informes con los resultados
de las pruebas efectuadas.
Entre otras (ya que son
muchas), podemos mencionar a las siguientes herramientas que encierra esta
categoría:
- Kits de diagnóstico,
alineación y limpieza de unidades de diskette. Se trata de una combinación de
herramientas de hardware y software para efectuar todas las verificaciones
necesarias para el funcionamiento correcto de una unidad de diskettes, como
ser: centrado, histéresis, alineación de las cabezas, velocidad, amplitud de
lectura, etc. El kit suele incluir diskettes formateados contra el cual
verificar.
FloppyTune de Micro 2000 es un ejemplo de estos kits (QAPIus y Checklt ofrecen
otros similares).
- Antivirus.
- Las que verifican y
mantienen la integridad de los Sistemas de Archivos.
- Las que diagnostican e
intentan resolver problemas físicos de los discos, (por ejemplo: ScanDisk,
ChkDsk, Norton Disk Doctor, Norton Calibrat).
- Las que verifican el
funcionamiento correcto de un microprocesador específico y sus componentes
asociados como ser las memorias caché interna y externa, el juego de chips,
etc. Existen muchas herramientas shareware de este tipo.
Esta clase de herramientas
se encargan de investigar todo lo que tenemos en el sistema y reportarlo para
que con esa información podamos tomar alguna decisión o bien llevemos a cabo un
diagnóstico más detallado. Ejemplos de estas herramientas son las que brindan
los S.0. para determinar los drivers instalados y la configuración de los
cuatro parámetros que pueden ocasionar conflictos, por ejemplo: Información del
Sistema (System lnformation) de Windows 98 y el MSD.
En la gran mayoría de los
casos están basadas en software y una prueba de esto es que QAPlus, Checklt Pro
Deluxe y Norton Utilities incluyen en sus paquetes espías de primer nivel. Hay
muchas excelentes herramientas espía shareware.
Algunas incorporan cierta
inteligencia y van más allá de mostrarnos información acerca del sistema, ya
nos ofrecen consejos acerca de cómo deberíamos configurar las diferentes partes
que podríamos cambiar para obtener un rendimiento óptimo y/o evitar conflictos.
Dentro de las espías,
tenemos los benchmarks, cuya definición se enuncia a continuación.
Benchmark (Prueba
de rendimiento). Se trata de software y/o hardware encargados de monitorear el
rendimiento de un sistema de hardware y/o software. Este último puede ser una
PC completo, el microprocesador, la memoria, una aplicación, el Sistema
Operativo, el Sistema de Archivos, un disco duro, etc. Normalmente se utiliza
una unidad para poder comparar los resultados de varios benchmarks entre
sistemas diferentes, como por ejemplo: pixels por segundo para medir el
rendimiento de una tarjeta de video
Un benchmark puede correr
una única vez y arrojar un resultado o bien un informe completo con todos los
detalles de las pruebas efectuadas. Otra forma es que vaya monitoreando el
rendimiento de un sistema en tiempo real y guardando los diferentes valores que
arrojan las pruebas cada determinada cantidad de tiempo.
Un ejemplo del primero son los que ofrecen el Norton Utilities, QAPlus, Checklt
y otras herramientas.
Para el segundo, podemos
tomar al Administrador de Tareas (Task Manager) de NT/2000 que permite
monitorear el uso del procesador (o los procesadores) y de los diferentes tipos
de memoria. NT/2000 también ofrece un excelente utilitario, el Monitor de
Rendimiento (Performance Monitor) que permite graficar en tiempo real el uso y
rendimiento de diferentes componentes lógicos y físicos. Un utilitario similar
para Windows 9X/Me es el Monitor del Sistema (System Monitor). Las interfaces
gráficas X-Windows que corren en Linux también tienen este tipo de benchmarks.
Entre otras cosas, estos
benchmarks nos permiten determinar si el procesador o la memoria nos quedan
pequeños para las aplicaciones que estamos utilizando, entre otras cosas. Por
ejemplo: si al monitorear el uso del procesador por varias horas utilizando
determinadas aplicaciones de uso habitual, nos encontramos que durante el 90 %
del tiempo está al 100 % o al 95 % quiere decir que lo estamos llevando siempre
al límite y deberíamos pensar en actualizarlo por uno que ofrezca un mayor
rendimiento. Lo mismo se aplica a la memoria, al tráfico de red, etc.
Dentro de esta categoría
entran todas aquellas herramientas que quedan fuera de las anteriores y ofrecen
utilitarios mejorados a los que acompañan al sistema operativo o deberían ser
parte de este último.
Ejemplos de esta clase de
herramientas, entre otras, son:
- Defragmentadores: Norton SpeedDisk.
- Reorganizadores de particiones: PartitionMagic de PowerQuest.
- Recuperadores de discos rígidos: Drive Wizard MBR de Micro 2000.
- Copiadores de discos rígidos: Drivelmage de PowerQuest, CopyWizard de Micro
2000.
- Antivirus (también entran en esta categoría).
- Formateadores de discos: Como el Safe Format de Norton Utilities.
- Desinstaladores y limpiadores de discos: CleanSweep Deluxe de Quarterdeck ,
Wflelete, Norton Uninstaller.
| |
|