Creacion de un virus en Linux CentOS

21
Bowen Reyes Mónica Andreina Sornoza Vásquez Carlos Javier Ing. Elvis Cárdenas Seguridad Informática

description

Mediante la detencion del demonio Haldaemon en los runlevels, se inabilitara el acceso al SO

Transcript of Creacion de un virus en Linux CentOS

Page 1: Creacion de un virus en Linux CentOS

Seguridad Informática 1

Proyecto de Investigación

Bowen Reyes Mónica Andreina

Sornoza Vásquez Carlos Javier

Ing. Elvis Cárdenas

Seguridad Informática

Page 2: Creacion de un virus en Linux CentOS

Seguridad Informática 2

Proyecto de Investigación

UNIVERSIDAD TÉCNICA DE MANABÍ

MISIÓN

Formar académicos, científicos y profesionales responsables, humanistas,

éticos y solidarios, comprometidos con los objetivos del desarrollo

nacional, que contribuyan a la solución de los problemas del país como

universidad de docencia con investigación, capaces de generar y aplicar

nuevos conocimientos, fomentando la promoción y difusión de los

saberes y las culturas, previstos en la Constitución de la República del

Ecuador.

VISIÓN

Ser institución universitaria, líder y referente de la educación superior en

el Ecuador, promoviendo la creación, desarrollo, transmisión y difusión

de la ciencia, la técnica y la cultura, con reconocimiento social y

proyección regional y mundial.

Page 3: Creacion de un virus en Linux CentOS

Seguridad Informática 3

Proyecto de Investigación

FACULTAD DE CIENCIAS INFORMÁTICAS

MISIÓN

Ser una unidad con alto prestigio académico, con eficiencia,

transparencia y calidad en la educación, organizada en sus actividades,

protagonistas del progreso regional y nacional.

VISIÓN

Formar profesionales eficientes e innovadores en el campo de las ciencias

informáticas, que con honestidad, equidad y solidaridad, den respuestas

a las necesidades de la sociedad elevando su nivel de vida.

Page 4: Creacion de un virus en Linux CentOS

Seguridad Informática 4

Proyecto de Investigación

TEMA:

Comandos y codificadores de CentOS para creación virus para la

detención del demonio Haldaemon y su consecuencia al sistema

operativo.

Page 5: Creacion de un virus en Linux CentOS

Seguridad Informática 5

Proyecto de Investigación

INTRODUCCIÓN

Como bien se ha escuchado mencionar, los malware o comúnmente

llamados virus informáticos tienen como objetivo inestabilizar el

funcionamiento normal de un computador, sin que el propietario haya

otorgado el permiso o tenga el conocimiento de su ejecución.

Se los pueden contraer de diversas maneras, comúnmente por infección

a través de dispositivos de almacenamiento, empotrados en otros

archivos invisibles a primera vista, y a través del internet.

Habitualmente, se alojan en directorios donde se encuentren los archivos

del sistema, muchas veces tienen nombres similares a los archivos

necesarios para el arranque del sistema, lo que hace que el usuario no

los identifique tan fácil.

Comúnmente los virus están diseñados para el sistema de archivos con el

que se maneja Windows y no para los GNU/Linux ya que en este ultimo

no existen los ficheros ejecutables (.exe) por lo que es imposible que un

virus se te ejecute sin consentimiento del usuario. Se necesita indicarlo

expresamente para ejecutar un archivo de comandos.

La realidad indica que actualmente existe muy pocos VXers (escritores de

virus) trabajando en el otros sistemas operativos como Linux, UNIX, BSD y

MAC OS, pero en todos ellos existen códigos dañinos que explotan

ciertas características y facilitando una probable infección.

Pero, actualmente el malware busca rédito económico y es lógico que

se ataquen los sistemas más distribuidos por lo que no sería errado

pensar que la situación de “sólo infectar Microsoft” puede mantenerse un

tiempo más, pero que las organizaciones delictivas no dudarán en

cambiar sus objetivos al variar el mercado.

Page 6: Creacion de un virus en Linux CentOS

Seguridad Informática 6

Proyecto de Investigación

JUSTIFICACION

El presente trabajo investigativo tiene como finalidad irrumpir el mito de

que “solo existen virus para Windows”, cuando la realidad es otra, ya que

se puede simular a los archivos ejecutables y ocasionar un desequilibrio

en la funcionalidad del sistema operativo.

Como segunda finalidad dar a conocer a quien le interese, de qué

manera vulnerar la estabilidad de un sistema operativo variante de Linux,

como lo es CentOS, simplemente con detener el inicio de uno de sus

demonios.

Nosotros como estudiantes de la Facultad de Ciencias Informáticas de la

Universidad Técnica de Manabí, hemos planteado realizar este proceso

de investigación contando con la motivación, interés, tiempo, recursos,

bibliografía, web grafía pertinente y con el Software indicado para

realizar prácticas y para tener dicha información como una referencia,

para luego dar a conocer todo lo relacionado a los virus en Linux.

Siendo este un nuevo tema de investigación es de aporte potencial

intelectual para la educación y es una forma de contribuir con la

universidad y sobre todo en el área de la informática.

Page 7: Creacion de un virus en Linux CentOS

Seguridad Informática 7

Proyecto de Investigación

OBJETIVOS

OBJETIVO GENERAL

Determinar los comandos y codificadores de CentOS para creación

virus para la detención del demonio Haldaemon.

OBJETIVOS ESPECIFICOS

Usar el programador de tareas Crontab para indicar la ejecución

del virus

Elaborar un antivirus que resuelva el problema ocasionado por la

ejecución del virus

Page 8: Creacion de un virus en Linux CentOS

Seguridad Informática 8

Proyecto de Investigación

MARCO TEORICO

Un virus es simplemente un programa, elaborado accidental o

intencionadamente para instalarse en la computadora de un usuario sin

el conocimiento o el permiso de éste. Se puede decir que es una

secuencia de instrucciones y rutinas creadas con el único objetivo de

alterar el correcto funcionamiento del sistema y, en la inmensa mayoría

de los casos, corromper o destruir parte o la totalidad de los datos

almacenados en el disco.

Todos estos programas tienen en común la creación de efectos

perjudiciales; sin embargo, no todos pueden ser considerados como

virus propiamente dichos. Además que es un programa parásito porque

el programa ataca a los archivos o sector de booteo o arranque y se

reproduce a sí mismo para continuar su esparcimiento.

Algunos se limitan solamente a multiplicarse, mientras que otros pueden

producir serios daños que pueden afectar a los sistemas. Nunca se puede

asumir que un virus es inofensivo y dejarlo flotando en el sistema.

Existen ciertas semejanzas entre los virus biológicos y los informáticos.

Mientras los primeros son agentes externos que invaden células para

alterar su información genética y reproducirse, los segundos son

programas-rutinas, en un sentido más estricto, capaces de infectar

archivos de computadoras.

Reproduciéndose una y otra vez cuando se accede a dichos archivos,

dañando la información existente en la memoria o alguno de los

dispositivos de almacenamiento del ordenador.

También tienen diferentes finalidades. Algunos sólo infectan, otros

alteran datos, otros los eliminan y algunos sólo muestran mensajes. Pero

el fin de todos ellos es el mismo: Propagarse. Es importante destacar que

Page 9: Creacion de un virus en Linux CentOS

Seguridad Informática 9

Proyecto de Investigación

el potencial de daño de un virus informático no depende de su

complejidad sino del entorno donde actúa.

Dentro del mundo de los virus hay que diferenciar algunos términos,

como podrían ser:

Caballo de Troya o Camaleones

Estos son comúnmente conocidos como Troyanos, son programas que

permanecen en el ordenador infectado para dejar una puerta trasera

abierta para quien quiera entrar por ella (normalmente es quien infecta

dicho ordenador), estos programas lo que hacen es conseguir cierta

información como por ejemplo, password, archivos importantes...etc.

La diferencia entre un troyano (Caballo de Troya) y los Camaleones son

que los troyanos poseen el código maligno en el programa benigno, y

sin embargo, los camaleones crean un nuevo programa y añaden el

código maligno.

Spywares y adware

Estos son programas que se instalan en su computadora, generalmente

sin su conocimiento, y „observan‟ o controlan el uso de la misma. El

programa puede abrir ventanas de publicidad, redireccionar su pedido

hacia un sitio Web no solicitado cuando está navegando en Internet,

controlar su actividad mientras navega o grabar las pulsaciones sobre el

teclado mientras está en línea.

Backdoor (puerta trasera)

Es un programa de administración remota, es decir que administra y

opera la pc a distancia de la misma forma que lo haría cualquier persona

frente a su computadora. Este programa se implanta en el ordenador

víctima y abre una puerta trasera para que el delincuente pueda tener

acceso remoto al mismo. El backdoor es desarrollado por un

Page 10: Creacion de un virus en Linux CentOS

Seguridad Informática 10

Proyecto de Investigación

programador y normalmente el código sólo es conocido por dicho

programador. Un backdoor es un riesgo potencial para la seguridad del

un equipo, un programa o un servicio en línea.

Gusano o Worm

Los gusanos o Worm son de los más frecuentes en la actualidad; no

tienen como misión hacer daño a los ordenadores infectados (aunque

existen excepciones), sino que tienen como misión reproducirse

rápidamente y colapsar el ancho de Banda o Sistema propagándose en

redes corporativas o pequeñas. Su Capacidad de Propagación los

convierte en amenazas frecuentes sobre todo a los usuarios de

Aplicaciones Peer to Peer como el Kazaa, Morpheus, etc. o los Chats de

IRC (Internet Relay Chat).

Hoax

Los hoax (mistificación, broma o engaño), son mensajes con falsas

advertencias de virus, o de cualquier otro tipo de alerta o de cadena

(incluso solidaria, o que involucra a nuestra propia salud), o de algún tipo

de denuncia, distribuida por correo electrónico.

Su común denominador, es pedirle los distribuya "a la mayor cantidad

posible de conocidos". Jamás reenvíe un mensaje de este tipo que llegue

a su casilla.

Esta clase de alarmas, suelen ser TOTALMENTE FALSAS, o basadas en

hechos erróneos, pero lo que es peor activan un tipo de "contaminación"

muy diferente, propagar cientos y hasta miles de mensajes de

advertencia sobre los mismos. Y aún en el caso de denuncias basadas en

hecho reales, esta forma de hacerlo desvirtúa totalmente su verdadero

objetivo.

Page 11: Creacion de un virus en Linux CentOS

Seguridad Informática 11

Proyecto de Investigación

Joke Program

Suelen ser programas que tienen como misión destruir datos.

Bombas Lógicas o de Tiempo

Son programas que se activan dependiendo de una condición, esta

condición suele ser una fecha, una combinación de teclas u otras

condiciones. Hasta que no se produzca esa condición por el usuario, el

programa permanecerá en el ordenador infectado pero estará inactivo,

esperando esa condición. Cuando es una condición de tipo fecha se le

suele llamar Bomba de tiempo.

Retro Virus

Este término de virus afecta a los antivirus, lo que hace es buscar

agujeros de seguridad (bugs) dentro del antivirus y normalmente lo que

hace es destruirlo.

Page 12: Creacion de un virus en Linux CentOS

Seguridad Informática 12

Proyecto de Investigación

Servicio Cron de Linux

El nombre cron viene del griego chronos que significa “tiempo”. En el

sistema operativo Unix, cron es un administrador regular de procesos en

segundo plano (demonio) que ejecuta procesos o guiones a intervalos

regulares (por ejemplo, cada minuto, día, semana o mes). Cron se podría

definir como el “equivalente” a Tareas Programadas de Windows.

El demonio cron inicia de /etc/rc.d/ o /etc/init.d dependiendo de la

distribución. Cron se ejecuta en el background, revisa cada minuto la

tabla de tareas crontab /etc/crontab o en /var/spool/cron en búsqueda

de tareas que se deban cumplir. Como usuario podemos agregar

comandos o scripts con tareas a cron para automatizar algunos

procesos. Esto es útil por ejemplo para automatizar la actualización de un

sistema o un buen sistema de respaldos

Los procesos que deben ejecutarse y la hora en la que deben hacerlo se

especifican en el fichero Crontab, un simple archivo de texto que guarda

una lista de comandos a ejecutar en un tiempo especificado por el

usuario. Crontab verificara la fecha y hora en que se debe ejecutar el

script o el comando, los permisos de ejecución y lo realizara en el

background. Cada usuario puede tener su propio archivo crontab, de

hecho el /etc/crontab se asume que es el archivo crontab del usuario

root, cuando los usuarios normales (e incluso root) desean generar su

propio archivo de crontab, entonces utilizaremos el comando crontab. Es

la manera más sencilla de administrar tareas de cron en sistemas

multiusuario, ya sea como simple usuario de sistema o usuario root.

Al ejecutar la edición del crontab con crontab -e, en algunas

distribuciones (como ubuntu) da la opción de elegir el editor de textos

que se desee,, el archivo crontab lucirá algo así.

Page 13: Creacion de un virus en Linux CentOS

Seguridad Informática 13

Proyecto de Investigación

# m h dom mon dow user command

Dónde:

- “m” corresponde al minuto en que se va a ejecutar el script, el valor

va de 0 a 59

- “h” la hora exacta, se maneja el formato de 24 horas, los valores

van de 0 a 23, siendo 0 las 12:00 de la medianoche.

- “dom” Hace referencia al día del mes, por ejemplo se puede

especificar 15 si se quiere ejecutar cada día 15

- “dow” Significa el día de la semana, puede ser numérico (0 a 7,

donde 0 y 7 son domingo) o las 3 primeras letras del día en inglés:

mon, tue, wed, thu, fri, sat, sun.

- “user” Define el usuario que va a ejecutar el comando, puede ser

root, u otro usuario diferente siempre y cuando tenga permisos de

ejecución del script.

- “command” refiere al comando o a la ruta absoluta del script a

ejecutar, ejemplo: /home/usuario/scripts/actualizar.sh, si acaso

llama a un script este debe ser ejecutable

Demonio Haldaemon

El servicio o demonio Haldaemon es un aplicativo de GNU/Linux que

hace que funcionen los dispositivos de entrada y salida dentro de un

nivel de ejecución gráfico. Si este servicio no iniciara en el arranque del

sistema, el sistema operativo quedará inutilizable en ese nivel de

ejecucion.

Por lo general es un servicio que arranca desde momento que carga el

kernel del sistema operativo.

Page 14: Creacion de un virus en Linux CentOS

Seguridad Informática 14

Proyecto de Investigación

PRACTICA: EJECUCION DEL VIRUS

1. Constatamos que el demonio CRON se esté ejecutando.

Si el servicio no estuviera configurado para arrancar desde un principio, bastaría con agregarlo con el comando chkconfig:

chkconfig --level 5 crond on

2. Crear un archivo .sh con el gedit que se llamará virus.sh y

editar el contenido

Se indica el nivel de ejecución que se encuentra el CentOS, el nivel 5, es de entorno grafico

Indica que apartir del siguiente inicio, el demonio HALDAEMON no va estar activo El run-level 6 es

reiniciar.

Page 15: Creacion de un virus en Linux CentOS

Seguridad Informática 15

Proyecto de Investigación

3. Crear el antivirus haciendo exactamente lo opuesto del bash anterior.

4. Configurar la tarea dentro del Cron, para que el archivo que se creó se ejecute automáticamente. Según lo planteado, el archivo llamado “virus.sh” se ejecutará todos los lunes del mes de noviembre a las 9:30 de la mañana. Actividad registrada por el superusuario.

Page 16: Creacion de un virus en Linux CentOS

Seguridad Informática 16

Proyecto de Investigación

5. Al cumplirse la hora, día, mes establecidos dentro del Crontab, el sistema hará las líneas que tenga el virus, una ellas, la última, reiniciará el sistema El sistema comenzará reiniciar.

6. Se puede constatar que de que el sistema no responde, ni al teclado, ni al mouse. El virus desestabilizó al sistema.

Page 17: Creacion de un virus en Linux CentOS

Seguridad Informática 17

Proyecto de Investigación

PRACTICA: EJECUCION DEL ANTIVIRUS

7. Forzar el apagado del sistema e iniciarlo nuevamente. En la cuenta regresiva presionar cualquier tecla.

8. Aparecerá esta pantalla en donde se presiona la tecla “e” que es para editar comandos antes de bootear.

9. Se escoge la segunda opción que es para el modo de arranque, y para editarlo se presiona la letra “e”

Page 18: Creacion de un virus en Linux CentOS

Seguridad Informática 18

Proyecto de Investigación

10. Dar un espacio y para iniciar en modo texto se presiona “s” o “1”

11. Presionar la letra “b” para botear y arrancará el sistema operativo pero en su run-level 1 o modo texto.

12. El comando chkconfig - - list haldaemon, mostrará el estado de este demonio en todos los servicios, y como se puede observar en el nivel 5 (entorno gráfico) está desactivado debido al virus.

Page 19: Creacion de un virus en Linux CentOS

Seguridad Informática 19

Proyecto de Investigación

13. Ir al directorio donde se había guardado el antivirus.sh y ejecutarlo.

Al iniciar nuevamente el sistema, se puede observar que ya se encuentra habilitado el modo gráfico y ya hay respuesta de teclado y del mouse.

Page 20: Creacion de un virus en Linux CentOS

Seguridad Informática 20

Proyecto de Investigación

CONCLUSIONES Y RECOMENDACIONES

CONCLUSIONES:

Los virus de un sistema operativo Windows, no afectan a los

sistemas Linux.

Los “virus” de Linux no se pueden ejecutar por si solos, se necesitan

comandos de usuario para proceder o programar su ejecución.

Se considera virus hasta el detenimiento de un servicio que

irrumpa en la estabilidad del sistema.

RECOMENDACIONES:

Al no afectar los virus de Windows a Linux, estos pueden ser

objetos de estudio en los estudiantes de la Facultad de Ciencias

Informáticas.

La creación de un virus para Linux no debe ir contra la ética

profesional.

Los estudiantes de la Facultad de Ciencias Informáticas, deberían

inmiscuirse más en los sistemas operativos Linux ya que ofrece

muchas herramientas para el desarrollo de pequeños archivos con

gran funcionalidad.

Page 21: Creacion de un virus en Linux CentOS

Seguridad Informática 21

Proyecto de Investigación

WEBGRAFIA

http://www.canal-ayuda.org/a-virus/sonvirus.htm

http://www.taringa.net/posts/linux/7152247/Una-guia-de-

crontab.html

http://www.linuxtotal.com.mx/index.php?cont=info_admon_006

http://www.hscripts.com/tutorials/linux-services/haldaemon.html

http://www.linuxparatodos.net/portal/forum/print.php?id=5658