Download Sistema antiviral para sistemas operativos Windows

Document related concepts
no text concepts found
Transcript
CAPITULO I
1. INVESTIGACIÓN PRELIMINAR
1.1. Virus
Introducción
Uno de los cambios más sorprendentes del mundo de hoy es la rapidez de
las
comunicaciones. Modernos sistemas
permiten que el flujo de
conocimientos sea independiente del lugar físico en que nos encontremos.
No sorprende la transferencia de información en tiempo real o instantáneo.
Se dice que el conocimiento es poder; para adquirirlo, las empresas se han
unido en grandes redes internacionales para transferir datos, sonidos e
imágenes, y realizan el comercio en forma electrónica, para ser más
eficientes. Pero al unirse en forma pública, se han vuelto vulnerables, pues
cada sistema de computadoras involucrado en la red es un blanco potencial
y apetecible para obtener información.
El escenario electrónico actual es que las organizaciones están uniendo sus
redes internas a la Internet, la que crece a razón de más de un 10%
mensual. Al unir una red a la Internet se tiene acceso a las redes de otras
organizaciones también unidas. De la misma forma en que accedemos a la
oficina del frente de nuestra empresa, se puede recibir información de un
servidor en Australia, conectarnos a una supercomputadora en Washington
o revisar la literatura disponible desde Alemania. Del universo de varias
decenas de millones de computadoras interconectadas, no es difícil pensar
que puede haber más de una persona con perversas intenciones respecto
de
una
organización. Por eso, se debe
tener
la
red
protegida
adecuadamente.
Cada vez es más frecuente encontrar noticias referentes a que redes de
importantes organizaciones han sido violadas por criminales informáticos
desconocidos. A pesar de que la prensa ha publicitado que tales intrusiones
son solamente obra de adolescentes con propósitos de entretenerse o de
jugar, ya no se trata de un incidente aislado de una desafortunada
institución. A diario se reciben reportes de ataques a redes informáticas, los
que se han vuelto cada vez más siniestros: los archivos son alterados, las
computadoras se vuelven inoperativas, se ha copiado información
confidencial sin autorización, se ha reemplazado el software para agregar
"puertas traseras" de entrada, y miles de contraseñas han sido capturadas a
usuarios inocentes.
Los administradores de sistemas deben gastar horas y a veces días enteros
volviendo a cargar o reconfigurando sistemas comprometidos, con el objeto
de recuperar la confianza en la integridad del sistema. No hay manera de
saber los motivos que tuvo el intruso, y debe suponerse que sus intenciones
son lo peor. Aquella gente que irrumpe en los sistemas sin autorización,
aunque sea solamente para mirar su estructura, causa mucho daño, incluso
sin que hubieran leído la correspondencia confidencial y sin borrar ningún
archivo.
De acuerdo a un estudio de la Consultora "Ernst and Young" abarcando
más de mil empresas, un 20% reporta pérdidas financieras como
consecuencia de intrusiones en sus computadoras (Technology Review,
Abril 95, pg.33). Ya pasaron los tiempos en que la seguridad de las
computadoras era sólo un juego o diversión.
Pues bien esto es solo una parte, ya que con el acceso a Internet
compartimos nuestros archivos en la red, esto a su vez hace posible la
transmisión de virus o ataques virales y si nuestros sistemas son
vulnerables con estos ataques se puede llegar a la pérdida de valiosa
información.
A todo esto nos plantemos la pregunta; ¿qué es un virus?, un virus es un
programa escrito en un lenguaje de programación, que altera el
funcionamiento de nuestro computador.1
Los virus pueden ser escritos por cualquier persona con conocimientos de
programación, aunque existen virus programados en C o hasta en Pascal,
pero que son muy extensos. También es posible desarrollar virus en
lenguaje Java y Visual Basic Scripts.
Para pasar desapercibidos los virus deben tener una muy pequeña
extensión, y por ello con el lenguaje Assembler se pueden producir
especies virales desde 1 hasta 3k.
Los creadores de virus pueden ser investigadores o educadores, pero la
mayoría de las especies son producidas por personas que actúan
irresponsablemente o de mala fe, podríamos decir que es un fenómeno
social de "graffiti cibernético".
La forma de infección viral es sencilla, ya sea por el puerto de
comunicaciones ( la red, el modem) ó discos magnéticos como diskets.
Las principales características de los virus son:
Software
Inactivo hasta una señal
Se carga en memoria
Destrucción ó se replica
Reorienta la lectura del disco
Los síntomas que presenta una máquina infectada son:
Su computador se vuelve demasiado lento
Se cuelga la maquina innecesariamente
Al iniciar el equipo no se puede acceder al disco duro
Cuando estamos trabajando en cualquier editor de texto, sale el
mensaje que no hay suficiente .
La luz del disco duro y de la unidad de diskets se prende y se apaga
sin estar trabajando.
Algunos programas no pueden ser ejecutados.
1.1.1. Tipos de Virus
Bomba lógica: se activa en un momento predeterminado buscando un
efecto destructivo preciso también pre-establecido.
Caballo de Troya: es un virus escondido en una aplicación de amplia
difusión , que consulta, modifica o destruye cierto tipo de datos del
usuario.
Gusano: virus que se instala en la memoria RAM; puede afectar toda
una red, frena las aplicaciones y puede bloquear la máquina, obligando a
reiniciar.
Virus de sistema o de aplicación: se instalan y propagan a partir del
sector de lanzamiento de los soportes o aplicaciones (pista de directorio,
"desktop" o "resource fork"
1.5. Estudio de Antivirus
1.2.1. Symantec (Norton Antivirus)
Certificado por la NCSA. Posee una protección automática en segundo
plano. Detiene prácticamente todos los virus conocidos y desconocidos
(a través de una tecnología propia denominada NOVI, que implica
control de las actividades típicas de un virus, protegiendo la integridad
del sistema), antes de que causen algún daño o pérdida de información,
con una amplia línea de defensa, que combina búsqueda, detección de
virus e inoculación (se denomina 'inoculación' al método por el cual
este antivirus toma las características principales de los sectores de
booteo y archivos para luego chequear su integridad. Cada vez que se
detecta un cambio en dichas áreas, NAV a visa al usuario y provee las
opciones de Reparar - Volver a usar la imagen guardada - Continuar No realiza cambios - Inocular - Actualizar la imagen.
Utiliza diagnósticos propios para prevenir infecciones de sus propios
archivos y de archivos comprimidos.
El escaneo puede ser lanzado manualmente o automáticamente a través
de la planificación de fecha y hora. También permite reparar los archivos
infectados por virus desconocidos. Incluye información sobre muchos de
los virus que detecta y permite establecer una contraseña para aumentar
así la seguridad.
La lista de virus conocidos puede ser actualizada a través de servicios
en línea como Internet, América On Line, Compuserve, The Microsoft
Network o el BBS propio de Symantec, entre otros.
El Test
El test de detección de troyanos camuflados ha sido algo duro para él. Si
bien ha quedado en 5ª posición dentro de los antivirus, la diferencia que
le han sacado los 4 primeros es demasiada para un antivirus de su
prestigio. En el test número 1 de detección de servidores de troyanos,
muchos, pero muchos troyanos los clasifica como genéricos (trojan
backdoor, trojan horse,...) por lo que a la hora de eliminarlos, al no
tenerlos identificados, no sabe cómo los eliminará pues cada troyano
tiene sus entradas de registro específicas, sus archivos específicos.
Además, en el caso de una hipotética limpieza manual no sabríamos de
qué troyano se pudiera tratar. Esto de detectar troyanos como genéricos
pasa con todos los antivirus y antitroyanos en alguna que otra ocasión,
pero los casos del Norton y del F-Prot son bastante exagerados. Así
que, el porcentaje de identificación debería ser mayor para un antivirus
de su prestigio. Su porcentaje de detección sin embargo aumenta
considerablemente en comparación con las pruebas realizadas sobre
miles de troyanos. Por lo demás: monitor fiable, configurable y posee
uno de los mejores analizadores de correo electrónico del mercado,
independiente del cliente de correo utilizado, actúa directamente sobre
los puertos 110 y 25. Su entorno gráfico es agradable, la suite NIS
(Norton Internet Security) está siendo imitada por otras casas (McAfee,
Bitdefender, PC-Cillin, KAV... este último sin firewall). Es decir, antivirus
+ firewall + controles varios de Internet. La parte antivírica y la de
seguridad en Internet de la suite NIS se complementa bastante bien. Si
algo no autorizado intenta conectarse a Internet automáticamente es
analizada por el antivirus.
1.2.2. McAfee Associates (Virusscan)
Este antivirus de McAfee Associates es uno de los más famosos.
Trabaja por el sistema de exploración de cada uno de los archivos.
Para escanear, hace uso de dos técnicas propias: CMS (Code Matri x
Scanning, Escaneo de Matriz de Código) y CTS (Code Trace Scanning,
Escaneo de Seguimiento de Código).
Una de las principales ventajas de este antivirus es que la actualización
de los archivos de bases de datos de strings es muy fácil de realizar, lo
cual, sumado a su condición de programa shareware, lo pone al alcance
de cualquier usuario. Es bastante flexible en cuanto a la configuración de
cómo detectar, reportar y eliminar virus.
El Test
McAfee v6.02 Pro. Es una suite tipo NIS, detecta casi todos los
servidores camuflados y casi todos los troyanos; roza el 100% en
ambos casos. Por otro lado es algo pesado y no es excesivamente
acertado ni intuitivo. Su nivel de detección raya el sobresaliente y ha
sido el antivirus que más troyanos ha detectado (97%). En cuanto al
monitor, bastante bien. Las pruebas de detección de exploits, las ha
superado. Su monitor de correo electrónico también pasa por ser uno
de los mejores. En conjunto ofrece FIABILID AD.
1.2.3. Panda Titanium
El Test
Tiene muy pocas opciones de configuración, su interface es lenta, su
enciclopedia de virus es lo único destacable. El escaneo online
(recomendable) detectó un troyano más que la versión instalada en
disco. Bajo porcentaje de detección para el renombre que tiene.
1.2.4. F-Prot
El Test
Identificó más de 60 troyanos como "sospechosos"... tipo Norton, no es
lo mismo, pero parecido (uno que sospechoso de ser troyano y el otro
que es un troyano genérico). Porcentaje de detección bajo, y el de
identificación, pésimo, casi un 70% de lo detectado no lo ha sabido
identificar. Lo útil de testear con el F-Prot es confirmar que como
solución de emergencia para usar en MS-DOS es aceptable.
1.2.5. AVP Karperski Antivirus
El Test
Es la referencia de un buen programa. Detecta clientes de troyanos,
cosa muy interesante. Buen porcentaje de detección de servidores
(95%), bien en comprimidos, buen monitor, gran detector de exploits y
scripts; muy fiable, actualizable. La versión 4 actualizada ha corregido
esos problemillas de falta de recursos.
1.2.6. Pc-Cillin
El Test
Algo lento el interface. El peor detectando servidores camuflados. Tan
solo detecto uno, el cual ha sido detectado por todos los antivirus. Nivel
de aceptación bajo.
1.2.7. BitDefender
El Test
Incorpora firewall, control de Actives. Suspende en la identificación
servidores camuflados y ni tan siquiera conoce muchos de los
"juntadores" o joiners. Los resultados del escaneo online fueron idénticos
a los del escaneo manual, lo que es una buena referencia para recurrir a
él como segunda opinión.
1.2.8. Eset NOD32
El Test
Casi se puede asegurar que no detecta los servidores camuflados
aunque sí conozca el joiner como tal (el programa juntador). Muy mal
en este aspecto. Es muy rápido en el escaneo y la interfaz no pesa al
sistema (no como la del Norton, PC-cillin,...). El monitor es fiable, pero
el nivel de detección bajo para un antivirus al que se le sitúa a la par de
"los grandes". Existe una versión específica para MS-DOS que puede
ser una opción válida en caso de emergencia.
1.2.9. DoctorWeb
El Test
Es muy rápido, al igual que el NOD32, detecta muchos servidores
camuflados. Por lo demás tiene un nivel bajo.
1.2.10. F-Secure
El Test
Tiene el motor del KAV, aunque detecto un troyano más, el Caín, que
es de los "dificilillos". Buen antivirus, ha superado la prueba de
detección de servidores camuflados, detecta clientes, etc. El monitor
bien.
1.5. Selección
Para la selección de los dos antivirus que serán parte del integrador nos
basamos en una prueba de detección de antitroyanos, no hemos de
contemplar este análisis como una comparativa exhaustiva de los
programas, simplemente se ha considerado lo siguiente:
El primer paso en la infección por troyano es la recepción del programa
servidor por nuestra parte, el cual suele enviarse renombrado o bajo
disfraz (adherido a otra aplicación). Es de suponer que si contamos en
nuestro sistema con un programa antitroyanos realizaremos un scanneo
sobre el archivo en cuestión, que ha de ser detectado como troyano por el
programa. Es esencial la detección del troyano en ese punto y, además,
un scanneo de un programa especializado en la detección de software
malicioso de control remoto nos debe ofrecer una garantía a prueba de
caballos de troya y debe reconocer la mayoría de los troyanos que nos
pudieran llegar.
Si por cualquier motivo, ese scanneo llegase a fallar o no se realizara , al
ser ejecutado por nosotros, el monitor del antitroyanos podría no obstante
detectar al troyano accediendo a la memoria, escribiendo en el registro de
Windows ó, simplemente, reconocerlo dentro de la base de datos del
propio programa de seguridad. No sería normal si antes ya ha fallado, pero
podría percibir alguna acción extraña una vez instalado el troyano en
nuestra máquina. Pues bien, se ha tomado en cuenta los servidores de los
100 troyanos seleccionados, separados de sus archivos de instalación y
clientes (es decir, lo que intentarían colocarnos en el PC), y los hemos
analizado con los diferentes programas. Para cada troyano hemos
dispuesto 3 tests diferentes:
Test número 1: Detección del servidor del troyano.
Ésta es la prueba más sencilla y habitual, la usual que se lleva a cabo
cuando se realizan las comparativas de antitroyanos. Consiste en meter
en una carpeta un gran número de servidores de troyano y analizarla con
los distintos programas.
Test número 2: Detección del servidor del troyano adherido a otra
aplicación y, por lo tanto, camuflado.
Teniendo en cuenta que el método actual más común o, por lo menos,
muy común de recepción de un troyano consiste en adherir el servidor del
mismo a otro fichero (otro ejecutable, una imagen, secuencia de audio, de
vídeo, etc) por medio de utilidades tales que "joiners", "droopers",
"binders". Así que hemos cogido una muestra significativa de troyanos,
hemos adherido estos troyanos con 20 juntadores distintos a otra
aplicación que actuase como portadora o señuelo y los hemos vuelto a
someter al respectivo análisis de cada programa de seguridad. A estos
troyanos camuflados se ha añadido otros 3 que vienen adheridos de serie
y que son más o menos conocidos y utilizados en La Red. Nos referimos
concretamente al "Deep Throat Sp00fer" o "Instala server" (deep throat
v2.0 camuflado), al "Ultimate Nuker" (Doly v1.6
camuflado) y al
"Whackjob" (NetBus v2.0 camuflado) para ver si se observaba algo
significativo. Ésta es por lo tanto una prueba de detección de joiners o,
dicho de otra forma, de detección de troyanos camuflados por medio de
joiners.
Test número 3: Detección del troyano adherido a otra aplicación al
ser éste ejecutado.
Este test se ha llevado a cabo sobre los servidores de troyano adheridos a
otra aplicación (los del test número 2) porque éste sería el siguiente paso
que se daría si a la recepción de un archivo y tras someterlo al análisis de
nuestro antivirus y/o antitroyanos, el mismo fuera negativo y nos indicara
(equivocadamente)
que
dicho
fichero
estaba
limpio.
Es
decir,
ejecutaríamos el archivo. Esta prueba va a comprobar básicamente la
eficacia de los monitores en tiempo real de los antivirus y antitroyanos.
Se ha realizado la misma prueba en dos equipos diferentes, con dos
sistemas operativos distintos: Windows XP y Windows Millenium. El
funcionamiento de los troyanos ha sido anteriormente verificado. De esta
forma se asegura una mayor fiabilidad en los resultados.
Siempre se han activado en todos los programas las opciones de detección
al máximo y han sido actualizadas sus bases de datos antes de efectuar la
prueba.
1.3.1. Cuadro Comparativo
Antivirus
Actualizacion
Certificado Acierto
Seleccion
es
por
ado
Por Internet
NCSA
la de
Búsqued
a
Symantec
Si
Si
Bueno
No
Si
Si
Mu y
No
(Norton
Antivirus)
McAfee
Bueno
Associates
(VirusScan)
Si
Si
Bueno
No
F-Prot
Si
Si
Bueno
No
AVP
Si
Si
Excelente Si
Pc-Cillin
Si
Si
Regular
No
BitDefender
Si
Si
Bueno
No
Aset NOD32
Si
Si
Regular
No
DoctorWeb
Si
Si
Regular
No
F-Secure
Si
Si
Mu y
Si
Panda
Titanium
Kasperski
Antivirus
Bueno
1.3.2. Explicación del cuadro comparativo
Los antivirus fueron probados en los equipos de un centro de cómputo
y relacionados de acuerdo al informe tomado de Soporte e
Investigación Tecnológica, según se explica en el capítulo III. En este
sentido cada vez que cualquier fabricante de un sistema operativo
anuncia un problema de seguridad o eleva el nivel de peligro de una
vulnerabilidad, se vuelve a generar un montón de ruido en contra de
ese fabricante. Pero, eso sí, ese ruido se vuelve clamor generalizado
cuando el fabricante es Microsoft.
Desde luego, tan peligrosa puede ser una vulnerabilidad en Oracle
como en los sistemas Microsoft, y nadie ha dicho que Oracle deba
iniciar un proceso de "Trust computing" en sus productos, cuando
también han sido detectadas muchas otras
vulnerabilidades en el famoso programa de gestión empresarial.
La recomendación directa de Varios especialistas es utilizar más de un
antivirus a la vez en la PC, en cambio la instalación de la mayoría de
los antivirus hace hincapié en lo contrario ("desinstale otros antivirus
antes de..."). En definitiva no queda muy claro si esto es bueno o malo,
lo cierto es que es posible ya que todas las pruebas que realizamos
con estos programas se hicieron con otros antivirus instalados y no
presentaron mayores inconvenientes.1
Escogitamiento del FSecure
a)
Maquina de Redundante: Usa tres mecanismos de búsqueda;
POR: nombre, heurística y las maquinas del propio FSEcure más la
maquina del AVP.
b) Control Centralizado
c) Actualización Automática
Escogitamiento del Karspersky
a) Obtiene mayor cantidad de reconocimiento viral
b) Peso de la aplicación
c) Actualización automática
Cuadro de capacidades del los antivirus
2
1.4.
Propagación de los Virus
La inmensa mayoría de las infecciones víricas actualmente se deben a
infecciones por gusanos (programas que se transmiten a través de las
redes e Internet) y troyanos (los cuales suelen ejecutar acciones ocultas
e indeseables) realizadas en su mayoría de las veces a través del correo
electrónico. Estos virus se activan mediante la ejecución de adjuntos en
el correo electrónico o simplemente mediante la lectura de correos
recibidos con código malicioso dentro de HTML.
Existe la posibilidad que en el futuro aparezcan nuevos virus similares al
Nimda o al Klez, los cuales podrán tomar ventaja de las vulnerabilidades
existentes o de las que lleguen a presentarse. La educación y la
conciencia basada en estrategias adecuadas de seguridad es la única
forma de prevenir los posibles daños. Un posible colapso de la Internet
(debido a una saturación del tráfico, a causa de los virus) no tiene tanto
sustento a priori, pues sus límites antes que ser tecnológicos tienden a
ser más bien culturales y ante una situación de esta naturaleza todavía
se tienen elementos para prevenirla.
Hoy en día, dado lo sofisticado que son estos programas, uno solo de
ellos tiene la característica que no le piden nada a sus antecesores,
constituyendo de esta manera, la principal causa de los estragos
producidos. El gusano Nimda (que llegó como troyano y destruye el
sistema como un virus) y el Klez nos abren todo un abanico de
posibilidades y sorpresas inesperadas que ponen a tambalear nuestros
esquemas clásicos de protección.
Virus, Troyanos, y gusanos han existido desde los inicios de los
sistemas operativos actuales y de Internet. La contienda “virus antivirus” ya tiene sus dos décadas y nada nos indica que vaya a
terminar. No se puede descartar, por ejemplo, que en un futuro cercano
los virus atacarán teléfonos celulares programables y se propagarán
cuando encuentren algún vínculo abierto entre dos aparatos. La principal
vía de contagio, tal como hoy ocurre con las computadoras, será el
correo electrónico, que ya está disponible en el mundo de la telefonía
móvil.
Remarcando esto, los virus del futuro no sólo harán blanco en
computadoras y servidores sino que serán diseñados para atacar
teléfonos celulares inteligentes y asistentes digitales personales. Estos
códigos maliciosos se prevé que incluso podrían llegar a grabar
conversaciones y enviarlas vía correo electrónico a otros usuarios sin el
consentimiento del dueño del aparato, suprimir o alterar estados
financieros almacenados en los celulares, o incluso cambiar los números
telefónicos
contenidos
en
la
memoria
de
estos
artefactos
y
reemplazarlos con otros números de larga distancia, con el fin de
generar cuentas y débitos de proporciones enormes.
Más aun, no es descabellado pensar, que las guerras del futuro cercano
entre países desarrollados tendrán lugar entre dos redes informáticas,
en las bolsas y mercados financieros interconectados, entre naves no
tripuladas y satélites. De hecho, mientras el capitalismo prevalezca y
esta situación nos alcance, las armas convencionales solamente se
llegarían a utilizar con los países subdesarrollados.
Si miramos un poco al futuro y pensamos en la domótica (control de
edificios, casas, etc, mediante hardware y software), vislumbramos ya la
introducción de Internet en nuestra vida doméstica. De hecho, algunos
operadores de televisión por satélite ya pregonan la disponibilidad de
Internet a través de la televisión. De modo que tal vez dentro de poco,
junto con nuestra televisión tengamos que comprar algún tipo de
dispositivo antivirus. Y no pensemos sólo en la televisión, ya que otros
electrodomésticos también serán alcanzados por los largos tentáculos
de Internet.3
El futuro nos augura mayor número de virus y más sofisticados, en lo
que va del 2004 ya se ha alcanzado la cifra que se tenía al cierre del año
2003. Algunas posibles tendencias pueden ser las siguientes:
Gran incremento en el número de virus, gusanos o backdoors. La
frecuencia avasalladora con que van apareciendo nuevas variantes
de malware (códigos maliciosos) nos predispone a mantener una
política coherente y adecuada de actualizaciones. A la hora de
escoger un software antivirus se ha de tener en cuenta la capacidad
de actualización y la velocidad de respuesta de los laboratorios de las
empresas, así como las capacidades heurísticas (detección de
posibles virus nuevos) que tengan integradas estos productos.
!
Java
y
Active X.
Ambos
de
estos
componentes
gozan
presumiblemente de mecanismos de seguridad para evitar la difusión
de virus pero tienen algunos agujeros (de ser así, Windows XP sería
verdaderamente una promesa) . La seguridad de ActiveX se basa en
que sólo puede ejecutarse código autenticado. Eso es mejor que
nada pero aún deja mucho que desear, no se puede apostar a que
autenticar sea una garantía absoluta o infalible.
Más conectividad. La demanda de mayor ancho de banda incrementa
con cada vez más información en circulación. A mayor intercambio
de información, mayor intercambio de todo tipo de programas o
archivos incluyendo a los diversos gusanos que vayan surgiendo.
Lenguaje de macros más potente, universal y manejable. Los
fabricantes de software incluyen cada vez lenguajes de macro más
potentes y sencillos de utilizar pero como contrapartida, más
vulnerables
a
los
ataques
o
incorporación
de
códigos
no
necesariamente benévolos. Aparentemente los virus de macro ya no
son los que dominan la escena, pero bien podrían irse acompañando
en el ciberespacio de gusanos cada vez más potentes (de hecho
Melissa nos dio una adelanto de situaciones de este tipo) y de esta
manera afianzar novedosamente su presencia.
Más virus destructivos. El código fuente del virus CIH (capaz de
sobrescribir en determinadas circunstancias el BIOS y dejar la
máquina absolutamente inoperante), los más diversos kits de
creación de virus y otras tantas linduras están al alcance de todo
mundo en Internet. Esta información alienta a otros programadores
de virus a generar otros, e incluso a auténticos aficionados
(“lamercillos” y crackers) a sentirse como niños en dulcería con el
simple hecho de jugar con estas cosas.
Lo anterior nos lleva a pensar (sin mucho temor a equivocarnos) que el
futuro de los antivirus está fundamentalmente en el desarrollo sólido de
la heurística, y en la integración de éstos hacia una estructura más
sólida de software que contemple a antivirus, cortafuegos, detectores de
intrusos y autenticación como un solo producto.
Después de los 700 millones de dólares de pérdida que nos dejó el virus
del amor (I love you) en sólo cinco horas alrededor del planeta, todos
quedamos un poco sensibles al tema.
1.5. Conclusiones
La alternativa de solución será crear una Aplicación (Integrador Antiviral,
Servidor), la misma que en el momento de entrar en ejecución realizara
búsquedas redundantes mediante dos o más programas antivirales.
Además la creación de una aplicación que se instalará en todos los equipos
del Campus Universitario (Cliente), la mismo que funcionará como un
planificador de tareas y hará la llamada al Servidor en el momento indicado.
Los antivirus ha tomarse en cuenta según nuestro cuadro comparativo
serán: AVP Kasperski Antivirus y F-Secure.
Además
podríamos
tomar
en
cuenta
como
complementario
un
Antittro yano, pero en general podemos concluir que los Antitroyanos son
programas prescindibles, osea, no son fundamentales. Si se cuenta con
un buen antivirus no es en absoluto necesario incorporar a nuestro
sistema un programa antitroyanos. Alguno se podría combinar con un
antivirus de forma complementaria a éste, en el caso de que el programa
antitroyanos incorporara, además de un buen nivel de detección, algunas
opciones interesantes, y aun así tampoco estaría muy claro que nos
resultara verdaderamente necesario, pues hay programas específicos para
la comprobación de puertos, utilidades de red, protectores del Registro;
etc, que realizan estas tareas y ningún antitroyano, salvo el TDS, las
incorpora todas juntas, de forma que tampoco sería un sustituto de todas
aquellas herramientas. Podríamos reunir varias de ellas en una sola
aplicación, eso sí, y aligerar a nuestro sistema de aplicaciones residentes
en memoria. ¿Que con un antitroyano que incorpore varias de dichas
opciones nos ahorramos la instalación unas cuantas herramientas
específicas? Es posible pero ¿es más completo el monitor de puertos de
un antitroyanos que un firewall? ¿Es mejor el scanner de registro de un
antitroyanos que una aplicación específica de registro y programas
activos? ¿Detecta más troyanos un antitroyanos que un antivirus? Por lo
general responderíamos que NO a todas estas cuestiones.
El estudio y programa realizado también aporta considerablemente a las
recomendaciones realizadas por el Dpto. de Soporte e Investigación
Tecnológica a través del Ing. Greyson Alberca, estas son:
-
Se necesita soporte continuo para la herramienta: De hecho las
actualizaciones que soporta son por fechas de acuerdo al antivirus,
además se puede incluir otros si fuese necesario.
-
Los usuarios deben ser capacitados: El mecanismo de capacitación
tiene que ser continuo aunque el usuario no tiene mucho que hacer en el
uso de la herramienta.
-
En el caso de los archivos comprimidos bajo el formato ZIP, que fueron
descargados por Internet, estos deberán ser revisados inmediatamente
después de haber sido desempaquetados y antes de ser ejecutados: La
característica de revisión dependerá siempre del planificador de tareas.
-
Este mismo tratamiento se deberá dar a los archivos anexados
(adjuntos), enviados por correo electrónico, cuidándose de no abrir
mensajes de origen desconocido o sospechoso.
-
Restringir al máximo el uso de los equipos, por parte de personas ajenas
a las actividades propias de la dependencia.
-
Permitir seguridad en Correo.
-
Protección de virus silvestres y zoológicos (antiguos).
-
Permitir administración remota.
-
Permitir actualización automática.
-
Usar un mínimo en recursos: Actuará con cliente - servidor
-
Soporte en diferentes plataformas.
-
Permitir transparencia al usuario.
-
Respuesta efectiva a los últimos virus: Utiliza máquinas redundantes
-
Soporte al máximo.
CAPITULO II
2. DISEÑO
INTRODUCCION
Para continuar con la etapa de diseño, tenemos que conocer a ciencia
cierta algunos conceptos tales como: búsquedas redundantes, algoritmos y
técnicas de búsqueda, políticas de seguridad, y otros que nos servirán para
determinar cuales serán las características principales del software en
construcción.
2.1. Verificación de Exámenes Redundantes
Se parte de la pregunta ¿Qué es un Examen Redundante?, pues bien;
un examen redundante nos permite
volver a realizar la búsqueda y
desinfección de virus en un computador a partir de la respuesta
afirmativa de la presencia de algún virus luego de haber realizado con
anterioridad la búsqueda con otro software antiviral. Cual es la razón ó el
¿Por qué? de su uso: permite minimizar los riesgos de propagación de
los virus. De hecho en una consecución de algoritmos de antivirus es
necesario plantear cada una de las herramientas verificadas como
examen antiviral, ya que cuando no funciona un elemento de software en
relación a la cura de un virus llamamos a la máquina de otro antivirus a
pesar de que cada uno sostenga su propia máquina.
Cada uno de estos programas (Antivirus), manejan métodos heurísticos
propios para realizar la detección de infección o no dentro de un
computador.
2.1.1. Heurística de los Antivirus.
Las técnicas heurísticas nacen de la necesidad de una “detección
genérica” de los virus informáticos. Se llama detección genérica a
la posibilidad de detectar “cualquier virus” aún sin haberlo
analizado antes y sin estar en la base de datos del antivirus que
se esté considerando. Esto pareciera que carece de sentido pero
es tan simple como buscar “instrucciones comunes” de los virus
para advertir de la posibilidad de que un archivo o programa esté
infectado. .
Cuando se analiza las primeras instrucciones de cualquier
archivo, se vera instrucciones para detectar los parámetros de la
línea de comandos, borrar la pantalla, llamar a alguna función,
ejecutar alguna macro, etc. No obstante tratándose de un virus
suelen ser otras bien diferentes como activar el cuerpo del virus o
buscar más archivos para intentar implantarles su código.
La experiencia es sin duda lo que lleva a una persona a reconocer
algo infectado de algo limpio en cuestión de segundos. Esa
“experiencia” se ha pretendido introducir en los programas
antivirus bajo el nombre de “heurística”.
El funcionamiento de la heurística se traduce en: primero se
analiza cada programa sospechoso sin ejecutar las instrucciones,
lo que hace es desensamblar o "descompilar" el código de
máquina para deducir que haría el programa si se ejecutara.
Avisando que el programa tiene instrucciones para hacer algo que
es raro en un programa normal, pero que es común en un virus.
Sin duda el principal problema de las técnicas heurísticas ha sido
los falsos positivos. A pesar de que se han mejorado mucho en
los últimos años, siguen sin conseguir demasiada efectividad
(aunque hay algunas excepciones). El problema más que en la
calidad de la rutina heurística está en la interpretación que el
usuario realice de ese aviso heurístico. Si es poco experimentado
estará constantemente mandando muestras a su casa de antivirus
ya que “el antivirus le dijo que podía tener un virus”.
La heurística es la característica de búsqueda arbitraria nos lleva
a considerarla como un sistema de detección mejorada que al
incluirla los antivirus permite establecer un sistema de alerta y de
prevención ante la aparición de mutaciones de virus o de nuevos
virus.
Esta técnica permite "barrer" diferentes tipos de códigos dentro de
los archivos, que sean susceptibles de ser malignos. Códigos que
son genéricos dentro de los archivos maliciosos y que siempre
suelen ser parecidos. O por lo menos respetar parte de las
cadenas de comandos que activan los virus.
Pero ¿cómo opera un antivirus? Los virus tienen patrones de
códigos que son como sus "huellas digitales". Los software
antivirus buscan estos patrones, pero sólo de los que tienen
almacenados en su lista (por esto la actualización es tan
importante). Estos productos también pueden valerse de la
heurística, es
decir, analizan
los
archivos
para
detectar
comportamientos similares a los de los virus.
Cada día crece el número de nuevos virus y la alternativa para
poder neutralizarlos, sin haber programado antes el antivirus para
su reconocimiento, es la denominada “búsqueda heurística”. A
través de ella, el programa antivirus analiza el código de los
programas buscando instrucciones, acciones sospechosas o
indicios que delaten la presencia de virus en la computadora, de
acuerdo a los patrones habituales empleados por los códigos
maliciosos.
El método Heurístico es una tecnología de programación que
dentro de sus rutinas de detección de especies virales, incluye las
cadenas clásicas que son similares, parecidas o afines a virus
auténticos. El método heurístico, si no está bien programado, es
susceptible de incurrir en resultados falsos positivos o negativos.
Además, al encontrar un virus desconocido, variante de otro
existente, el antivirus que emplea este método de búsqueda no
podrá eliminar eficientemente el virus y mucho menos reparar el
archivo o área afectada.
Para que un antivirus detecte y elimine eficientemente a un virus
debe incluir en la base de datos de sus rutinas de detección y
eliminación el exacto micro código viral de esa especie. Sin
embargo la técnica de búsqueda heurística de virus por "familias"
es una forma eficiente de detectar a especies virales que
pertenecen a una misma familia, aunque no es un método
absolutamente exacto o eficiente.
Existen algunos programas que, sin llegar a ser virus, ocasionan
problemas al usuario. Estos no-virus carecen de por lo menos una
de las tres características identificatorias de un virus (dañino,
autorreproductor y macros). Veamos un ejemplo de estos no virus: "Hace algunos años, la red de I.B.M., encargada de
conectar más de 130 países, fue virtualmente paralizada por
haberse saturado con un correo electrónico que contenía un
mensaje de salutación navideña que, una vez leído por el
destinatario, se enviaba a sí mismo a cada integrante de las listas
de distribución de correo del usuario. Al cabo de un tiempo, fueron
tantos
los mensajes
que
esperaban ser
leídos
por sus
destinatarios que el tráfico se volvió demasiado alto, lo que
ocasionó la caída de la red".
Asimismo, es necesario aclarar que no todo lo que altere el
normal funcionamiento de una computadora es necesariamente
un virus.
Por ello, daré algunas de las pautas principales para diferenciar
entre qué debe preocuparnos y qué no:
2.1.2. BUGS (Errores en programas)
Los bugs no son virus, y los virus no son bugs. Todos usamos
programas que tienen graves errores (bugs). Si se trabaja por un
tiempo largo con un archivo muy extenso, eventualmente algo
puede comenzar a ir mal dentro del programa, y este a negarse a
grabar el archivo en el disco.
Se pierde entonces todo lo hecho desde la última grabación. Esto,
en muchos casos, se debe a ERRORES del programa. Todos los
programas lo suficientemente complejos tienen bugs.
2.1.3. Falsa Alarma.
Algunas veces tenemos problemas con nuestro hardware o
software y, luego de una serie de verificaciones, llegamos a la
conclusión de que se trata de un virus, pero nos encontramos con
una FALSA ALAR MA luego de correr nuestro programa antivirus.
Desafortunadamente no hay una regla estricta por la cual guiarse,
pero contestarse las siguientes preguntas puede ser de ayuda:
¿Es sólo un archivo el que reporta la falsa alarma (o quizás
varios, pero copias del mismo)? ¿Solamente un producto antivirus
reporta la alarma? (Otros productos dicen que el sistema está
limpio). ¿Se indica una falsa alarma después de correr múltiples
productos, pero no después de bootear, sin ejecutar ningún
programa?
Si al menos una de nuestras respuestas fue afirmativa, es muy
factible que efectivamente se trate de una falsa alarma.
Hay tipos de virus que no son reales son los llamados Hoax o
Hoxes que realmente son mensajes de e-mail diciéndote que te
borran el disco duro etc.
2.1.4. Programas Corruptos
A veces algunos archivos son accidentalmente dañados, quizás
por problemas de hardware. Esto quiere decir que no siempre que
encontremos daños en archivos deberemos estar seguros de
estar infectados.
2.2.
Enlaces de Antivirus
Debido a que el comportamiento de los virus es variante y depende de la
heurística de los mismos, algunos de ellos no pueden ser eliminados por
determinado antivirus. Las causas por las que se realiza un enlace es
porque el comportamiento de los virus puede ser: repetitivo, recursivo y
redundante.
2.2.1 Comportamiento Repetitivo (While)
Sea Ko una enumeración efectiva de los programas-while. Para
cualesquiera {Ai} i 0 definimos i,j
0.
Se hace referencia al numero de ejecuciones (infecciones del
virus), es decir K1, K2, K 3, … K n
Consideremos las siguientes tres funciones
fi = fAj : la función computada por el i ésimo programa-while
fi(j) : valor de la i ésima función de la j ésima entrada
Donde fi es la primera infección, y fAj es cualquier otra infección
(mismo virus). Por lo tanto la primera infección, será igual a las
demás del mismo tipo (mismo virus).
fi(j) es la cantidad de veces que un archivo infectado puede
infectar a los demás archivos (mismo virus).
Resulta evidente que estas tres funciones son programables. Un
virus es un programa P=Pm tal que Rep: (repetición) para todo
P(y) = i. Así pues, un virus P es un programa que se
autorreproduce. El Teorema de Autorreproducción puede, pues,
parafrasearse como la existencia de virus.
P(y) = i , lo que nos quiere decir que la infección de cualquier
archivo va ha ser igual a la primera infección.
En
otras
palabras
al
conocer
el
comportamiento
de
autoreproducción de un virus, el mismo que se reproduce
mientras se abre, nos referimos al comportamiento while,
generando matrices en distintas direcciones. Generalmente los
virus y caballos de Troya tienen este comportamiento.
2.2.2 Comportamiento Recursivo
Cuando un virus se carga en memoria y siempre destruye nos
referimos al comportamiento recursivo. Lo que primero hacen los
virus con este comportamiento es cargarse en memoria y luego se
autorreproduce llamándose a si mismo. Es por eso que cuando
aparentemente eliminamos un virus con este comportamiento al
presionar por ejemplo en Windows XP ctrl+alt+supr para visualizar
el administrador de tareas aparece la ejecución del archivo
infectado que ya habíamos borrado; ¿por qué? nace la pregunta,
pues simple el archivo se borro pero quedo una copia y muchas
más
con
el
mismo
nombre
cargados
en
memoria.
El
comportamiento recursivo genera matrices infinitas de orden m*n
y de orden i*j*k todo depende de la heurística del virus. Los
gusanos
y
caballos
de
trolla
tienen
generalmente
comportamiento.
M= [m ij] i,j
0
Ejemplo:
M=0*0
No existe
M=0*1
-
M=1*0
I
M=0*5
----De aquí el lugar que ocupa :
0*1, 0*2, 0*3, 0*4, 0*5
Y el espacio que ocupa :
este
n1
N2
n3
n4
n5
n1=0*1=1/n
n2=0*2=2/n
n3=0*3=3/n
n4=0*4=4/n
n1=5*5=5/n
Como habíamos dicho que el comportamiento o la matriz
generada por un virus dependen de su heurística, presentamos
aquí un algoritmo para una matriz tridimensional M[0,j,k]:
Y
1
Z
1
Mientras y
j
Mientras z
k
Limpiar M[0,y,z]
Z
Y
Presentar
z +1
y+1
Virus eliminado
2.2.3. Comportamiento Redundante
Cuando un virus es reconocido y eliminado en tiempo de
ejecución y al encender el equipo aparece nuevamente, estamos
frente a un virus redundante. Este comportamiento de los virus
tiene como limitación la capacidad de memoria RAM, ya que en el
menor de los casos ocupa M[m*1]ó M[1*n] y en el peor de los
casos M[m*n]: ocupando siempre una misma matriz limitada.
Un programa P(j) en una matriz ocupa el lugar n/j en memoria y la
capacidad máxima
del mismo
que puede ocupar
dependiendo de la heurística del virus.
"#
$
es
n,
Donde n es el número de archivos ó la capacidad máxima de
memoria
2.3.
Manejo de Bases Antivirales
En la mayoría de certificaciones y comparativas se suele enfrentar los
productos antivirus contra varias colecciones de muestras infectadas. El
porcentaje de aciertos en las diferentes colecciones suele ser el
indicador más determinante a la hora de valorar un producto.
Las colecciones pequeñas, de virus más significativos y activos, como la
"InTheWild", apenas presentan diferencias de resultados entre la
mayoría de los productos y, más que un indicador comparativo, sirve
como mínimo exigible.
Para marcar diferencias en las comparativas, y también como prueba de
fuego en las certificaciones, se suele utilizar la llamada colección "zoo",
que básicamente consiste en un conjunto de todas las muestras
infectadas que se posee.
La "zoo" comprende, además de los virus más relevantes y novedosos,
toda muestra que el evaluador haya conseguido recolectar a lo largo de
su carrera, desde los primeros virus que aparecieron, de los que hoy día
ya no existen pruebas de infecciones reales, hasta aquellos que nunca
han visto la luz ni infectado a nadie, pero que forman parte de pruebas
de laboratorio o colecciones privadas.
Llegados a este punto, el usuario debe ser consciente que de los 60.000
o 70.000 virus que hoy día algunos antivirus afirman detectar, tan sólo
unos cientos representan el 99% de las infecciones reales durante un
año.
La necesidad de que un antivirus detecte un virus de los años 80 que
hoy día no tiene posibilidades de propagación bajo Windows, o un virus
que nunca ha salido a la luz y no ha infectado a nadie, puede llegar a ser
discutible. Aunque las comparaciones y extrapolaciones en este campo
no son buenas, es como si alguien se vacunara contra una enfermedad
ya erradicada o contra un virus biológico de laboratorio, por si algún día
resulta que hay un brote.
Pero la realidad es que la posibilidad, por remota que sea, existe, y el
deber de un antivirus es ofrecer el mayor grado de protección posible, en
especial si se trata de virus conocidos.
El problema real de las colecciones "zoo" es que no están depuradas. Es
decir, existen muestras consideradas virus (o cualquier otra variante de
malware, como gusanos, troyanos, etc.) que en realidad no lo son, ni
presentan ningún efecto nocivo ni dañino. En definitiva, no tendrían que
formar parte de la colección, ni tendrían que ser detectadas por los
antivirus.
Para la confección de las propias comparativas antivirus de Hispasec,
revistas especializadas, así como para análisis e informes técnicos,
necesitamos contar con el mayor número de muestras posibles para
mejorar el trabajo de búsqueda y detección. Entre otras fuentes,
regularmente
recorremos
las
webs
de
creadores
de
virus
y
coleccionistas que permiten la descarga de muestras de forma pública a
través de Internet y, por tanto, son especimenes que potencialmente
podrían llegar a cualquier usuario.
Una de las tareas más tediosas para mantener la colección de muestras
de Hispasec no es la recolección, sino la comprobación de las mismas.
Afortunadamente a lo largo de los años se han desarrollado varias
herramientas que de forma automática nos hacen las primeras pruebas y
son capaces de descubrir las muestras falsas más comunes.
Sin
embargo, son
muchas
las
comparativas, incluida
algunas
certificaciones, que a juzgar por algunos resultados no realizan una
depuración de las colecciones. Como resultado, sus colecciones "zoo"
están adulteradas con muestras que no son virus, y ello se extrapola a
los indicadores que obtienen los diferentes productos antivirus.
Lo peor aun es que la mayoría de las casas antivirus, tal vez
condicionadas por estas comparativas y certificaciones donde se podían
ver perjudicadas, han optado por incluir en su base de datos de firmas
esas falsas muestras como si fueran auténticos virus. Otra posibilidad
podría ser la inversa, que las casas antivirus hubieran sido las primeras
en incorporarlos como virus a sus bases de datos y que las
comparativas los incluyeran a posteriori en sus colecciones al comprobar
que algún antivirus las reconocían como virus, el caso es que el circulo
vicioso no hace más que aumentar.
En realidad hay muchos otros tipos de muestras que suelen ser incluidas
en las bases de datos de firmas antivirus y que en realidad no tienen
ningún efecto dañino, desde binarios que ni siquiera pueden llegar a
ejecutarse, porciones de virus que están corruptos y no pueden
activarse, etc.
2.4.
Llamadas en línea del Software Antiviral
¿Cómo repercute el número de firmas que reconoce un motor antivirus
en su rendimiento? Parece claro que existe una relación directa, a mayor
número de firmas a chequear, mayores recursos necesitará, y la
velocidad de proceso será menor, lo que perjudica al resto de procesos
o aplicaciones que existan en el sistema.
El hecho de que los antivirus reconozcan virus falsos, además de la
publicidad engañosa que pueda generar o la búsqueda de buenos
resultados artificiales en comparativas y certificaciones de dudosa
calidad, tiene un efecto negativo en el comportamiento del propio
antivirus que puede penalizar el rendimiento del sistema e incluso hacer
peligrar la seguridad de la información.
La solución aunque pueda parecer sencilla, bastaría con depurar las
firmas de detección de los antivirus, tiene efectos negativos inmediatos a
nivel
comercial: podrían
verse
perjudicados
en
comparativas
y
certificaciones que cuenten con muestras falsas.
Las casas antivirus se encuentran en muchas ocasiones en la
encrucijada de diseñar sus productos pensando en la protección real del
usuario o en los requisitos de los evaluadores. Paradójicamente, además
de no coincidir en algunas ocasiones, pueden existir incluso intereses
opuestos. Normalmente se opta por un punto intermedio, intentar
acometer los requerimientos de ambos, aunque a costa del detrimento
en la optimización del producto.
Llegado este punto, no se debe caer en la tentación de arrojar sobre las
espaldas de las casas antivirus toda la responsabilidad. De hecho,
buena parte de esta percepción errónea de lo que debe ser un buen
antivirus es achacable a las revistas especializadas y analistas que se
dedican a crear opinión sobre las soluciones antivirus.
Si más de una vez se ha dicho que muchos productos antivirus se
encuentran anclados en el pasado, por no integrar nuevas tecnologías
de detección más allá de las firmas, las comparativas y certificaciones
están mucho peor. Uno de los casos más sonados fue el del
comparativo antivirus de CNET en 2001, entre otros despropósitos,
llegaron a utilizar simuladores de virus en vez de muestras reales para
algunos tests. La mayoría siguen basando su modelo de evaluación en
arcaicas pruebas de detección ITW y Zoo. 4
Las comparativas y certificaciones deben de evolucionar, incluyendo
nuevos tests acorde con las características de los nuevos especimenes
que aprovechan Internet para su propagación, así como evaluaciones
que contemplen las nuevas
%
&' &
tecnologías
antivirus que se están
incorporando. Por otro lado, deberían de incorporar mecanismos para la
depuración de sus colecciones para evitar el efecto "zoo", incluyendo
tests de detección de falsos virus cuyos indicadores se relacionen con
tests de rendimiento del motor.
Los antivirus deberían de dejar de utilizar el concepto de número de
virus detectados como arma de marketing, ya que no tiene ningún
sentido que sigan en una guerra de cifras que de sobra saben no tiene
ningún valor real y que tarde o temprano terminará por perjudicarles.
Además, deberían optimizar su base de datos de firmas para reconocer
sólo los especimenes que realmente pueden llevar a cabo acciones
dañinas, eliminando los falsos virus. En caso de verse perjudicados en
comparativas
o certificaciones
que utilicen colecciones
"zoo" no
depuradas, con muestras falsas, deberían denunciar públicamente los
resultados.
Los usuarios deben de tomar conciencia de que el número total de virus
que dice reconocer un antivirus es un dato sin ningún valor. Además de
todo lo comentado con anterioridad respecto a los falsos virus, la propia
tecnología de detección por firmas lleva a resultados dispares. Por
ejemplo, dado 10 variantes de un mismo virus, un producto puede
necesitar 10 firmas diferentes mientras otro puede detectar las 10
variantes de forma más genérica con sólo 2 firmas. A efectos de
marketing, el primero sumará 10 virus mientras que el segundo contará
sólo 2, sin embargo la detección del segundo producto es más genérica
y efecti va. Tan sólo las comparativas con colecciones depuradas pueden
ofrecer las diferencias reales entre el poder de detección de los distintos
motores antivirus, nunca el número de virus que el propio producto
anuncia.
2.5.
Políticas de Implantación del Integrador
Para el desarrollo del software debemos tomar en cuenta algunas de las
características principales de la funcionalidad del integrador, tal es el
caso de las seguridad, la planificación, el personal encargado que
tomara las riendas de la implantación del mismo (horarios de ejecución,
actualizaciones de los antivirus, parches y reportes) y de cómo influirá el
software en el desempeño de las actividades del Departamento de
Sistemas Especializados.
2.5.1. Verificación de Seguridades
Filtros de contenidos, firewalls, y ahora funcionalidades anti-spam
y detector de intrusos. Cada vez son más los antivirus que dejan
de ser herramientas especializadas en la detección del malware y
amplían sus funciones.
La carrera por la integración de aplicaciones de seguridad ha
comenzado. Las casas antivirus están en una espiral de
crecimiento a la búsqueda de poder ofrecer soluciones completas,
tanto productos como servicios, que puedan abarcar todas las
necesidades de seguridad de empresas y usuarios finales. En
este último sector es donde aparecen en escena las suites de
seguridad, partiendo del núcleo del antivirus como herramienta
con mayor implantación y éxito en el mercado.
Que las amenazas de seguridad han aumentado y mutado con
respecto a épocas pasadas es evidente. Hoy día la instalación de
un antivirus clásico no garantiza la seguridad de un sistema, han
surgido nuevas amenazas que van más allá de los virus. De igual
forma, la propia evolución del malware, en estrecha relación con
Internet, pone en entredicho la detección basada en firmas y
requiere nuevas estrategias para detectar de forma más proactiva
y genérica a los nuevos especimenes con gran poder de
propagación en apenas minutos.
Llegados a este punto surgen algunas dudas, partiendo de la
relativa necesidad de ciertas funcionalidades, o de la falta de
otras, hasta la pregunta de ¿solución integrada y compacta, o
productos especializados e independientes?
Es un hecho que la incorporación de nuevas funcionalidades no
siempre responde a las necesidades reales de seguridad, en
ocasiones vienen a encarecer el producto, complicar su uso, a
requerir más recursos de sistema, y a perjudicar el rendimiento
global.
A su favor, estas soluciones compactas de seguridad evitan
problemas de incompatibilidad e interferencias que pueden surgir
entre productos independientes y terceras marcas, además de
ofrecer
una
verdadera
integración
entre
las
diferentes
funcionalidades desde un único interfaz, y un precio más ajustado
en el caso de adquirir todas las funcionalidades en forma de
productos independientes.
Si miramos a las redes corporativas se imponen los productos
especializados, tanto en servidores como estaciones de trabajo.
Para los servidores es vital contar con productos configurables
según requisitos específicos, de alto rendimiento, estabilidad, y
demostrada fiabilidad. En este perfil los productos "todo en uno"
no encajan, además que es preferible no hipotecar toda la
seguridad corporativa en un único producto o marca. Lo normal en
estos casos es contar con varios productos independientes de
casas especializadas en las distintas áreas: firewall, antivirus con
más de un motor, IDS, etc., dotando al sistema de múltiples capas
de protección independientes. En estos casos las dificultades de
integración quedan compensadas con el resultado final, gracias a
la labor de los
administradores
de sistemas
y personal
especializado en seguridad.
En las estaciones de trabajo corporativas podría parecer en un
principio que encajan mejor las suites de seguridad compactas, si
bien el problema en este punto se sitúa en la necesidad de
productos sencillos, instalación distribuida, de configuración o
para el usuario final, y de total administración centralizada y
remota. Las últimas versiones de los antivirus con funciones
extras dejan mucho que desear en este apartado (por ejemplo los
que incorporan firewall personal), por lo que finalmente los
administradores optan por la instalación de motores antivirus muy
ligeros, que consumen pocos recursos para no tener problemas
ante un parque heterogéneo de sistemas, y atendiendo a las
facilidades de gestión en red.
Parece claro que el destino de las soluciones compactas está más
ligado a los usuarios finales, si bien es necesario reinventar estos
productos, ya que las necesidades de un usuario no se cubren
adquiriendo e integrando tecnologías clásicas (firewalls, IDS, etc.),
aunque tal vez sea éste el camino más cómodo y seguro para los
desarrolladores, a corto plazo. Las casas de seguridad han de ser
conscientes que este tipo de tecnologías clásicas vienen a
requerir más conocimientos e interactividad por parte del usuario,
quienes demandan todo lo contrario.
Partiendo de la sencillez de instalación, configuración y uso de los
productos compactos, es de esperar de estas soluciones una
mayor adecuación a las necesidades reales de los usuarios
finales (problemas de configuración, instalación de parches,
criptografía aplicada a los mensajes y documentos, etc.), sin
perder las posibilidades de personalización según cada perfil. Por
ejemplo, partiendo de la compra de un antivirus, poder adquirir
módulos adicionales, según necesidades, a modo de plugins en
línea. Lo que se traduciría en una configuración más ajustada,
tanto en requerimientos, funcionalidades y precio.
Cuando hablamos de la aparición de un nuevo virus que borra
toda la información de la computadora que infecta, o de un
programa que aprovecha una falla no corregida en un sistema o
del robo de números de tarjetas de crédito, todos pensamos, en
los creadores de virus o sofisticados ladrones por Internet, pero
rara ve z nos detenemos a pensar si también existen culpables por
parte de los damnificados.
En casos recientes como el gusano Slammer u otros como
CodeRed, éstos aprovechaban fallas de ciertos productos de
Microsoft, para las cuales ya existían parches, pero nunca
instalados por una actitud irresponsables de los encargados de
sistemas.
Por otro lado, hemos escuchado de SSL (Secure Socket Layer) el
protocolo utilizado en la transmisión de información sensible,
dicho protocolo se utiliza cuando nos contactamos con nuestro
banco o cuando efectuamos una compra en la red, pero no
reparamos que, aunque ese momento de la comunicación se
efectúa por un protocolo seguro, la información post-venta se
guarda en algún sitio y desconocemos que medidas de seguridad
existen allí. A veces, dichas medidas no son las ideales, y por ello,
se lee sobre el robo de números de tarjetas de crédito.
Los casos antes mencionados, son solo algunos, donde la falta de
cuidado por parte de las "víctimas", ha permitido que dichos actos
pudieran efectuarse.
Por estos y otros casos, el Sans Institute, ha publicado
recomendaciones genéricas, que usualmente conducen a brechas
de seguridad, las que luego pueden ser aprovechadas por
atacantes.
Las mismas se refieren tanto a usuarios comunes, como a
ejecutivos o administradores de sistemas. Lamentablemente,
estas recomendaciones son del año 2001, pero los numerosos
incidentes, que vemos a diario, demuestran que éstas no se
cumplen.
En este sentido el funcionamiento del programa
construido es de la siguiente forma:
CASOS DE USO
PLANIFIACIÓN DEL AD MINISTRADOR
(
)
(
)
*
+
,
CASO DE USO: TOMA DE DECISIONES
(
-
)
-
*
,
.
DIAGR AMA DE FLUJO REFERENTE
AL FUNCION AMIENTO DE LA
APLIC ACIÓN
*
)
/
)
.-
/
/
0
23
(
1
4
2.5.2. Análisis de Carga en los computadores.
Es difícil hablar de porcentajes, pero seguro que la inmensa
mayoría de los usuarios personales tienen uno instalado. Muchos,
demasiados, tendrán instalado el mismo que le pusieron al
comprar el computador; ó, una vieja versión del Norton, Macaffee
u otro. Y seguramente, gran parte de estos antivirus siguen sin
actualizarse desde entonces o no se actualizan con frecuencia,
con lo que su eficacia se reduce a niveles muy bajos.
La misión principal de un antivirus es evitar que los virus causen
daño
a
nuestro
computador; pero
esto, al
margen
de
actualizaciones y demás temas, acaba volviéndose en nuestra
contra.
La mayoría de los antivirus
del mercado van añadiendo
progresivamente módulos nuevos y funciones que le dotan, en
principio, de mayor potencia. Cada versión es más exigente. Pero
el problema es que, si ya de por si son programas muy delicados
que se meten en las entrañas del sistema, con tantas nuevas
funciones acaban por ralentizar demasiado el sistema o por
causarle daños.
Veamos varios ejemplos. ¿Quien no ha tenido nunca un problema
con el dichoso PAVXD de Panda Antivirus? Los problemas que
este antivirus ha causado en miles de computadores son
innumerables, por no hablar de la ralentización
Hay otros antivirus, como el antiguo AVX (ahora Bit Defender o
Ve xira) y la mayoría de los actuales que consumen cantidades
ingentes de RAM y recursos, casi todos por encima de 10 megas.
Es demasiado. Norton, Macafee, Panda, Bit Defender son claros
ejemplos. Los módulos para office hacen más pesada su
utilización, por no hablar de plugins para MSN, icq, navegadores y
demás.
Y el ejemplo mas claro es Kaspersky Anti virus. La nueva versión 4
es un claro ejemplo de lo que no se debe hacer. La versión gold,
por ejemplo, consumía unos 6 megas de RAM contando con sus
módulos, monitor y control central. En cuanto a la ralentización, ni
se percata de la presencia del mismo, incluso activando todas las
opciones disponibles.
La versión 4 ha causado infinidad de problemas en todos los
sistemas y están trabajando en una actualización que los
solucione. Solo su monitor consume más de 12 megas de RAM y
hace que el computador vaya mucho más lento.
Una excepción es NOD32. Quizás sea el antivirus que menos
RAM consume en el sistema y que menos lo ralentiza, pero aun
así tiene determinados fallos, como en la desinstalación con el
pop3 scanner.
Ahora debemos tomar en cuenta que la inmensa mayoría de los
antivirus del mercado causan en nuestro sistema los daños que,
precisamente, queremos evitar con su uso. De hecho nos
deberíamos plantear lo siguiente:
“En los sistemas modernos hay demasiados tipos de archivos
ejecutables, programas que pueden acceder a los componentes
del computador. También es muy complicado que un sistema no
tenga problemas, incluyendo agujeros de seguridad. Por todo ello,
se considera que los virus seguirán existiendo aunque el entorno
contemple la seguridad basada en certificados digitales.
Es posible desarrollar un entorno completamente protegido por la
comprobación de firmas digitales, ¡pero los usuarios no lo usarán!,
porque un entorno de este tipo no es lo suficientemente amigable,
además tiene demasiadas limitaciones, demasiados
demasiadas preguntas.” Eugene Kaspersky
2.6.
Recomendaciones
avisos,
En la actualidad no es difícil suponer que cada vez ha y más gente que
está consciente de la necesidad de hacer uso de algún antivirus como
medida de protección básica. Tratando de ir a lo fundamental, se tienen
comúnmente dos distintos enfoques:
I.- El del administrador de una empresa corporativa que desea
prioritariamente
tener
resuelto
el
problema
de
administración
centralizada. Es decir desea de un antivirus que posea una consola que
permita la instalación remota tanto en una red LAN como en una WAN y
no verse obligado a instalar el producto a pie en cada una de las
estaciones de trabajo. La experiencia ha demostrado que por lo regular
cuando esto se logra no siempre hay la garantía de que la calidad en la
detección y la limpieza sea de lo mejor.
II.- El del usuario final al cual lo que le interesa es no infectarse por
ningún motivo y que la protección en memoria del producto sea de lo
más eficaz, tanto para detectar y remover cualquier virus que pueda
presentarse. Pero cuando esto se da, también suele suceder que las
prestaciones de dicho antivirus para administrarlo llegan a ser muy
limitadas.
Tal parece que lo ideal para una empresa es tener bien estructurado un
equipo de personas que procuren entender responsablemente ambos
enfoques. Ningún producto en el mercado puede garantizar que se
tendrán eficientemente el total de todas las prestaciones deseables. Por
ello, más que procurarse del mejor antivirus lo que se necesita es
diseñar las mejores estrategias de seguridad acordes a la problemática
que se tenga. A veces no basta con una sola elección.
En virtud de lo anterior, al hacer una evaluación es importante tratar de
verificar hasta que punto los diversos antivirus que vayamos a
considerar cumplen con las siguientes características:
1.- Deben actualizar los patrones o firmas, por lo menos una vez por
semana.
2.- La empresa que los promueve debe contar con un equipo de soporte
técnico con acceso a un laboratorio especializado en códigos maliciosos
y un tiempo de respuesta no mayor a 48 horas, el cual pueda orientar,
en español, en caso de contraer una infección.
3.- Deben contar con distintos métodos de verificación y análisis de
posibles códigos maliciosos, incluyendo el heurístico, el cual no se basa
en firmas vírales sino en el comportamiento de un archivo. Y así poder
detener amenazas incluso de posibles virus nuevos.
4.- Se deben poder adaptar a las necesidades de diferentes usuarios.
5.- Deben poder realizar la instalación remota tanto en una red LAN
como en una WAN.
6.- Deben constar de alguna consola central en donde se puedan recibir
reportes de virus, mandar actualizaciones.
7.- Deben ser verdaderamente efectivos para efectos de detección y
eliminación correcta y exacta de los distintos virus que puedan amenazar
a los sistemas.
8.- Deben de permitir la creación de discos de emergencia o de rescate
de una manera clara y satisfactoria.
9.- No deben de afectar el rendimiento o desempeño normal de los
equipos. De ser preferible lo que se desea es que su residente en
memoria sea de lo más pequeño.
10.- El número de falsos positivos que se den tanto en el rastreo normal
como en el heurístico debe de ser el mínimo posible.
11.- Su mecanismo de auto-protección debe de poder alertar sobre una
posible infección y de acuerdo con nuestras prioridades establecer
nuestras propias a través de las distintas vías de entrada, ya sea
Internet, correo electrónico, red o diuskets.
12.- Deben de tener posibilidad de chequear el arranque, así como los
posibles cambios en el registro de las aplicaciones.
DISEÑO DEL INTEGRADOR
La etapa del Diseño del Sistema encierra cuatro etapas:
1. El diseño de los datos.
Es necesario la ubicación de las maquinas a través de las
direcciones IP, con el fin de ir escaseando cada una. El
dato principal para esta etapa son tales direcciones.
Por otro lado el administrador del sistema también puede
seleccionar las computadoras que quiera ubicar para su
limpieza.
2. El Diseño Arquitectónico.
La arquitectura corresponde a cliente – servidor. Luego no
se requiere la ubicación de una base de datos ya que se
usan archivos planos para los reportes.
Se usan módulos para llamar ya sea al seleccionador de
unidades de red, el modulo antiviral y el modulo de
reportes.
3. El Diseño de la Interfaz.
Es a través de módulos que corresponden a la llamada
dentro del menú general.
4. El Diseño de procedimientos.
Siempre serán llamadas usando el shell de windows que contiene los
elementos para realizar la estructura. Además se usan las llamadas por medio
de los procesos a las dll de windows, con el fin por ejemplo de suspender el
uso de ventanas no necesarias en los antivirus.
El proceso repetitivo en este sentido es llamar a los demas antivirus cuando no
ha logrado limpiar el equipo en uso. Así mismo no se puede escoger varios
equipos ya que demora la limpieza en depedencia del tamaño de su disco duro.
2*6 0 (30
/6+677 32 (30
(6689 3/
++ : (
06(92( 2*6
06 30*6/
Herramientas para pruebas.
Se usa la experimentación basada en un centro de computo.
La revolución del procesamiento de datos de manera computarizada, junto con
las practicas de Diseño sofisticadas están cambiando de forma dramática la
manera en que se trasladan las especificaciones de Diseño d Sistemas de
Información funcionales.5
CAPITULO III
5
#
3.
CONSTRUCCIÓN DEL PROTOTIPO
3.1.
Programación de la Herramienta Integrador (Servidor)
Cada año, la tecnología de los virus evoluciona. Para poder explotar los
aspectos vulnerables de la nueva tecnología informática y aprovechar
los nuevos métodos que se van descubriendo de infección de la
infraestructura existente, es necesario mantener al día la defensa
antivirus, para esto es importante que se asegure de que la actual
política antivirus es eficaz y se debe tener en cuenta los cambios que se
están produciendo constantemente, tanto en su propia infraestructura
como en los nuevos avances tecnológicos de los virus.
Se tratarán los temas siguientes:
•
Definir los objetivos específicos del cliente
•
Desarrollar la estrategia a seguir durante el resto del contrato
•
Revisar el entorno de red del cliente
•
Posibles
puntos
de
entrada, infección, almacenamiento
y
transmisión de virus dentro del entorno de red
•
Estrategia e implantación del sistema integrador de antivirus
•
Componentes y versiones de los programas antivirus específicos
instalados en el servidor.
•
Configuración del producto en cada plataforma
•
Métodos utilizados para la distribución, actualización y cambio de
versiones de los programas.
El integrador será instalado en el computador que trabajará como
Servidor
y
desde
aquí
podemos
realizar
los
exámenes
redundantes a todos los equipos del campus universitario.
Las características principales que debe tener el computador en lo
que se refiere a hardware son:
Procesador Intel Pentium IV ó superior
Memoria RAM 512 ó superior
Espacio libre en disco duro 10 MB
Esta es la pantalla principal desde donde se administrará las búsquedas
y limpiezas de virus, consta con un botón de selección el mismo que al
presionarlo nos permite seleccionar el equipo al que vamos a realizar la
limpieza de virus.
Luego de conectar en red el equipo a revisar se escoge la Búsqueda 1
de la pantalla principal, si al realizar la primera opción nos sale un
mensaje de que el equipo aun tiene virus, procedemos a escoger la
Opción 2.
Además consta con la opción de reportes que el administrador del
sistema podrá realizar, ya sea diario o mensual, de esta forma
tendremos una visión clara que equipos son infectados generalmente y
que virus son los que tienen mayor incidencia dentro del campus.
Adicionalmente contiene un botón para realizar, mediante el cual se
realizará parches a los equipos de la red por ejemplo de Windows para
cerrar algún puerto.
3.2.
Programación del Planificador (Cliente)
Este software será instalado en los equipos del campus y lo que
permitirá será interactuar con el Servidor para incorporar este equipo de
acuerdo a la planificación que levará a cabo. Será totalmente
transparente al usuario, teniendo la característica de no permitir al
mismo bajarlo o cerrarlo.
3.3.
Instalación del Software en Red
Tomando en cuenta la planificación del proyecto, se instalará el
programa
integrador
(servidor)
en
el
departamento
de
cursos
especializados, y luego se procederá ha instalar el software planificador
(cliente) en algunos de los equipos del campos (centros de cómputo,
secretarías, departamento de la UPSI, otros). Con la finalidad de luego
proceder a las pruebas; este periodo es de veinte días.
3.4.
Monitoreo y Limpieza Remota
Para esta etapa contamos con veinte días, luego de la instalación de la
herramienta y consiste en ejecutar el programa de acuerdo a una
planificación que podría ser cinco equipos en la noche, para lo cual estos
cinco equipos deberán quedar encendidos durante la noche y los
reportes quedaran almacenados para su posterior análisis al día
siguiente, de igual manera luego de la búsqueda y limpieza de cada
equipo el programa tendrá la característica de apagarlo.
También tendríamos otra alternativa durante el día, es decir que los
equipos a tomarse en cuenta en la planificación de las pruebas serán
examinados de la siguiente manera: tres equipos en la mañana y tres
equipos en la tarde, para esto se coordinara con el
personal que se designe en el departamento de cursos especializados.
3.5.
Reportes y Actualizaciones Automáticas
Aunque es una de las
características
propias
de los
antivirus
seleccionados, esta tarea formara parte de las obligaciones del
administrador, ya que es él quien tomará las riendas de la ejecución y
normal funcionamiento del software.
3.6.
Pruebas
Para las pruebas tomaremos en cuenta el siguiente formato:
Nombre
equipo o IP
del Hora de Inicio del Hora de Fin del Número
Proceso
Proceso
archivos
analizados
de
Características
principales
Procesador
del equipo Memoria
del cliente
Disco Duro
Observaciones
4.0 AL MACENAMIENTO Y PRODUCCIÓN DE REPORTES
Private Sub Command6_Click()
Dim nuevo As String
MsgBox "Para usar esta opcion se debe acabar el proceso antiviral"
Set fso = CreateObject("Scripting.FileSystemObject")
Set
a
=
fso.GetFile("c:\archivos
de
programa\control
Antiviral
corregido\reporte\avp32.rpt")
nuevo
=
"c:\archivos
de
programa\control
antiviral
corregido\reporte\av32.rpt" + Str(Date)
a.Copy (nuevo)
End Sub
La estructura anterior nos muestra que el uso de archivos planos se
verifican siempre y cuando se produzca la limpieza para cada uno de los
equipos. En esa circunstancia si se estableciera la característica de
ubicación a cada tipo de computador.
Esto nos da un almacenamiento por fecha ya que en ese sentido la
característica de ir ubicando para cada uno de los procesos la hora y
fecha señaladas nos da un orden definido:
Esto se combina con la emisión de reportes final. Para ese caso es
necesario la
ordenamiento.
verificación de la
fecha
como
principal ente de
El usuario puede escoger cualquier tipo de reporte para ser impreso.