Download Clasificación de malware mediante clusterización

Document related concepts
no text concepts found
Transcript
MEMORIAS DEL PRIMER CONCURSO DE INVESTIGACIÓN, DESARROLLO E INNOVACIÓN TECNOLÓGICA IDIT 2012
25
Clasificación de malware mediante clusterización
González Medina Lilia Elena, Salazar Rubio José Miguel

Resumen— La creciente dependencia, tanto de las personas
como de las empresas, a las computadoras tiene como resultado
un aumento considerable en la cantidad de información sensible
que se encuentra en la red, tal como: nombres, direcciones,
cuentas bancarias, PINs, contraseñas, contactos, números
telefónicos, etc. Actualmente, esta información confidencial es el
principal objetivo de los troyanos, virus y gusanos que se crean,
ya que permite a los creadores del malware cometer fraudes,
robos o extorsiones.
Actualmente ningún antivirus cuenta con un mecanismo de
detección y clasificación totalmente efectivo y no es posible para
las compañías antivirus abarcar las miles de muestras que
reciben a diario. Se sabe que la mayoría de esas muestras son
variaciones de malware que ya se tiene identificado y que pocos
son completamente nuevos. Para solucionar este problema se
propone un método que crea vectores considerando las
bibliotecas de enlace dinámico (archivos .dll) que usa el malware
y la cantidad de funciones que llama de cada una, este vector se
compara con los vectores almacenados en una base de datos para
determinar si la muestra es una variación de malware ya
identificado o si es nueva para la base de datos. Las muestras se
van clasificando en clústers que representan las familias de los
virus conocidos. En la primera evaluación. La última parte, aún
en proceso, consiste en agilizar este método mediante la
implementación de una red neuronal artificial.
I. INTRODUCCIÓN
La tecnología se vuelve cada día más esencial en nuestras
vidas, por lo que la mayoría de los dispositivos electrónicos
que utilizamos requieren de una computadora para funcionar.
Dependemos de dispositivos como laptops, celulares, iPods,
entre otros,
para comunicarnos, trabajar y almacenar
información que no podemos perder.
Sin embargo, el aumento en el uso de estos dispositivos
también significa que la cantidad de datos sensibles en la red,
tanto de usuarios como de empresas, va creciendo
significativamente. De acuerdo con Kaspersky [1],
PandaSecurity [2] y Symantec [3], la mayor amenaza a la
seguridad de esos datos confidenciales son los programas
maliciosos, o malware, debido a que son desarrollados con el
objetivo de obtener dinero de forma ilegal (fraudes,
extorsiones, robo de identidad). Otros riesgos asociados a
malware son: daños o pérdidas totales de software o hardware,
LILIA ELENA GONZÁLEZ MEDINA y JOSÉ MIGUEL SALAZAR
RUBIO pertenecen a la carrera ING. CIBERNÉTICA Y SISTEMAS
COMPUTACIONALES de la Facultad de Ingeniería y realizaron el proyecto
como parte de su tesis de licenciatura (Email: [email protected],
[email protected]).
El proyecto fue asesorado por el DR. ROBERTO ANTONIO VÁZQUEZ
ESPINOZA DE LOS MONTEROS.
Los autores agradecen al Dr. Roberto Antonio Vázquez Espinoza de los
Monteros por su guía y paciencia. Y al profesor Luis Javier Pérez del Real
por su apoyo y sus consejos.
saturación de redes, consumo excesivo de los recursos de un
sistema, etc.
De acuerdo con Securelist [4], a nivel mundial, tan sólo
durante noviembre del 2011 Kaspersky Lab Products registró:
 204,595,286 ataques a la red bloqueados.
 89,001,505 infecciones de páginas web prevenidas.
 238,045,358 programas maliciosos detectados y
neutralizados en computadoras de usuarios.
Únicamente se desarrollaron códigos maliciosos usando
tecnología ya existente; no se registraron creaciones de
malware significativas, es decir, tan peligrosas como lo fue
por ejemplo Stuxnet, que en el 2010 atacó una planta nuclear
en Irán para reprogramar los sistemas industriales y modificar
el funcionamiento de la maquinaria [5].
Seis meses después, en abril del 2012, Securelist reportó
que de la información recopilada de computadoras que
cuentan con productos de Kaspersky Lab:
 280 millones de programas maliciosos fueron detectados
y neutralizados
 134 millones de infecciones de páginas web fueron
prevenidas
 Más de 24 millones de URLs maliciosas fueron
detectadas.
Además, seis de las diez amenazas más comunes de Internet
a nivel mundial, durante noviembre del 2011, fueron troyanos.
En México, nueve de las diez infecciones más comunes, en el
último mes (del 24 de enero al 21 de febrero), fueron causadas
por troyanos y gusanos.
Figura 1. Total de muestras de malware analizadas por AV-Test en
los últimos cinco años.
El Instituto AV-Test [6], cuya base de datos recibe
aportaciones diarias gracias a miles de fuentes internacionales,
lleva estadísticas del malware que ha analizado desde 1984 a
26
MEMORIAS DEL PRIMER CONCURSO DE INVESTIGACIÓN, DESARROLLO E INNOVACIÓN TECNOLÓGICA IDIT 2012
la fecha. En la Figura 1 se puede observar el enorme
crecimiento que ha tenido el malware en los últimos cinco
años. La cantidad de muestras registradas en un periodo de
mes y medio, que es lo que había transcurrido del año al
momento de la creación de la gráfica (15 de febrero de 2012),
es más del doble del total de malware analizado hace cuatro
años.
Figura 2. Muestras únicas (sin familia) de malware recibidas en
PandaLabs del 2004 al 2007
Por otro lado, los registros de Panda Security indican que la
cantidad de muestras únicas, no variantes, que recibieron en su
laboratorio en el 2007, no llegaron a 14,000, como se muestra
en la Figura 2.
investigado mucho en los últimos años. La mayoría de los
trabajos que sirvieron como base para esta investigación
pueden ser consultados en línea, a continuación se describirán
brevemente aquellos que tienen mayor relación con este
proyecto.
Gheorghescu introduce un sistema de clasificación basado
en comportamiento evolutivo que, usando una computadora
de escritorio promedio, compara muestras de virus con toda la
colección de malware [7]. De acuerdo con este método, las
muestras de malware de la misma familia o derivadas del
mismo código fuente, comparten una gran cantidad de bloques
básicos de código.
Carrera y Erdélyi utilizan el desensamblador IDA Pro para
encontrar similitudes y diferencias entre las variantes y cepas
de malware, usando teoría de grafos [8]. Su método consiste
en reconocer características similares en la estructura del grafo
del ejecutable. Sin embargo, requiere que se compile cada
vez que se hagan modificaciones al código, lo cual puede
resultar tedioso y tardado.
La falta de leyes o el planteamiento incorrecto de ellas,
provoca que para aquellos que se dedican a crear este tipo de
programas dañinos haya mucho que ganar y poco que perder.
Detectar nuevas versiones de troyanos, virus y gusanos
informáticos, así como las variaciones de los ya existentes,
puede evitar que se infecten miles de computadoras, que se
multipliquen, provoquen daños, roben información y se
reenvíen a otros usuarios. Es por esto que el objetivo de esta
investigación es encontrar un método de clasificación de
malware, usando clusterización para agrupar aquellos
programas que utilicen funciones del sistema similares. Para
después crear e implementar una red neuronal que pueda
clasificar cada muestra nueva de malware en la familia
correcta de forma similar a como lo haría una persona, pero de
forma mucho más eficiente.
II. CONCEPTOS BÁSICOS
Figura 3. Muestras únicas de malware examinadas por AV-Test del
2003 al 2012
Mientras que los registros de AV-Test indican que en el
2007, la cantidad total de muestras únicas de malware que
recibieron fue de 6,000,000. La Figura 3 muestra claramente
que un solo antivirus no puede abarcar el crecimiento tan
grande de malware que se tiene actualmente, sin importar el
método tan avanzado de detección que haya implementado.
La detección de código malicioso transmitido, de
computadora en computadora, a través de la red se ha
Malware: código malicioso, a veces destructivo, creado
para realizar actividades ilegales y explotar las
vulnerabilidades existentes en los sistemas. En este proyecto,
se utiliza este concepto para referirse a virus, gusanos y
trojanos.
Virus: Son programas diseñados para infectar archivos,
algunos pueden provocar efectos molestos, destructivos o
irreparables en un sistema. Un virus se activa cuando el
programa infectado se ejecuta o al cumplirse una condición
específica (una fecha, una acción del usuario, etc.).
Gusanos: Son programas que crean copias de sí mismos en
distintas ubicaciones. Su objetivo principal consiste en
propagarse e infectar la mayor cantidad posible de equipos
para saturar computadoras y redes. A diferencia de los virus,
no infectan archivos. Algunas de las formas de propagación
incluyen emails, mensajería instantánea y programas P2P,
generalmente utilizando técnicas de Ingeniería Social con el
fin de persuadir a las personas para abrir el archivo que
contiene al gusano.
Troyanos: Son códigos maliciosos que aparentan ser
programas inofensivos. Instalan programas en la computadora
infectada para que pueda ser controlada remotamente. Son
GONZÁLEZ: CLASIFIACIÓN DE MALWARE MEDIANTE CLUSTERIZACIÓN
capaces de destruir archivos, capturar y reenviar información,
permitir a un intruso controlar la computadora de forma
remota, etc.
Clusterización: Es una técnica cuyo objetivo es agrupar un
conjunto de objetos parecidos. Mide el grado de similitud
entre dos muestras, en este caso el vector de una muestra de
malware y los vectores promedio de cada familia, usando un
coeficiente, obtenido al calcular la distancia euclidiana.
Clúster: Subconjunto que agrupa datos similares, con algún
tipo de característica en común, en este caso la cantidad de
funciones de las bibliotecas de enlace dinámico.
Muestra: Se considera, para este proyecto, como un archivo
de malware, ya sea virus, gusano o troyano.
Distancia Euclidiana: Criterio de medida de similitud. [9]
Se calcula con la ecuación (1).
(1)
Red Neuronal Artificial: Es un sistema de procesamiento
paralelo donde las neuronas, representadas como nodos, están
conectadas entre sí, en forma de grafo dirigido, para la
solución de problemas concretos del mundo real. Una RNA
trata de emular el funcionamiento del cerebro humano, por lo
que debe aprender de la experiencia [10].
27
B. Etapa Inicial
El primer paso fue buscar páginas web que tuvieran bases de
datos de virus disponibles para descargar. Las bases de datos
de malware que se utilizaron fueron las de las páginas
Offensive Computing [11] y VX Heavens [12]. No se
descargaron virus de forma aleatoria, se trató de buscar la
mayor cantidad posible de variaciones de una familia antes de
cambiar a otra. Sin embargo se tuvieron algunas dificultades:
 Puesto que ambas páginas adquieren una parte de sus
muestras a partir de contribuciones de usuarios, algunas
variaciones de los virus tienen nombres incorrectos. En la
mayoría de los casos ya se tenía un vector exactamente
igual en la base de datos, por lo que esa muestra era
descartada.
 Muchas familias tenían menos de 3 variaciones.
 Ambas páginas tenían muestras similares.
Una vez reunida la cantidad de familias necesaria para las
primeras pruebas, diez familias de malware para Windows 95
con una cantidad de entre tres y diez muestras cada una, se
utilizó el desensamblador IDAPro para obtener las funciones
que cada virus importa de las bibliotecas dinámicas del
sistema (*.dll). Esas funciones fueron guardadas en archivos
de texto, que llamaremos ahora archivos de imports, con el
formato:
DirecciónEnMemoria NombreDeFunción DLL
III. METODOLOGÍA PROPUESTA
Software Utilizado: IDAPro, OllyDbg, ImpREC, PEid, MS
Excel, CodeBlocks, MS Visual Studio 2010.
A. Restricciones
Como se mencionó en los conceptos básicos, el tipo de
malware que se usa en este proyecto únicamente incluye
muestras de virus, gusanos y troyanos. Se descartaron otros
tipos de malware como: backdoor, rootkit, spyware, exploits,
keyloggers, adware, etc. Esto debido a la dificultad que
presenta encontrar muestras, de esos tipos, que pertenezcan a
la misma familia.
Para obtener de IDAPro todas las funciones importadas por
los virus, es necesario que los archivos a analizar sean
ejecutables portables, es decir, que tengan la extensión .exe,
de lo contrario las funciones importadas podrían estar
incompletas.
La parte de las funciones importadas obtenidas de IDAPro,
OllyDbg e ImpREC se hace de forma manual, lo cual es un
problema cuando se trabaja con grandes cantidades de virus y
gusanos.
Para que el programa que se está desarrollando sea más
acertado en la clasificación de virus, los vectores de las
muestras deben utilizar por lo menos dos bibliotecas
diferentes.
Todas las familias de malware que se usan en este proyecto
deben tener por lo menos tres muestras, ya que una mitad se
usa para obtener un buen vector promedio y la otra para usarla
en las pruebas.
Si IDAPro no podía encontrar los imports, posiblemente
el archivo estaba comprimido (packed), esto se puede
confirmar con PEid, que detecta los compiladores y
herramientas de compresión usados comúnmente en
ejecutables. Posteriormente usamos OllyDbg para analizar
aquellas muestras que IDA Pro no pudo abrir correctamente
debido a que estaban protegidas con herramientas de
compresión de ejecutables, también conocidas como packers,
tales como: UPX, PEX, ASPack, entre otros. Por último, para
obtener los imports, se necesita el software ImpRec, que se
usa junto con Ollydbg para reconstruir las funciones
importadas de un ejecutable Win32 protegido/comprimido.
Utilizando Excel, se creó la primera base de datos de
malware. Este archivo incluye el nombre del virus en la
primera columna, los nombres de las librerías que los virus
descargados han utilizado al menos una vez y la cantidad de
funciones que usan de cada librería. Fue importante crear este
archivo de Excel para darnos una idea inicial de qué tan viable
iba a ser nuestro método.
Se creó un programa en C++, utilizando CodeBlocks, que
funcionó de la siguiente forma:
1. Se abre un archivo de texto con los imports del virus.
2. Se almacena la información en memoria.
3. Se cuenta el número de funciones que se usa de cada
librería y se almacena en un vector.
4. Ese vector se imprime en otro archivo de texto, que
funciona como la base de datos de los virus, donde la
primera columna es el identificador del virus y las
demás son las funciones por librería. Y el nombre de
28
MEMORIAS DEL PRIMER CONCURSO DE INVESTIGACIÓN, DESARROLLO E INNOVACIÓN TECNOLÓGICA IDIT 2012
la librería se guarda, si no existe, en la base de datos
de dll’s, que es otro archivo de texto.
5. Se crean los vectores con el promedio de funciones
utilizadas por familia, usando tres variaciones de
cada una.
6. Se calcula la distancia euclidiana entre una muestra de
virus y los vectores promedio de cada familia.
A pesar de que el programa estaba funcionando bien, el lento
desarrollo con el lenguaje C++ y los pequeños errores que se
presentaban en ocasiones aleatorias, provocaron que se
eligiera otro lenguaje de programación para el proyecto.
C. Etapa Actual
Fue necesario rehacer el proyecto, esta vez utilizando C#
.NET en Visual Studio 2010, lo que simplificó la
programación y además facilitó la creación de una interfaz
amigable con el usuario. La interfaz del proyecto se muestra
en la Figura 4.
Figura 4. Interfaz gráfica hecha en Visual Studio 2010
Primero, se elige el archivo de diccionario, que es la base de
datos que contiene las bibliotecas del sistema, este archivo
.xml le asigna un identificador único a cada nombre de
biblioteca que guarda.
A continuación se selecciona la carpeta de archivos. En esta
versión ya no son necesarios los archivos de texto, a
excepción de aquellos que contienen los imports de las
muestras. Otra diferencia con la primera versión del programa
es que ahora se abren todos los archivos de texto que se
encuentren en el directorio que se indique y antes era
necesario abrir archivo por archivo. Se realiza el conteo de
funciones por biblioteca y los vectores de las muestras de
malware se muestran en el primer datagrid. Se agrupan las
muestras por familias y se calculan los promedios, que se
muestran en el segundo datagrid.
Por último, se elige la muestra, su vector correspondiente se
muestra en el tercer datagrid y la distancia euclidiana de la
muestra a las familias de virus que se tienen en la base de
datos se muestra en el datagrid que se encuentra a la derecha.
En esta etapa comenzamos a analizar malware para
Windows de 32 bits, más actual y complejo, aumentando la
base de datos a quince familias, cada una con por lo menos
tres variaciones.
IV. RESULTADOS
Para comprobar el funcionamiento del programa, se
hicieron pruebas con los archivos de imports que no se
utilizaron para calcular los vectores promedio. Los resultados
para las muestras de malware de Windows 95 se pueden
observar en el Cuadro 1.
CUADRO I
RESULTADOS CON MALWARE WIN95
Clasificación
Malware
Family
Correcta
Incorrecta
Total de
muestras
Anxiety
Argos
Boza
Caw
CIH
Gara
Julus
Nathan
Poshkill
SGWW
1
0
3
1
0
0
1
0
2
0
2
2
0
1
5
2
1
3
0
2
3
2
3
2
5
2
2
3
2
2
Total
%
8
30.77%
18
69.23%
26
100%
Es importante mencionar que del total de muestras por
familia que se encontraron, la mitad se utilizó para crear los
vectores promedio y la otra mitad sirvió para hacer pruebas. Si
la cantidad de muestras encontradas era impar, se le daba
preferencia al grupo de vectores promedio.
En el Cuadro II se pueden observar los resultados de las
pruebas de clusterización realizadas con familias de malware
para Win32.
CUADRO II
RESULTADOS CON MALWARE WIN32
Clasificación
Malware
Family
Correcta
Incorrecta
Total de
muestras
Bagle
Deborm
Energy
Kelino
Klez
Kuang
Netres
Newbiero
Shorm
Trilissa
Vorgon
Xanax
Yarner
Zircon
Zokrim
1
3
2
2
6
1
4
3
3
0
2
0
4
2
0
3
5
0
0
0
2
0
0
1
3
0
2
0
0
1
4
8
2
2
6
3
4
3
4
3
2
2
4
2
1
Total
%
33
66.00%
17
34.00%
50
100%
GONZÁLEZ: CLASIFIACIÓN DE MALWARE MEDIANTE CLUSTERIZACIÓN
Podemos observar que la cantidad de muestras de malware
para Windows 95 clasificadas correctamente es baja, con tan
solo ocho muestras de veintiséis agrupadas en las familias
adecuadas. Por otro lado, la cantidad de aciertos en las
pruebas con muestras de malware para Windows de 32 bits es
alta. El 66%, equivalente a treinta y tres muestras de un total
de cincuenta, fue clasificado correctamente.
Para evaluar la eficacia y el desempeño de este método con
otros métodos de clasificación, en este caso antivirus de
marcas conocidas, utilizamos la página VirusTotal [13], que
ofrece un servicio gratuito de análisis de archivos o URLs
para identificar contenido malicioso con ayuda de varios
motores antivirus.
De los motores antivirus que maneja VirusTotal,
únicamente se eligieron siete para hacer comparaciones con
nuestro método: PCTools, Avast, AVG, Avira Antivir, Panda,
Kaspersky y Symantec. Cabe aclarar que no se está
calificando el desempeño de estas marcas de antivirus, el
motivo de esta comparación es únicamente conocer qué tan
certero es nuestro método, no evaluar si un antivirus es mejor
que otro.
La tabla comparativa que incluye las siete marcas antivirus,
se encuentra en los anexos debido a su tamaño. El archivo,
llamado ComparacionAV, marca con color verde los nombres
de las muestras que fueron clasificadas correctamente por
nuestro método. Los nombres marcados en rojo, son las
variaciones que no fueron agrupadas en la familia correcta. La
columna Dist. Euc., indica la distancia a la que se encuentra el
archivo analizado de la familia más cercana.
Para este documento, se seleccionaron las dos marcas con
mayor y menor cantidad de muestras clasificadas
correctamente.
En el Cuadro III se muestran los resultados en cuanto a
desempeño del método de clusterización con familias de
malware para Win95.
CUADRO III
COMPARACIÓN CONTRA ANTIVIRUS CONOCIDOS W95
Malware
Family
Clusterización
Panda
Kaspersky
Total de
muestras
Anxiety
Argos
Boza
Caw
CIH
Gara
Julus
Nathan
Poshkill
SGWW
1
0
3
1
0
0
1
0
2
0
2
1
1
1
2
1
0
2
1
1
3
2
3
2
5
2
2
3
2
2
3
2
3
2
5
2
2
3
2
2
Total
%
8
30.77%
12
46.2%
26
100%
26
100%
El método no es tan eficaz como Kaspersky, pero su
desempeño se acerca al de Panda; en cambio, para las
muestras de Win32, nuestro método parece tener una mayor
29
cantidad de aciertos. Los resultados se observan en el Cuadro
IV.
CUADRO IV
COMPARACIÓN CONTRA ANTIVIRUS CONOCIDOS W32
Malware
Family
Clusterización
Panda
Kaspersky
Total de
muestras
Bagle
Deborm
Energy
Kelino
Klez
Kuang
Netres
Newbiero
Shorm
Trilissa
Vorgon
Xanax
Yarner
Zircon
Zokrim
1
3
2
2
6
1
4
3
3
0
2
0
4
2
0
3
2
0
0
3
0
0
0
0
1
0
0
2
0
0
4
8
2
2
6
2
4
3
3
2
2
2
4
2
1
4
8
2
2
6
3
4
3
4
3
2
2
4
2
1
Total
%
33
66.00%
11
22.00%
47
94.00%
50
100%
V. CONCLUSIONES
Hasta este punto de la investigación, el método prueba ser
aceptable en la clasificación de virus. Actualmente se cuenta
con una base de datos de malware más grande y se está
trabajando en la implementación de la red neuronal artificial.
Se estaba investigando si existía algún algoritmo que pudiera
obtener los imports de forma similar a como lo hizo IDAPro
con el primer grupo de malware que se analizó, para hacer el
programa independiente de software externo y más rápido; sin
embargo, nos hemos dado cuenta que mientras más actual es
el malware, más complicado resulta obtener los imports, por
lo que el algoritmo o el programa debería ser capaz de hacer
lo mismo que cuatro programas distintos.
Probablemente, este método por sí sólo no sea tan efectivo
como los mecanismos que utilizan los antivirus conocidos, sin
embargo, podría utilizarse en combinación con otros métodos
ya existentes para aumentar las detecciones, reducir falsos
positivos y así disminuir considerablemente los problemas
causados por malware.
También sería interesante encontrar alguna combinación de
funciones y librerías que pueda diferenciar malware de un
programa no dañino, principalmente a los virus metamórficos,
que son difíciles de detectar debido a que cambian su
estructura.
AGRADECIMIENTOS
Agradecemos a Offensive Computing y VX Heavens por
proporcionar las muestras de malware usadas en este proyecto.
A Nicolas Brulez por sus consejos y su valiosa ayuda.
También nos gustaría agradecer al Dr. Roberto Antonio
Vázquez Espinoza de los Monteros por su apoyo y su tiempo,
30
MEMORIAS DEL PRIMER CONCURSO DE INVESTIGACIÓN, DESARROLLO E INNOVACIÓN TECNOLÓGICA IDIT 2012
porque sin su ayuda este proyecto se habría quedado como
una simple idea.
Agradecemos también a nuestros familiares, que nos han
apoyado desde el inicio del proyecto y aún no se cansan de
escuchar los avances.
Los autores
Agradecimientos especiales a mis padres, María del Carmen
Medina, que lo ha dado todo para que salga adelante y quien
me inspira a esforzarme y a ser mejor persona cada día, y
Arcadio González, quien me enseñó a ser honrada y
trabajadora. Por último, a Luis Eduardo Luna, que siempre ha
estado a mi lado, con paciencia y amor.
Lilia González
APÉNDICES
En los archivos adjuntos se encuentran: el código fuente del
programa en C++, el código fuente del programa en C# .NET,
sus correspondientes archivos de base de datos, algunos
archivos de imports, la tabla de comparación con marcas
antivirus completa y algunas de las gráficas usadas en este
documento.
REFERENCIAS
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
Kaspersky Antivirus. Amenazas informáticas (Malware) | Kaspersky
Lab España [citado febrero 23, 2012]. Disponible en Internet:
http://www.kaspersky.com/sp/threats.
Panda Security. Classic Malware [citado febrero 23, 2012]. Disponible
en Internet:
http://www.pandasecurity.com/homeusers/security-info/classicmalware/.
Norton by Symantec. Cybercrime – Computer Crimes Security – Online
Fraud – Email Phishing Scams [citado febrero 23, 2021]. Disponible en
Internet: http://us.norton.com/cybercrimeindex/.
Gostev, Alexander. Monthly Malware Statistics: November 2011.
Securelist [en línea]. Diciembre 2011 [citado febrero 23, 2012].
Disponible en Internet:
http://www.securelist.com/en/analysis/204792206/Monthly_Malware_S
tatistics_November_2011
O’Murchu Liam, Symantec. Last-minute paper: An indepth look into
Stuxnet. Virus Bulletin [en línea]. Octubre 2010 [citado febrero 24,
2012]. Disponible en Internet:
http://www.virusbtn.com/conference/vb2010/abstracts/LastMinute7.xm
l.
AV-Test – The Independent IT-Security Institute [en línea]. Citado
febrero 24, 2012. Disponible en Internet: http://www.avtest.org/en/statistics/malware/
Gheorghescu M., An Automated Virus Classification System [en línea].
Julio 2006 [citado febrero 24, 2012]. Disponible en Internet:
http://www.microsoft.com/download/en/details.aspx?id=13780.
Carrera E. and Erdélyi G., Digital genome mapping – advanced
binary malware analysis. Virus Bulletin Conference [en línea],
September 2004 [citado febrero 24, 2012]. Disponible en
Internet:
http://www.fsecure.com/weblog/archives/carrera_erdelyi_VB2004.pdf.
De Los Santos Torres Guillermo, Universidad de las Américas Puebla
[en línea]. Diciembre 2003 [citado febrero 24, 2012]. Disponible en
Internet:
http://catarina.udlap.mx/u_dl_a/tales/documentos/msp/de_l_g/capitulo2
.pdf.
[10] J. A. Freeman, and D.M. Skapura. Redes Neuronales. Algoritmos,
aplicaciones y técnicas de propagación. México: Addison-Wesley, p.
306, 1993.
[11] Offensive
Computing,
LLC.
Disponible
en
Internet:
http://www.offensivecomputing.net/
[12] VX Heavens. Disponible en Internet: http://vx.netlux.org/
[13] VirusTotal. Disponible en Internet: https://www.virustotal.com/