Вы находитесь на странице: 1из 10

347 TP Lapso 2019-2 1/10

UNIVERSIDAD NACIONAL ABIERTA


VICERRECTORADO ACADÉMICO
ÁREA INGENIERÍA

TRABAJO PRÁCTICO

ASIGNATURA: Introducción a la Inteligencia Artificial y los Sistemas


Expertos

CÓDIGO: 347

FECHA DE ENTREGA DE LAS ESPECIFICACIONES AL


ESTUDIANTE: A partir de la primera semana de aplicación de
pruebas, a través del asesor de la asignatura en su centro local

FECHA DE DEVOLUCIÓN DEL INFORME POR EL ESTUDIANTE:


Adjunto a la Prueba Integral

NOMBRE DEL ESTUDIANTE:

CÉDULA DE IDENTIDAD:

CORREO ELECTRÓNICO:

TELEFONO:

CENTRO LOCAL:

CARRERA: 236

NÚMERO DE ORIGINALES:

FIRMA DEL ESTUDIANTE:


LAPSO: 2019-2

UTILICE ESTA MISMA PÁGINA COMO CARÁTULA DE SU


TRABAJO
RESULTADOS DE CORRECCIÓN:
OBJ N° 9
0:NL 1:L

Especialista: Miguel Mena Ingeniería de Sistemas


347 TP Lapso 2019-2 2/10

ESPECIFICACIONES: Este trabajo práctico se basará en el Módulo IV,


correspondiente al objetivo N°9. En él se evidenciará las destrezas y habilidades
adquiridas por el estudiante, al momento de implementar componentes de un
Sistema Experto.

TRABAJO PRÁCTICO
INTRODUCCIÓN A LA INTELIGENCIA ARTIFICIAL Y SISTEMAS EXPERTOS
(347)

Caso de estudio: Análisis de tipos de virus informático para la desinfección de


sistemas digitales y revertir sus efectos.

Los virus informáticos son programas capaces de instalarse en un medio digital y


propagarse de forma autónoma, algunos con la finalidad sólo de replicarse, otros
alteran datos, otros los eliminan, algunos sólo muestran mensajes, y otros más
intentan sustraer información confidencial y sensible de los medios digitales.

La clasificación de los virus puede realizarse desde diferentes perspectivas, es


decir, se pueden agrupar por la entidad que contaminan (sectores de arranque o
archivos ejecutables), por su grado de dispersión a nivel mundial, por su
comportamiento, por su agresividad, por sus técnicas de ataque o por cómo se
ocultan.

En este caso de estudio los tipos de virus serán clasificados según su destino de
infección, según su forma de activación y según las técnicas que emplean para
infectar y propagarse.

Tipos de Virus Informáticos según su destino de infección

Infectores de archivos ejecutables. Afectan archivos de extensión EXE, COM,


BAT, SYS, PIF, DLL, DRV

Infectores directos. El programa infectado tiene que estar ejecutándose para que
el virus pueda funcionar (seguir infectando y ejecutar sus acciones destructivas)

Infectores del sector de arranque (boot). Tanto los discos rígidos como los
disquetes contienen un Sector de Arranque, el cual contiene información
específica relativa al formato del disco y los datos almacenados en él. Además,
contiene un pequeño programa llamado Boot Program que se ejecuta al bootear

Especialista: Miguel Mena Ingeniería de Sistemas


347 TP Lapso 2019-2 3/10

desde ese disco y que se encarga de buscar y ejecutar en el disco los archivos del
sistema operativo. Este programa es el que muestra el famoso mensaje de "Non-
system Disk or Disk Error" en caso de no encontrar los archivos del sistema
operativo. Este es el programa afectado por los virus de sector de arranque. La
computadora se infecta con un virus de sector de arranque al intentar bootear
desde un disquete infectado. En este momento el virus se ejecuta e infecta el
sector de arranque del disco rígido, infectando luego cada disquete utilizado en el
PC. Es importante destacar que como cada disco posee un sector de arranque, es
posible infectar el PC con un disquete que contenga solo datos.

Virus Multi Partición. Bajo este nombre se engloban los virus que utilizan los dos
métodos anteriores. Es decir, pueden simultáneamente infectar archivos, sectores
boot de arranque y tablas FAT.

Infectores residentes en memoria. El programa infectado no necesita estar


ejecutándose, el virus se aloja en la memoria y permanece residente infectando
cada nuevo programa ejecutado y ejecutando su rutina de destrucción

Macrovirus. Son los virus más populares de la actualidad. No se transmiten a


través de archivos ejecutables, sino a través de los documentos de las
aplicaciones que poseen algún tipo de lenguaje de macros. Entre ellas
encontramos todas las pertenecientes al paquete Office (Word, Excel, Power
Point, Access) y también el Corel Draw, o AutoCAD.

Cuando uno de estos archivos infectado es abierto o cerrado, el virus toma el


control y se copia a la plantilla base de nuevos documentos, de forma que sean
infectados todos los archivos que se abran o creen en el futuro.

Los lenguajes de macros como el Visual Basic For Applications son muy
poderosos y poseen capacidades como para cambiar la configuración del sistema
operativo, borrar archivos, enviar e-mails, entre otros.

De Actives Agents y Java Applets. En 1997, aparecen los Java applets y Actives
controls. Estos pequeños programas se graban en el disco rígido del usuario
cuando está conectado a Internet y se ejecutan cuando la página web sobre la que
se navega lo requiere, siendo una forma de ejecutar rutinas sin tener que consumir
ancho de banda. Los virus desarrollados con Java applets y Actives controls
acceden al disco rígido a través de una conexión www de manera que el usuario
no los detecta. Se pueden programar para que borren o corrompan archivos,
controlen la memoria, envíen información a un sitio web, etc.

Especialista: Miguel Mena Ingeniería de Sistemas


347 TP Lapso 2019-2 4/10

De HTML. Un mecanismo de infección más eficiente que el de los Java applets y


Actives controls apareció a fines de 1998 con los virus que incluyen su código en
archivos HTML. Con solo conectarse a Internet, cualquier archivo HTML de una
página web puede contener y ejecutar un virus. Este tipo de virus se desarrollan
en Visual Basic Script. Atacan a usuarios de Win98, 2000 y de las últimas
versiones de Explorer. Esto se debe a que necesitan que el Windows Scripting
Host se encuentre activo. Potencialmente pueden borrar o corromper archivos.

Caballos de Troya. Los troyanos son programas que imitan programas útiles o
ejecutan algún tipo de acción aparentemente inofensiva, pero que de forma oculta
al usuario ejecutan el código dañino.

Los troyanos no cumplen con la función de autorreproducción, sino que


generalmente son diseñados de forma que por su contenido sea el mismo usuario
el encargado de realizar la tarea de difusión del virus. Generalmente son enviados
por e-mail.

Tipos de Virus Informáticos según sus acciones y/o modo de activación

Bombas. Se denominan así a los virus que ejecutan su acción dañina como si
fuesen una bomba. Esto significa que se activan segundos después de verse el
sistema infectado o después de un cierto tiempo (bombas de tiempo) o al
comprobarse cierto tipo de condición lógica del equipo (bombas lógicas). Ejemplos
de bombas de tiempo son los virus que se activan en una determinada fecha u
hora determinada. Ejemplos de bombas lógicas son los virus que se activan
cuando al disco rígido solo le queda el 10% sin uso, una secuencia de teclas o
comandos, etc. Ejemplos de este tipo de programas son virus como Viernes 13 o
el virus Miguel Ángel

Camaleones. Son una variedad de virus similares a los caballos de Troya que
actúan como otros programas parecidos, en los que el usuario confía, mientras
que en realidad están haciendo algún tipo de daño. Cuando están correctamente
programados, los camaleones pueden realizar todas las funciones de los
programas legítimos a los que sustituyen (actúan como programas de
demostración de productos, los cuales son simulaciones de programas reales).

Un software camaleón podría, por ejemplo, emular un programa de acceso a


sistemas remotos realizando todas las acciones que ellos realizan, pero como
tarea adicional (y oculta a los usuarios) va almacenando en algún archivo los
diferentes logins y password para que posteriormente puedan ser recuperados y
utilizados ilegalmente por el creador del virus camaleón.

Especialista: Miguel Mena Ingeniería de Sistemas


347 TP Lapso 2019-2 5/10

Reproductores. Los reproductores (también conocidos como conejos-rabbits) se


reproducen en forma constante una vez que son ejecutados hasta agotar
totalmente (con su descendencia) el espacio de disco o memoria del sistema.

La única función de este tipo de virus es crear clones y lanzarlos a ejecutar para
que ellos hagan lo mismo. El propósito es agotar los recursos del sistema,
especialmente en un entorno multiusuario interconectado, hasta el punto que el
sistema principal no puede continuar con el procesamiento normal.

Gusanos. Los gusanos utilizan las redes de comunicaciones para expandirse de


sistema en sistema. Es decir, una vez que un gusano entra a un sistema examina
las tablas de ruta, correo u otra información sobre otros sistemas, a fin de copiarse
en todos aquellos sistemas sobre los cuales encontró información. Este método de
propagación presenta un crecimiento exponencial con lo que puede infectar en
muy corto tiempo a una red completa. Existen básicamente 3 métodos de
propagación en los gusanos:

1. Correo electrónico - El gusano envía una copia de sí mismo a todos los


usuarios que aparecen en las libretas de direcciones que encuentra en el
ordenador dónde se ha instalado.
2. Mecanismos basados en RPC (Remote Procedure Call) - El gusano ejecuta
una copia de sí mismo en todos los sistemas que aparecen en la tabla de
rutas (rcopy y rexecute).
3. Mecanismos basados en RLOGIN - El gusano se conecta como usuario en
otros sistemas y una vez en ellos, se copia y ejecuta de un sistema a otro.

Backdoors. Son también conocidos como herramientas de administración


remotas ocultas. Son programas que permiten controlar remotamente el PC
infectado. Generalmente son distribuidos como troyanos.

Cuando un virus de estos es ejecutado, se instala dentro del sistema operativo, al


cual monitorea sin ningún tipo de mensaje o consulta al usuario. Incluso no se ve
en la lista de programas activos. Los Backdoors permiten al autor tomar total
control del PC infectado y de esta forma enviar, recibir archivos, borrar o
modificarlos, mostrarle mensajes al usuario.

Tipo de Virus Informáticos según las Técnicas empleadas para su


programación y/o propagación

Apoyados en la capacidad de evolución dada por sus programadores, los nuevos


virus nacen con el conocimiento de las técnicas utilizadas por las herramientas

Especialista: Miguel Mena Ingeniería de Sistemas


347 TP Lapso 2019-2 6/10

antivirus actuales y sabiendo cuáles son sus puntos débiles. En base a ello utilizan
técnicas cada vez más complejas para ocultarse y evitar ser detectados. Algunos
de los métodos de ocultación más utilizados son los siguientes:

Stealth. El ocultamiento o stealth consiste en esconder los signos visibles de la


infección que puedan delatar la presencia del virus en el sistema. Se trata de
evitar todos los síntomas que indican la presencia de un virus.

El signo fundamental de infección es no obstante la modificación del fichero


infectado. Una técnica de camuflaje usada por un virus residente puede ser la
siguiente:

 Interceptar el servicio de lectura de ficheros.


 Cuando un programa desea analizar un fichero infectado, se le devuelve el
contenido original del mismo antes de la infección.

Tunneling. El sobrepasamiento o tunneling consiste en acceder directamente a


los servicios del sistema a través de sus direcciones originales, sin pasar por el
control de otros programas residentes, incluyendo el propio sistema operativo o
cualquier buscador o vacuna residente.

Requiere una programación compleja, hay que colocar el procesador en modo


paso a paso. En este modo de funcionamiento, tras ejecutarse cada instrucción se
produce la interrupción 1. Se coloca una ISR (Interrupt Service Routine) para dicha
interrupción y se ejecutan instrucciones comprobando cada vez si se ha llegado a
donde se quería, hasta recorrer toda la cadena de ISRs que halla colocando el
parche al final de la cadena.

Armouring o antidebuggers. Un debugger es un programa que permite


descompilar programas ejecutables y mostrar parte de su código en lenguaje
original. Algunos virus utilizan diversas técnicas para evitar ser desensamblados y
así impedir su análisis para la fabricación del antivirus correspondiente.

Polimorfismo o automutación. Es una técnica que consiste en cambiar el


método de encriptación de generación en generación, es decir, que entre distintos
ejemplares del mismo virus no existen coincidencias ni siquiera en la parte del
virus que se encarga del descifrado del resto del virus. Esto obliga a los antivirus a
usar técnicas heurísticas ya que como el virus cambia en cada infección es
imposible localizarlo buscándolo por cadenas de código. Esto se consigue
utilizando un algoritmo de encriptación que pone las cosas muy difíciles a los
antivirus. No obstante no se puede codificar todo el código del virus, siempre debe

Especialista: Miguel Mena Ingeniería de Sistemas


347 TP Lapso 2019-2 7/10

quedar una parte sin mutar que toma el control y esa es la parte más vulnerable al
antivirus.

La forma más utilizada para la codificación es la operación lógica XOR. Esto es


debido que esta operación es reversible

7 XOR 9 = 14

14 XOR 9 = 7

En este caso la clave es el número 9, pero utilizando una clave distinta en cada
infección se obtiene una codificación también distinta.

Otra forma también muy utilizada consiste en sumar un número fijo a cada byte del
código vírico.

TSR. Los programas residentes en memoria (TSR) permanecen alojados en esta


durante toda su ejecución.

Los virus utilizan esta técnica para mantener el control sobre todas las actividades
del sistema y contaminar todo lo que encuentren a su paso. El virus permanece en
memoria mientras la computadora permanezca encendido. Por eso una de las
primeras cosas que hace al llegar a la memoria es contaminar los archivos de
arranque del sistema para asegurarse de que cuando se vuelva a arrancar la
computadora volverá a ser cargado en memoria.

Objetivo 9

A partir de la información presentada, desarrolle un componente de un sistema


experto, que a partir del comportamiento de un virus, pueda clasificarlo e inferir el
tipo de procedimiento para la desinfección del dispositivo digital y revertir sus
efectos en el caso de ser posible. Además debe guardar en una base de datos
ciertas características del virus para un reconocimiento más expedito.

El estudiante implementará el componente, basado en reglas, bien sea


empleando un lenguaje de programación imperativa, como Pascal, C, ó C++, un
lenguaje de programación lógica como el LISP o alguno basado en reglas como el
CLIPS.

El CLIPS es un entorno para desarrollar Sistemas Expertos, que permite crear


marcos y reglas de producción. Tiene una base de motor de inferencias con

Especialista: Miguel Mena Ingeniería de Sistemas


347 TP Lapso 2019-2 8/10

razonamiento hacia delante que facilita la creación de scripts para la manipulación


del conocimiento.
Si va a trabajar con CLIPS, puede acceder a las siguientes direcciones
electrónicas:

1. En http://clipsrules.sourceforge.net/ se ofrece una versión gratuita de CLIPS


(Download Area)
2. En
http://sourceforge.net/project/showfiles.php?group_id=215471&package_i
d=260062, se puede instalar la última versión CLIPS 6.30. Al acceder a esta
página, y seleccionar la opción de descarga (download) :

3. CLIPS 6.30_Beta_Windows_Application_Installer_R3.msi

4. http://tryke.blogcindario.com/2004/12/index.html, se muestran ejemplos


realizados con CLIPS.

Otra opción es emplear un Shell como el Expert Sinta, el cual es de descarga


gratis. Se trata de un software desarrollado en Brasil con la tecnología Borland
Delphi, para la creación de sistemas expertos basados en reglas. Está en el
idioma portugués, pero es fácil de entender. El mismo permite crear una interfase,
dada una base de conocimiento. Las siguientes direcciones electrónicas, permiten
acceder a vídeos para la creación de la interfase.

http://youtube.com/watch?v=AaXj-BPajF8

http://youtube.com/watch?v=-0fEK3Vwy6g&feature=related

Recomendaciones

Antes de realizar el componente, se recomienda estudiar la información que se va


a introducir (base de conocimiento), contemplando todas las posibilidades que
puedan considerarse del caso. Clasifique la información, analice cuáles aspectos
son comunes en cada categoría y cuáles diferentes, esto ayudará en la pesquisa
sobre el tipo de enfermedad. Si lo requiere consulte las fuentes bibliográficas
sugeridas u otras que puedan serle útiles. Emplee esquemas, cuadros o
diagramas de flujo. Una vez desarrollado el módulo, pruebe todos los casos
posibles a fin de asegurarse de su correcta ejecución.

Especialista: Miguel Mena Ingeniería de Sistemas


347 TP Lapso 2019-2 9/10

Instrucciones generales sobre el Trabajo Práctico

El estudiante debe entregar lo siguiente:

 Un informe en donde explique la técnica de Inteligencia Artificial o de


Sistemas Expertos empleada para resolver el problema planteado.

 Realice un esquema que facilite la organización de la información suministrada


por los expertos (texto del problema). Si requiere más información puede
consultar las fuentes bibliográficas que se exponen al final o también alguna
otra que sirva como fuente experta.

 Adicionalmente responderá de manera razonada lo siguiente:

1. ¿Puede este componente particular formar parte de un Sistema Experto?.


2. ¿Cuáles son las ventajas que ofrece la solución de este problema
empleando este enfoque? ¿Qué mejoras le haría?.
3. Establezca sus conclusiones .

Las respuestas a estas preguntas estarán orientadas específicamente al


componente desarrollado. No responda con aspectos generales tomados
de alguna fuente, relacionada con los Sistemas Expertos, desarrolle
conceptos propios.

 Especifique el lenguaje de programación empleado.

 Si va a emplear algún lenguaje de programación, entregue un listado


documentado del programa fuente. En el encabezado de cada procedimiento,
función o sección del código que lo requiera, debe incluir un breve comentario
del proceso que se realiza. Igualmente es conveniente hacerlo en la definición
de las estructuras de datos y variables utilizadas.

 Listado de los resultados, mostrando diferentes corridas.

 Un disco compacto (CD). El mismo debe contener el programa fuente y el


programa ejecutable (.exe), en caso de requerir un compilador. Si empleó otro
lenguaje deberá enviar las instrucciones para su ejecución. Si trabaja con
CLIPS, debe enviar igualmente la copia del programa realizado en dicho
entorno (archivo .clp). Si trabaja con otro lenguaje deberá enviar todos los
componentes requeridos para ejecutarlo. En este caso procure ejecutarlo

Especialista: Miguel Mena Ingeniería de Sistemas


347 TP Lapso 2019-2 10/10

desde el CD, en otro computador, a fin de determinar si el programa funciona.


De esta manera se evitan los retrasos en la entrega de calificaciones, ya que
en algunos casos deben hacerse llamadas urgentes y en otros casos podrían
perjudicar la calificación del trabajo.

 El CD debe estar libre de virus, rotulado con el nombre del estudiante, el


Centro Local y entregarse en un sobre, conjuntamente con el listado del
programa y los resultados.

 El trabajo se entregará completo, adjunto a la prueba integral.

 Recuerde incluir su dirección de correo electrónico, para establecer


contactos, en caso que se requiera.

Criterio de corrección
Se considera logrado el objetivo si al menos se cumple con lo siguiente:
 El componente en referencia debe funcionar apropiadamente de acuerdo a lo
indicado.
 Entrega de un informe que incluya todo lo solicitado en la sección anterior.
 Entrega del listado documentado del programa o código de implementación del
componente.
 Entrega del listado de los resultados.
 Entrega de un CD que contenga lo especificado en la sección anterior

Fuentes bibliográficas:
http://www.who.int/features/qa/76/es/

http://www.cun.es/enfermedades-tratamientos/enfermedades/hepatitis-virales

http://salud.doctissimo.es/enfermedades/hepatitis/tipos-hepatitis.html

https://es.wikipedia.org/wiki/Hepatitis

https://vsearch.nlm.nih.gov/vivisimo

http://www.facmed.unam.mx/deptos/microbiologia/virologia/hepatitis.html

http://www.bvs.sld.cu/uats/rtv_files/rtv0397.htm

http://es.slideshare.net/EricVinaixa/hepatitis-viral-2012

FIN DE LAS ESPECIFICACIONES DEL TRABAJO PRÁCTICO

Especialista: Miguel Mena Ingeniería de Sistemas

Вам также может понравиться