UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERÍA EN INFORMÁTICA PROYECTO FIN DE CARRERA



Documentos relacionados
Guía Rápida de Inicio

Seguridad Informática ANTIVIRUS. Antivirus

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA

MANUAL COPIAS DE SEGURIDAD

Antivirus PC (motor BitDefender) Manual de Usuario

COPIAS DE SEGURIDAD AUTOMÁTICAS DE DIRECCIONES CALLEÇPAÑA

Qué son y cómo combatirlas

WINDOWS : TERMINAL SERVER

F-Secure Anti-Virus for Mac 2015

Trabajo TICO Unidad 2: Sistemas Operativos. Guillermo Jarne Bueno.

MANUAL DE USUARIO PARA LA INSTALACION DE LOS AGENTES COMMVAULT SIMPANA 9.0

WINDOWS : COPIAS DE SEGURIDAD

Antivirus Avira. Inguralde [Enero 2011]

MANUAL DE AYUDA TAREA PROGRAMADA COPIAS DE SEGURIDAD

Capítulo 1: Empezando...3

1.- DESCRIPCIÓN Y UTILIDAD DEL SOFTWARE DAEMON TOOLS.

Instalar protocolo, cliente o servicio nuevo. Seleccionar ubicación de red. Práctica - Compartir y conectar una carpeta

Acronis License Server. Guía del usuario

Semana 12. Instalación de antivirus. Semana 12. Empecemos! Qué sabes de...? El reto es... Instalación de antivirus

ISCAN - MANUAL DE INSTALACIÓN

Notas para la instalación de un lector de tarjetas inteligentes.

ANTIVIRUS EN LiNEA: seguridadticmelilla.es

Bloquean el tráfico basándose en un esquema de aplicaciones fiables - no fiables.

CONCEPTOS BASICOS. Febrero 2003 Página - 1/10

Guía Rápida de Inicio

Son herramientas diseñadas para detectar, bloquear y eliminar virus informáticos y otros programas maliciosos.

Archivo de correo con Microsoft Outlook contra Exchange Server

Informática 4º ESO Tema 1: Sistemas Informáticos. Sistemas Operativos (Parte 2)

Internet aula abierta

Backharddi Introducción Cómo obtener Backharddi? MAX 3.1: Madrid_LinuX Manual de Utilización

Guía Rápida de Inicio

Plataforma e-ducativa Aragonesa. Manual de Administración. Bitácora

Microsoft Access proporciona dos métodos para crear una Base de datos.

Políticas para Asistencia Remota a Usuarios

ALERTA ANTIVIRUS: RECOMENDACIONES

Manual CMS Mobincube

Toda base de datos relacional se basa en dos objetos

CIF-KM. GUÍA DE LOS PRIMEROS PASOS

CI Politécnico Estella

CAPÍTULO 4 ANÁLISIS DE IMPLEMENTACIONES

Instalación de la aplicación de COAS Visado Digital

PANDA USB VACCINE QUÉ ES? PRO CESO DE INSTALACIÓN. Abrir archivo le daremos a Ejecutar.

CONFIGURACION AVANZADA DE MOZILLA THUNDERBIRD

Instalación de Fedora Core 18 junto a Windows 7.

UNIDESYS UNIVERSAL BUSINESS SYSTEMS INSTALACIÓN NUEVO PUESTO DE TRABAJO

Internet Information Server

Sophos Anti-Virus para Mac: Home Edition Ayuda. Para ordenadores independientes con Mac OS X versión 10.4 o posterior

Guía de Instalación para clientes de WebAdmin

Oficina Online. Manual del administrador

Preguntas y respuestas sobre el cifrado de la información personal. La guía para aprender a cifrar tu información

El objetivo principal del presente curso es proporcionar a sus alumnos los conocimientos y las herramientas básicas para la gestión de proyectos.

Gestión de proyectos

TEMA 3. SEGURIDAD INFORMÁTICA

MANUAL DE USUARIO ANTIVIRUS BANDA ANCHA

Instalación. Interfaz gráfico. Programación de Backups. Anexo I: Gestión de la seguridad. Manual de Usuario de Backup Online 1/21.

Guía de uso del Cloud Datacenter de acens

V i s i t a V i r t u a l e n e l H o s p i t a l

UNIVERSIDAD DE SALAMANCA

Guía de instalación de la carpeta Datos de IslaWin

Contenidos. Procedimientos iniciales Análisis del equipo para detectar archivos perjudiciales Qué es un cortafuegos...

Que hacer en caso de detección de virus? Elaborado por: Lic. Roberto David Viveros Fong-Choy Julio / 2001

WINDOWS : SERVIDOR DHCP

UF0513 Gestión auxiliar de archivo en soporte convencional o informático

Servicio de Informática Vicerrectorado de Tecnologías de la Información y la Comunicación

Implantar Microsoft Software Updates Service (SUS)

MANUAL DE USO DE LA APLICACIÓN ENCIFRA BOX 2.0

Sophos Anti-Virus para Mac OS X, versión 4.9 guía de inicio. Para Macs en red con Mac OS X

Infraestructura Tecnológica. Sesión 2: Mejoras adicionales al servidor de archivos

Infraestructura Tecnológica. Sesión 8: Configurar y administrar almacenamiento virtual

UNIDAD DIDACTICA 3 USUARIOS Y GRUPOS EN REDES WINDOWS 2003 SERVER I

Conservar los datos del ordenador en caso de apagón

Instalable módulo criptográfico Ceres. Manual de usuario

LOS VIRUS IMFORMÁTICOS

GUIA COMPLEMENTARIA PARA EL USUARIO DE AUTOAUDIT. Versión N 02 Fecha: 2011-Febrero Apartado: Archivos Anexos ARCHIVOS ANEXOS

Los mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas:

Guía de Instalación. Antivirus PC Tools Internet Security

Manual de Instalación.

10. El entorno de publicación web (Publiweb)


infinitum Guía de Instalación Antivirus Pc Tools Internet Security

MACROS. Automatizar tareas a través del uso de las macros.

S eguridad Informática

Cuales son las herramientas que ofrece el sistema operativo para el mantenimiento preventivo de software?

Kaspersky Endpoint Security 10 - versión para casa

Manual de usuario de Parda Programa de Almacenamiento y Recuperación de Datos Automático

SEMANA 12 SEGURIDAD EN UNA RED

Resumen ÁREA DE FACTURACIÓN::INFORMES::Pedidos Detalle Resumen ÁREA DE

Utilización del sistema operativo GNU/ Linux en las netbooks

SCANTERRA. Manual de usuario

PROYECTO ESPECIAL CHAVIMOCHIC INFORME TECNICO PREVIO DE EVALUACION DE SOFTWARE N GR-LL/PECH-05-INF

Instalación y Registro Versiones Educativas 2013

Guía de Instalación. Seguridad Esencial PC Tools

Análisis de aplicación: Moon Secure AV

G Data Informe técnico. Behaviour Blocking. (Escudo de comportamiento) Go safe. Go safer. G Data. Marco Lauerwald Marketing

Las redes y su seguridad

Manual de uso de la plataforma para monitores. CENTRO DE APOYO TECNOLÓGICO A EMPRENDEDORES -bilib

AGREGAR COMPONENTES ADICIONALES DE WINDOWS

AGREGAR UN EQUIPO A UNA RED Y COMPARTIR ARCHIVOS CON WINDOWS 7

Instalar y configurar W3 Total Cache

REDES DE ÁREA LOCAL. APLICACIONES Y SERVICIOS EN WINDOWS

Transcripción:

UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERÍA EN INFORMÁTICA PROYECTO FIN DE CARRERA DISTRIBUCIÓN LINUX PARA ANÁLISIS POSTINTRUSIÓN BEATRIZ ROMERO MOLINA MADRID, septiembre de 2008

Autorizada la entrega del proyecto al alumno: Beatriz Romero Molina LOS DIRECTORES DEL PROYECTO Mario Castro Ponce Rafael Ángel Vida Delgado Fdo: Fecha: Vº Bº del Coordinador de Proyectos David Contreras Bárcena Fdo: Fecha:

Resumen iii Resumen Internet ofrece cada día más posibilidades a los usuarios, sin embargo algunas de éstas pueden suponer en muchas ocasiones un peligro para ellos o para los demás. La extensión del uso de Internet a todos los sectores y la evolución en las infraestructuras ha supuesto el abaratamiento de costes y permitido la conectividad a todo tipo de usuarios, tanto inocentes como malintencionados, facilitando a estos últimos el acceso a la información privada de los demás o el ataque a otros ordenadores. Algunos ejemplos de perjuicios causados por este tipo de acciones son los accesos a cuentas bancarias ajenas, previo robo de la información necesaria, el uso de ordenadores extraños para cometer fraudes o delitos informáticos, etc. Estos ataques hacen que aquellos que utilizan Internet sin la información adecuada vean expuesta la integridad de sus datos y sistemas. La falta de formación e información de los usuarios en estos casos, el hecho de que no siempre estén familiarizados con las herramientas de análisis y lo tedioso de su utilización motivan la realización de este proyecto. El resultado que se espera conseguir facilitará a los usuarios la identificación de los problemas que presente su ordenador para su posterior reparación. Además, la difusión de la información obtenida sobre los virus y amenazas descubiertas permitirá aumentar el conocimiento global sobre el tema y el desarrollo de nuevos sistemas de prevención. Para alcanzar este propósito se ha desarrollado una distribución Live CD/DVD; para ello ha sido necesario realizar un estudio del campo de la seguridad informática, gracias al cual se han podido comprender las necesidades de seguridad por cubrir y las herramientas disponibles para ello. A continuación se ha realizado un análisis y evaluación de aplicaciones concretas, y aquellas que integran la herramienta se han seleccionado en base a una serie de pruebas realizadas y la comparación de los resultados producidos por cada una.

iv En el presente documento se indica también cómo, mediante el desarrollo de un script Bash, se ha conseguido la automatización de las tareas de análisis y desinfección, así como las posibilidades de uso del mismo. Existen cuatro formas de ejecutar el script HPI diferenciadas por el grado de profundidad en el análisis y el nivel de interactividad deseado. Éstas son: análisis desatendido profundo, desatendido ligero, semi-interactivo e interactivo. Posteriormente ha sido necesario llevar a cabo un proceso de creación de la distribución realizando modificaciones estéticas y de configuración para poder personalizar la distribución Linux de la que se partía. Por último, a modo informativo, se ha realizado un Presupuesto que muestra una estimación del coste de realización de la distribución desglosado por cada uno de los conceptos que contribuyen al coste final. Además, se ha realizado una evaluación de los objetivos de partida indicando cuáles de ellos se han llegado a cumplir y las conclusiones que se pueden extraer del proyecto.

Abstract v Abstract The internet increasingly offers a myriad of new possibilities for our lives. However, oftentimes this turns to be a rather dangerous security risk for inexperienced users. Internet usage has reached every sector and the infrastructure cost reduction has enabled this technology for users everywhere, whether they are well-intentioned or not. This allows malicious individuals to access private information and attack computer systems. Some of the most successful attacks are often related to online banking fraud schemes and the usage of compromised computers to conduct illegal activities. These attacks can potentially expose private data and compromise the system integrity of inexperienced internet users. The lack of training and knowledge to deal with modern threats, along with the fact that users are not familiar with today s computer analysis tools due to its complexity, motivate carrying out this project. The outcome of our work should assist users in identifying their computer problems for a subsequent repair. In addition, computer virus information gathered during the scanning will be made available to increase the general knowledge about computer security and unlock the development of future preventive systems. Towards this goal, we have developed a Live CD/DVD and carried out an extensive research on the security field. This information has been very valuable to help us better understand the current state of the art, tools and requirements to analyze computer systems. Next, we performed a comprehensive analysis and evaluation of the different software packages available and a selection of those which will make up our new tool; the selection criterion was based on a series of tests and the comparison of the results obtained. In this document, we also describe the different steps taken to achieve the automated analysis and disinfection thanks to the development of a Bash Shell script, as well as the different configuration parameters. There are four execution options for

Abstract vi the HPI script depending on how deep the scan should be and the desired level of user interaction. Deep unattended analysis, light unattended analysis, semi-interactive and interactive mode are currently supported. Thereafter, we modified the original branding and configuration setup within our creative process, in order to achieve a distribution that consistently conveys our tool selection. In addition, a budget with an estimation of developing our new distribution has been included for informational purposes, featuring the itemized amounts required to carry out our new distribution. Finally, the initial targets are evaluated against the study exit criteria and the final conclusions are provided.

Índice vii Índice 1 INTRODUCCIÓN... 2 1.1 Objetivos Principales... 2 1.2 Objetivos Secundarios... 3 2 ESTUDIO PREVIO... 7 2.1 Introducción... 7 2.2 Vulnerabilidades y Tipos de Amenazas... 7 2.2.1 Virus 8 2.2.2 Gusanos 9 2.2.3 Troyanos 9 2.2.4 Rootkits 10 2.3 Reconocimiento de Archivos y Detección de Rastros... 12 2.4 Navegación por los Árboles de Directorios... 13 2.5 Detección del Sistema Operativo... 15 2.6 Creación de Distribuciones Linux Live CD/DVD... 15 3 ELECCIÓN DE HERRAMIENTAS Y PRUEBAS UNITARIAS... 18 3.1 Introducción... 18 3.2 Detección y Eliminación de Archivos... 18 3.2.1 Requisitos 18 3.2.2 Virus, Gusanos y Troyanos 19 3.2.3 Rootkits 24 3.3 Empaquetamiento y Firma... 24 3.3.1 Empaquetamiento 25 3.3.2 Firma 26 3.4 Protocolo y Cifrado... 27 4 AUTOMATIZACIÓN DE TAREAS... 29 4.1 Introducción... 29 4.2 Opciones... 29 4.2.1 Modalidad Desatendido Profundo 29 4.2.2 Modalidad Desatendido Ligero 30 4.2.3 Modalidad Semi-interactivo 30 4.2.4 Modalidad Interactivo 30

Índice viii 4.3 Flowchart... 32 5 CREACIÓN DE LA DISTRIBUCIÓN.... 35 5.1 Introducción... 35 5.2 Pasos Previos... 35 5.2.1 Chroot 35 5.2.2 Escritorio 35 5.2.3 Acceso o Login 36 5.2.4 Usplash 37 5.2.5 Creación de la ISO 37 6 PRESUPUESTO... 39 6.1 Introducción.... 39 6.2 Desglose.... 39 7 CONCLUSIONES... 42 7.1 Introducción.... 42 7.2 Evaluación de los Objetivos.... 42 7.2.1 Objetivos Principales 42 7.2.2 Objetivos Secundarios 42 7.3 Conclusiones.... 43 8 BIBLIOGRAFÍA Y REFERENCIAS... 45 8.1 Introducción.... 45 8.2 Libros.... 45 8.3 Páginas Web.... 45 ANEXOS... 47 A ELIMINANDO ROOTKITS.... 49 A.1 Introducción... 49 A.2 Eliminando las Rootkits 1.0... 49 A.2.1 Índice 49 A.2.2 Introducción 50 A.2.3 Cómo Funcionan 50 A.2.4 Estudio de las Rootkits más Usadas 52 A.2.4.1 FreeBSD RootKit 1.2... 52 A.2.4.2 SunOS RootKit Release 1... 54 A.2.4.3 Linux RootKit 4.0... 55 A.2.4.4 Linux RootKit... 57

Índice ix A.2.4.5 The Hacker's Choice... 57 A.2.5 Eliminacion de las RootKits 58 A.2.6 Passwords de las RootKits. 61 A.2.7 Bibliografia. 61

Introducción x Índice de Figuras Figura 1. Directorios Linux...14 Figura 2. Avira AntiVir P1....20 Figura 3. Avira AntiVir P2....21 Figura 4. ClamAv P1....22 Figura 5. ClamAv P2....22 Figura 6. BDC...23 Figura 7. Compresión...26 Figura 8.Flowchart I...32 Figura 9. Flowchart II...33 Figura 11. Acceso al menú de edición de Fluxbox...36

Índice de Tablas xi Índice de Tablas Tabla 1. Porcentaje de Equipos con los Sistemas Operativos Indicados.... 4 Tabla 2. Resultados de los Antivirus....24 Tabla 3. Compresión....25 Tabla 4. Desglose de Costes del Proyecto...39 Tabla 5. Coste del Soporte Físico de la Distribución...40

1 Introducción

1 Introducción 2 1 Introducción A la hora de acometer la realización de este proyecto se han definido una serie de objetivos a cumplir. Esto ha facilitado la planificación del trabajo y ha permitido mantener un control fiable de la evolución del proyecto en sí. A continuación se comentan brevemente los objetivos fijados facilitando la comprensión de las conclusiones finales que se muestran en un apartado posterior de este documento. 1.1 Objetivos Principales Los objetivos considerados como principales son aquellos que se conforman la base del proyecto, la consecución de estos determinará su éxito o el fracaso. Objetivos Académicos Aprendizaje del comportamiento habitual del software malintencionado Se trata de estudiar los métodos más comunes de ataque y los archivos que se habitualmente dañan, así como los efectos que provocan los distintos tipos de software malintencionado al comprometer un sistema. Comprensión de los sistemas de archivos de SUSE y Ubuntu Detectar los directorios más importantes y habituales en estas dos distribuciones de Linux para poder realizar los análisis de forma más productiva en caso de que las diferencias entre estos así lo permitan. Estudio y elección de los protocolos Dado que será necesario transmitir la información obtenida a un servidor remoto, previamente se estudiarán algunos protocolos de transmisión y se elegirá uno adecuado para nuestro propósito.

1 Introducción 3 Estudio y utilización de firmas digitales La información que se va a recopilar y que se enviará debe permanecer sin modificar desde su recogida hasta su recepción en el servidor, para asegurar esta integridad empleará el método de la firma digital que habrá que comprender y posteriormente elegir la herramienta a emplear para aplicarlo. Estudio de las herramientas de seguridad existentes Dado que ya existen numerosas herramientas de análisis y desinfección de sistemas, será necesario estudiar las características de algunas de ellas y elegir las más convenientes a integrar en la distribución. Objetivos Técnicos Automatización de las tareas (desarrollo de un script Bash) Una de las ventajas de la distribución HPI es la escasa necesidad de atención por parte de los usuarios. Para poder emplear las herramientas que se hayan seleccionado al cumplir los objetivos anteriormente mencionados maximizando sus posibilidades se creará un script en lenguaje de línea de comandos (Bash) que minimice la interacción con el usuario. Creación de una distribución Linux Live CD/DVD El producto final del proyecto será una Live CD/DVD con todas las aplicaciones integradas, incluyendo el script Bash, y que permita el análisis de los discos duros de la máquina en la que se esté ejecutando. 1.2 Objetivos Secundarios Los objetivos que se explican a continuación son opcionales, en función de la evolución del proyecto y del tiempo disponible se tendrán en cuenta algunos de ellos o incluso todos. Se pueden considerar complementos adicionales cuya funcionalidad puede resultar útil sin ser parte esencial del proyecto.

1 Introducción 4 Tabla 1. Porcentaje de Equipos con los Sistemas Operativos Indicados. 1 Ampliación para Windows XP Este objetivo permitiría el análisis de discos duros cuyo sistema instalado sea Windows XP. Por tanto conllevaría el estudio del sistema de archivos de dicha plataforma si es que se quiere especializar el proceso de análisis y limpieza. La ventaja que proporcionaría sería la extensión del uso de la herramienta dado que, tal y como se observa en la Tabla 1, éste es el sistema operativo más usado por los ordenadores que navegan por Internet actualmente siendo internet el mayor medio de difusión de malware. 1 Tabla obtenida de http://www.w3schools.com/browsers/browsers_os.asp

1 Introducción 5 Adecuación para crear una distribución USB Los dispositivos USB proporcionan ventajas de portabilidad y disponibilidad a los usuarios, puesto que su utilización es muy común, sería deseable adaptar la distribución HPI para que pudiera ser lanzada desde uno de estos y que de este modo la propia distribución adquiriera esas características.

2 Estudio Previo

2 Estudio Previo 7 2 Estudio Previo 2.1 Introducción Como se habrá podido observar en el capítulo anterior, varios de los objetivos tanto principales como secundarios requieren adquisición de información y estudio. En este apartado se muestra ese proceso de aprendizaje y recolección de información realizando un breve resumen da cada uno de los aspectos más importantes. 2.2 Vulnerabilidades y Tipos de Amenazas Un sistema es vulnerable cuando existe la posibilidad de que algo, una amenaza, provoque en él un efecto adverso y en la mayoría de los casos inesperado. Teniendo en cuenta el ámbito del proyecto, las vulnerabilidades y amenazas que nos atañen son las relacionadas con intrusiones informáticas y las provocadas por software desarrollado para causar daños. Las causas por las que los sistemas pueden ser vulnerables a ataques informáticos suelen estar relacionadas con la configuración de éstos, la de la red o redes a las que estén conectados los equipos y de los fallos propios de las aplicaciones e incluso el sistema operativo instalado. La detección y la toma de medidas para minimizar estas vulnerabilidades requiere el estudio y la interacción del usuario ya que puede requerir instalar software o actualizaciones concretas e incluso modificar parámetros de configuración. Por este motivo queda fuera del alcance de nuestra aplicación automática, sin embargo se incluyen algunas herramientas que pueden servir para realizar estos estudios y análisis. Además conviene informarse de los problemas que ya

2 Estudio Previo 8 se han detectado en los sistemas operativos y aplicaciones consultando documentos como la lista de vulnerabilidades del instituto SANS 2. No todas las amenazas afectan a cualquier sistema y puesto que la solución que se busca pretende estar enfocada, siempre que sea posible, al sistema concreto a analizar, es necesario detectar y tener claro en qué consisten y a qué afectan. En este apartado se pretende distinguir a grandes rasgos unas amenazas de otras y los sistemas que vulneran. 2.2.1 Virus Los virus son programas cuya función es provocar algún daño alterando el funcionamiento normal de la máquina que infectan y propagarse lo más posible además de pasar desapercibidos. En general en su ciclo de vida los virus infectan una serie de archivos, se replican y mutan para dificultar su detección. Normalmente se distinguen tres tipos de virus: Virus de archivo: tal y como su propio nombre indica estos virus infectan archivos, para hacerlo pueden utilizar dos métodos: seleccionar una serie de programas que infecta al ejecutarse o mantenerse residente en memoria e infectar cada programa que el usuario ejecuta. Virus de disco de arranque: este tipo de malware se instala en el sector de arranque de un dispositivo, bien sea el disco duro o algún dispositivo de memoria externa, de forma que al arrancarlo se ejecuta y se carga en memoria. 2 SANS (SysAdmin, Audit, Network, Security) Institute. www.sans.org. http://www.sans.org/top20/2007/top20.pdf

2 Estudio Previo 9 Virus de macro: son virus que aprovechan las funcionalidades que ofrecen las macros de Microsoft Office para que una vez que se abra el archivo infectado con ellos todos los demás archivos de ese tipo que se abran se infectarán también. Existen virus que emplean una combinación de algunas de las técnicas de infección explicadas hasta aquí, pero son menos comunes, se conocen como virus multipartitos. 2.2.2 Gusanos Los gusanos, o worms, se diferencian de los virus en que no necesitan infectar a otros archivos, se ejecutan y se multiplican de forma masiva y se expanden a través de Internet. Su función es saturar el sistema o la red haciendo que su rendimiento caiga y ralentizando todas las operaciones que se intente realizar y que se reduzca drásticamente el ancho de banda disponible. Se mantienen residentes en memoria y se replican continuamente para posteriormente auto enviarse a otros equipos accesibles a través de Internet, de esa forma provocan el payload ya mencionado. Su eliminación se lleva a cabo por medio de antivirus y ese será el sistema que emplee la distribución HPI para detectarlos y desinfectar el disco duro a analizar. 2.2.3 Troyanos Este tipo de malware es similar al virus pero se diferencia de él sobre todo en sus efectos sobre el sistema. Normalmente se introduce en el ordenador atacado debido a su apariencia inofensiva, simula ser una utilidad y una vez instalado, mientras parece que está realizando su tarea, de forma oculta actúa proporcionando un acceso remoto al sistema a través del cual se puede obtener información almacenada e incluso información directamente de la entrada de

2 Estudio Previo 10 datos por teclado. Por lo tanto para poder realizar su función durante el mayor tiempo posible, suelen estar diseñados para no modificar el comportamiento habitual del sistema en el que se implantan para pasar inadvertidos. Tal y como se verá en el apartado siguiente, son muy similares a los rootkits, pero a diferencia de estos últimos, los troyanos se ocultan tras una aplicación aparentemente útil y no dañina por lo que no necesitaría manipular elementos del sistema para ocultarse. En algunos casos, el objetivo del troyano no es únicamente obtener información sino que además aprovechan el control que tienen sobre la máquina infectada para utilizar sus recursos bien sea utilizándola como servidor de envío automático de spam, como proxy para realizar otras acciones maliciosas ocultando el rastro del verdadero origen, etcétera. La mayoría de software anti troyano gratuito que se encuentra suele ser en sí un troyano por lo que resulta difícil eliminarlos una vez instalados. Aún así la mayoría de los antivirus incluyen funciones de detección y eliminación de troyanos incluso previas a su instalación siendo lo más adecuado. Puesto que la HPI va a trabajar sobre archivos, no sobre sistemas en funcionamiento, incluirá un antivirus con detección y eliminación de troyanos. 2.2.4 Rootkits Los rootkits son programas especializados en ocultar los efectos de un ataque. Mediante la modificación de ciertos archivos del sistema operativo consiguen operar con privilegios de administrador (en Windows) y como superusuarios (en Unix) sin ser descubiertos y ocultan salidas de información, archivos de log, inicios de sesión, etcétera. Pueden llegar a cooperar con otros programas que capturen entrada de datos tanto mediante captura de paquetes de la red como capturando la entrada de teclado (keyloggers) o la información contenida en dispositivos de memoria externa al utilizarlos. Los principales programas que emplean los rootkits en plataformas Unix son los siguientes:

2 Estudio Previo 11 Ps: manipulan la información que este comando muestra sobre los procesos en ejecución de forma que queden ocultados los que puedan delatar la intrusión. Login: es un comando que sirve tanto para cambiar de usuario en el sistema, como para registrar las entradas correctas y los intentos fallidos de los distintos usuarios. La modificación de este programa permite a los intrusos no dejar rastro de entrada. W: este comando muestra la información de los usuarios registrados en el sistema, los rootkits lo modifican para que no muestre aquellos usuarios creados por los programas intrusos y que puedan estar actuando. Passwd: este programa se emplea para modificar las contraseñas de los usuarios y bajo el control del software de intrusión puede negar el acceso al propietario a su propio sistema y tomar el control absoluto de la máquina. Netstat: modifica este programa para que oculte la información sobre las conexiones entrantes y salientes que puedan hacer detectar la intrusión. Find: alterando el programa de búsqueda evitan que se encuentren los archivos de los programas instalados para atacar a la máquina. Df: cambiando este programa que muestra la información del uso del espacio en disco pueden encubrir los efectos de los programas no deseados en los distintos sistemas de archivos. Gracias a sus técnicas de ocultación en la mayoría de los casos no es fácil detectarlos y en ocasiones no es suficiente con eliminar los archivos infectados ya que si no se encuentra la forma en la que han conseguido acceder al sistema para evitar que vuelvan a hacerlo, en cualquier momento pueden restaurarse. Por estas razones la herramienta desarrollada empleará las técnicas de detección disponibles para poder eliminar los archivos infectados o sustituir los ejecutables de los programas anteriormente mencionados, pero no se puede

2 Estudio Previo 12 asegurar que la intrusión vuelva a producirse si no se estudia el método de entrada al sistema que ha podido emplear y se asegura para que no pueda reutilizarlo. Teniendo en cuenta que el usuario objetivo de la distribución HPI es un usuario doméstico y no tiene por qué saber que debe realizar un estudio más profundo, en caso de detectarse algún rastro de rootkits aparecerá una advertencia al respecto en el informe final. 2.3 Reconocimiento de Archivos y Detección de Rastros Los programas de detección de malware emplean varios tipos de técnicas a la hora de reconocer qué archivos están infectados y cuáles en principio no. Búsqueda de Cadenas: en esta técnica el reconocimiento de archivos se realiza mediantes búsquedas de secuencias ya conocidas en los archivos del sistema. Los anti- malware mantienen unas bases de datos con los patrones que han encontrado en los virus detectados hasta ese momento por los expertos y comparan cada una de las secuencias de los archivos analizados con ellos. En caso de que coincida alguna el fichero está infectado. Esta técnica también se conoce como Scanning o Rastreo. Búsqueda de Excepciones: se emplea para detectar aquellos virus que mutan de una infección a otra. Técnica Deductiva: comprueban una serie de parámetros de los archivos y contrastan si esa información es correcta y coherente. Si no es así, el archivo estará bajo sospecha. Algunos de los parámetros que estudia son las fechas de creación y modificación, el tamaño del archivo, su capacidad para instalarse en memoria o no, etcétera. Análisis Heurístico: este método de análisis permite detectar malware que aún no ha sido reconocido ni estudiado. Consiste en desensamblar el programa y analizar sus instrucciones de código máquina buscando aquellas que podrían resultar dañinas y viendo el contexto en el que están. Esta técnica puede generar falsas alarmas por

2 Estudio Previo 13 lo que lo más aconsejable en caso de que se detecten archivos sospechosos, es mantenerlos en cuarentena y enviar una copia al proveedor del antivirus para su estudio. Comprobación de CRC: para poder emplear este indicador el anti malware debe calcular el CRC de los archivos al instalarlos para poder comprobarlo en cada análisis. Puesto que el CRC se calcula de forma que una modificación en un bit provoca un CRC diferente, aquellos ejecutables que muestren incoherencias con el CRC nuevo calculado se consideran infectados. Vacunación: es similar a la anterior, pero en este caso el anti malware almacena cierta información de cada archivo bien sea en el propio archivo de forma que cada vez que éste se ejecuta comprueba automáticamente si ha habido modificaciones, o bien en un archivo común independiente al que se recurre cada vez que se analiza el sistema. 2.4 Navegación por los Árboles de Directorios Como ya sabemos la información que se almacena en los discos duros se organiza en forma de árbol, es el árbol de directorios. En cada sistema operativo esta organización es diferente y conviene saber qué carpetas se deben analizar más profundamente por contener archivos especialmente susceptibles de manipular como pueden ser los ejecutables mencionados en el apartado 2.2.4 Rootkits. En el caso de Linux el directorio raíz es el / dentro de éste se encuentran todos los programas y archivos relacionados con el sistema operativo y en concreto en /bin y /sbin están dichos ejecutables. Otra carpeta a tener en cuenta sería /usr en la que se almacena la documentación y los ejecutables principalmente; /boot contiene todo lo relacionado con el arranque. Esto es así en todas las distribuciones de Linux por lo que no será necesario distinguir a

2 Estudio Previo 14 cuál de éstas corresponde el sistema operativo instalado ya que el análisis no variará de una a otra. / bin boot dev etc sbin usr media Figura 1. Directorios Linux En Windows la unidad principal es C: y en C:\\windows\System32 se encuentran los ejecutables equivalentes para esta plataforma. También conviene tener en cuenta que en la mayoría de los casos los programas se instalan por defecto (ya que el usuario no suele modificar la ruta) en la carpeta C:\\Archivos de Programa o bien en C:\\Program Files. Cada usuario puede tener sus propios programas disponibles y su configuración concreta y todas ellas se guardan en C:\\Documents and Settings, incluyendo cookies y otros archivos potencialmente peligrosos, por eso esta carpeta deberá ser analizada. C:\ Archivos de Programas Documents and Settings Temp Windows Program Files... System System32 Fonts Logs Por lo tanto hay dos opciones de análisis, uno profundo, en el que se analizará el sistema desde la carpeta raíz, y otro reducido que analizará únicamente las carpetas mencionadas en este apartado.

2 Estudio Previo 15 2.5 Detección del Sistema Operativo En primer lugar, para poder analizar un disco desde una Live CD/DVD es necesario montar el dispositivo y el mismo comando que nos indica qué dispositivos permiten ser montados (fdisk l), nos muestra el sistema de archivos o sistema operativo, de forma genérica, en caso de que tenga alguno instalado. También nos indica cuáles de estos permiten que la máquina inicie en ellos ( bootables ) por lo que se obtendría la información básica para poder empezar a analizar. Esto en el caso de Linux será suficiente ya que como se comentó en el apartado anterior, las similitudes entre distribuciones permiten tratarlas por igual. 2.6 Creación de Distribuciones Linux Live CD/DVD Existen varios métodos para crear distribuciones de Ubuntu personalizadas, puede hacerse partiendo de una ISO de otro Live CD/DVD o puede crearse una distribución nueva a partir de la instalación que tengas de Linux. El primer método es útil si no tienes dónde instalarte Linux o si lo que interesa es mantener la mayoría de los paquetes instalados de esa Live concreta e incluso añadir algún paquete más al repositorio. Sea como sea, es necesario realizar una serie de modificaciones de configuración para poder renovar la estética de la distribución puesto que se entiende que una vez modificada ya no será la misma distribución de la que partimos y es conveniente diferenciarlas para no inducir a error. Cambiar el

2 Estudio Previo 16 aspecto requiere retocar tres elementos: la pantalla que aparece al cargar el sistema (Usplash), la imagen que aparece mientras se está cargando el escritorio (Splash) y el fondo de escritorio. Para hacer esto será necesario crear las imágenes pertinentes con las propiedades de resolución y colores apropiadas para cada uno de los elementos mencionados. Posteriormente habrá que crear el programa Usplash empleando la herramienta usplash-dev y modificar los parámetros necesarios en el archivo %gconf-tree.xml.

3 Elección de Herramientas Pruebas Unitarias

3 Elección de Herramientas y Pruebas Unitarias 18 3 Elección de Herramientas y Pruebas Unitarias 3.1 Introducción En esta sección del documento se explicará a grandes rasgos las herramientas consideradas para cumplir con la funcionalidad de la distribución HPI eligiendo una para cada función requerida y comentando los resultados de la realización de las pruebas individuales para cada una de las seleccionadas. 3.2 Detección y Eliminación de Archivos 3.2.1 Requisitos Existe una gran cantidad de productos tanto gratuitos como de pago, sin embargo para nuestra herramienta es necesario que los que resulten seleccionados cumplan una serie de requisitos, estos son: Utilización Mediante Comandos de Consola: esta característica es primordial puesto que si la herramienta va a ser utilizada por un script para disminuir la interacción del usuario, no es posible emplear una interfaz gráfica así que toda la funcionalidad deberá ser accesible mediante comandos. Actualización: tal y como se deduce de las explicaciones sobre técnicas de detección de malware expuestas en el apartado 3 del capítulo 2 (2.3 Detección de Rastros) es esencial que las bases de datos de los programas empleados sean lo más actualizadas posible. Por eso será necesario que las herramientas que lo requieran dispongan de un comando de actualización por consola. Compatibilidad con Windows: con vistas a la realización de los objetivos secundarios, es aconsejable que al menos los programas antivirus y de detección de rootkits dispongan de sistemas de detección de malware diseñado tanto para Linux como para Windows. No es un requisito indispensable.

3 Elección de Herramientas y Pruebas Unitarias 19 3.2.2 Virus, Gusanos y Troyanos 3 La mayoría de los programas antivirus de hoy en día detectan estos tres tipos de malware en sus análisis, por lo tanto al elegir esta herramienta tendremos en cuenta que cumpla con esta característica para de esta forma cargar menos la distribución y que resulte más ligera. Para realizar las pruebas unitarias se ha creado un directorio en el que se han almacenado una serie de archivos reconocidos como malware, en concreto GoldenKey, Trojan Simulator, Personal Inspector y Zapass, así como los archivos para test de antivirus disponibles en la web www.eicar.org/anti_virus_test_file.htm En todos los casos se analizará la carpeta contenedora de dicho directorio de forma que habrá tanto archivos seguros como no seguros y los mismos para todas las pruebas. Se han considerado los siguientes antivirus que cumplen los requisitos mencionados anteriormente: AVIRA ANTIVIR PERSONALEDITION CLASSIC 4 Características Este antivirus permite emplear varias de las técnicas de detección ya explicadas anteriormente: Búsqueda Heurística: cuenta con opciones para realizar búsquedas heurísticas eligiendo el grado de intensidad de esta de 1 a 3. Cálculo CRC: permite calcular CRC para los archivos y almacenarlos en una base de datos pero esto queda fuera de nuestro uso puesto que para que fuera efectivo tendría que calcularse al instalar los programas y nuestra herramienta se 3 http://www.anti-malware-test.com/?q=taxonomy/term/7 4 http://www.free-av.com/

3 Elección de Herramientas y Pruebas Unitarias 20 encarga del análisis posterior a la intrusión por lo que sólo ralentizaría el proceso de escaneo y los CRC se calcularían sobre los archivos ya infectados. Búsqueda de Cadenas: cuenta con una base de datos de firmas actualizable mediante el comando antivir update fácilmente utilizable en script. Ofrece una serie de opciones que permiten acotar la búsqueda, bien sea por extensión o por nombre. Esto podría resultar útil si se añadiera una opción de análisis personalizado, en principio no es uno de los objetivos, pero se tendrá en cuenta en caso de aplicar mejoras a la herramienta. Otras opciones útiles permiten enviar los archivos sospechosos a cuarentena y arreglar los que puedan ser arreglados. También ofrece la posibilidad de renombrar los que no pueda arreglar para que dejen de ser útiles y la de definir una carpeta de cuarentena en la que almacenar esos archivos. Pruebas Unitarias Prueba 1: se realiza un análisis básico, es decir, de búsqueda de cadenas, pero que analice el interior de los archivos comprimidos (-z) y todos los subdirectorios (-s) desde el de partida. Se activará la opción de mover a cuarentena porque nos facilita la tarea de recogida de la información a enviar al servidor remoto. Figura 2. Avira AntiVir P1.

3 Elección de Herramientas y Pruebas Unitarias 21 Al comprobar el resultado del análisis y los archivos detectados se observa que tan solo ha detectado y puesto en cuarentena los archivos de test de EICAR y el Personal Inspector. Prueba 2: en este caso se empleará la técnica de búsqueda heurística a más alto nivel (--heur-level=3) puesto que si en este sigue sin detectar los virus que faltan, menos lo hará en niveles inferiores. El resto de opciones se mantienen igual. Figura 3. Avira AntiVir P2. El resultado obtenido en este segundo escáner ha sido exactamente el mismo que en la prueba 1. CLAM ANTIVIRUS 5 Características: Este antivirus es más sencillo que el anterior, emplea búsqueda de cadenas y cuenta con una opción para detectar posibles aplicaciones no deseadas pero tan sólo en un nivel, a diferencia del anterior. Tiene una ventaja y es que permite copiar los archivos a cuarentena en vez de moverlos directamente de manera que podría estar en manos del usuario el decidir si quiere quitarlos o no en una de las opciones de análisis personalizado. 5 http://www.clamav.org/

3 Elección de Herramientas y Pruebas Unitarias 22 Al igual que la analizada en el apartado anterior, esta herramienta permite la actualización mediante consola, en este caso empleando un comando en vez de una opción (freshclam). Pruebas Unitarias: De nuevo se realizarán dos pruebas para comprobar la conveniencia de aplicar uno o más de un método de detección. Prueba 1: realizamos un análisis mediante búsqueda de cadenas exclusivamente, iniciando en el directorio de pruebas. Emplearemos los parámetros de análisis dentro de archivos comprimidos (--unzip, --unrar, --tar) y el de análisis recursivo de subdirectorios (-r). El resultado obtenido se muestra en la página siguiente. Figura 4. ClamAv P1. Analizando el informe mostrado por consola se puede ver que tan solo detecta los archivos de EICAR y el Trojan Simulator. Prueba 2: aplicamos además la opción de detección de aplicaciones no deseadas (--detect-pua) y obtenemos resultados ligeramente mejores que se muestran en la Figura 5. Figura 5. ClamAv P2.

3 Elección de Herramientas y Pruebas Unitarias 23 El informe indica que esta vez además de EICAR y Trojan Simulator, ha detectado el Golden Key. BDC - BITDEFENDER CONSOLE ANTIVIRUS 6 Características: Al igual que el antivirus que acabamos de comentar, el BitDefender cuenta con opciones de copia o movimiento de los archivos detectados a un directorio de cuarentena, sin embargo no permite especificar a cuál. Esto no resulta nada práctico ya que sería deseable que todas las herramientas detectoras depositaran los archivos en el mismo directorio para facilitar procesos posteriores de empaquetamiento y envío. En cuanto a las técnicas empleadas, cuenta con un opción de detección de virus desconocidos (--nohed) sin embargo no se puede aplicar ya que provoca un fallo que cancela el análisis. Por lo tanto puede considerarse que sólo emplea reconocimiento de cadenas. Figura 6. BDC RESULTADOS La Tabla 2 resume el resultado del test realizado a los distintos antivirus, sin duda el más satisfactorio es Avira AntiVir y por lo tanto es el seleccionado para la distribución. 6 http://www.bitdefender.es/

3 Elección de Herramientas y Pruebas Unitarias 24 Antivirus EICAR GoldenKey Trojan Simulator Personal Inspector Zapass Falsos Positivos Avira AntiVir 0 ClamAv 0 BitDefender Console 0 Tabla 2. Resultados de los Antivirus. 3.2.3 Rootkits Tal y como se comentó en el apartado 2.2.4 Rootkits, este tipo de malware requiere interacción humana para la eliminación en la mayoría de los casos, por eso la herramienta HPI únicamente incluirá métodos de detección. Además se incluirán una serie de archivos revisados para, en caso de que haya indicios de un ataque, sustituir los que hayan podido ser manipulados como precaución. Los detectores a emplear serán chkrootkit 7 y rkhunter 8 por su facilidad de uso, disponibilidad y los buenos resultados confirmados por usuarios anónimos en internet. Puesto que la eliminación de rootkits no es fácilmente automatizable, en el anexo A se adjunta un documento que puede ayudar en su detección y eliminación manual en caso de que estas herramientas adviertan algún peligro. 3.3 Empaquetamiento y Firma Para poder transmitir los archivos detectados al servidor remoto se realizará un fichero comprimido que los contenga a todos y al que posteriormente se 7 http://www.chkrootkit.org/ 8 http://www.rootkit.nl/projects/rootkit_hunter.html

3 Elección de Herramientas y Pruebas Unitarias 25 aplicará un algoritmo de cifrado que asegure su integridad al receptor. El criterio de elección de la herramienta de compresión es únicamente el tamaño del fichero que resulte de la compresión de una serie de archivos, en concreto del directorio contenedor de los virus empleados para el test de Antivirus. La que produzca un paquete de menor tamaño será la empleada. 3.3.1 Empaquetamiento En la siguiente tabla se muestran por filas los programas junto con el tamaño del archivo que han producido al ejecutarlos en modo de compresión máxima. El tamaño del directorio original es de 10 1 MB. En todos los casos se aplica el comando que produce una mayor compresión. Herramienta Tamaño del Archivo Tar (Gzip) 9 9 MB Zip 9 9 MB 7zr 5 6 MB Rar 9 8 MB Tabla 3. Compresión. Aunque la diferencia numérica queda bastante clara, en la Figura 7 se puede observar de forma gráfica la superioridad de la compresión en 7z 9 realizada empleando las opciones de ultra compresión. 9 http://www.7-zip.org/

3 Elección de Herramientas y Pruebas Unitarias 26 10 9 8 7 6 5 4 3 2 1 0 Tar (gzip) Zip 7zr Rar Figura 7. Compresión La compresión de 7zip llega casi al 50% por lo tanto será la herramienta empleada a este efecto. 3.3.2 Firma La firma se realizará igualmente mediante OpenSSL 10 empleando un certificado de prueba obtenido de la página web de Entrust Demo 11 cuya validez es de un mes. Para obtener el resumen de los paquetes a enviar, la clave simétrica y el paquete con la información sobre los virus, se empleará md5 y posteriormente se cifrarán cada uno de los resúmenes empleando los certificados correspondientes y RSA. 10 http://www.openssl.org/ 11http:// www.entrust.com/freecerts

3 Elección de Herramientas y Pruebas Unitarias 27 3.4 Protocolo y Cifrado La conexión con el servidor y el transporte de los datos se realizarán empleando el protocolo SSH y aplicando la gestión segura de claves RSA que éste aporta mediante el servidor OpenSSH 12 y el cliente sftp puesto que se asume que el servidor estará situado en una máquina Windows mientras que el cliente será la distribución Linux HPI. 12 http://www.openssh.com/

3 Elección de Herramientas y Pruebas Unitarias 28 4 Automatización de Tareas

4 Automatización de Tareas 29 4 Automatización de Tareas 4.1 Introducción Como hemos visto hasta ahora, la ejecución de la herramienta principal de la distribución desarrollada conlleva la invocación de distintos programas que son los que realmente realizarán cada una de las funciones implementadas. Análisis y aislamiento de virus, detección y eliminación de Rootkits en la medida de lo posible, empaquetamiento y compresión de la información y transmisión segura de los datos recogidos a un servidor remoto. Finalmente se mostrará un informe al usuario indicándole las modificaciones realizadas y precauciones a tomar en caso de que sea necesario tomar medidas manuales. Para poder llevar a cabo todo esto sin interacción del usuario se desarrollará un script en lenguaje de consola de comandos de Linux. En este capítulo se indica la estructura de dicho programa y las opciones de que dispondrá. 4.2 Opciones A lo largo de este documento se han ido mencionando distintas opciones de análisis que el usuario tendrá la posibilidad de elegir. A continuación se detallan todas las opciones disponibles y sus características. 4.2.1 Modalidad Desatendido Profundo Esta modalidad es totalmente automática y llevará a cabo las siguientes acciones: Análisis Antivirus: realizará un análisis profundo, es decir, analizará todos los directorios y archivos del disco duro. Detección de Rootkits: igualmente será una búsqueda iniciada en el directorio raíz del disco duro y se emplearán dos herramientas de detección.

4 Automatización de Tareas 30 Tratamiento de Archivos Sospechosos: en esta modalidad, los archivos detectados por el antivirus como sospechosos serán enviados al servidor remoto, en caso de disponer de conexión a internet, y eliminados directamente. Informes: los informes se almacenarán en un directorio indicado por el usuario sin mostrarse al finalizar el proceso. Apagado del sistema: si se indica la opción correspondiente, una vez finalizado todo el proceso, se apagará el sistema 4.2.2 Modalidad Desatendido Ligero Es muy similar al caso anterior, la diferencia está en la profundidad del análisis, en este caso sólo se analizarán los directorios en los que es más probable encontrar archivos infectados. Además sólo se empleará uno de los dos detectores de rootkits. 4.2.3 Modalidad Semi-interactivo En este caso el grado de automatización es menor permitiendo al usuario tomar ciertas decisiones. Análisis Antivirus y Detección de Rootkits: estas acciones se corresponden exactamente con las de la primera modalidad, analizarán de forma exhaustiva el disco duro. Tratamiento de Archivos Sospechosos: el usuario podrá decidir si se eliminan todos los archivos detectados o ninguno. Envío de Información: en caso de que exista una conexión a internet disponible, se enviarán automáticamente los datos al servidor. Informes: el usuario decidirá si desea ver los informes en ese momento o únicamente almacenarlos en un directorio. 4.2.4 Modalidad Interactivo Todas las decisiones las toma el usuario:

4 Automatización de Tareas 31 Análisis Antivirus y Detección de Rootkits: podrá elegir entre análisis profundo o ligero. Tratamiento de Archivos Sospechosos: el usuario podrá decidir si se eliminan todos los archivos detectados o ninguno (por defecto ninguno). Envío de Información: tendrá la opción de desactivar el envío de los datos al servidor (por defecto se enviarán si la conectividad lo permite). Informes: el usuario decidirá si desea ver los informes en ese momento o únicamente almacenarlos en un directorio.

4 Automatización de Tareas 32 4.3 Flowchart En el siguiente diagrama se muestra el flujo del programa. Comando -dp No -dl No Sí Antivir: / V Sí Antivir: /bin /usr... V Dir Dir chkrootkit rkhunter R chkrootkit R Dir 7zr 7z 7zr 7z Dir 7z OpenSSL OpenSSL 7z OpenSSH OpenSSH rm rm -sd No Fin -sd No Fin Sí Sí ShutDown ShutDown Fin Fin Figura 8.Flowchart I

4 Automatización de Tareas 33 V No -si No Ligero? No Antivir: / Sí Antivir: / V Sí Antivir: /bin /usr... V Dir Dir Dir chkrootkit R chkrootkit rkhunter R chkrootkit rkhunter R Dir 7zr 7z Dir 7z 7zr 7z OpenSSL 7z OpenSSL Enviar? OpenSSH Sí No OpenSSH Limpiar? No Fin Limpiar? No Fin Sí Sí rm rm Fin Fin Figura 9. Flowchart II.

5 Creación de la Distribución

5 Creación de la distribución. 35 5 Creación de la distribución. 5.1 Introducción El este capítulo resume el proceso de creación de la distribución, las dificultades y problemas encontrados y cómo se han sorteado en caso de no haber podido solucionarse de forma sencilla. 5.2 Pasos Previos Tal y como se explicó en el apartado correspondiente a la creación de la distribución, dentro del capítulo 2 Estudio Previo, es necesario instalar los programas que se desea que formen parte de la nueva distribución y que han sido elegidos en los capítulos anteriores. 5.2.1 Chroot En el caso de la distribución HPI, el método más natural a emplear sería el que parte de la instalación puesto que todas las modificaciones de paquetes y programas instalados están ya hechas sobre una distribución de Linux, ProtechOne, ya instalada. La herramienta remastersys es la que permite crear una imagen ISO del sistema simplemente con un comando, el problema es que deshace las modificaciones realizadas para personalizar el diseño de la distribución y con esta distribución concreta la imagen resultante da problemas de arranque. Tras varios intentos y al no encontrar una solución a dichos problemas de arranque se ha decidido emplear el otro método disponible que a pesar de ser mucho más complejo ha dado resultados mucho mejores. Explicándolo a grandes rasgos podría decirse que consiste en desempaquetar la imagen de la distribución original en un directorio y realizar las modificaciones empleando un comando que permite actuar desde consola como si el sistema de archivos cargado fuera el obtenido de la imagen. Este comando es chroot.. 5.2.2 Escritorio La modificación de la distribución de la que partimos, Linux ProtechOne presenta algunas diferencias respecto a las distribuciones típicas de Ubuntu ya que emplea

5 Creación de la distribución. 36 como gestor de pantallas Fluxbox. La forma más sencilla de modificarlo es acceder al menú de edición del inicio de Fluxbox disponible en el menú del escritorio tal y como se muestra en la Figura 11. Figura 10. Acceso al menú de edición de Fluxbox Sin embargo, tal y como se ha indicado en el apartado anterior, es necesario hacer todos los cambios mediante comandos desde la sesión iniciada con chroot ya que no se puede iniciar desde ésta el gestor de ventanas por estar ya en uso por el sistema real. Esto nos lleva a localizar los archivos de configuración que están ocultos. Dichos archivos se encuentran en el directorio /etc/skel. Para cambiar el fondo de escritorio basta con modificar la línea fbsetbg f y sustituir el path que aparece como argumento del comando por la ruta en la que se encuentra la imagen deseada dentro del archivo startup y para modificar el menú es necesario modificar el archivo menu que tiene una estructura muy clara y fácil de modificar. 5.2.3 Acceso o Login Otro de los elementos a modificar es la pantalla de registro de usuario que permite acceso al sistema una vez que se ha instalado la distribución. Para esto lo único que hay que hacer es sustituir las imágenes presentes en la carpeta /usr/share/gdm/themes/protech-gdm/ manteniendo sus nombres. Puesto que ya no se trata del tema original de Protech, lo lógico es modificar el nombre del directorio y