116
1 TECNOLÓGICO NACIONAL DE MÉXICO INSTITUTO TECNOLÓGICO DE ACAPULCO CRIPTOANÁLISIS A LA FUNCIÓN HASH DE UN SISTEMA OPERATIVO NIVEL C1 EMPLEANDO UN CLÚSTER HPC CON SOFTWARE DE USO LIBRE TESIS QUE PARA OBTENER EL TÍTULO DE: MAESTRO EN SISTEMAS COMPUTACIONALES PRESENTA ING. GADDIEL FREDY FLORES ARTEAGA DIRECTOR DR. EDUARDO DE LA CRUZ GÁMEZ CODIRECTOR M.T.I. ELOY CADENA MENDOZA ACAPULCO, GRO., Noviembre de 2019.

TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios

1

TECNOLOacuteGICO NACIONAL DE MEacuteXICO

INSTITUTO TECNOLOacuteGICO DE ACAPULCO

CRIPTOANAacuteLISIS A LA FUNCIOacuteN HASH DE UN SISTEMA

OPERATIVO NIVEL C1 EMPLEANDO UN CLUacuteSTER HPC

CON SOFTWARE DE USO LIBRE

TESIS

QUE PARA OBTENER EL TIacuteTULO DE

MAESTRO EN SISTEMAS COMPUTACIONALES

PRESENTA

ING GADDIEL FREDY FLORES ARTEAGA

DIRECTOR

DR EDUARDO DE LA CRUZ GAacuteMEZ

CODIRECTOR

MTI ELOY CADENA MENDOZA

ACAPULCO GRO Noviembre de 2019

i

El presente trabajo de tesis fue desarrollado en la Divisioacuten de Estudios de Posgrado e

Investigacioacuten del Instituto Tecnoloacutegico de Acapulco perteneciente al Programa

Nacional de Posgrados de Calidad (PNPC-CONACYT)

Con domicilio para recibir y oiacuter notificaciones en Av Instituto Tecnoloacutegico de Acapulco sn

Crucero del Cayaco Acapulco Guerrero Meacutexico CP 39905

Becario Gaddiel Fredy Flores Arteaga

CVU 851420

Nuacutem de apoyo 627006 Grado Maestriacutea

ii

Descargo de Responsabilidad Institucional

El que suscribe declara que el presente documento titulado ldquoCriptoanaacutelisis a la funcioacuten

hash de un sistema operativo nivel C1 empleando un cluacutester HPC con software de uso librerdquo es un

trabajo propio y original el cuaacutel no ha sido utilizado anteriormente en institucioacuten alguna para

propoacutesitos de evaluacioacuten publicacioacuten yo obtencioacuten de alguacuten grado acadeacutemico

Ademaacutes se han recogido todas las fuentes de informacioacuten utilizadas las cuales han sido

citadas en la seccioacuten de referencias bibliograacutefica de este trabajo

Nombre Ing Gaddiel Fredy Flores Arteaga Fecha y firma

iii

Dedicatoria

Este logro se lo dedico a mi toda mi familia que incondicionalmente siempre estaacute ahiacute

cuando los necesito A mis Padres especialmente dedicado a mi Madre que es un ejemplo de

esfuerzo para miacute sabe el camino complicado que he tenido que pasar para poder llegar a este

gratificante momento y siempre ha tenido una palabra que me alienta a no desmallar y seguir

adelante

Dedicado tambieacuten para mi hermano Uriel porque sin saberlo y a la distancia su apoyo y

confianza han sido un pilar fundamental para poder llegar a este momento

Adrielito hijo te dedico este logro por tu paciencia porque seacute que has tenido que pasar

tiempo con Papaacute en la escuela en lugar de estar en casa descansando o jugando despueacutes de salir

de tus clases gracias por soportarlo te amo y espero ser un ejemplo de esfuerzo y perseverancia

para ti

Los amo a todos

iv

Agradecimientos

Agradezco primero y ante todo a Dios todo se lo debo a Eacutel por derramar sus

bendiciones sobre miacute por acompantildearme en cada paso que doy y haber fortalecido mi corazoacuten e

iluminado mi mente Gracias Padre

A mi familia que ha estado ahiacute siempre a mi lado en los momentos maacutes oscuros y

difiacuteciles creyendo en miacute impulsaacutendome para alcanzar mis metas

Al Consejo Nacional de Ciencia y Tecnologiacutea por haberme apoyado econoacutemicamente

para la realizacioacuten de este proyecto

A mi director de tesis el Dr Eduardo de la Cruz Gaacutemez por su tiempo por su paciencia

por los valiosos aportes criacuteticas comentarios y sugerencias que realizoacute durante este proyecto

Al Departamento de Posgrado e Investigacioacuten del Instituto Tecnoloacutegico de Acapulco asiacute

como a toda la plantilla docente de la cual me llevo conocimiento y experiencias

enriquecedoras que sin lugar a dudas marcaron mi vida profesional

A la segunda generacioacuten muchas gracias Abejorros sin el apoyo mutuo durante el

tiempo que pasamos en las aulas y durante el desarrollo de los proyectos tal vez no lo

hubieacuteramos logrado

v

Resumen

El presente trabajo inicia con una breve introduccioacuten sobre la importancia que tiene la

seguridad en cualquier aspecto de la vida y sobre todo en el aacuterea laboral especiacuteficamente en el

aacuterea informaacutetica Posteriormente resalta coacutemo la criptografiacutea ha estado presente en momentos

importantes de la vida del ser humano sobre todo dentro del aacutembito militar en la cual ha sido

fundamental para permitir comunicaciones seguras Actualmente la criptografiacutea estaacute dentro de

nuestro diario vivir cuando realizamos transacciones en internet de manera segura Como parte de

la investigacioacuten en este trabajo se describen los tipos de criptografiacutea y criptoanaacutelisis tambieacuten se

analizan los niveles de seguridad de sistemas operativos asiacute como los meacutetodos de agrupamiento

de computadoras para implementar con la ayuda de esta herramienta de una manera maacutes raacutepida

criptoanaacutelisis a un sistema operativo con un nivel de seguridad C1

Palabras clave cluacutester seguridad criptoanaacutelisis

vi

Abstract

This work begins with a review of the importance of security in any aspect of life and

especially in the workplace specifically in the computer area Later this work speaks briefly about

how cryptography has been present at important moments in the life of the human being especially

in the military field in which it has been fundamental to allow secure communications Currently

cryptography is inside our daily life when we conduct transactions on the internet in a secure

manner As part of the research in this work the types of cryptography and cryptanalysis are

described as well as the security levels of operating systems and above all the main methods of

computers clustering to implement a system with a faster method of cryptanalysis in an operative

system with a security level C1

Keywords cluster security cryptanalysis

vii

Iacutendice de Contenido

Descargo de Responsabilidad Institucional ii

Dedicatoria iii

Agradecimientos iv

Resumen v

Abstract vi

Iacutendice de Contenido vii

Iacutendice de Figuras x

Iacutendice de Tablas xi

Capiacutetulo 1 Introduccioacuten 1 11 Antecedentes del problema 1

12 Planteamiento del Problema 4

13 Objetivos 6

131 Objetivo General 6

132 Objetivos Especiacuteficos 6

14 Justificacioacuten 7

15 Hipoacutetesis 7

16 Alcances y Limitaciones 8

17 Impacto Social Tecnoloacutegico Econoacutemico y Ambiental 8

171 Impacto social 8

172 Impacto ambiental 9

173 Impacto econoacutemico 10

18 Metodologiacutea a Utilizar 10

181 Anaacutelisis 10

182 Disentildeo 10

1821 Economiacutea 10

1822 Instalaciones 10

1823 Escalabilidad 11

1824 Red 11

1825 Software 11

1826 Almacenamiento 12

183 Implementacioacuten 12

1831 Software 12

1832 Hardware 13

1833 Recursos totales del cluacutester 13

19 Aseguramiento Teacutecnico ndash Material 13

191 Hardware 14

viii

1911 Equipo de coacutemputo 14

Capiacutetulo 2 Estado del Arte 16

Marco Teoacuterico 27 21 Seguridad de la Informacioacuten 27

211 Objetivo de la seguridad de la informacioacuten 27

212 Principios de la seguridad informaacutetica 28

213 Caracteriacutesticas de seguridad informaacutetica 28

214 Formas de Autenticacioacuten 29

215 Ciber-seguridad 29

22 Criptografiacutea 30

221 Tipos de Criptografiacuteas 30

2211 Tablas Hash 30

2212 Tipos de algoritmos Hash 31

22121 SHA - 1 (Secure Hash Algorithm) 31

22122 MD5 (Message Digest Algorithm) 31

22123 RIPEMD ndash 160 32

22124 Funcioacuten Merkle-Damgaringrd 32

2213 Cifrado simeacutetrico 32

22131 RC5 (Cifrado de Rivest) 33

22132 IDEA (International Data Encryption Algorithm) 33

22133 DES (Data Encryption Standard) 34

2214 Cifrado asimeacutetrico 35

22141 DSA (Digital Signature Algorithm - Algoritmo de Firma digital) 36

22142 RSA 37

2215 Cifrado hiacutebrido 38

23 Criptoanaacutelisis 38

24 Niveles de seguridad 39

241 Nivel D1 40

242 Nivel C1 40

243 Nivel C2 41

244 Nivel B1 42

245 Nivel B2 43

246 Nivel B3 44

247 Nivel A1 45

25 Sistemas Operativos 46

251 Windows 47

252 Registro de Windows 48

253 Administrador de cuentas de seguridad 49

2531 Identificador de Seguridad (SID Security Identifier) 50

254 Autenticacioacuten NTML 51

26 LINUX (ROCKS) 52

261 Escritorio 53

262 Paquete de Oficina 53

263 Organizador de archivos 54

27 Agrupamiento (Cluacutester) de Computadoras 55

271 Beowulf 56

ix

272 Mosix 56

273 OpenMosix 57

Capiacutetulo 3 Implementacioacuten de Cluacutester 59 31 Requisitos previos 59

311 Conexioacuten de los equipos y acceso a la red 59

312 Configuracioacuten de la BIOS 60

3121 ATAIDE Mode 60

3122 PXE 62

32 Instalacioacuten de Sistema Operativo Rocks 63

321 Configuracioacuten del teclado 70

33 Instalacioacuten de los nodos 70

331 Administracioacuten de nodos 72

332 Creacioacuten de cuentas de usuario 73

333 Configuracioacuten del directorio compartido 73

34 Operaciones baacutesicas de Rocks 74

Capiacutetulo 4 Metodologiacutea y Resultados 77 41 Obtener Archivo hash 77

42 Dar Formato al Hash 80

43 Evaluar la fuerza del Hash 80

44 Calcular la capacidad del equipo 82

45 Establecer Estrategia 87

451 Fuerza Bruta 87

4511 Cantidad de combinaciones posibles 88

452 Diccionario 90

453 Analizar los resultados 91

454 Personalizar ataques 91

Conclusioacuten 92

Trabajo Futuro 94 Propuesta de Trabajo a Futuro 94

Bibliografiacutea 96

Anexo 1 102

x

Iacutendice de Figuras

Figura 31 Esquema tiacutepico de configuracioacuten de un cluacutester xi

Figura 32 Imagen del Bios del equipo en la opcioacuten ldquodrive configurationrdquo 61

Figura 33 Bios ATAIDE Legacy Mode 61

Figura 34 Bios Boot PXE 62

Figura 35 Bios Boot device prioriry 63

Figura 36 Pantalla de Inicio de instalacioacuten de Rocks 64

Figura 37 Pantalla de seleccioacuten de Rolls 65

Figura 38 Listado de opciones de rolls para instalar 65

Figura 39 Informacioacuten baacutesica del cluacutester a instalar 66

Figura 310 Configuracioacuten Ethernet de la red privada 67

Figura 311 Configuracioacuten Ethernet de la red puacuteblica 67

Figura 312 Configuracioacuten de DNS y Gateway 68

Figura 313 Ingresar contrasentildea de usuario root 68

Figura 314 Configuracioacuten horaria 69

Figura 315 Particiones del disco duro 69

Figura 316 Pantalla para ingresar nodos 71

Figura 317 Indicador de insercioacuten de nuevos nodos 71

Figura 318 Comando qstat ndashf 74

Figura 319 Enviacuteo de trabajos por medio del comando qsub 75

Figura 320 Estado de los trabajos pendientes mostrados por qstat ndashf 75

Figura 321 Visualizacioacuten de la distribucioacuten de cargas en el cluacutester usando la herramienta

Ganglia 76

Figura 41 Arranque con LiveUSB KaliLinux 79

Figura 42 Resultado de la ejecucioacuten de la herramienta samdump2 80

Figura 43 Sistema de Ecuaciones tipo 119860119909 = 119887 Fuente Propia 84 Figura 44 Distribucioacuten de cargas del cluacutester 86

Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester 89

xi

Iacutendice de Tablas

Tabla 11 Costo del Proyecto 15

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia) 86

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia) 89

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos

(Fuente Elaboracioacuten propia) 90

1

Capiacutetulo 1 Introduccioacuten

11 Antecedentes del problema

Sin lugar a duda una de las herramientas maacutes importantes producida en el siglo XX ha sido

la computadora la cual ha provocado cambios vertiginosos en la sociedad y en el progreso de la

misma En la actualidad el entorno estaacute praacutecticamente controlado por las nuevas tecnologiacuteas que

a medida que transcurre el tiempo avanzan sin liacutemites y en ocasiones son utilizadas

incorrectamente provocando dantildeos de grandes dimensiones

Los trascendentales cambios operados en el mundo moderno caracterizados por su

constante desarrollo la acelerada globalizacioacuten de la economiacutea la acentuada dependencia a

almacenar grandes voluacutemenes de informacioacuten y los sistemas que la proveen aunado a grandes

inversiones de las empresas en conocimiento actual y futuro en sistemas de informacioacuten ademaacutes

del potencial que poseen las tecnologiacuteas para cambiar draacutesticamente las organizaciones y las

praacutecticas de negocio asiacute como crear nuevas oportunidades disentildear nuevas estructuras tecnoloacutegicas

basadas en informacioacuten la convierte en un activo codiciable Tales avances hacen permanente el

riesgo en las tecnologiacuteas y nos llevan a pensar en la problemaacutetica sobre la seguridad informaacutetica

La proteccioacuten de datos documentos y control de acceso a la informacioacuten es un tema que

cada diacutea toma maacutes fuerza en las grandes compantildeiacuteas debido a las diferentes praacutecticas de

especialistas tecnoloacutegicos como los son los hackers y crackers que roban informacioacuten vital para

posteriormente sacar provecho de ella

2

ldquoDesde la aparicioacuten de los grandes sistemas aislados hasta nuestros diacuteas en los que el

trabajo en red es lo habitual los problemas derivados de la seguridad de la informacioacuten han ido

tambieacuten cambiando evolucionando pero estaacuten ahiacute y las soluciones han tenido que ir adaptaacutendose

a los nuevos requerimientos teacutecnicos Aumenta la sofisticacioacuten en el ataque y ello aumenta la

complejidad de la solucioacuten pero la esencia es la mismardquo (Mifsud 2012)

Dentro del mundo actual la informacioacuten es denominada un activo importante de una

institucioacuten la cual debe ser protegida para evitar su peacuterdida modificacioacuten o el uso inadecuado de

su contenido

El extraviacuteo o el mal uso de informacioacuten que para alguien es confidencial genera dantildeos y

repercusiones directas relacionadas a la integridad disponibilidad y confidencialidad de los

archivos y a su vez a los duentildeos de dicha informacioacuten

ldquoLa seguridad informaacutetica se distingue por tener dos propoacutesitos de seguridad la Seguridad

de la Informacioacuten y la Proteccioacuten de Datos estos se diferencian debido a que los datos son valores

numeacutericos que soportan la informacioacuten mientras que la informacioacuten es aquello que tiene un

significado para nosotrosrdquo (Gonzaacutelez Agudelo 2014)

La seguridad informaacutetica consiste en asegurar que los recursos del sistema de informacioacuten

(material informaacutetico o programas) de una organizacioacuten sean utilizados de la manera que se decidioacute

3

inicialmente y que el acceso a la informacioacuten alliacute contenida asiacute como su modificacioacuten soacutelo sea

posible a las personas que se encuentren acreditadas y dentro de los liacutemites de su autorizacioacuten

Actualmente hay mucha informacioacuten circulando en internet por ejemplo correos

electroacutenicos publicaciones en Twitter Facebook videos fotos comercio electroacutenico secretos de

estado militares o industriales Lamentablemente dicha red es puacuteblica e insegura dentro de la cual

existen usuarios bien intencionados y muchos mal intencionados Diariamente encontramos

noticias de sitios con intrusiones mal intencionadas (hackeados) clonacioacuten de tarjeta de creacutedito o

imaacutegenes adulteradas Todo lo anterior motiva la necesidad de proteger la informacioacuten a traveacutes de

mecanismos que impidan a los usuarios no autorizados acceder a dicha informacioacuten

4

12 Planteamiento del Problema

Los sistemas de informacioacuten actuales estaacuten relacionados completamente con la exposicioacuten

de su informacioacuten a entidades externas que son ajenas a la organizacioacuten o delegacioacuten a la que

pertenecen

Cuando no se conoce el alcance que tienen los sistemas informaacuteticos ni lo vulnerables que

pueden ser si son expuestos a Internet por los mismos empleados de la organizacioacuten puede darse

ldquofugardquo de informacioacuten hacia el exterior esto los hace vulnerables a eventos y amenazas que

conllevan a riesgos que pueden provocar peacuterdidas tangibles e intangibles las cuales se traducen

en peacuterdidas que en muchos de los casos por decir lo menos seraacuten monetarias

El portal espantildeol de estadiacutesticas statista muestra la cuota de mercado de los principales

sistemas operativos a nivel mundial a fecha de febrero de 2017 seguacuten el nuacutemero de instalaciones

(statista 2017) Windows 10 fue el segundo sistema operativo maacutes instalado con una cuota de

mercado de 253 Esto significa que alrededor de una de cada cuatro computadoras estaacute

gobernado por este sistema operativo Por su parte en el caso de Windows 7 el porcentaje se situacutea

por encima del 45 a pesar de que ya no se vende ninguacuten PC con este sistema operativo Hablando

de manera conjunta los sistemas operativos Windows cuentan con una cuota del mercado global

de 8857

La empresa de seguridad informaacutetica Britaacutenica Avecto informoacute en su Microsoft

Vulnerabilities Report 2017 (Avecto 2017) (reporte 2017 de vulnerabilidades de Windows) un

aumento de vulnerabilidades publicadas del 111 en los uacuteltimos 5 antildeos de las cuales 235 criacuteticas

5

fueron mitigadas removiendo permisos de administrador asiacute como otras muy importantes

enfocadas al Administrador de Cuentas de Seguridad (SAM Security Account Manager por sus

siglas en ingleacutes) la cual es una base de datos almacenada como un archivo del registro en Windows

y que almacena las contrasentildeas de los usuarios en un formato hash (Algoritmos que crean a partir

de una entrada una salida alfanumeacuterica de longitud fija)

6

13 Objetivos

131 Objetivo General A traveacutes de la implementacioacuten de un procedimiento de fuerza

bruta utilizando para ello un cluacutester de alto rendimiento asiacute como software de uso libre lograr

capacidad de procesamiento capaz de vulnerar un sistema de autenticacioacuten nivel C1

132 Objetivos Especiacuteficos

Analizar los diferentes niveles de seguridad de sistemas operativos

Analizar diferentes meacutetodos de criptoanaacutelisis para vulnerar el Administrador de

cuentas de seguridad

Estudiar las teacutecnicas de agrupamiento de computadoras (clustering) para la

obtencioacuten de mayor poder de procesamiento

Implementar un cluacutester de alto rendimiento en el Laboratorio de la Maestriacutea en

Sistemas Computacionales del Instituto Tecnoloacutegico de Acapulco para ejecutar

operaciones de coacutemputo distribuido

7

14 Justificacioacuten

Antes la seguridad de la informacioacuten se realizaba a traveacutes de medios fiacutesicos por ejemplo

una caja fuerte en la cual las personas resguardaban objetos o informacioacuten valiosa para ellos Con

la introduccioacuten de las computadoras y el uso de internet los usuarios comienzan a almacenar

informacioacuten importante dentro de sus equipos por lo que se considera indispensable el uso de

herramientas que brinden proteccioacuten a la informacioacuten que se encuentra resguardada dentro de

eacutestas Los usuarios informaacuteticos suelen enviar informacioacuten por la red en las empresas al realizar

traacutemites o enviar informes a socios jefes entre otros

El resguardo de informacioacuten siempre ha sido importante para los seres humanos con la

diferencia que anteriormente no se contaba con los avances tecnoloacutegicos que tenemos actualmente

puesto que con la introduccioacuten de internet y el uso de dispositivos electroacutenicos se tiene mayor

riesgo de la informacioacuten que en ellos se maneja

La proteccioacuten del contenido de los datos es una necesidad urgente en casi todos los aacutembitos

de la sociedad incluyendo los servicios puacuteblicos y privados por lo que la tecnologiacutea de la

seguridad de los sistemas de cifrado se encuentra de frente a verdaderos retos

15 Hipoacutetesis

A traveacutes de un de fuerza bruta como teacutecnica de criptoanaacutelisis y con la ayuda de una mayor

capacidad de procesamiento mediante la implementacioacuten de agrupamiento de computadoras

(cluacutester) de alto rendimiento seraacute posible encontrar alguna vulnerabilidad dentro del sistema de

administracioacuten de cuentas de seguridad de Windows server 2012

8

16 Alcances y Limitaciones

Esta tesis se centraraacute en el sistema operativo Windows como objeto de estudio al cual se

le realizaraacute el criptoanaacutelisis

La tesis se enfocaraacute en el meacutetodo Beowulf para realizar el agrupamiento de computadoras

asiacute como la distribucioacuten de software libre del sistema operativo Linux Rocks

El nuacutemero de equipos disponibles para poder realizar el agrupamiento es de 17

computadoras hasta lograr el poder de coacutemputo de 800 Gflops

17 Impacto Social Tecnoloacutegico Econoacutemico y Ambiental

La sostenibilidad del presente proyecto seraacute abordada a partir de los siguientes aspectos

171 Impacto social A veces se puede pensar que un cluacutester de alto rendimiento pudiera

no tener alguacuten impacto directo en el medio social pero si nos enfocamos a un punto de vista en

donde gracias a la capacidad de procesamiento de estas maacutequinas han sido parte fundamental en

el desarrollo de proyectos que inciden de manera directa en beneficio de la sociedad en la que

vivimos como lo es la medicina la fiacutesica quiacutemica

Este proyecto busca beneficiar a nuestra sociedad proveyendo su capacidad de

procesamiento en la buacutesqueda de alguna vulnerabilidad en el sistema operativo maacutes utilizado hoy

en diacutea como lo es Windows ademaacutes de que estaraacute disponible para la comunidad cientiacutefica y

9

estudiantil del Instituto Tecnoloacutegico de Acapulco para optimizar tiempo de caacutelculo en futuras

investigaciones

172 Impacto ambiental Green IT tambieacuten conocido como Green Computing o

traducido al espantildeol como Tecnologiacuteas Informaacuteticas Verdes es definido como el estudio y la

praacutectica de disentildear desarrollar usar y disponer de computadoras servidores y diferentes

perifeacutericos tales como monitores impresoras dispositivos de almacenamiento de redes y

comunicaciones eficientemente y efectivamente con un impacto miacutenimo o nulo en el medio

ambiente (Murugesan 2008)

Bajo la premisa anterior este proyecto hace uso de los equipos con los que cuenta

actualmente el laboratorio de la Maestriacutea en Sistemas Computacionales lo cual evitaraacute la

adquisicioacuten de equipo nuevo y por consecuencia desechar el equipo existente evitando desperdicio

electroacutenico Dicho equipo cuenta con un procesador Intel I3 de 4ta generacioacuten lo cual seguacuten el

portal electroacutenico Europa press

ldquoEsta nueva generacioacuten supone el mayor salto en cuanto ahorro energeacutetico de la historia

de Intel asiacute como una mejora en los graacuteficos y nuevas experiencias de usuariordquo (europa press

2013)

Teniendo como base estos dos puntos importantes como lo son la reutilizacioacuten de equipo

y utilizando procesadores de bajo consumo energeacutetico es como este proyecto busca contribuir de

manera positiva con el medio ambiente

10

173 Impacto econoacutemico Actualmente existe una gran necesidad de procesar grandes

cantidades de datos lo cual hace imprescindible disponer de maacutequinas con estas caracteriacutesticas sin

embargo su alta complejidad aunado al gran costo hace que en instituciones de caraacutecter puacuteblico

sea muy complicado conseguir recurso para este fin Sin embargo un cluacutester de alto rendimiento

reutilizaraacute equipo propio evitando asiacute gastos por concepto de adquisicioacuten de equipo siendo de

esta manera viable para instituciones de caraacutecter puacuteblico

18 Metodologiacutea a Utilizar

181 Anaacutelisis Despueacutes de analizar las diferentes metodologiacuteas de clustering se optoacute por

desarrollar e implementar un cluacutester de alto rendimiento (HPC)

182 Disentildeo

1821 Economiacutea Debido a las caracteriacutesticas del equipo con el cual cuenta el Laboratorios

de la Maestriacutea en Sistemas Computacionales los componentes utilizados para este proyecto son

considerados de uso comuacuten y de bajo costo lo cual los hace faacutecilmente reemplazables en caso de

fallo a un costo accesible El equipo es de la marca Acer Aspire modelos AXC-605-M021 lo cual

nos hace tener ventaja y respaldo del fabricante con respecto a hardware geneacuterico

1822 Instalaciones Un cluacutester requiere de un ambiente controlado Esto es una

habitacioacuten especial con sistema de enfriamiento capacidad suficiente de carga eleacutectrica control

de humedad y un ambiente libre de polvo Ademaacutes se deben considerar el peso del equipo sobre

el piso (ya sea falso o piso normal) Se recomienda colocarlo en los soacutetanos o en la plata baja de

edificios (Rocha Quezada Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

11

En el laboratorio de la Maestriacutea en Sistemas Computacionales se cuenta con espacio que

reuniacutea la mayoriacutea de las caracteriacutesticas requeridas para este proyecto

1823 Escalabilidad Un cluacutester debe ser faacutecilmente escalable y a su vez confiable Por

tal motivo se ha utilizado equipo de marca lo cual nos proporciona maacutes de confiabilidad en su

desempentildeo y a su vez facilidad de aumentar el nuacutemero de equipos si en un futuro fuese necesario

agrandar este proyecto Se armoacute un cluacutester de cinco computadoras con procesadores Intel Core I3

de 64 bits en cada nodo La memoria incluida y perifeacutericos son faacuteciles de adquirir en el mercado

1824 Red En la parte de redes se utilizoacute un switch fast Ethernet con una velocidad de 1

Gbps el cual tiene tazas de transferencia raacutepida y el costo es notablemente maacutes econoacutemico que

uno de fibra oacuteptica

El cableado seleccionado fue el estaacutendar UTP de cobre con la norma Gigabit Ethernet de

IEEE 8023ab con la categoriacutea de cableado 6e que soporta tazas de transferencia de datos de

1000Base T (1 Gbps)

1825 Software

ldquoEl sistema operativo debe constar con servicios dedicados para compartir y respaldar

archivos asiacute como capacidad de acceder a los datos de trabajo raacutepidamente El sistema operativo

debe tambieacuten proveer servicios de monitoreo y reporte de fallas en el sistemardquo (Rocha Quezada

Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

12

Existe una gran variedad de software para instalar cluacutester de alto rendimiento sin embargo

como se ha comentado con anterioridad el costo de adquisicioacuten debe ser accesible por tal motivo

se optoacute por una distribucioacuten con licencia GNU de Linux Rocks Cluster la cual es una distribucioacuten

sencilla de instalar y configurar en comparacioacuten con otras distribuciones analizadas dicha

distribucioacuten estaacute basada en CentOS que a su vez estaacute basada en la conocida distribucioacuten de Linux

Red Hat

1826 Almacenamiento Para este proyecto no se requeriraacute un gran espacio de

almacenamiento por tal motivo los equipos utilizados tanto maestro como esclavos mantuvieron

sus unidades de disco originales las cuales son de 1 TB de almacenamiento

183 Implementacioacuten La implementacioacuten del cluacutester de alto rendimiento fue realizada

dentro de las instalaciones del Laboratorio de la Maestriacutea en Sistemas Computacionales del

Instituto Tecnoloacutegico de Acapulco construido inicialmente para este proyecto de criptoanaacutelisis lo

cual requeriraacute suficiente capacidad de procesamiento para poder implementar ataques de fuerza

bruta a sistemas operativos Las caracteriacutesticas del cluacutester construido son

1831 Software El software instalado en cada uno de los nodos es el siguiente

bull Sistema operativo Rocks Cluacutester Linux 74 (64 bits)

bull Libreriacutea de manejo de mensajes Open-MPI 153

bull Software de monitoreo Ganglia

13

1832 Hardware El cluacutester estaacute compuesto de 17 equipos con las siguientes

caracteriacutesticas

bull Nodo Maestro y 16 Nodos Esclavos

- Procesador Intel Core I3 4150 (4 nuacutecleos) Memoria 6 GB Disco Duro SATA 1 TB

tarjeta de Red Gigabit Ethernet

El hardware adicional es el siguiente

bull Interconexioacuten de Red

bull Switch Cisco 26 puertos 1Gbps modelo SG200 Red interna

1833 Recursos totales del cluacutester

bull Nuacutecleos de unidades de procesamiento (cores) 68

bull Capacidad en memoria 92 GB

bull Capacidad en disco 17 TB

19 Aseguramiento Teacutecnico ndash Material

A continuacioacuten se muestra el desglose del equipo utilizado para la elaboracioacuten de un

cluacutester de alto rendimiento estos componentes consisten en Hardware y Software especializado

asiacute como los costos de produccioacuten y personal involucrados en la metodologiacutea y elaboracioacuten del

proyecto

Costos de Hardware

Costos de Software

14

191 Hardware En este punto se refleja el costo de los dispositivos y herramientas a nivel

fiacutesico las cuales sirvieron para la implementacioacuten del proyecto cluacutester de alto rendimiento Cabe

resaltar que el equipo utilizado forma parte del inventario actual del Laboratorio motivo por el

cual su utilizacioacuten no causoacute erogacioacuten alguna sin embargo la investigacioacuten de costos se realizoacute

con la finalidad que el lector pueda establecer comparativas y buscar alternativas en caso de ajuste

de presupuesto

1911 Equipo de coacutemputo El equipo de coacutemputo utilizado consta de diecisiete

computadoras las cuales serviraacuten una para Nodo Maestro y las dieciseacuteis restantes como Nodos

Esclavos

La descripcioacuten de estos equipos se muestra en la tabla a continuacioacuten mostrando los costos

de todos los equipos utilizados dentro del proyecto

15

Tabla 11 Costo del Proyecto

Modelo

Cantidad

Caracteriacutesticas

Costos

PC - Acer AXC-

605

17

Procesador Intel Core i3

Pantalla 156rdquo

Disco duro 1TB HDD

RAM 6GB

Salida HDMI

Tarjeta de graacuteficos INTEGRADA

Lector de CD

Los costos en el mercado de una PC de

escritorio con estas caracteriacutesticas tiene un

valor aproximado de $600000 pesos

(Moneda nacional Mexicana)

Switch Cisco

Gigabit Ethernet

1

Modelo SG200 de 26 puertos

Costo en el mercado alrededor de

$2000000 pesos MN

Total

12200000 pesos MN

16

Capiacutetulo 2 Estado del Arte

Tiacutetulo del Trabajo Introduccioacuten a la Criptografiacutea

Autor Gibraacuten Granados Paredes

Fecha Julio 2010

Lugar Ciudad de Meacutexico

Publicado en Coordinacioacuten de Publicaciones Digitales DGSCA-UNAM

httpwwwrevistaunammxvol7num7art55int55htm

Siacutentesis Cuando se desea tener seguridad hablando en aacutembitos informaacuteticos la

criptografiacutea es una herramienta muy uacutetil el autor lo entiende tambieacuten como un medio para

garantizar las propiedades de confidencialidad integridad y disponibilidad de los recursos de un

sistema

Con la criptografiacutea se puede garantizar las propiedades de integridad y confidencialidad

pero hay que saber coacutemo utilizarla para ello es importante tener claros los conceptos baacutesicos que

estaacuten detraacutes de los sistemas criptograacuteficos modernos Estos conceptos van desde entender queacute es

la criptografiacutea coacutemo estaacute clasificada entender el funcionamiento baacutesico de algunos sistemas de

cifrado y conocer coacutemo se forman los documentos digitales como firmas y sobres digitales

Resultados El autor realiza un viaje por un gran nuacutemero de conceptos utilizados en

criptografiacutea el inicio y la clasificacioacuten de la misma asiacute como la criptografiacutea claacutesica y moderna y

analiza de manera breve algunos meacutetodos de cifrado maacutes comunes

17

Tiacutetulo del Trabajo Criptoanaacutelisis sobre meacutetodos claacutesicos de cifrado

Autores Sebastiaacuten Goacutemez Juan David Arias Diego Agudelo

Fecha 2 de mayo 2013

Lugar Ciudad de Meacutexico

Publicado en Scientia et Technica Antildeo XVII No 50 abril de 2012

Siacutentesis Los algoritmos criptograacuteficos utilizados desde la antigua Roma hasta nuestros

diacuteas son meacutetodos que convierten un mensaje de texto plano a cifrado al proceso inverso se le

conoce como descifrar Este artiacuteculo realiza un estudio de algunas teacutecnicas de encriptacioacuten claacutesicas

del siglo pasado como lo son el cifrado de Cesar y el cifrado de Vigeneacutere asiacute como muestra

teacutecnicas baacutesicas y modernas de criptoanaacutelisis basadas en la teoriacutea de la informacioacuten y estadiacutestica

como lo son la entropiacutea y el ataque de maacutexima correlacioacuten Las teacutecnicas de criptoanaacutelisis descritas

anteriormente pueden ser usadas en otros meacutetodos de cifrado siempre y cuando esteacuten presentes las

mismas debilidades

Resultados Los autores implementaron en lenguajes de programacioacuten Python un

algoritmo para el caacutelculo de entropiacutea para diferentes longitudes de clave Para la implementacioacuten

de los algoritmos de cifrado y descifrado de Vigeneacutere y de maacutexima correlacioacuten utilizaron lenguaje

de programacioacuten C++ Se probaron los meacutetodos anteriormente descritos sobre textos planos de

diferentes longitudes logrando un resultado de 9385 de efectividad en promedio

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de dos de los

algoritmos de encriptacioacuten maacutes antiguos y baacutesicos pero sobre todo que conociendo los meacutetodos

de criptoanaacutelisis me permitiraacuten analizar debilidades y fortalezas de algoritmos

18

Tiacutetulo del Trabajo ULTRACOM Computacioacuten de Alto Rendimiento para Criptoanaacutelisis

Autor Antonio Castro Lechtaler Alejandro Repetto Martiacuten Bianchi Marcelo Cipriano

Alejandro Arroyo Arzubi Ceacutesar Cicerchia Eduardo Malvacio

Fecha octubre 2014

Lugar Buenos Aires Argentina

Publicado en XX Congreso Argentino de Ciencias de la Computacioacuten (Buenos Aires

2014)

Siacutentesis La generacioacuten de nuacutemeros primos fundamentales para la produccioacuten de claves

el anaacutelisis de secuencias pseudo-aleatorias los procesos de verificacioacuten y validacioacuten de algoritmos

de seguridad en un sentido geneacuterico requieren enormes cantidades de procesamiento Los

procesos relacionados con la matemaacutetica criptograacutefica se caracterizan por la alta necesidad de

coacutemputo El objetivo de ULTRACOM es desarrollar una computacioacuten distribuida multipropoacutesito

que permita como primera aplicacioacuten real el anaacutelisis la validacioacuten y la ejecucioacuten de pruebas de

estreacutes sobre sistemas criptograacuteficos El presente trabajo de investigacioacuten detalla el proceso de

desarrollo de ULTRACOM y muestra un ejemplo de su implementacioacuten en una versioacuten Beta Para

ello toman como entrada dos versiones del algoritmo Trivium Utilizando la misma

infraestructura y sin desarrollo extra se prueban grandes voluacutemenes de claves y vectores de

inicializacioacuten de los algoritmos en busca de secuencias deacutebiles de menor longitud que la de la

buscada

Resultados El equipo implementoacute una versioacuten beta de la plataforma ULTRACOM

comprobando la factibilidad y viabilidad teacutecnica de la generalizacioacuten de la infraestructura de

computacioacuten distribuida en grilla (malla) BOINC Este avance permite extender los horizontes de

BOINC y habilita la posibilidad de obtener la capacidad de coacutemputo de alto rendimiento a bajo

19

costo Concluyeron que ULTRACOM es un proyecto viable escalable y de alto impacto para la

evaluacioacuten y validacioacuten de algoritmos criptograacuteficos

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento y la

implementacioacuten de una arquitectura de computacioacuten distribuida y una vez siendo factible su

desarrollo utilizar su poder de coacutemputo atacando a traveacutes de un algoritmo un sistema criptograacutefico

20

Tiacutetulo del Trabajo Criptografiacutea Cuaacutentica

Autor M Baig

Fecha 2010

Lugar Barcelona Espantildea

Siacutentesis En este artiacuteculo el autor realiza una breve introduccioacuten a la criptografiacutea claacutesica y

la relacioacuten que existe con la teoriacutea de la informacioacuten de Shannon la cual asegura que el cifrado

digital simeacutetrico es secreto y perfecto siempre y cuando se cumplan los tres requisitos

1 La llave ha de ser aleatoria

2 La llave debe usarse soacutelo una vez

3 La llave ha de ser tan larga como el mensaje y de un solo uso debe de estar en posesioacuten

tanto del emisor como del receptor

El punto 3 es el maacutes complicado de cumplir debido a la forma de compartir la llave entre

el emisor y receptor

Maacutes adelante en el artiacuteculo se hace un anaacutelisis sobre otra teacutecnica de criptografiacutea que es el

cifrado digital asimeacutetrico en la que se estudia coacutemo funcionan las llaves privadas y puacuteblicas asiacute

como el meacutetodo de criptograacutefico RSA

Resultados

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento maacutes profundo de

los meacutetodos de criptografiacutea simeacutetricos y asimeacutetricos especiacuteficamente el algoritmo asimeacutetrico

RSA

21

Tiacutetulo del Trabajo La Criptografiacutea Maderista en la Revolucioacuten Mexicana (1910-1911)

Criptoanaacutelisis de una carta cifrada por Gabriel Leyva Solano

Autor Roberto Narvaacuteez

Fecha 2011

Lugar Meacutexico DF

Siacutentesis Este trabajo aborda temas relacionados con las comunicaciones secretas del

movimiento revolucionario comandado por Francisco I Madero a partir de 1910 Se compone de

dos partes la primera es una breve resentildea criacutetica de ejemplos criptograacuteficos del maderismo que

fueron generados entre 1910 y 1911 la segunda describe paso a paso el criptoanaacutelisis que aplicoacute

el autor Roberto Narvaacuteez para desencriptar una carta parcialmente cifrada de Gabriel Leyva Solano

a Francisco I Madero

Resultados El propoacutesito general uacuteltimo es contribuir al conocimiento de la criptografiacutea

mexicana en el siglo XX En lo particular se trata de poner a disposicioacuten de los estudiosos el

contenido completo de la carta de Leyva Solano por primera vez despueacutes de 100 antildeos y al mismo

tiempo someter a la criacutetica teacutecnica e histoacuterica el procedimiento criptoanaliacutetico puesto en operacioacuten

para recuperar el texto plano

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados en nuestro paiacutes sobre formas y meacutetodos de encriptacioacuten durante la Revolucioacuten

Mexicana incluso mucho antes de la 2ordf Guerra mundial momento donde se registroacute un auge

importante dentro de la criptografiacutea moderna

22

Tiacutetulo de Tesis Anaacutelisis de la programacioacuten concurrente sobre la cpu y gpu en el

desarrollo de fractal build

Autor Joseacute Vicente Anilema Guadalupe

Fecha 2012

Lugar Riobamba Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la geometriacutea euclidiana debido a que

el autor realiza una aplicacioacuten que crea paisajes fractales lo que significa crear un paisaje con una

misma figura geomeacutetrica Lo anterior se traduce en una necesidad de gran poder de coacutemputo para

realizar de una manera eficaz la tarea Dentro de la tesis el autor realiza diversos estudios

comparativos entre el procesamiento serializado realizado por una CPU (unidad central de

procesamiento) y procesamiento paralelizado realizado por una GPU (Unidad grafica de

procesamiento) a traveacutes de diversas herramientas para obtener el mejor aprovechamiento de los

recursos

Resultados El autor concluye que es necesario examinar los algoritmos a utilizar para que

estos puedan ser utilizados en coacutemputo paralelo Ademaacutes de que es necesario aprender ciertas

herramientas a utilizar para aprovechar al maacuteximo el coacutemputo distribuido y no desperdiciar el

poder de procesamiento muy superior que las GPUrsquos nos pueden brindar

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados para medir y comparar la velocidad de procesamiento de la unidad central de

procesamiento (CPU) y la unidad graacutefica de procesamiento (GPU) Asiacute como la medida en Flops

(Operaciones de punto flotante por segundo)

23

Tiacutetulo del Trabajo Arquitectura cluacutester de alto rendimiento utilizando herramientas de

software libre

Autores Leonardo Chiquiguanca Edyson Malla Freddy Ajila Rene Guamaacuten-Quincheacute

Fecha mayo 2015

Lugar Loja Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la gran cantidad de datos que tienen

que procesar las universidades puacuteblicas dentro de sus investigaciones realizadas en diferentes aacutereas

como la ingenieriacutea medicina etc y la carencia de recursos econoacutemicos para obtener

supercomputadoras que procesen dicha informacioacuten Los autores proponen dentro de su

investigacioacuten la utilizacioacuten de equipo de coacutemputo existente dentro de su universidad y por medio

de software libre realizar agrupamiento de computadoras para poder lograr el procesamiento de

grandes voluacutemenes de datos de una manera accesible

Resultados Los autores concluyen que la mejor arquitectura para el agrupamiento

(cluacutester) de computadoras en ambientes universitarios es la arquitectura Beowulf debido a que la

implementaron en hardware convencional existente dentro de su campus universitario y que

ademaacutes usaron software libre mencionando que el poder de coacutemputo logrado fue muy cercano al

de una supercomputadora

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de las teacutecnicas

utilizadas en ambientes universitarios para la realizacioacuten de agrupamiento de computadoras y

sobre todo la optimizacioacuten de costos para realizar dicha tarea y tener como finalidad el lograr

mayor capacidad de procesamiento

24

Tiacutetulo de Tesis Desarrollo de un algoritmo de cifrado simeacutetrico de resumen

Autores Jonathan Dave Orjuela Navarrete

Antildeo 2008

Lugar Bogotaacute DC

Siacutentesis Esta tesis realiza un estudio de varios meacutetodos de criptografiacutea simeacutetrica para

posteriormente utilizando diferentes foacutermulas matemaacuteticas crear un algoritmo criptograacutefico

nuevo Dentro de la tesis utiliza dos meacutetodos para realizar pruebas a su algoritmo criptoanaacutelisis

diferencial y criptoanaacutelisis basado en fallos de hardware Dentro de los cuales hace un estudio

detallado de las teacutecnicas y herramientas de criptoanaacutelisis realizado a su algoritmo

Resultados El autor concluye de manera positiva con la realizacioacuten del algoritmo y de

manera satisfactoria con la realizacioacuten de criptoanaacutelisis a su algoritmo pudiendo demostrar la

fortaleza del algoritmo a traveacutes de ejemplo de cifrado con textos claro muy parecido y su

conversioacuten a cadenas completamente diferentes

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de criptoanaacutelisis diferencial y criptoanaacutelisis basado en fallos de hardware para la

evaluacioacuten de algoritmos de cifrado simeacutetrico de textos claros

25

Tiacutetulo del Trabajo Firt step in a Pc cluster development with openMosix

Autores Javier Bilbao Gorka Garate

Antildeo 2008

Lugar Bilbao Spain

Siacutentesis En este trabajo se afirma que es posible hacer maacutequinas de alta capacidad de

caacutelculo mediante la interconexioacuten de equipos con redes de alta velocidad A este tipo de sistemas

se les llama sistemas distribuidos y hoy en diacutea es la tecnologiacutea maacutes utilizada para resolver

problemas que requieren una gran capacidad de caacutelculo La agrupacioacuten de computadoras permite

que varias computadoras trabajen juntas para resolver los problemas de informaacutetica comuacuten Este

artiacuteculo centra su estudio en uno de los diferentes meacutetodos de agrupamiento de computadoras

openMosix El trabajo tambieacuten evaluacutea el cluacutester por dos casos de estudio donde se mejora el

tiempo de ejecucioacuten de los problemas resueltos

Resultados El autor del artiacuteculo concluye con la realizacioacuten satisfactoria de agrupamiento

de computadoras bajo el meacutetodo openMosix el cual uacutenicamente permite agrupamiento de la forma

SSI (Single System Image) que se refiere a que uacutenicamente se puede realizar el agrupamiento con

todos los nodos ejecutando un mismo sistema operativo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras openMosix ventajas desventajas y dificultades para

su implementacioacuten

26

Tiacutetulo del Trabajo Disentildeo e implementacioacuten de un cluacutester tipo Beowulf para el desarrollo

de coacutemputo cientiacutefico avanzado

Autores Edgar Rubeacuten Gonzaacutelez Ramiacuterez Abimael Rodriacuteguez Saacutenchez

Antildeo 2008

Lugar Instituto Politeacutecnico Nacional Meacutexico DF

Siacutentesis Este trabajo de tesis ha desarrollado e implementado una herramienta

computacional llamada Cluster Beowulf para mejorar la programacioacuten paralela Comenzando

con la memoria compartida y distribuida el autor implemento el agrupamiento tipo Beowulf

pensando en procesamiento paralelo la optimizacioacuten de las fuentes informaacuteticas El disentildeo se

construye mediante una distribucioacuten Linux Fedora Core 6 a 64 bits utilizando todas las ventajas

que ofrece el estaacutendar Gigabyt Ethernet La programacioacuten paralela fue desarrollada en lenguaje C

tanto para MPI como para OPENMP

Resultados El autor del artiacuteculo concluye que de acuerdo con los resultados el tiempo

de procesamiento se redujo con el uso muacuteltiples nuacutecleos mejoroacute hasta ocho veces gracias al

multihilo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras Beowulf y su implementacioacuten en sistemas operativos

de uso libre Linux distribucioacuten Fedora 6

27

Marco Teoacuterico

21 Seguridad de la Informacioacuten

La Seguridad de la Informacioacuten consiste y hace referencia a la proteccioacuten de cualquier

amenaza para salvaguardar los activos fijos y en especial toda informacioacuten de la cual estaacute basada

la continuidad de las operaciones de la empresa sean estas ocasionadas dentro o fuera de la misma

con esto se logra disminuir los dantildeos y perjuicios que estas amenazas causariacutean a la organizacioacuten

y a la vez aumentar las oportunidades de servicio hacia otras empresas

La Seguridad de la informacioacuten se consigue mediante la implementacioacuten de controles

efectivos que pueden ser normas manual de funciones buenas praacutecticas procedimientos

estructuras organizativas funciones de software y hardware planes de contingencia y herramientas

que se encargan de proteger la privacidad e integridad de la informacioacuten que se almacena en un

sistema informaacutetico Estos controles necesitan continuamente ser establecidos monitoreados

revisados y mejorados en donde sea necesario para asegurar que se cumplan los objetivos

especiacuteficos de seguridad en cada aacuterea de negocio de la organizacioacuten

La seguridad informaacutetica es en realidad una rama de la seguridad de la informacioacuten aunque

de forma praacutectica algunos autores suelen utilizar de manera indistinta ambos teacuterminos

211 Objetivo de la seguridad de la informacioacuten En la seguridad de la informacioacuten

sabiendo que dichos procesos de seguridad permiten proteger el recurso maacutes importante y valioso

de una organizacioacuten partiendo como principio fundamental los procesos de aseguramiento el

28

objetivo del proceso de seguridad informaacutetica es obtener un nivel aceptable de seguridad ya que

la informacioacuten es lo maacutes valioso que tiene una institucioacuten o empresa por lo tanto esta debe ser

protegida para que no sea vulnerable y utilizada para fines maliciosos

212 Principios de la seguridad informaacutetica

Confidencialidad Los datos solo deben ser conocidos y accedidos por quienes esteacuten

autorizados durante su almacenamiento procesamiento o trasmisioacuten Verificar y certificar que solo

los usuarios con accesos autorizados puedan acceder a la informacioacuten

Integridad Los datos solo pueden ser modificados y eliminados por quienes esteacuten

autorizados para ello es decir los sistemas y aplicaciones solo deben ser operados por personal

autorizado

Disponibilidad Los sistemas que almacenan datos e informacioacuten deben garantizar su

acceso cuando asiacute se requiera por quienes tengan derecho a ello

213 Caracteriacutesticas de seguridad informaacutetica

Control Solo los usuarios autorizados deciden cuaacutendo y coacutemo permitir el acceso a la

informacioacuten

Auditoriacutea Establece las acciones cuaacutendo las implementa y quieacuten las realiza sobre el

sistema

Autenticidad Define que la informacioacuten necesaria es correcta utilizable y vaacutelida en tiempo

y forma

No Repudio Su funcioacuten es evitar que alguna entidad que envioacute o recibioacute informacioacuten

alegue que no lo hizo

29

214 Formas de Autenticacioacuten

Contrasentildea Una contrasentildea es un tipo de seguridad informaacutetica ya que es una serie de

caracteres secretos que permiten a un usuario tener acceso a un archivo equipo de coacutemputo o

programa y negar el acceso a usuarios no autorizados

Certificado digital Es un tipo de seguridad informaacutetica que permite la firma digital

electroacutenica que garantiza teacutecnica y legalmente la identidad de una persona en Internet

Autenticacioacuten HTTP Tipo de seguridad informaacutetica que delega la autenticacioacuten de

usuarios a un servidor a traveacutes de Kerberos

215 Ciber-seguridad Con los avances tecnoloacutegicos y la demanda que ha causado en ello

existe un elevado iacutendice de informacioacuten personal y empresarial que circula y se mantiene en la red

por la utilizacioacuten del internet esto permite que toda informacioacuten quede expuesta a cualquier ataque

de ciber-delincuentes los cuales buscan la manera de vulnerar cualquier sistema para espiar robar

informacioacuten o hacer dantildeo de cualquier tipo por lo que se ha visto la necesidad de tomar medidas

de seguridad para salvaguardar la informacioacuten ya que es muy importante

La ciberseguridad es la proteccioacuten de los sistemas conectados a Internet incluidos el

hardware el software y los datos de los ciberataques En un contexto informaacutetico la seguridad

comprende la ciberseguridad y la seguridad fiacutesica ambas son utilizadas por las empresas para

proteger contra el acceso no autorizado a los centros de datos y otros sistemas de coacutemputo El

objetivo de la ciberseguridad es limitar el riesgo y proteger los activos de Tecnologiacuteas de

Informacioacuten de los atacantes con intenciones maliciosas La seguridad de la informacioacuten estaacute

30

disentildeada para mantener la confidencialidad integridad y disponibilidad de los datos es un

subconjunto de la ciberseguridad

22 Criptografiacutea

La Criptografiacutea tambieacuten llamada ldquoescritura ocultardquo tradicionalmente en el aacutembito de

criptografiacutea es donde se ocupan las teacutecnicas de cifrado o codificacioacuten que permiten alterar el

contenido de cierta informacioacuten o mensajes con el fin de hacerlos ininteligibles a receptores o

personas no autorizadas (Meneacutendez-Barzanallana 17)

Actualmente la criptografiacutea se encarga de analizar algoritmos protocolos y sistemas que

son utilizados para proveer seguridad a las comunicaciones informacioacuten y a las entidades que se

comunican entre siacute

221 Tipos de Criptografiacuteas

2211 Tablas Hash Un hash o funcioacuten hash toma un grupo de caracteres (llamado clave)

y lo asigna a un valor de cierta longitud (llamado valor hash o hash) El valor hash es representativo

de la cadena de caracteres original pero normalmente es maacutes pequentildeo que el original

El hash tambieacuten es utilizado en el cifrado y descifrado de firmas digitales La funcioacuten hash

transforma la firma digital luego tanto el valor hash como la firma se enviacutean al receptor El

receptor utiliza la misma funcioacuten hash para generar el valor hash y luego lo compara con el recibido

31

en el mensaje Si los valores hash son los mismos es probable que el mensaje se haya transmitido

sin errores

Un ejemplo de una funcioacuten hash se llama plegado(folding) Esta toma un valor original lo

divide en varias partes luego agrega las partes y usa los uacuteltimos cuatro diacutegitos restantes como

valor o clave hash

2212 Tipos de algoritmos Hash

22121 SHA - 1 (Secure Hash Algorithm) Es un algoritmo criptograacutefico de Hash

publicado por el gobierno de los Estados Unidos Genera un valor Hash de 160 bits a partir de una

secuencia de longitud arbitraria Es considerado lo suficientemente seguro para aplicaciones

praacutecticas pero hay disponibles versiones maacutes robustas SHA - 256 SHA - 384 y SHA - 512 que

generan valores Hash de 256 384 y 512 bits respectivamente estas versiones reemplazaraacuten a SHA

- 1 mientras se siga trabajando sobre ellas (Borghello 2009)

22122 MD5 (Message Digest Algorithm) En criptografiacutea MD5 es una funcioacuten hash

criptograacutefica ampliamente utilizada con un valor hash de 128 bits Como estaacutendar de Internet (RFC

1321) MD5 se ha empleado en una amplia variedad de aplicaciones de seguridad y tambieacuten se

usa comuacutenmente para verificar la integridad de los archivos Un hash MD5 generalmente se

expresa como un nuacutemero hexadecimal de 32 diacutegitos

MD5 es una versioacuten reforzada de MD4 Al igual que MD4 el hash MD5 fue inventado por

el profesor Ronald Rivest del Massachusetts Institute of Technology (MIT) Ademaacutes MD5 se

32

utilizoacute como modelo para SHA-1 ya que comparten muchas caracteriacutesticas comunes MD5 y

SHA-1 son los dos algoritmos hash maacutes utilizados en la actualidad aunque el uso de MD5 ha

disminuido ya que ahora se considera roto (Borghello 2009)

22123 RIPEMD ndash 160 Es una funcioacuten hash criptograacutefica basada en la construccioacuten

Merkle-Damgaringrd (MD) Se usa en el estaacutendar de Bitcoin Es una versioacuten reforzada del algoritmo

RIPEMD que produce un resumen de hash de 128 bits mientras que el algoritmo RIPEMD-160

produce una salida de 160 bits La funcioacuten de compresioacuten consta de 80 etapas formadas por 5

bloques que se ejecutan 16 veces cada uno Este patroacuten se ejecuta dos veces con los resultados

combinados en la parte inferior utilizando la adicioacuten del moacutedulo 32 (Borghello 2009)

22124 Funcioacuten Merkle-Damgaringrd La construccioacuten MD es una metodologiacutea para crear

funciones hash resistentes a colisiones a partir de funciones de compresioacuten unidireccionales Ralph

Merkle la propuso en el antildeo de 1979 en ldquoA certified Digital Signaturerdquo posterior a este estudio

Ivan Damgaringrd demostroacute de manera independiente que la estructura era soacutelida (Merkle amp

Damgaringrd sf)

2213 Cifrado simeacutetrico Los cifrados simeacutetricos son los cifrados criptograacuteficos maacutes

antiguos y maacutes utilizados En un cifrado simeacutetrico la clave que descifra el texto cifrado es la

misma (o puede derivarse faacutecilmente) de la clave que cifra el texto claro Esta clave a menudo se

conoce como la clave secreta Los cifrados simeacutetricos maacutes utilizados son DES y AES

La problemaacutetica que surge es la seguridad de la clave

33

El emisor cifra el mensaje con una clave

Enviacutea el mensaje cifrado de tal manera que nadie puede descifrarlo sin dicha clave

El receptor obtiene la clave y entonces puede descifrar el mensaje con la misma clave

que recibioacute del emisor

Algunos algoritmos de este tipo son

22131 RC5 (Cifrado de Rivest) Es un algoritmo de cifrado de bloque de clave simeacutetrica

disentildeado por Ron Rivest en 1994 Se destaca por ser simple raacutepido (debido a que usa solo

operaciones de coacutemputo primitivas como XOR o shift) y ademaacutes por consumir menos memoria

RC5 es un cifrado de bloques y aborda dos bloques de palabras a la vez Dependiendo del

tamantildeo del bloque de texto sin formato nuacutemero de rondas y tamantildeo de clave se pueden definir

varias instancias de RC5 y cada instancia se denota como RC5-w r b donde w = tamantildeo de

palabra en bits r = nuacutemero de rondas y b = tamantildeo de la clave en bytes (Pawar 2016)

Como se ha mencionado RC5 utiliza bloques de 2 palabras el tamantildeo del bloque de texto

sin formato puede ser de 32 64 o 128 bits

22132 IDEA (International Data Encryption Algorithm) Baacutesicamente es un algoritmo

de cifrado de bloque simeacutetrico El algoritmo asimeacutetrico utiliza la misma clave para el cifrado y

descifrado Un cifrado de bloque divide el mensaje en bloques cada uno de una longitud fija y

luego cifra cada bloque de forma independiente

34

El tamantildeo de bloque tiacutepico es de 16 bytes de 128 bits Un cifrado de bloque generalmente

operaraacute en bloques o rondas donde se aplica parte de la clave a la ronda Despueacutes de un cierto

nuacutemero de rondas digamos entre 10 y 16 se termina con el texto cifrado para ese bloque

El bloque de texto cifrado tiene exactamente el mismo tamantildeo que el bloque de texto sin

formato 16 bytes Para cada ronda se trabaja en el bloque utilizando una parte de la clave de

cifrado a la que se le llama la clave redonda Muacuteltiples claves redondas se derivan de la clave de

cifrado utilizando para esto un programa de claves

La programacioacuten de claves es un algoritmo que cambia XOR multiplica y realiza otros

tipos de operaciones en la clave de cifrado original para obtener estas claves redondas Bueno si

tengo un bloque de 16 bytes y tengo una clave de 128 bits que tambieacuten es de 16 bytes (Educba

2019)

22133 DES (Data Encryption Standard) El algoritmo DES es el algoritmo de seguridad

maacutes popular Es un algoritmo simeacutetrico lo que significa que se utilizan las mismas claves para

cifrar descifrar datos confidenciales La longitud de la clave es de 8 bytes (64 bits) Entonces

para cifrar descifrar datos el algoritmo DES utiliza una clave de 8 bytes pero 1 byte (8 bits) para

la verificacioacuten de paridad Es un algoritmo de cifrado de bloque por lo tanto el tamantildeo del bloque

de datos del algoritmo DES es de 64 bits Para cifrar descifrar datos el algoritmo DES utiliza la

estructura Feistel Entonces utiliza una ronda para cifrar descifrar datos Aunque el tamantildeo del

35

bloque de datos es de 64 bits el nuacutemero de rondas seraacute de 16 rondas asiacute mismo utilizaraacute diferentes

subclaves para cada ronda por lo tanto el nuacutemero de subclaves seraacute de 16 subclaves

Como se puede observar la clave efectiva es de 56 bits por consiguiente se tiene 256

combinaciones posibles por lo que la fuerza bruta se hace casi imposible (Sanjoy 2015)

2214 Cifrado asimeacutetrico Los cifrados asimeacutetricos tambieacuten se conocen como cifrados

con claves puacuteblicas y privadas Usan dos claves una para el cifrado de mensajes y la otra durante

el descifrado

Un intruso puede encriptar cualquier mensaje usando la clave puacuteblica conocida Los

cifrados asimeacutetricos son por lo tanto vulnerables a los ataques de texto sin formato Los cifrados

con encriptacioacuten de clave puacuteblica deben proporcionar seguridad contra tales ataques Despueacutes de

encriptar dos mensajes con la misma clave puacuteblica el intruso no puede distinguir queacute texto cifrado

estaacute conectado con queacute texto plano Ademaacutes un observador que analiza dos mensajes encriptados

usando el mismo algoritmo y la misma clave puacuteblica no puede distinguir sus textos cifrados

(Kowalczyk 2015)

Los cifrados asimeacutetricos son mucho maacutes lentos que los cifrados simeacutetricos (generalmente

mil veces maacutes lentos) Es una praacutectica comuacuten usar el cifrado de clave puacuteblica solo para establecer

la conexioacuten segura y negociar la nueva clave secreta que luego se utilizaraacute para proteger la

comunicacioacuten mediante cifrado simeacutetrico Ejemplos de este cifrado son

36

22141 DSA (Digital Signature Algorithm - Algoritmo de Firma digital) Es un estaacutendar

del Gobierno Federal de los Estados Unidos para firmas digitales Fue propuesto por el Instituto

Nacional de Estaacutendares y Tecnologiacutea (NIST) en agosto de 1991 para ser usado en su Estaacutendar de

Firma Digital (DSS) en el antildeo de 1993

La primera parte del algoritmo DSA es la generacioacuten de clave puacuteblica y clave privada que

puede describirse como

Se elige un nuacutemero primo q que se llama divisor primo

Se elige otro nuacutemero primo p de modo que pndash1 mod q = 0 p seraacute llamado moacutedulo

primo

Ahora se elige un nuacutemero entero g tal que 1 ltg ltp g q mod p = 1 g = h ((p

ndash 1) q) mod p q tambieacuten se llama moacutedulo de orden multiplicativo de g moacutedulo p

Se elige un nuacutemero entero tal que 0 ltx ltq

Se calcula y como g x mod p

Se empaqueta la clave puacuteblica como p q g y

Por uacuteltimo se empaqueta la clave privada como p q g x

La segunda parte del algoritmo DSA es la generacioacuten de firma y la verificacioacuten de firma

Para generar una firma de mensaje el remitente puede seguir estos pasos

Se genera el resumen del mensaje h utilizando un algoritmo hash como SHA1

Se genera un nuacutemero aleatorio k tal que 0 ltk ltq

37

Se calcula r como (g k mod p) mod q Si r = 0 seleccione una k diferente

Ahora se calcula i de modo que k i mod q = 1 i se llama el inverso multiplicativo modular

de k moacutedulo q

Se calcula s = i (h + r x) mod q Si s = 0 se selecciona una k diferente

Por uacuteltimo se empaqueta la firma digital como r s (Yang 2019)

22142 RSA Encriptacioacuten RSA encriptacioacuten Rivest-Shamir-Adleman tipo de

criptografiacutea de clave puacuteblica ampliamente utilizada para la encriptacioacuten de datos de correo

electroacutenico y otras transacciones digitales a traveacutes de Internet RSA lleva el nombre de sus

inventores Ronald L Rivest Adi Shamir y Leonard M Adleman quienes lo crearon mientras

trabajaban en la facultad del Instituto Tecnoloacutegico de Massachusetts (Simmons 2019)

En el sistema RSA un usuario elige de manera secreta un par de nuacutemeros primos p y q tan

grandes que factorizar el producto n = pq estaacute mucho maacutes allaacute de las capacidades informaacuteticas

proyectadas para la vida uacutetil de los cifrados A partir del antildeo 2000 los estaacutendares de seguridad del

gobierno de EE UU exigen que el moacutedulo tenga un tamantildeo de 1024 bits es decir p y q deben

tener un tamantildeo de aproximadamente 155 diacutegitos decimales por lo que n es aproximadamente un

nuacutemero de 310 diacutegitos Dado que los nuacutemeros duros maacutes grandes que actualmente se pueden

factorizar son solo la mitad de este tamantildeo y dado que la dificultad de factorizar se duplica

aproximadamente por cada tres diacutegitos adicionales en el moacutedulo se cree que los moacutedulos de 310

diacutegitos estaacuten a salvo de factorizar durante varias deacutecadas

38

2215 Cifrado hiacutebrido Es una teacutecnica comuacuten que combina diferentes funciones

criptograacuteficas como el cifrado de bloque Con el cifrado hiacutebrido se pueden cifrar datos firmarlos

o agregar un MAC y enviarlos en un objeto seguro (como una cadena o archivo) a traveacutes de un

canal de comunicacioacuten inseguro (sin un acuerdo clave entre dos partes)

En el sistema de cifrado hiacutebrido el texto plano (sin formato) se divide en tokens Luego

se calcula la longitud de cada ficha Los tokens y sus longitudes se almacenan en una matriz

Posteriormente se aplica el algoritmo Ceacutesar anidado sugerido El texto producido se almacena en

una matriz n x m llamada A Luego la transposicioacuten de esta matriz At se calcula utilizando

nuestra versioacuten revisada del cifrado de transposicioacuten para resolver el problema de secuenciacioacuten

A continuacioacuten el algoritmo RSA revisado se aplica en la matriz producida En el paso final se

aplica el formato de datos textuales usando el coacutedigo ASCII para producir el texto cifrado El

proceso de descifrado se realiza de la misma manera pero en orden inverso (Nahar amp Abu Abbas

2010)

23 Criptoanaacutelisis

El criptoanaacutelisis es el proceso de estudiar sistemas criptograacuteficos para buscar debilidades

o fugas de informacioacuten En general se considera que el criptoanaacutelisis explora las debilidades de

las matemaacuteticas subyacentes de un sistema criptograacutefico pero tambieacuten incluye la buacutesqueda de

debilidades en la implementacioacuten como ataques de canal lateral o entradas de entropiacutea deacutebiles

39

Su funcioacuten es la de conseguir obtener el significado de mensajes creados por medio de

criptografiacutea El objetivo principal del criptoanaacutelisis es opuesto al de la criptografiacutea Tiene como

finalidad encontrar la debilidad de las diferentes teacutecnicas criptograacuteficas para explotarla y de esta

manera reducir o eliminar la seguridad de la teacutecnica criptograacutefica Cualquier intento de

criptoanaacutelisis puede ser llamado ataque Una vez que un atacante logra romper la seguridad que

una teacutecnica criptograacutefica aportaba al sistema se dice que dicho sistema ha sido roto y por lo tanto

dicho ataque tuvo eacutexito

El criptoanaacutelisis es la investigacioacuten de sistemas texto cifrado y cifrados para revelar el

significado oculto o los detalles del sistema mismo El objetivo de este tipo de estudio es descubrir

los aspectos ocultos incluso si la clave o el algoritmo principal no se pueden descifrar Se necesita

una combinacioacuten exitosa de persistencia matemaacuteticas intuicioacuten curiosidad y una computadora

que funcione para hacer un buen criptoanalista Este tipo de ruptura de coacutedigo es extremadamente

importante especialmente en el mundo tecnoloacutegicamente dependiente de hoy El criptoanaacutelisis es

constantemente realizado por criptoacutegrafos que intentan obtener informacioacuten valiosa y por aquellos

que intentan descifrar el coacutedigo para revelar secretos (Security Degree Hub 2017)

24 Niveles de seguridad

Los niveles de seguridad de sistemas operativos son otorgados de acuerdo con el sistema

operativo que esteacute utilizando la empresa o institucioacuten ya sea puacuteblica privada gubernamental o no

gubernamental En el manual ldquoTrusted Computer System Evaluation Criteriardquo (United States

40

Government Department of Defense 1983) el Departamento de Defensa de los Estados Unidos

define los siguientes niveles

241 Nivel D1 Este nivel es el maacutes bajo de seguridad por lo tanto la norma establece que

el sistema no es confiable Esta divisioacuten contiene solo una clase Estaacute reservado para aquellos

sistemas que han sido evaluados pero que no cumplen con los requisitos para un nivel de

evaluacioacuten superior

242 Nivel C1 Un sistema de nivel C1 cumple nominalmente los requisitos de seguridad

discrecionales al proporcionar separacioacuten de usuarios y datos Incorpora alguna forma de controles

creiacutebles capaces de imponer limitaciones de acceso de manera individual es decir aparentemente

adecuados para permitir que los usuarios puedan proteger la informacioacuten privada o del proyecto y

evitar que otros usuarios lean o destruyan accidentalmente sus datos Se espera que el entorno de

nivel C1 sea uno de los usuarios cooperantes que procesan datos con el mismo nivel de

sensibilidad Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten

de nivel C1 son

Control de acceso discrecional por ejemplo listas de control de acceso (ACL)

usuario grupo

Por lo general para usuarios que estaacuten en el mismo nivel de seguridad

Proteccioacuten de nombre de usuario y contrasentildea y base de datos de autorizaciones

seguras (ADB)

Sistema operativo protegido y modo de operaciones del sistema

Comprobacioacuten perioacutedica de integridad de TCB

41

Mecanismos de seguridad probados sin derivaciones obvias

Documentacioacuten para la seguridad del usuario

Documentacioacuten para la seguridad de la administracioacuten de sistemas

Documentacioacuten para pruebas de seguridad

Documentacioacuten de disentildeo TCB

Tiacutepicamente para usuarios en el mismo nivel de seguridad

La certificacioacuten C1 es rara Los sistemas de ejemplo son versiones anteriores de

Unix IBM RACF

243 Nivel C2 Los sistemas de esta clase imponen un control de acceso discrecional maacutes

fino que los sistemas (C1) lo que hace que los usuarios sean individualmente responsables de sus

acciones a traveacutes de procedimientos de inicio de sesioacuten auditoriacutea de eventos relevantes para la

seguridad y aislamiento de recursos Los siguientes son requisitos miacutenimos para los sistemas

asignados a una clasificacioacuten de nivel C2

La proteccioacuten de objetos puede ser para un solo usuario Por ejemplo a traveacutes de

una base de datos ACL

La autorizacioacuten de acceso solo puede ser asignada por usuarios autorizados

Proteccioacuten de reutilizacioacuten de objetos (Por ejemplo para evitar la reasignacioacuten de

objetos eliminados de manera segura)

Procedimientos obligatorios de identificacioacuten y autorizacioacuten para los usuarios (Por

ejemplo Usuario Contrasentildea)

Auditoriacutea completa de eventos de seguridad (es decir fecha hora evento usuario

eacutexito falla ID de terminal)

42

Modo de operacioacuten del sistema protegido

Proteccioacuten adicional para la autorizacioacuten y los datos de auditoriacutea

Documentacioacuten como C1 maacutes informacioacuten sobre el examen de la informacioacuten de

auditoriacutea

Esta es una de las certificaciones maacutes comunes Los sistemas operativos de ejemplo

son VMS IBM OS 400 Windows NT Novell NetWare 411 Oracle 7 DG AOS

VS II

244 Nivel B1 Los sistemas de este nivel requieren todas las caracteriacutesticas requeridas

para el nivel C2 Ademaacutes debe estar presente una declaracioacuten informal del modelo de poliacutetica de

seguridad etiquetado de datos y control de acceso obligatorio sobre sujetos y objetos nombrados

La capacidad debe existir para etiquetar con precisioacuten la informacioacuten exportada Cualquier falla

identificada por la prueba debe ser eliminada Los siguientes son requisitos miacutenimos para los

sistemas asignados a una clasificacioacuten de nivel B1

Etiquetado obligatorio de seguridad y acceso de todos los objetos (Por ejemplo

archivos procesos dispositivos)

Comprobacioacuten de integridad de etiquetas (Por ejemplo mantenimiento de etiquetas

de sensibilidad cuando se exportan datos)

Auditoriacutea de objetos etiquetados

Control de acceso obligatorio para todas las operaciones

Capacidad para especificar el nivel de seguridad impreso en salida legible para

humanos (Por ejemplo impresoras)

43

Capacidad para especificar el nivel de seguridad en cualquier salida legible por

maacutequina

Auditoriacutea mejorada

Proteccioacuten mejorada del sistema operativo

Documentacioacuten mejorada

Los sistemas operativos de ejemplo son HP-UX BLS Cray Research Trusted

Unicos 80 Digital SEVMS Harris CS SX SGI Trusted IRIX

245 Nivel B2 En los sistemas de nivel B2 el TCB se basa en un modelo de poliacutetica de

seguridad formal claramente definido y documentado que requiere que la aplicacioacuten de control de

acceso discrecional y obligatoria que se encuentra en los sistemas de nivel B1 se extienda a todos

los sujetos y objetos en el sistema Ademaacutes se abordan los canales encubiertos El TCB debe

estructurarse cuidadosamente en elementos criacuteticos para la proteccioacuten y no criacuteticos para la

proteccioacuten La interfaz TCB estaacute bien definida y el disentildeo y la implementacioacuten TCB le permiten

someterse a pruebas maacutes exhaustivas y una revisioacuten maacutes completa Se fortalecen los mecanismos

de autenticacioacuten se proporciona una gestioacuten confiable de las instalaciones en forma de soporte

para las funciones de administrador y operador del sistema y se imponen estrictos controles de

gestioacuten de la configuracioacuten El sistema es relativamente resistente a la penetracioacuten Los siguientes

son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de nivel B2

Notificacioacuten de cambios en el nivel de seguridad que afectan a los usuarios

interactivos

Etiquetas de dispositivos jeraacuterquicos

44

Acceso obligatorio a todos los objetos y dispositivos

Comunicaciones de ruta confiables entre usuario y sistema

Rastreo de canales de almacenamiento encubiertos

Modo de operaciones del sistema maacutes estricto en unidades independientes de varios

niveles

Anaacutelisis de canales encubiertos

Pruebas de seguridad mejoradas

Modelos formales de TCB

Versioacuten actualizacioacuten y anaacutelisis y revisioacuten de parches

Los sistemas de ejemplo son Honeywell Multics Cryptek VSLAN Trusted

XENIX

246 Nivel B3 El TCB debe satisfacer los requisitos del monitor de referencia para mediar

todos los accesos de los sujetos a los objetos ser a prueba de manipulaciones y ser lo

suficientemente pequentildeo como para ser sometido a anaacutelisis y pruebas Con este fin el TCB estaacute

estructurado para excluir el coacutedigo que no es esencial para la aplicacioacuten de la poliacutetica de seguridad

con una importante ingenieriacutea del sistema durante el disentildeo y la implementacioacuten del TCB dirigido

a minimizar su complejidad Se admite un administrador de seguridad los mecanismos de

auditoriacutea se ampliacutean para sentildealar eventos relevantes para la seguridad y se requieren

procedimientos de recuperacioacuten del sistema El sistema es altamente resistente a la penetracioacuten

Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de clase

(B3)

45

ACL adicionalmente basadas en grupos e identificadores

Acceso de ruta confiable y autenticacioacuten

Anaacutelisis automaacutetico de seguridad

Modelos TCB maacutes formales

Auditoriacutea de eventos de auditoriacutea de seguridad

Recuperacioacuten confiable despueacutes de la caiacuteda del sistema y documentacioacuten relevante

Cero defectos de disentildeo en TCB y defectos miacutenimos de implementacioacuten

El uacutenico sistema operativo con certificacioacuten B3 es Getronics Wang Federal XTS-

300

247 Nivel A1 Los sistemas en el nivel A1 son funcionalmente equivalentes a los del nivel

B3 en que no se agregan caracteriacutesticas arquitectoacutenicas adicionales ni requisitos de poliacuteticas La

caracteriacutestica distintiva de los sistemas en este nivel es el anaacutelisis derivado de la especificacioacuten

formal del disentildeo y las teacutecnicas de verificacioacuten y el alto grado resultante de seguridad de que el

TCB se implementa correctamente Esta garantiacutea es de naturaleza de desarrollo comenzando con

un modelo formal de la poliacutetica de seguridad y una especificacioacuten formal de alto nivel del disentildeo

Independientemente del lenguaje de especificacioacuten particular o del sistema de verificacioacuten

utilizado existen los siguientes criterios importantes para la verificacioacuten del disentildeo de nivel A1

Meacutetodos formales y prueba de integridad de TCB

Estos son los uacutenicos sistemas con certificacioacuten A1 Boeing MLS LAN Gemini

Trusted Network Processor Honeywell SCOMP (United States Government

Department of Defense 1983)

46

25 Sistemas Operativos

Un sistema operativo actuacutea como intermediario entre el usuario de una computadora y el

hardware de la computadora El propoacutesito de un sistema operativo es proporcionar un entorno en

el que un usuario pueda ejecutar programas de manera conveniente y eficiente

Un sistema operativo es un software que administra el hardware de la computadora El

hardware debe proporcionar mecanismos apropiados para garantizar el correcto funcionamiento

del sistema informaacutetico y para evitar que los programas del usuario interfieran con el correcto

funcionamiento del sistema (Carretero Peacuterez de Miguel Anasagasti Garciacutea Carballeira amp Peacuterez

Costoya 2001)

Un sistema operativo es un programa que controla la ejecucioacuten de programas de aplicacioacuten

y actuacutea como una interfaz entre el usuario de una computadora y el hardware de la computadora

Una definicioacuten maacutes comuacuten es que el sistema operativo es el uacutenico programa que se ejecuta

en todo momento en la computadora (generalmente llamado kernel) y todo lo demaacutes son

programas de aplicacioacuten

Un sistema operativo se ocupa de la asignacioacuten de recursos y servicios como memoria

procesadores dispositivos e informacioacuten El sistema operativo incluye los programas para

administrar estos recursos como un controlador de traacutefico un programador un moacutedulo de

administracioacuten de memoria programas de E S y un sistema de archivos (Pawar 2016)

47

251 Windows Sistema operativo de la empresa Microsoft es un conjunto de programas

que administra los recursos de una computadora Windows empieza a trabajar cuando se enciende

o inicializa el equipo para gestionar el hardware empezando desde los niveles maacutes baacutesicos

Es importante conocer que los sistemas operativos funcionan tanto en las computadoras

como en diferentes dispositivos electroacutenicos que usan microprocesadores En este caso Windows

su versioacuten estaacutendar funciona con computadoras Microsoft domina el mercado de los sistemas

operativos debido a su comodidad se puede decir que eacuteste sistema operativo se encuentra

instalado en el 887 de los equipos de coacutemputo que cuentan con acceso a Internet en todo el

mundo

Se pueden mencionar algunas aplicaciones principales (que eacutestas tambieacuten pueden ser

desinstaladas por los usuarios o actualizadas sin que el sistema operativo se dantildee o deje de

funcionar) se encuentran el procesador de texto WordPad el navegador Internet Explorer el

reproductor multimedia Windows Media y el editor de imaacutegenes Paint

La principal novedad que aportoacute Windows desde sus oriacutegenes fue la facilidad para usarlo

y el atractivo visual De hecho su nombre (ldquoventanasrdquo) se debe a la forma en que el sistema

presenta a los usuarios los recursos con los que cuenta su computadora lo que facilita las tareas

cotidianas Windows tambieacuten suele recibir varias criacuteticas por sus problemas de seguridad y por

otros fallos

48

252 Registro de Windows El registro es una base de datos jeraacuterquica que contiene datos

que son criacuteticos para el funcionamiento de Windows y las aplicaciones y servicios que se ejecutan

en Windows Los datos estaacuten estructurados en un formato de aacuterbol Cada nodo en el aacuterbol se llama

clave Cada clave puede contener subclaves y entradas de datos llamadas valores A veces la

presencia de una clave es el uacutenico dato que requiere una aplicacioacuten otras veces una aplicacioacuten

abre una clave y usa los valores asociados con la clave (Microsoft Inc 2019) Una clave puede

tener cualquier nuacutemero de valores y los valores pueden tener cualquier forma El registro es

utilizado por

Autenticacioacuten

Nuacutecleo (Kernel)

Controladores de dispositivos

Servicios

SAM

Las carpetas del sistema se almacenaraacuten en distintas rutas de acceso dependiendo de la

versioacuten de Windows con la que se esteacute trabajando a continuacioacuten cuatro de los cinco archivos

que maacutes interesan a esta investigacioacuten se encuentran en la siguiente ubicacioacuten SystemRoot

System32 Config dentro de las siguientes sub llaves

SAM - HKEY LOCAL MACHINE SAM

SECURITY - HKEY LOCAL MACHINE SECURITY

SOFTWARE - HKEY LOCAL MACHINE SOFTWARE

SYSTEM - HKEY LOCAL MACHINE SYSTEM

49

253 Administrador de cuentas de seguridad El administrador de cuentas de seguridad

(SAM por sus siglas en ingleacutes) es una base de datos en donde se encuentran las cuentas de

seguridad Esto es utilizado por Windows para administrar las cuentas de usuario y contrasentildeas en

el formato hash

Las contrasentildeas nunca se almacenan en formato de texto claro Se almacenan en formato

de hash para protegerlas de los ataques La base de datos SAM se implementa como un archivo de

registro y las obtiene del kernel de Windows y mantiene un bloqueo exclusivo al archivo SAM

esto quiere decir que el archivo tiene cierta medida de seguridad para el almacenamiento de las

contrasentildeas (Hernandez 2013)

No es posible copiar el archivo SAM a otra ubicacioacuten en el caso de los ataques en liacutenea

Dado que el archivo SAM estaacute bloqueado con un bloqueo exclusivo al sistema de archivos no

puede ser copiado o movido mientras se ejecuta Windows El bloqueo no iniciaraacute hasta que la

excepcioacuten de la pantalla azul haya sido inicializada o el sistema operativo haya sido apagado Sin

embargo los archivos en formato hash de contrasentildeas fuera de liacutenea estaacuten disponibles para los

ataques de fuerza bruta el contenido del archivo SAM puede ser copiado o descargado utilizando

diversas teacutecnicas

Un identificador de seguridad (SID) es un valor uacutenico de longitud variable utilizado para

identificar a un usuario Cada cuenta tiene un SID uacutenico emitido por una autoridad como un

controlador de dominio de Windows y almacenado en una base de datos de seguridad Cada vez

50

que un usuario inicia sesioacuten el sistema recupera el SID para ese usuario de la base de datos y lo

coloca en el token de acceso para ese usuario El sistema usa el SID en el token de acceso para

identificar al usuario en todas las interacciones posteriores con la seguridad de Windows Cuando

se ha usado un SID como identificador uacutenico para un usuario o grupo no se puede volver a usar

para identificar a otro usuario o grupo

La seguridad de Windows usa SID en los siguientes elementos de seguridad

En descriptores de seguridad para identificar al propietario de un objeto y grupo

primario

En las entradas de control de acceso para identificar al usuario para quien el acceso

estaacute permitido denegado o auditado

En tokens de acceso para identificar al usuario y los grupos a los que pertenece

2531 Identificador de Seguridad (SID Security Identifier)

S - 1 - 5 - 21 - 3983109318 - 554656936 - 3066752241 - 1000

S - indica que es un string de SID

1 - el nivel de revisioacuten

5 - el identificador de valor de autoridad o authority value no siempre seraacute 5 Entre otros

valores que se pueden encontrar estaacuten los siguientes

51

0 - sin autoridad

1 - autoridad global

2 - autoridad local

3 - autoridad de creador

4 - autoridad no uacutenica

5 - autoridad NT

9 - autoridad de administrador de recursos

21 - 3983109318 - 554656936 - 3066752241 - es el dominio en el que se encuentra el

sistema o el identificador local de la computadora

1000 - ID uacutenico para cada cuenta aquiacute se encuentra el RID (Relative Identifier) Nuacutemero

de longitud variable cualquier grupo o usuario que se cree de manera diferente a la predeterminada

recibiraacute un RID de 1000 o superior En el caso de que el valor sea 500 responde a que este SID

representa la cuenta de un administrador el valor de 500 siempre seraacute el mismo en cualquier cuenta

de administrador a su vez el valor 501 representa el SID de una cuenta Invitado (Guest)

(Hernandez 2013)

254 Autenticacioacuten NTML NTLM (NT LAN Manager) es un protocolo empleado por

muchos productos de Microsoft para realizar la autenticacioacuten desafiacuteorespuesta por lo tanto es el

esquema de autenticacioacuten que por defecto usa Firewall de Microsoft y tambieacuten los productos del

servidor proxy

52

Este software fue desarrollado para afrontar el problema del trabajo con Tecnologiacuteas Java

en un entorno orientado a Microsoft Puesto que no se basa en ninguna especificacioacuten oficial de

protocolo por lo tanto no hay garantiacutea de que funciona correctamente en todos los casos Tambieacuten

ha estado en algunas instalaciones de Windows donde funcionoacute con eacutexito

La Autenticacioacuten NTLM se compone de dos protocolos protocolo de autenticacioacuten NTLM

y protocolo de autenticacioacuten LM Estos protocolos utilizan una metodologiacutea de hash diferente para

almacenar contrasentildeas de los usuarios en la base de datos SAM (Hernandez 2013) (Meneacutendez-

Barzanallana 17)

26 LINUX (ROCKS)

Rocks es una distribucioacuten para cluacutester de Linux de coacutedigo abierto que permite a los usuarios

finales construir de manera maacutes amigable cluacutesteres computacionales y muros de visualizacioacuten en

mosaico Cientos de investigadores de todo el mundo han utilizado Rocks para implementar su

propio cluacutester

Desde mayo de 2000 el grupo Rocks ha abordado las dificultades de implementar cluacutesteres

manejables Encaminados hacia un objetivo crear cluacutesters de manera maacutes sencilla Por sencilla

significa faacutecil de implementar administrar actualizar y escalar Este objetivo impulsa a los

creadores de esta herramienta a ayudar a entregar el poder computacional de los cluacutesteres a una

amplia gama de usuarios cientiacuteficos Estaacute claro que poner a disposicioacuten de una amplia gama de

53

cientiacuteficos plataformas de computacioacuten paralelas estables y manejables ayudaraacute enormemente a

mejorar el estado del arte en herramientas paralelas (Rocksclusters 2010)

261 Escritorio De todos los escritorios disponibles para el sistema operativo Linux

GNOME ha logrado convertirse en el maacutes eficiente estable y confiable sin dejar de ser sencillo

de usar De hecho la mayoriacutea de los usuarios independientemente de su experiencia pueden

trabajar con GNOME casi sin esfuerzo

Los usuarios que son nuevos tanto en Linux como en GNOME hariacutean mejor en conocer

los entresijos del escritorio que hacen que Linux no solo sea faacutecil sino tambieacuten divertido

Un entorno de escritorio agrupa programas que trabajan juntos para formar un espacio de

trabajo informaacutetico cohesivo unificado transparente e interactivo para los usuarios O para

decirlo de manera maacutes simple el entorno de escritorio es la interfaz de usuario para el sistema

operativo En el caso de GNOME ese sistema operativo es Linux Sin un entorno de escritorio su

uacutenica alternativa es una sesioacuten de Shell (liacutenea de comandos) basada en texto (Wallen 2019)

262 Paquete de Oficina Una suite ofimaacutetica es una coleccioacuten de software creada por el

mismo proveedor y disentildeada para ser utilizada para tareas rutinarias dentro de una organizacioacuten

Por lo general una suite ofimaacutetica incluye aplicaciones como procesamiento de texto hojas de

caacutelculo presentacioacuten correo electroacutenico toma de notas base de datos colaboracioacuten y otros tipos

de software relacionados En la mayoriacutea de los casos cada aplicacioacuten en la suite ofimaacutetica se puede

instalar por separado y todas las aplicaciones dentro de la suite admiten la interoperabilidad entre

54

siacute Microsoft Office Suite Lotus Live Notes y LibreOffice son todas suites de oficina de uso

comuacuten

263 Organizador de archivos Es una funcioacuten avanzada disentildeada para agrupar y

renombrar archivos usando sus atributos del sistema o meta atributos

Cada archivo tiene atributos del sistema como la fecha (Acceso Creado y Modificado) el

tipo de archivo (definido por extensioacuten) y asociado con la aplicacioacuten registrada de ese tipo de

archivo Estos atributos se pueden usar para generar un nuevo nombre de archivo o carpeta (grupo)

para cada archivo con el mismo atributo Ademaacutes de los atributos del sistema algunos archivos

en su mayoriacutea medios o imaacutegenes pueden contener metacampos como el nombre del artista el

tiacutetulo el nombre del aacutelbum y otros El Organizador de archivos tambieacuten usa estos metacampos

para agrupar archivos en una carpeta con el mismo atributo Por lo tanto el organizador de archivos

opera reglas de organizacioacuten de archivos que definen la jerarquiacutea de agrupacioacuten de carpetas y las

reglas de cambio de nombre de archivos

Asiacute como el conocido ldquoexplorador de Windowsrdquo Linux integra un organizador de archivos

y carpetas llamado NAUTILUS para realizar tareas de manejo de archivos como mover copiar

renombrar crear carpetas y de esta manera administrar nuestros dispositivos de almacenamiento

55

27 Agrupamiento (Cluacutester) de Computadoras

El agrupamiento (cluacutester) de computadoras estaacute conformado por una coleccioacuten de

computadoras autoacutenomas interconectadas trabajando unidas como un solo recurso de computacioacuten

integrado El concepto de agrupamiento de computadoras nacioacute cuando los pioneros de la

supercomputacioacuten intentaban difundir diferentes procesos entre varias computadoras para luego

poder recoger los resultados que dichos procesos debiacutean producir Con un hardware maacutes barato y

faacutecil de conseguir se pudo perfilar que podriacutean conseguirse resultados muy parecidos a los

obtenidos con aquellas maacutequinas mucho maacutes costosas (Chirinov 2003)

Un agrupamiento de computadoras se puede definir como el trabajo realizado por dos o

maacutes computadoras que en conjunto se encargan de proveer una determinada solucioacuten Tiene como

finalidad agrupar el poder de coacutemputo de los nodos implicados para proporcionar una mayor

escalabilidad disponibilidad y fiabilidad (Branch Bedoya amp Mesa Muacutenera 2008)

La escalabilidad es la capacidad de un equipo para hacer frente a voluacutemenes de trabajo

cada vez mayores sin por ello dejar de prestar un nivel de rendimiento aceptable

La disponibilidad y la fiabilidad se encuentran bastante relacionadas aunque difieren

ligeramente en algunos aspectos La disponibilidad es la calidad de estar presente y listo para su

uso mientras que la fiabilidad es la probabilidad de un correcto funcionamiento

56

Entre los tipos de agrupamiento maacutes comunes se pueden encontrar de alta disponibilidad

(ambiente a prueba de fallas) coacutemputo de alto desempentildeo (los procesos o las tareas dadas se

presentan como un solo sistema virtual) y escalamiento horizontal (se utiliza para proporcionar

una sola interfaz a un conjunto de recursos que pueden aumentar o disminuir arbitrariamente su

tamantildeo en un cierto periodo de tiempo) (Gonzaacutelez Ramiacuterez amp Rodriacuteguez Saacutenchez 2008)

271 Beowulf Es una clase de computadora masivamente paralela de altas prestaciones

principalmente construida a base de agrupamiento de componentes hardware estaacutendar (Llorens amp

Pentildea 2002) Consta de un conjunto de nodos minimalistas unidos por un medio de

comunicaciones econoacutemico Esto quiere decir que tienen lo miacutenimo para ejecutar su funcioacuten de

hecho los nodos por siacute solos no son capaces de ejecutar siquiera un sistema operativo (Nievas

Pino amp Arroyo) Se puede ver como una supercomputadora paralela construida con hardware

comercial de faacutecil adquisicioacuten que posee como sistema operativo Linux Los cluacutesters Beowulf son

extremadamente poderosos pero no son para todas las personas Su principal desventaja es que

requieren software disentildeado para poder aprovechar los recursos del cluacutester (Lizaacuterraga 2002)

272 Mosix Seguacuten Peacuterez (2001) la arquitectura Mosix estaacute basada en la misma ideologiacutea

de la arquitectura Beowulf Se basa en un conjunto de parches aplicados al nuacutecleo (kernel) de Linux

y que asignan a todo el grupo de nodos un espacio de direcciones y de procesos comuacuten gracias al

cual los procesos migran de uno a otro con el fin de equilibrar favorablemente la carga del sistema

global Es una herramienta disentildeada para realizar balanceo de carga en el agrupamiento de forma

totalmente transparente de manera tal que los nodos se comportan como una sola maacutequina y asiacute

incrementar el aprovechamiento de cada uno de los nodos (Chaacutevez y otros 1999) La principal

57

ventaja de Mosix frente a Beowulf se basa precisamente en esto Mosix da mejores respuestas que

Beowulf frente a la caiacuteda o insercioacuten de nodos A parte de esto Mosix permite un cambio constante

de aplicacioacuten o incluso el correr aplicaciones independientes de forma simultaacutenea

273 OpenMosix OpenMosix es una extensioacuten del proyecto Mosix Seguacuten Chirinov

(2003) la idea de este modelo es que la distribucioacuten de tareas en el cluacutester la determina OpenMosix

de forma dinaacutemica conforme se van creando tareas Cuando un nodo estaacute demasiado cargado las

tareas que se estaacuten ejecutando pueden migrar a cualquier otro nodo del cluacutester Asiacute desde que se

ejecuta una tarea hasta que eacutesta muere podraacute migrar de un nodo a otro sin que el proceso sufra

mayores cambios

Ademaacutes OpenMosix funciona a nivel de kernel por tanto puede conseguir toda la

informacioacuten que necesite para decidir que tanto estaacute cargado un sistema y queacute pasos se deben

seguir para aumentar el rendimiento ademaacutes puede realizar maacutes funciones que cualquier

aplicacioacuten a nivel de usuario

Despueacutes de elegir el tipo de cluacutester a utilizar se procede a elegir los elementos baacutesicos que

se emplearaacuten para implementar el cluacutester capacidad de procesamiento memoria espacio del disco

de cada nodo asiacute como tambieacuten el ancho de banda de la comunicacioacuten entre los nodos Se deberaacute

decidir cuaacuteles son importantes basaacutendose en la variedad de aplicaciones que se piensen ejecutar

en el cluacutester y de la cantidad de dinero que se disponga para construirlo

58

Bajo estos mismos paraacutemetros se debe escoger tambieacuten el tipo de red que interconectaraacute

los nodos (Turner 2004)

Luego se debe escoger el sistema operativo a utilizar Esta eleccioacuten dependeraacute mucho de

la maacutequina que se escoja Linux es siempre una opcioacuten en cualquier maacutequina y es la eleccioacuten maacutes

comuacuten Muchas de las herramientas necesarias para la implementacioacuten de un cluacutester han sido

desarrolladas bajo Linux Pero existen cluacutesters corriendo bajo Windows NT UNIX Solaris y AIX

59

Capiacutetulo 3 Implementacioacuten de Cluacutester

31 Requisitos previos

Antes de iniciar la instalacioacuten del FrontEnd es necesario asegurarse que las conexiones de

red de los equipos junto con la configuracioacuten de la BIOS de cada uno sean las correctas

311 Conexioacuten de los equipos y acceso a la red

Un cluacutester de alto desempentildeo funciona como un uacutenico equipo el cuaacutel comparte los recursos

de los nodos esclavos con el nodo maestro para ello es esencial la existencia de una red interna de

alta velocidad por medio de la cual se realice la comunicacioacuten entre el nodo maestro y los nodos

esclavos como se muestra en la Figura 31 El nodo maestro necesitaraacute 2 tarjetas de red de alta

Figura 31 Esquema tiacutepico de configuracioacuten de un cluacutester (Fuente Elaboracioacuten propia)

60

velocidad una para la comunicacioacuten interna y otra para la comunicacioacuten con redes externas El

sistema operativo Rocks asigna automaacuteticamente la interface ldquoeth0rdquo a la red interna del cluacutester y

la interface ldquoeth1rdquo a la red externa En caso de que Rocks sea incapaz de determinar cuaacutel es la red

externa debido a la falta de conexioacuten a internet estas podriacutean ser asignadas de manera incorrecta

por tal motivo se sugiere asegurar el nombre de cada una de las interfaces

Dado que Rocks no permite volverlas a asignar una vez finalizada la instalacioacuten es

necesario volver a reinstalarlo para poder solucionar este inconveniente

312 Configuracioacuten de la BIOS Para evitar problemas durante la instalacioacuten conviene

configurar correctamente la Bios

3121 ATAIDE Mode Algunos sistemas operativos puede que no sean capaces de

reconocer el controlador del disco duro como es en el caso de esta distribucioacuten de Rocks usada

Para evitar complicaciones de tener que antildeadir el controlador a mano lo mejor es habilitar el modo

ldquoLegacyrdquo de controlador de disco duro

61

Para ello se accede a la Bios pulsando F2 al encender el equipo se situacutea en la pestantildea

ldquoAdvancedrdquo y se selecciona ldquoDrive Configurationrdquo como se muestra en la Figura 32

Figura 32 Imagen del Bios del equipo en la opcioacuten ldquodrive configurationrdquo (Fuente Elaboracioacuten propia)

Figura 33 Bios ATAIDE Legacy Mode (Fuente Elaboracioacuten propia)

62

Dentro del menuacute se tiene que seleccionar el Modo ldquoLegacyrdquo en la opcioacuten ldquoATAIDE

Moderdquo como se muestra en la Figura 33 y para salir se guardan los cambios con F10

3122 PXE Al momento de instalar un nodo puede ocurrir falla al arrancar y aparecer

bootsplash (Reboot and Select proper device) Para evitarlo es necesario habilitar la opcioacuten de

PXE para que tome los archivos de instalacioacuten del nodo maestro a traveacutes de la red interna

En la Bios se selecciona la pestantildea ldquoBootrdquo y dentro de ese mismo menuacute se deshabilita

ldquoSilent bootrdquo y se habilita la opcioacuten de ldquoPXE boot to lanrdquo como se muestra en la Figura 34

Finalmente hay que verificar que en la secuencia de arranque (Figura 35) como primer

dispositivo sea desde red para que de esta manera inicie desde el PXE

Figura 34 Bios Boot PXE (Fuente Elaboracioacuten propia)

63

Se guardan los cambios antes de salir

32 Instalacioacuten de Sistema Operativo Rocks

Una vez configurados los equipos se enciende el equipo que seraacute el nodo maestro

(FrontEnd) en el cuaacutel previamente se ha modificado la secuencia de inicio del boot desde la Bios

de modo que al insertar el CD de Rocks eacuteste procederaacute a iniciar la instalacioacuten con la siguiente

pantalla que se muestra a continuacioacuten

Figura 35 Bios Boot device prioriry (Fuente Elaboracioacuten propia)

64

Para iniciar la instalacioacuten uacutenicamente se selecciona la opcioacuten ldquoInstall CentOS 7rdquo como se

muestra en la Figura 36 dando asiacute comienzo al proceso de instalacioacuten Tras finalizar un proceso

de carga en memoria Rocks mostraraacute un formulario en entorno graacutefico mediante el cual

procederemos a configurar el FrontEnd

Esta primera pantalla se muestra coacutemo se desea realizar la instalacioacuten puede realizarse

por medio de la descarga del sistema operativo (se requiere internet) En este caso como se muestra

en la Figura 37 dado que previamente se descargoacute el DVD completo se seleccionoacute ldquoCDDVD

based rollsrdquo

Figura 36 Pantalla de Inicio de instalacioacuten de Rocks (Fuente Elaboracioacuten propia)

65

A continuacioacuten Figura 38 se selecciona de la lista de Rolls aquellos que se desean instalar

Figura 37 Pantalla de seleccioacuten de Rolls (Fuente Elaboracioacuten propia)

Figura 38 Listado de opciones de rolls para instalar (Fuente Elaboracioacuten propia)

66

Tras presionar el botoacuten ldquoSubmitrdquo la siguiente pantalla (Figura 39) muestra formulario en

el que hay que indicar la informacioacuten baacutesica del cluacutester entre las cuales aparecen

Fully-Qualified Host Name Nombre con el que se conoceraacute en la red externa el cluacutester

Cluster Name Nombre utilizado para ser identificado dentro de las herramientas del cluacutester

Certificate Organization Locality State and Country Organizacioacuten a la que pertenece el

cluacutester la localidad el estado y la ciudad

Contact URL and LattitudeLongitude Contacto direccioacuten web y posicioacuten GPS

Figura 39 Informacioacuten baacutesica del cluacutester a instalar (Fuente Elaboracioacuten propia)

67

Una vez que se ingresa la informacioacuten al cluacutester se presiona el botoacuten ldquoListordquo y

posteriormente se podraacute cambiar la configuracioacuten baacutesica de la red interna del cluacutester En este caso

Figura 310 se dejoacute el valor por defecto una IP de clase B (1011116)

El siguiente paso es la configuracioacuten de la red externa (para tener acceso a internet) En

este punto se introducen los datos de la red externa a la que se encuentra conectado el nodo

maestro como se muestra en la Figura 311

Figura 310 Configuracioacuten Ethernet de la red privada (Fuente Elaboracioacuten propia)

Figura 311 Configuracioacuten Ethernet de la red puacuteblica (Fuente Elaboracioacuten propia)

68

Para terminar de configurar la red externa como se muestra en la Figura 312 se ingresa la

direccioacuten IP del Gateway y los DNS (Servidor de nombre de dominio) que va a usar para el acceso

a internet

Se continuacutea con el resto del formulario donde se introduce la contrasentildea para el usuario

root tal y como se muestran en la Figura 313

Figura 312 Configuracioacuten de DNS y Gateway (Fuente Elaboracioacuten propia)

Figura 313 Ingresar contrasentildea de usuario root (Fuente Elaboracioacuten propia)

69

Paso siguiente se procede a seleccionar la zona horaria como se muestra en la Figura 314

donde se encuentra ubicado el cluacutester asiacute como un servidor de donde podraacute obtener la zona horaria

automaacuteticamente en este caso se dejoacute el valor por default

En el formulario de la Figura 315 se selecciona la forma de particionar el disco duro

(automaacutetica manual) una vez seleccionado daraacute comienzo al proceso de instalacioacuten de manera

Figura 314 Configuracioacuten horaria (Fuente Elaboracioacuten propia)

Figura 315 Particiones del disco duro (Fuente Elaboracioacuten propia)

70

desatendida Cuando ha concluido la instalacioacuten el equipo se reiniciaraacute y se requeriraacute iniciar con

el usuario root y la contrasentildea establecida previamente

321 Configuracioacuten del teclado Debido a que el teclado por defecto estaacute en idioma

ingleacutes podriacutea provocar problemas al momento de escribir la contrasentildea u otros comandos

Seguacuten las pruebas realizadas aunque se cambie la configuracioacuten del teclado desde el menuacute

de preferencias uacutenicamente se mantiene dentro de la sesioacuten desde la que se ha cambiado dicha

opcioacuten (lo cual implica que la contrasentildea de usuario hay que introducirla seguacuten la distribucioacuten

inglesa)

33 Instalacioacuten de los nodos

Previo a la instalacioacuten de los nodos esclavos cada uno de los equipos fueron configurados

desde la Bios para que arranquen desde la red (seccioacuten 3122) Para ir antildeadiendo los nodos solo

se tiene que introducir el siguiente comando desde nuestro FrontEnd

$insert-ethers

A continuacioacuten como se muestra en la Figura 316 apareceraacute una ventana en la pantalla

en la cual se seleccionaraacute la opcioacuten ldquoComputerdquo

71

Una vez realizado este paso se procede a encender los equipos que funcionaraacuten como

nodos esclavos uno a uno

Se sugiere esperar a que cada nuevo equipo encendido esteacute marcado con un asterisco antes

de proceder a encender el siguiente como se muestra en la Figura 317 De esta manera se asegura

que cada nuevo nodo antildeadido posea el nombre y numeracioacuten deseada

Figura 316 Pantalla para ingresar nodos (Fuente Elaboracioacuten propia)

Figura 317 Indicador de insercioacuten de nuevos nodos (Fuente Elaboracioacuten propia)

72

Puede darse el caso de que un nodo no sea detectado automaacuteticamente eso indica que se

ha omitido alguacuten paso o parte de la configuracioacuten realizada hasta el momento es incorrecta En ese

caso comprobar lo siguiente

Que el nodo esclavo este correctamente conectado a la red interna

Que el FrontEnd (nodo maestro) tenga correctamente configurada la red interna y externa

Que el PXE esteacute habilitado en la Bios del nodo esclavo

331 Administracioacuten de nodos Algunos de los comandos maacutes uacutetiles para para la gestioacuten

de los nodos son los siguientes

Eliminar un nodo de la lista

Reinstalar un nodo

Listar los nodos ya instalados

Acceder a un nodo

$rocks remove host nombre_nodo

$rocks remove host nombre_nodo

$rocks set host boot nombre_nodo action=install

$rocks set host boot nombre_nodo action=install

$rocks list host

$rocks list host

$ssh nombre_nodo

$ssh nombre_nodo

73

Ejecutar un comando de manera remota a un nodo

332 Creacioacuten de cuentas de usuario Para agregar a un usuario hay que realizar los

siguientes pasos

1 Creacioacuten de la cuenta

$useradd nombre_usuario

2 Asignacioacuten de una contrasentildea

$passwd nombre_usuario

3 Sincronizacioacuten de la cuenta de usuario con el resto de nodos

$rocks-user-sync

333 Configuracioacuten del directorio compartido El directorio share es compartido por el

FrontEnd y el resto de nodos se localiza dentro del FrontEnd en la carpeta exports siendo la

carpeta share un enlace simboacutelico a esta uacuteltima

Al principio es posible que no se sincronicen correctamente los archivos introducidos en el

directorio debido a que la carpeta inicialmente estaacute vaciacutea por lo que para solucionar este

inconveniente puede usarse el comando siguiente para reiniciar dicho servicio

$ssh nombre_nodo lsquocomandorsquo

$ssh nombre_nodo lsquocomandorsquo

$cd

$export fs ndashrv

service nfs restart

$cd

$export fs ndashrv

service nfs restart

74

34 Operaciones baacutesicas de Rocks

Comandos y aplicaciones esenciales para el manejo del cluacutester

Ver que rolls estaacuten instalados

$rocks list roll

Visualizar el estado del sistema Figura 318

$qstat ndashf

Probar el sistema de colas para distribuir tareas a los nodos

Para ello se prueba que el SGE del cluacutester funcione enviaacutendole una serie de trabajos

mediante el comando qsub

En primer lugar se crea un fichero (pruebapl) que tenga permisos de ejecucioacuten con el

siguiente contenido

Figura 318 Comando qstat ndashf (Fuente Elaboracioacuten propia)

75

usrbinperl

for(my $i=0$ilt30$i++) sleep(2) print okn

Y se ejecuta con el siguiente comando

$ for ((i=1ilt=10i+=1)) do qsub pruebapl done

Al ejecutarse se puede comprobar que los trabajos se han mandado Figura 319

Y al realizar de nuevo un ldquoqstat ndashfrdquo Figura 320 se observa coacutemo se van realizando

Figura 319 Enviacuteo de trabajos por medio del comando qsub (Fuente Elaboracioacuten propia)

Figura 320 Estado de los trabajos pendientes mostrados por qstat ndashf (Fuente Elaboracioacuten propia)

76

Para ver la carga de trabajo en el cluacutester de manera global y de forma graacutefica se tiene que

ingresar en un navegador web en la siguiente direccioacuten httplocalhostganglia apareceraacute la

Figura 321

Figura 321 Visualizacioacuten de la distribucioacuten de cargas en el cluacutester usando la herramienta Ganglia (Fuente Elaboracioacuten propia)

77

Capiacutetulo 4 Metodologiacutea y Resultados

Una vez finalizada la instalacioacuten y puesta en operacioacuten del equipo se analizaron diferentes

metodologiacuteas de trabajo lo que implicoacute un trabajo arduo debido a que existen complicaciones

cuando se buscan temas relacionados a vulnerar sistemas operativos La realizacioacuten de este

proyecto estaacute basado en la metodologiacutea de Joshua Picolet ldquoCracking Methodologyrdquo (Picolet

2017)

41 Obtener Archivo hash

Se pueden vulnerar contrasentildeas de Windows de diferentes maneras Una de ellas es

mediante el acceso al archivo del Administrador de cuentas de seguridad (SAM) el cual se detalla

en el apartado 253 a traveacutes de la obtencioacuten de las contrasentildeas del sistema en su forma hash por

medio de herramientas diferentes Alternativamente las contrasentildeas se pueden leer desde la

memoria lo que tiene el beneficio adicional de recuperar las contrasentildeas en texto plano y evitar el

requisito de descifrado Para comprender los formatos que se observan cuando se descarguen

hashes del sistema de Windows se requiere una breve descripcioacuten de los diferentes formatos de

almacenamiento

Originalmente las contrasentildeas de Windows de menos de 15 caracteres se almacenaban en

el formato hash de Lan Manager (LM) Algunos sistemas operativos como Windows 2000 XP y

Server 2003 continuacutean usando estos hashes a menos que esteacuten deshabilitados por el usuario

Ocasionalmente un sistema operativo como Windows Vista puede almacenar el hash LM para la

compatibilidad con otros sistemas Seguacuten analistas incluye varias vulnerabilidades como dividir

78

la contrasentildea en dos bloques y permitir que cada uno se descifre de forma independiente Mediante

el uso de tablas Rainbow es trivial descifrar una contrasentildea almacenada en un hash LM

independientemente de la complejidad Este hash se almacena con la misma contrasentildea calculada

en el formato de hash NT como el que se muestra en el siguiente ejemplo

Ejemplo de un hash NTLM con el componente LM y NT

Administrator500611D6F6E763B902934544489FCC9192BB71ED1E7F2B60ED5A2

EDD28379D45C91

Los sistemas operativos Windows maacutes recientes como el Windows 8 y 10 usan el hash NT

En teacuterminos simples no hay una debilidad significativa en este hash que lo diferencie de cualquier

otra funcioacuten hash criptograacutefica Se requieren meacutetodos de descifrado como lo es la fuerza bruta o

ataque de diccionario para recuperar la contrasentildea si uacutenicamente se almacena en el formato NT

Ejemplo de un hash NTLM uacutenicamente con el componente NT (como se ve en los sistemas

Windows mas recientes

Administrator500NOPASSWORDEC054D40119570A4663

4350291AF0F72

Es importante sentildealar que la cadena NO PASSWORD es variable seguacuten la herramienta

que se utilice Otras pueden presentar esta informacioacuten como ceros rellenos o comuacutenmente puede

79

ver la cadena ldquoAAD3B435B51404EEAAD3B435B51404EErdquo en lugar de ninguna contrasentildea

Esto significa que el hash LM estaacute vaciacuteo y no estaacute almacenado

El archivo hash se encuentran en el directorio ldquoWindows System32 configrdquo y se

necesitan ambos archivos SAM y SYSTEM Ademaacutes tambieacuten se encuentran en el archivo de

registro HKEY_LOCAL_MACHINE SAM al que no se puede acceder durante el tiempo de

ejecucioacuten Finalmente las copias de seguridad se pueden encontrar a menudo en ldquoWindows

Repairrdquo (Peleus 2019)

Para extraer el archivo hash de un sistema operativo con un nivel de seguridad C1 existen

diferentes meacutetodos en esta ocasioacuten se procederaacute a iniciar el equipo objetivo con una distribucioacuten

de Linux desde una memoria USB como se muestra en la figura 41 para de esta manera ingresar

al directorio CWINDOWSSystem32Config directorio de ubicacioacuten de los archivos SAM y

SYSTEM que son los necesarios para obtener el archivo hash (Caballero 2018)

Figura 41 Arranque con LiveUSB KaliLinux (Fuente Elaboracioacuten propia)

80

42 Dar Formato al Hash

En este punto es donde se tiene que identificar el algoritmo con el que fueron encriptados

los archivos SAM y SYSTEM que se han obtenido en el punto anterior con la finalidad de

seleccionar el tratamiento que se les daraacute El algoritmo de encriptacioacuten del archivo SAM de

Windows 10 es NTLM y ademaacutes estaacute almacenado en un formato binario (ByteBleeder 2017) por

lo que fue necesario instalar la herramienta con licencia GNU samdump2 para obtener la syskey y

de esta manera poder extraer los hash desde el archivo SAM de Windows

En la figura 42 se han obtenido los hashes del archivo SAM donde se puede observar que

los usuarios Administrador e Invitado estaacuten deshabilitados ademaacutes de que existen tres cuentas de

usuario activas las cuales son Gad prueba y usuarioprueba cada una con su contrasentildea cifrada

en formato NTLM a la derecha del nombre de usuario la cuenta usuarioprueba fue a la que se le

realizoacute el anaacutelisis que se detalla posteriormente

43 Evaluar la fuerza del Hash

En criptografiacutea se dice que un algoritmo criptograacutefico se rompe si por alguacuten meacutetodo se

consigue reducir su fortaleza es decir reducir por ejemplo su entropiacutea de los 2256 bits teoacutericos a

Figura 42 Resultado de la ejecucioacuten de la herramienta samdump2 (Fuente Elaboracioacuten propia)

81

tan soacutelo 2255 por ejemplo El hecho de que se encuentre una colisioacuten no implica necesariamente

que un algoritmo se haya roto pues podriacutea haber sido realizado mediante fuerza bruta pero puede

ser una causa

Un ataque de colisioacuten significa que encuentro dos entradas diferentes que producen el

mismo resultado de un hash particular Este es generalmente el tipo de ataque maacutes faacutecil Es el tipo

de ataque que se conoce desde hace varios antildeos contra MD5

Dado que una utilidad importante de las funciones hash estaacute en las firmas digitales

encontrar colisiones puede facilitar falsificar firmas digitales Es decir dos mensajes distintos que

tengan un mismo resumen tienen ademaacutes la misma firma y un atacante puede reemplazar un

mensaje por el otro Un ejemplo de este ataque fue demostrado en 2008 por un grupo de

investigadores en Aacutemsterdam los cuales falsificaron un certificado raiacutez mediante el uso de un

ataque de colisioacuten contra el algoritmo MD5 (Preukschat 2015)

Un ataque previo a la imagen generalmente es mucho maacutes difiacutecil es encontrar otra entrada

que produzca el mismo resultado que un hash que ya se conoce

Para tratar de aclarar la diferencia aquiacute en un ataque de colisioacuten encuentro dos entradas A

y B que producen el mismo resultado En un ataque de preimagen comienzo a partir de alguacuten

resultado conocido X y encuentro una entrada que produciraacute X como resultado (Coffin 2015)

82

Para realizar esta evaluacioacuten se tomoacute como base la tabla del apeacutendice Hash craking

benchmark (Picolet 2017) el objetivo es observar el comportamiento y velocidad del Hash

mencionado cuando fue sometido a pruebas de criptoanaacutelisis Si se trata de un Hash lento se deberaacute

ser maacutes selectivo en queacute tipos de diccionarios y meacutetodos de criptoanaacutelisis se le debe aplicar Si es

un Hash raacutepido se puede ser maacutes libre con la estrategia de criptoanaacutelisis Este estudio busca

realizar una prueba de criptoanaacutelisis mostrando las diferencias entre el poder de procesamiento de

un cluacutester de 17 nodos contra una computadora personal por lo que no necesariamente se

implementaraacute el meacutetodo oacuteptimo para la realizacioacuten del criptoanaacutelisis

44 Calcular la capacidad del equipo

Con la informacioacuten de la evaluacioacuten de la fuerza del Hash obtenida en el apartado anterior en

este apartado se tiene que establecer la capacidad de la plataforma o plataformas que realizaraacuten

el criptoanaacutelisis

Para conocer la capacidad de procesamiento del cluacutester de alto rendimiento se utilizoacute la

herramienta Linpack Benchmark HPL es una implementacioacuten portaacutetil del Benchmark de alto

rendimiento LINPACK para equipos de coacutemputo distribuido Actualmente se utiliza para obtener

varios resultados en la lista actual de Top500 de HP cluacutesters (Dongarra 2010)

El Linpack Benchmark (HPL del Ingleacutes High-Performance Linpack Bench-mark) es un

software que resuelve un sistema lineal aleatorio de doble precisioacuten aritmeacutetica (64 bits) en equipos

de memoria distribuida El rendimiento muestra el nuacutemero de operaciones de punto flotante por

segundo logradas por el sistema (Petitet Whaley Dongarra amp Cleary 2008)

83

El HPL fue desarrollado en el Argone National Laboratory por Jack Don-garra en 1976 y

es uno de los maacutes usados en sistemas cientiacuteficos y de ingenieriacutea para el caacutelculo de prestaciones

Las principales caracteriacutesticas del algoritmo utilizado por el HPL son

Distribucioacuten ciacuteclica de datos de bloques de dos dimensiones

Variante derecha de la factorizacioacuten LU con pivoteo parcial (Teacutecnica de pivoteo

Dicta que el elemento pivote que debe escogerse es el mayor absolutamente de cada

columna)

Factorizacioacuten recursiva con pivoteo y reenviacuteo de columna

Distintas topologiacuteas virtuales de reenviacuteos

Algoritmo de reduccioacuten de reenviacuteo para ancho de banda (Castelloacute Gimeno 2014)

La resolucioacuten del sistema de ecuaciones se realiza del siguiente modo

1 Se crea un sistema de ecuaciones

(1)

119860119909 = 119887

(2)

119860 isin 119877119899119909119899

(3)

119909 119887 isin 119877119899

84

HPL calcula que la solucioacuten para un sistema de ecuaciones lineales se puede generalizar

como 119860119909 = 119887 donde 119860 es una matriz 119873 119909 119873 cuyos valores se generan aleatoriamente

119909 119910 119887 son vectores de tamantildeo 119873 Como se muestra en la Figura 43

2 Primero se calcula la factorizacioacuten 119871119880 con pivoteo parcial de los coeficientes 119899 y 119899 + 1

de la matriz [119860 119887]

(4)

119875119903[119860 119887] = [[119871119880] 119910]

(5)

119875119903 119871 119880 isin 119877119899119909119899

(6)

119910 isin 119877119899

El primer paso es la factorizacioacuten de la matriz 119860 en una matriz triangular superior 119880

y una matriz triangular inferior 119871 tal que 119860 = 119871119880 La factorizacioacuten se usa para calcular

el vector solucioacuten 119909

3 Una vez el pivoteo (representado por la permutacioacuten de la matriz 119875119903) y la factorizacioacuten

inferior se aplican sobre 119887 la solucioacuten se obtiene en un paso resolviendo el sistema

superior triangular

Figura 43 Sistema de Ecuaciones tipo 119860119909 = 119887 (Fuente Elaboracioacuten propia)

85

(7)

119880119909 = 119910

La matriz triangular inferior izquierda y el conjunto de pivotes no se devuelven en el

resultado Para la estabilidad numeacuterica el algoritmo de factorizacioacuten utiliza un pivote parcial de

fila

La implementacioacuten paralela de Linpack divide la matriz 119860 119873 119909 119873 en una cuadriacutecula de

procesos 119875 119909 119876 bidimensional y luego la divide en subgrupos de mosaicos 119873119861 119909 119873119861 (Petitet

Whaley Dongarra amp Cleary 2008)

Utilizando la herramienta HPL en esta investigacioacuten se obtuvieron los siguientes

resultados

La prueba abordoacute el ajuste de 119873 y la eficiencia obtenida en comparacioacuten con el rendimiento

maacuteximo Se determinoacute un valor para 119873 = 800000 aleatoriamente para ejecutar HPL en todo el

cluacutester Sin embargo el tiempo fue excesivo por lo tanto se determinoacute que este tamantildeo del

problema fue demasiado grande para el cluacutester Al realizar otros experimentos con valores maacutes

pequentildeos de 119873 se obtuvieron mejores resultados de rendimiento La Tabla 41 muestra el

rendimiento de HPL en GFlops para 119873 = 300000 400000 y 500000 Como se puede observar

en la Tabla 41 se obtuvo el mejor resultado de rendimiento 850 GFlops para 119873 = 500000 para

valores mayores de 119873 la distribucioacuten de cargas del cluacutester empieza a sobrepasar su capacidad como

se muestra en la Figura 44 y la vez su rendimiento disminuye Esto ocurre porque la cantidad de

memoria utilizada con las memorias intermedias de comunicacioacuten MPI es mayor de lo esperado

Por lo tanto es necesario dejar maacutes del 20 de la memoria para el sistema (Petitet Whaley

86

Dongarra amp Cleary 2008) Tambieacuten se realizaron pruebas usando solo un nodo de coacutemputo y el

rendimiento fue de 34 GFlops para 119873 = 20000

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia)

Analizando la eficiencia obtenida para la ejecucioacuten de un solo nodo cuando 119873 = 20000

se obtuvo el 823 del rendimiento maacuteximo (el rendimiento maacuteximo para un solo nodo es 477

Gflops) Para todo el cluacutester el rendimiento maacuteximo seriacutea 119879119898119886119909 = 477 119909 17 =

8109 119866119891119897119900119901119904 aproximadamente

Figura 44 Distribucioacuten de cargas del cluacutester

0

500

1000

300000 400000 500000

Gflops

Gflops

87

La Figura 44 titulada ldquoDistribucioacuten de cargas del cluacutesterrdquo muestra la imagen de la

herramienta Ganglia de manera graacutefica a traveacutes de cuadros que variacutean de color dependiendo de la

carga que tenga cada uno de los nodos al momento de implementar la herramienta HPL De manera

inicial indica que el cluacutester tiene un total de 17 equipos de 4 cores cada uno eso da un total de 68

cores trabajando sin equipos inactivos Muestra tambieacuten una sobrecarga en el cluacutester y un

porcentaje promedio de 100 de uso en la uacuteltima hora

45 Establecer Estrategia

Esto significa uacutenicamente que en este apartado se realizaraacute una guiacutea baacutesica para procesar

los hashes obtenidos sin perder de vista que cada escenario a criptoanalizar es uacutenico en funcioacuten

de las circunstancias externas Como ya se ha mencionado anteriormente esta estrategia de

criptoanaacutelisis se ha planteado implementar dos meacutetodos los cuales son Fuerza Bruta y ataque de

diccionario sin importar si son o no los oacuteptimos debido a que se realizaraacute una comparativa de

capacidad de procesamiento

451 Fuerza Bruta Una vez que se han intentado varios meacutetodos y han fallado se puede

iniciar un ataque de fuerza bruta estaacutendar poniendo especial atencioacuten en la cantidad de siacutembolos

del alfabeto que puede usar el equipo a analizar Por encima de 8 caracteres esto generalmente no

tiene sentido debido a limitaciones de hardware y entropiacutea (complejidad de la contrasentildea) Una

contrasentildea de Windows seguacuten Microsoft (Microsoft Inc 2019) una contrasentildea de Windows debe

estaacute formada por

88

26 Caracteres mayuacutesculas de la ldquoArdquo a la ldquoZrdquo

26 Caracteres minuacutesculas de la ldquoardquo a la ldquozrdquo

10 Diacutegitos de base 10 (0 a 9)

32 Caracteres especiales (~$^amp_-+=|()[]ltgt)

94 Caracteres alfanumeacutericos en total

4511 Cantidad de combinaciones posibles Si se usa una clave numeacuterica (nuacutemeros del 0

al 9) existen 10 posibilidades de 4 diacutegitos de longitud que es la extensioacuten por defecto de los

teleacutefonos celulares Para 4 diacutegitos las combinaciones posibles seriacutean 10 mil 104 = 10000

(Labaca Castro 2014)

Por otro lado si tomamos un alfabeto de 26 letras mayuacutesculas y 26 minuacutesculas 10 nuacutemeros

y 10 caracteres especiales en total tenemos 72 diferentes posibilidades para un uacutenico caraacutecter Eso

significa que las combinaciones para una contrasentildea de 4 caracteres seriacutean 724 = 26873856

Baacutesicamente maacutes de 26 millones de combinaciones en una clave de 4 caracteres contra 10 mil en

una clave de 4 diacutegitos numeacutericos En este estudio se utiliza la contrasentildea de bloqueo descrita en el

apartado anterior que es de 94 combinaciones para cada caraacutecter teniendo una longitud de 7

caracteres por lo tanto seraacuten 947 = 64847759000000 de posibles combinaciones que

nuestros equipos deben explorar para obtener la contrasentildea correcta

Como se mencionoacute en el apartado 42 el usuario sobre el cual se realizoacute el criptoanaacutelisis

fue usuarioprueba el cual constaba de una contrasentildea de longitud 7 caracteres la cual despueacutes

de realizado el anaacutelisis y como se puede observar en la Figura 45

89

1 Anaacutelisis a usuario usuarioprueba

2 Nuacutemero de nodos en operacioacuten 17

3 Nuacutemero de procesos ejecutaacutendose de forma paralela 68

4 Tiempo de duracioacuten del anaacutelisis en el cluacutester 122727 horas

5 Contrasentildea criptoanalizada Pass7

Asiacute mismo en la Tabla 42 se muestra el resultado final y el tiempo de duracioacuten del

criptoanaacutelisis realizado al archivo SAM con el cluacutester y la computadora personal

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Horas)

1 (PC) 4 1075316

17 (Cluacutester) 68 122727

1

2

3

4 5

Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester (Fuente Elaboracioacuten propia)

90

452 Diccionario Meacutetodo empleado para romper la seguridad de los sistemas basados en

contrasentildeas (password) en la que el atacante intenta dar con la clave adecuada probando todas (o

casi todas) las palabras posibles ingresadas previamente en un diccionario idiomaacutetico

Generalmente se emplean programas especiales que se encargan de ello

Este meacutetodo suele ser maacutes eficiente que el meacutetodo de fuerza bruta debido a que muchas

usuarios casi siempre suelen utilizar contrasentildeas con una o varias palabras existentes en su lengua

para que la contrasentildea no sea olvidada faacutecilmente y sea sencilla de recordar esto no es una praacutectica

recomendable (Alegsa 2018)

Para realizar este meacutetodo se utilizoacute un diccionario descargado de internet el cual contiene

10000000 de posibles contrasentildeas (g0tmi1k 2018)

Ademaacutes se ejecutoacute un programa creado en lenguaje C (Anexo 1) a traveacutes de la

implementacioacuten de las libreriacuteas MPI y open MPI propias de la arquitectura de cluacutester de

computadoras Este programa fue ejecutado en los mismos equipos descritos anteriormente para

obtener todos los nuacutemeros primos encontrados dentro de un intervalo dado En este caso el

intervalo dado fue de 10000000 con los siguientes resultados mostrados en la Tabla 43

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos (Fuente Elaboracioacuten

propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Segs)

1 (PC) 4 5078

17 (Cluacutester) 68 00013

91

453 Analizar los resultados Posterior a realizar el criptoanaacutelisis y descifrar con eacutexito

una cantidad suficiente de hashes se analizan los resultados en busca de pistas o patrones Este

anaacutelisis puede ayudar a tener eacutexito en cualquier hash restante

454 Personalizar ataques Tomando como base el anaacutelisis de resultados realizado

previamente se disentildearaacuten diversas estrategias personalizadas que aprovechen las vulnerabilidades

conocidas o patrones Los ejemplos seriacutean ataques de maacutescara personalizados o reglas para

adaptarse al comportamiento o las preferencias del usuario objetivo

92

Conclusioacuten

El trabajo de investigacioacuten presentado parte de la necesidad de buscar alternativas para

explotar al maacuteximo la capacidad de procesamiento del equipo de coacutemputo que existe actualmente

dentro del inventario del Instituto Tecnoloacutegico de Acapulco asiacute como proveer una plataforma que

coadyuve a la investigacioacuten dentro del Instituto a traveacutes de implementar un cluacutester de coacutemputo

con capacidad para realizar proyectos en el aacuterea de ingenieriacutea y matemaacuteticas con el fin de optimizar

el tiempo de ejecucioacuten lo cual en un futuro se veraacute reflejado en ventajas para el desarrollo de la

regioacuten

La revisioacuten y anaacutelisis de informacioacuten en relacioacuten a cluacutesters es muy interesante pero a la

vez es compleja dado que involucra diferentes aspectos durante su evolucioacuten asiacute como diversas

metodologiacuteas para su formacioacuten e implementacioacuten Se considera de suma importancia para este

trabajo las revisiones efectuadas ya que son la base para la propuesta entregada

De acuerdo a las especificaciones teacutecnicas de los equipos informaacuteticos existentes dentro

del laboratorio de la Maestriacutea en Sistemas Computacionales y una vez que se realizoacute el anaacutelisis

de varios casos de eacutexito se propuso la metodologiacutea para implementacioacuten de un cluacutester homogeacuteneo

tipo Beowolf Este meacutetodo estaacute basado en otros que ya se han implementado bajo realidades

acadeacutemicas similares rescatando las etapas maacutes importantes de cada uno y complementaacutendolo con

los aportes personales se consideroacute que fue el oacuteptimo debido a que se implementoacute con hardware

convencional y herramientas de uso libre

93

El hecho de haber seleccionado un meacutetodo adecuado permitioacute superar gran parte los

problemas que presentaban las metodologiacuteas que fueron analizadas simplificoacute la implementacioacuten

del cluacutester y permitioacute el poder alcanzar una mayor estabilidad en su desempentildeo desde su etapa

inicial fue importante conocer el resultado en cada una de las etapas de implementacioacuten para

asegurar su desenvolvimiento en el futuro

Para integrar los equipos independientes a la arquitectura cluacutester se realizoacute el disentildeo de

una topologiacutea de red Gigabit Ethernet tipo estrella con un direccionamiento IP estaacutetico la

configuracioacuten de protocolos de comunicacioacuten remota sin autenticacioacuten la comparticioacuten de

archivos en red y la utilizacioacuten de aplicaciones de licencia GPL que permiten obtener el

funcionamiento similar a la de una supercomputadora

Haciendo uso de libreriacuteas de paso de mensajes (MPI) y el software John the Ripper para el

descifrado de contrasentildeas la arquitectura cluacutester implementada alcanzoacute una eficiencia de 885

de rendimiento en comparacioacuten con los recursos computacionales de un solo equipo con las

caracteriacutesticas de un nodo Ademaacutes otros de los proyectos ejecutados en la arquitectura cluacutester

para probar el rendimiento fue la ejecucioacuten de un programa para la deteccioacuten de nuacutemeros primos

dentro de un archivo de 10000000 de nuacutemeros obteniendo una eficiencia de maacutes de 99 gracias

a la distribucioacuten de tareas que proporcionan las libreriacuteas de paso de mensajes (MPI) dentro de la

arquitectura cluacutester

Con la implementacioacuten de la arquitectura cluacutester el laboratorio de la Maestriacutea en Sistemas

Computacionales podraacute dar soluciones potentes eficientes y econoacutemicas en los entornos de

94

investigacioacuten mejorando la capacidad de procesamiento en aplicaciones como evaluacioacuten de

algoritmos compresioacuten de archivos renderizacioacuten de imaacutegenes anaacutelisis de datos (big data) en un

tiempo relativamente bajo ideal para las necesidades educativas

La experiencia obtenida al realizar esta investigacioacuten y propuesta ha sido enriquecedora

tanto por la obtencioacuten de conocimiento en base a la historia evolucioacuten y arquitectura de cluacutesters

asiacute como la programacioacuten paralela y sus ventajas en diferentes proyectos desarrollados en todo el

mundo Igualmente la comparacioacuten entre cada uno de los modelos y meacutetodos resulta interesante

dado que existe un sinnuacutemero de ejemplos con caracteriacutesticas diferentes pero baacutesicamente con un

mismo objetivo final

Trabajo Futuro

El cluacutester implementado en el Laboratorio de la Maestriacutea en Sistemas computacionales del

Instituto Tecnoloacutegico de Acapulco puede ser utilizado en gran cantidad de aplicaciones dentro de

las diferentes aacutereas de investigacioacuten del Instituto asiacute como estar disponible para el Departamento

de Posgrado e Investigacioacuten como apoyo durante la realizacioacuten de tareas y proyectos dentro de las

aacutereas de Desarrollo de Sistemas Inteligentes asiacute como de Tecnologiacuteas Web

Propuesta de Trabajo a Futuro

Durante la realizacioacuten de este proyecto se observoacute la necesidad que existe dentro del

departamento de Investigacioacuten y Posgrado de equipos de alta capacidad de procesamiento para

realizar de una manera maacutes eficiente las investigaciones que se estaacuten llevando a cabo Una de ellas

es el ldquoSistema de apoyo al diagnoacutestico oportuno de Retinopatiacutea Diabeacuteticardquo en la cual a traveacutes del

entrenamiento de una red neuronal se clasificaraacuten y evaluaraacuten un nuacutemero de 3000 imaacutegenes para

95

demostrar la presencia de dicha enfermedad en pacientes del Instituto Estatal de Oftalmologiacutea

Actualmente se ha realizado una prueba de entrenamiento de dicha red neuronal con 70 imaacutegenes

obteniendo como resultado un tiempo clasificacioacuten y evaluacioacuten de 301532 horas en un equipo

con un procesador Core I7 con 8 GB en memoria RAM

96

Bibliografiacutea

Alegsa (01 de 01 de 2018) Alegsa Diccionario Informaacutetico Recuperado el 07 de 2019 de

Alegsa httpwwwalegsacomarDicataque_por_diccionariophp

Avecto (2017) Avecto Limited Recuperado el 10 de 08 de 2018 de AVECTO a Bomgar

Company wwwavectocom

Borghello C (2009) Seguridad de la Informacioacuten Recuperado el 11 de 2018 de Criptografiacutea de

la A-Z httpswwwsegu-infocomarproyectosp1_hashhtm

Branch Bedoya J amp Mesa Muacutenera A (Diciembre de 2008) Implementacioacuten de un cluster

homogeacuteneo para la resolucioacuten de problemas de alta complejidad computacional Avances

en Sistemas e Informaacutetica 5(3)

ByteBleeder (02 de 06 de 2017) Practical guide to NTLM Relaying in 2017 Obtenido de Github

httpsbyt3bl33d3rgithubiopractical-guide-to-ntlm-relaying-in-2017-aka-getting-a-

foothold-in-under-5-minuteshtml

Caballero A (26 de 06 de 2018) Hacking Eacutetico Recuperado el 03 de 2019 de John The Ripper

httpwwwreydescomdq=Recuperar_la_Contrasena_del_Administrador_utilizando_s

amdump2_y_John_The_Ripper

Carretero Peacuterez J de Miguel Anasagasti P Garciacutea Carballeira F amp Peacuterez Costoya F (2001)

Sistemas Operativos Una visioacuten aplicada (C F Madrid Ed) Madrid Espantildea

McGRAW-HillInteramericana

Castelloacute Gimeno A (30 de 07 de 2014) Universitat Jaume Recuperado el 10 de 2019 de

Evaluacioacuten de prestaciones mediante laaplicacioacuten HPL de clusters utilizandorCUDA

97

httprepositoriujiesxmluibitstreamhandle10234115082TFM_2014_CastelloGimen

oApdfsequence=1ampisAllowed=y

Chaacutevez J Echeverriacutea C Correa M Vaacutezquez E Suaacuterez M Maacutermol X Diacuteaz G (07 de

1999) Centro de Caacutelculo Cientiacutefico Recuperado el 01 de 05 de 2018 de Universidad de

Los Andes httpwwwcecalculavedocumentaciontutorialesbeowulfinformehtml

Chirinov R (2003) Nfinite9000 SL Recuperado el 26 de 04 de 2018 de Noticias 3D

httpswwwnoticias3dcomarticuloaspidarticulo=248amppag=4

Coffin J (23 de 07 de 2015) Quora Recuperado el 15 de 08 de 2019 de

httpswwwquoracomWhat-does-it-mean-when-a-hashing-algorithm-has-been-broken

Dongarra J (2010) Top500 Super computer sites Recuperado el 07 de 2019 de http

wwwtop500org

Educba (01 de 01 de 2019) Recuperado el 10 de 2019 de Educbaorg

httpswwweducbacomidea-algorithm

europa press (04 de 06 de 2013) Portal Tic Recuperado el 18 de 11 de 2018 de Europa Press

httpswwweuropapressesportalticgadgetsnoticia-cuarta-generacion-intel-core-mayor-

salto-cuanto-ahorro-energetico-20130604174722html

g0tmi1k (2018) github Recuperado el 05 de 2019 de github

httpsgithubcomdanielmiesslerSecListsblobmasterPasswordsCommon-

Credentials10-million-password-list-top-1000000txt

Gonzaacutelez Agudelo D (2014) El riesgo y la falta de politicas de seguridad informaacutetica una

amenaza en las empresas certificadas basc Recuperado el 20 de 05 de 2018 de

Universidad Militar Nueva Granada

httpsrepositoryunimilitareducobitstream10654122511ENSAYO20FINALpdf

98

Gonzaacutelez Ramiacuterez E amp Rodriacuteguez Saacutenchez A (2008) Disentildeo e implementacioacuten de un cluster

tipo BEOWULF para el desarrollo de coacutemputo cientiacutefico avanzado CdMx Mexico

Hernandez M (2013) Forensics Mexico Recuperado el 07 de 2018 de La importancia del

registro de Windows parte 1 httpforensicsmexicoblogspotcom201309la-

importancia-del-registro-de-windowshtml

Kowalczyk C (01 de 2015) Crypto-IT Recuperado el 11 de 2018 de Crypto-IT

httpwwwcrypto-itnetengasymmetricindexhtml

Labaca Castro R (13 de 06 de 2014) We live security Recuperado el 2019 de 08 de 07 de

Welivesecuritybyeset httpswwwwelivesecuritycomla-es20140613matematica-

claves-numerica-alfanumerica

Lizaacuterraga C (2002) Departamento de Fiacutesica Recuperado el 12 de 03 de 2018 de Universidad

de Sonora httpclustersfisicausonmx

Llorens E amp Pentildea M (2002) Recuperado el 04 de 2018 de Departament dArquitectura de

Computadors httppersonalsacupceduenricPFCBeowulfbeowulfhtml

Meneacutendez-Barzanallana R (07 de 08 de 17) Universidad de Murcia Recuperado el 11 de 2018

de Informaacutetica Aplicada a las Ciencias Sociales

httpswwwumesdocenciabarzanaIACCSSCriptografiahtml

Merkle R amp Damgaringrd I (sf) Numerenturorg Recuperado el 06 de 2019 de Para computar -

numerenturorg httpnumerenturorgfuncion-merkle-damgard

Microsoft Inc (02 de 05 de 2019) wwwmicrosoftcom Obtenido de Password must meet

complexity requirements httpsdocsmicrosoftcomes-eswindowssecuritythreat-

protectionsecurity-policy-settingspassword-must-meet-complexity-requirements

99

Mifsud E (26 de 03 de 2012) Introduccioacuten a la seguridad informaacutetica Recuperado el 07 de 05

de 2018 de Ministerio de educacioacuten cultura y deportes Gobierno de Espantildea

httprecursosticeducacionesobservatoriowebessoftwaresoftware-general1040-

introduccion-a-la-seguridad-informaticashowall=1

Murugesan S (01 de 02 de 2008) Researchgate doi101109MITP200810

Nahar K amp Abu Abbas O (01 de 2010) Researchgate Recuperado el 07 de 2019 de

Researchgate

httpswwwresearchgatenetpublication315492522_Hybrid_Cipher_System

Nievas F Pino O amp Arroyo R (sf) Los clusters como Plataforma de Procesamiento Paralelo

Recuperado el 25 de 04 de 2018 de

httpusuarioslycoseslacaraocultadescargasClusters_definitivo pdf

Pawar S (2016) A computer science portal for geeks Recuperado el 10 de 2018 de

Geeksforgeeks httpswwwgeeksforgeeksorgrc5-encryption-algorithm

Peleus (2019) NETSEC Recuperado el 08 de 2019 de httpsnetsecwsp=314

Peacuterez Tavera I (2014) Obtenido de Universidad Autonoma del Estado de Hidalgo

httpswwwuaehedumxscigeboletinprepa4n2e4html

Peacuterez M (2001) Recuperado el 15 de 04 de 2018 de

httpwwwdragonesorgBibliotecaArticulosArquitecturaParalela2pdf

Petitet A Whaley R C Dongarra J amp Cleary A (2008) HPL - A Portable Implementation of

the High-Performance Linpack Benchmark for Distributed-Memory Computers

Recuperado el 07 de 2019 de httpwwwnetliborgbenchmarkhpl

Picolet J (2017) Hash Crack Password Cracking Manual (Vol 2) Createspace Independent

Pub

100

Preukschat A (23 de 02 de 2015) Oro y Finanzas Recuperado el 07 de 2019 de

httpswwworoyfinanzascom201502que-es-colision-criptografia-bitcoin

Robbins D (2008) OpenMosix Recuperado el 22 de 04 de 2018 de the openMosix Project

httpopenmosixsourceforgenetintroduction_to_openmosixhtml

Rocha Quezada J d Botello Rionda S Vargas Feacutelix J M amp Munguiacutea Torres I A (Sep-Dic

de 2011) Disentildeo e implementacioacuten de un cluacutester de coacutemputo de alto rendimiento Acta

Universitaria 21(3) 24-33 Recuperado el 1 de 12 de 2018

Rocksclusters (01 de 01 de 2010) httpwwwrocksclustersorg Recuperado el 01 de 06 de 2018

de httpwwwrocksclustersorg httpwwwrocksclustersorg

Sanjoy K (01 de 01 de 2015) DZone Recuperado el 15 de 06 de 2019 de DZone

httpsdzonecomarticlessecurity-algorithms-des-algorithm

Security Degree Hub (01 de 2017) Security Degree Hub Recuperado el 13 de 02 de 2019 de

Security Degree Hub httpswwwsecuritydegreehubcomwhat-is-cryptanalysis

Simmons G (01 de 01 de 2019) Encyclopedia Britannica Recuperado el 08 de 2019 de

Encyclopedia Britannica httpswwwbritannicacomtopicRSA-encryption

statista (09 de 2017) Statista Obtenido de Statista Co httpsesstatistacom

Turner D (2004) Recuperado el 12 de 02 de 2018 de Ames Lab

httpwwwsclameslabgovProjectsparrallel_computingpara_intohtml

United States Government Department of Defense (1983) Trusted Computer System Evaluation

Criteria Rainbow Series

Universidad Internacional de Valencia (09 de Septiembre de 2016) Nuestros

expertosTecnologiacutea Recuperado el 27 de Abril de 2018 de Universidad Internacional de

Valencia httpswwwuniversidadviuesla-seguridad-informatica-puede-ayudarme

101

Wallen J (19 de 01 de 2019) Lifewire Recuperado el 13 de 06 de 2019 de Lifewire

httpswwwlifewirecomgnome-3-desktop-4175640

Yang H (01 de 02 de 2019) Herong Yang Recuperado el 15 de 06 de 2019 de Cryptography

Tutorials httpwwwherongyangcomCryptographyDSA-Introduction-What-Is-DSA-

Digital-Signature-Algorithmhtml

102

Anexo 1

Programa en Lenguaje C para la obtencioacuten de nuacutemeros primos utilizando libreriacuteas mpi

include ltcstdlibgt

include ltiostreamgt

include ltiomanipgt

include ltcmathgt

include ltctimegt

include mpih

using namespace std

int main ( int argc char argv[] )

int prime_number ( int n int id int p )

void timestamp ( )

int main ( int argc char argv[] )

int i

int id

int master = 0

int n

int n_factor

int n_hi

int n_lo

int p

int primes

int primes_part

double wtime

n_lo = 1

n_hi = 10000000

n_factor = 2

MPIInit ( argc argv )

p = MPICOMM_WORLDGet_size ( )

id = MPICOMM_WORLDGet_rank ( )

if ( id == master )

cout ltlt n

cout ltlt Cuenta primosn

cout ltlt C++MPI versionn

cout ltlt n

cout ltlt Programa para contar cantidad de primos para un N dadon

cout ltlt Corriendo en ltlt p ltlt procesosn

cout ltlt n

103

cout ltlt N S Tiempon

cout ltlt n

n = n_lo

while ( n lt= n_hi )

if ( id == master )

wtime = MPIWtime ( )

MPICOMM_WORLDBcast ( ampn 1 MPIINT master )

primes_part = prime_number ( n id p )

MPICOMM_WORLDReduce ( ampprimes_part ampprimes 1 MPIINT

MPISUM

master )

if ( id == master )

wtime = MPIWtime ( ) - wtime

cout ltlt ltlt setw(8) ltlt n

ltlt ltlt setw(8) ltlt primes

ltlt ltlt setw(14) ltlt wtime ltlt n

n = n n_factor

MPIFinalize ( )

if ( id == master )

cout ltlt n

cout ltlt PRIME_MPI - Procesos maestron

cout ltlt Finalizacion del calculo normaln

return 0

int prime_number ( int n int id int p )

int i

int j

int prime

int total

104

total = 0

for ( i = 2 + id i lt= n i = i + p )

prime = 1

for ( j = 2 j lt i j++ )

if ( ( i j ) == 0 )

prime = 0

break

total = total + prime

return total

void timestamp ( )

define TIME_SIZE 40

static char time_buffer[TIME_SIZE]

const struct tm tm

size_t len

time_t now

now = time ( NULL )

tm = localtime ( ampnow )

len = strftime ( time_buffer TIME_SIZE d B Y IMS p tm )

cout ltlt time_buffer ltlt n

return

undef TIME_SIZE

Page 2: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios

i

El presente trabajo de tesis fue desarrollado en la Divisioacuten de Estudios de Posgrado e

Investigacioacuten del Instituto Tecnoloacutegico de Acapulco perteneciente al Programa

Nacional de Posgrados de Calidad (PNPC-CONACYT)

Con domicilio para recibir y oiacuter notificaciones en Av Instituto Tecnoloacutegico de Acapulco sn

Crucero del Cayaco Acapulco Guerrero Meacutexico CP 39905

Becario Gaddiel Fredy Flores Arteaga

CVU 851420

Nuacutem de apoyo 627006 Grado Maestriacutea

ii

Descargo de Responsabilidad Institucional

El que suscribe declara que el presente documento titulado ldquoCriptoanaacutelisis a la funcioacuten

hash de un sistema operativo nivel C1 empleando un cluacutester HPC con software de uso librerdquo es un

trabajo propio y original el cuaacutel no ha sido utilizado anteriormente en institucioacuten alguna para

propoacutesitos de evaluacioacuten publicacioacuten yo obtencioacuten de alguacuten grado acadeacutemico

Ademaacutes se han recogido todas las fuentes de informacioacuten utilizadas las cuales han sido

citadas en la seccioacuten de referencias bibliograacutefica de este trabajo

Nombre Ing Gaddiel Fredy Flores Arteaga Fecha y firma

iii

Dedicatoria

Este logro se lo dedico a mi toda mi familia que incondicionalmente siempre estaacute ahiacute

cuando los necesito A mis Padres especialmente dedicado a mi Madre que es un ejemplo de

esfuerzo para miacute sabe el camino complicado que he tenido que pasar para poder llegar a este

gratificante momento y siempre ha tenido una palabra que me alienta a no desmallar y seguir

adelante

Dedicado tambieacuten para mi hermano Uriel porque sin saberlo y a la distancia su apoyo y

confianza han sido un pilar fundamental para poder llegar a este momento

Adrielito hijo te dedico este logro por tu paciencia porque seacute que has tenido que pasar

tiempo con Papaacute en la escuela en lugar de estar en casa descansando o jugando despueacutes de salir

de tus clases gracias por soportarlo te amo y espero ser un ejemplo de esfuerzo y perseverancia

para ti

Los amo a todos

iv

Agradecimientos

Agradezco primero y ante todo a Dios todo se lo debo a Eacutel por derramar sus

bendiciones sobre miacute por acompantildearme en cada paso que doy y haber fortalecido mi corazoacuten e

iluminado mi mente Gracias Padre

A mi familia que ha estado ahiacute siempre a mi lado en los momentos maacutes oscuros y

difiacuteciles creyendo en miacute impulsaacutendome para alcanzar mis metas

Al Consejo Nacional de Ciencia y Tecnologiacutea por haberme apoyado econoacutemicamente

para la realizacioacuten de este proyecto

A mi director de tesis el Dr Eduardo de la Cruz Gaacutemez por su tiempo por su paciencia

por los valiosos aportes criacuteticas comentarios y sugerencias que realizoacute durante este proyecto

Al Departamento de Posgrado e Investigacioacuten del Instituto Tecnoloacutegico de Acapulco asiacute

como a toda la plantilla docente de la cual me llevo conocimiento y experiencias

enriquecedoras que sin lugar a dudas marcaron mi vida profesional

A la segunda generacioacuten muchas gracias Abejorros sin el apoyo mutuo durante el

tiempo que pasamos en las aulas y durante el desarrollo de los proyectos tal vez no lo

hubieacuteramos logrado

v

Resumen

El presente trabajo inicia con una breve introduccioacuten sobre la importancia que tiene la

seguridad en cualquier aspecto de la vida y sobre todo en el aacuterea laboral especiacuteficamente en el

aacuterea informaacutetica Posteriormente resalta coacutemo la criptografiacutea ha estado presente en momentos

importantes de la vida del ser humano sobre todo dentro del aacutembito militar en la cual ha sido

fundamental para permitir comunicaciones seguras Actualmente la criptografiacutea estaacute dentro de

nuestro diario vivir cuando realizamos transacciones en internet de manera segura Como parte de

la investigacioacuten en este trabajo se describen los tipos de criptografiacutea y criptoanaacutelisis tambieacuten se

analizan los niveles de seguridad de sistemas operativos asiacute como los meacutetodos de agrupamiento

de computadoras para implementar con la ayuda de esta herramienta de una manera maacutes raacutepida

criptoanaacutelisis a un sistema operativo con un nivel de seguridad C1

Palabras clave cluacutester seguridad criptoanaacutelisis

vi

Abstract

This work begins with a review of the importance of security in any aspect of life and

especially in the workplace specifically in the computer area Later this work speaks briefly about

how cryptography has been present at important moments in the life of the human being especially

in the military field in which it has been fundamental to allow secure communications Currently

cryptography is inside our daily life when we conduct transactions on the internet in a secure

manner As part of the research in this work the types of cryptography and cryptanalysis are

described as well as the security levels of operating systems and above all the main methods of

computers clustering to implement a system with a faster method of cryptanalysis in an operative

system with a security level C1

Keywords cluster security cryptanalysis

vii

Iacutendice de Contenido

Descargo de Responsabilidad Institucional ii

Dedicatoria iii

Agradecimientos iv

Resumen v

Abstract vi

Iacutendice de Contenido vii

Iacutendice de Figuras x

Iacutendice de Tablas xi

Capiacutetulo 1 Introduccioacuten 1 11 Antecedentes del problema 1

12 Planteamiento del Problema 4

13 Objetivos 6

131 Objetivo General 6

132 Objetivos Especiacuteficos 6

14 Justificacioacuten 7

15 Hipoacutetesis 7

16 Alcances y Limitaciones 8

17 Impacto Social Tecnoloacutegico Econoacutemico y Ambiental 8

171 Impacto social 8

172 Impacto ambiental 9

173 Impacto econoacutemico 10

18 Metodologiacutea a Utilizar 10

181 Anaacutelisis 10

182 Disentildeo 10

1821 Economiacutea 10

1822 Instalaciones 10

1823 Escalabilidad 11

1824 Red 11

1825 Software 11

1826 Almacenamiento 12

183 Implementacioacuten 12

1831 Software 12

1832 Hardware 13

1833 Recursos totales del cluacutester 13

19 Aseguramiento Teacutecnico ndash Material 13

191 Hardware 14

viii

1911 Equipo de coacutemputo 14

Capiacutetulo 2 Estado del Arte 16

Marco Teoacuterico 27 21 Seguridad de la Informacioacuten 27

211 Objetivo de la seguridad de la informacioacuten 27

212 Principios de la seguridad informaacutetica 28

213 Caracteriacutesticas de seguridad informaacutetica 28

214 Formas de Autenticacioacuten 29

215 Ciber-seguridad 29

22 Criptografiacutea 30

221 Tipos de Criptografiacuteas 30

2211 Tablas Hash 30

2212 Tipos de algoritmos Hash 31

22121 SHA - 1 (Secure Hash Algorithm) 31

22122 MD5 (Message Digest Algorithm) 31

22123 RIPEMD ndash 160 32

22124 Funcioacuten Merkle-Damgaringrd 32

2213 Cifrado simeacutetrico 32

22131 RC5 (Cifrado de Rivest) 33

22132 IDEA (International Data Encryption Algorithm) 33

22133 DES (Data Encryption Standard) 34

2214 Cifrado asimeacutetrico 35

22141 DSA (Digital Signature Algorithm - Algoritmo de Firma digital) 36

22142 RSA 37

2215 Cifrado hiacutebrido 38

23 Criptoanaacutelisis 38

24 Niveles de seguridad 39

241 Nivel D1 40

242 Nivel C1 40

243 Nivel C2 41

244 Nivel B1 42

245 Nivel B2 43

246 Nivel B3 44

247 Nivel A1 45

25 Sistemas Operativos 46

251 Windows 47

252 Registro de Windows 48

253 Administrador de cuentas de seguridad 49

2531 Identificador de Seguridad (SID Security Identifier) 50

254 Autenticacioacuten NTML 51

26 LINUX (ROCKS) 52

261 Escritorio 53

262 Paquete de Oficina 53

263 Organizador de archivos 54

27 Agrupamiento (Cluacutester) de Computadoras 55

271 Beowulf 56

ix

272 Mosix 56

273 OpenMosix 57

Capiacutetulo 3 Implementacioacuten de Cluacutester 59 31 Requisitos previos 59

311 Conexioacuten de los equipos y acceso a la red 59

312 Configuracioacuten de la BIOS 60

3121 ATAIDE Mode 60

3122 PXE 62

32 Instalacioacuten de Sistema Operativo Rocks 63

321 Configuracioacuten del teclado 70

33 Instalacioacuten de los nodos 70

331 Administracioacuten de nodos 72

332 Creacioacuten de cuentas de usuario 73

333 Configuracioacuten del directorio compartido 73

34 Operaciones baacutesicas de Rocks 74

Capiacutetulo 4 Metodologiacutea y Resultados 77 41 Obtener Archivo hash 77

42 Dar Formato al Hash 80

43 Evaluar la fuerza del Hash 80

44 Calcular la capacidad del equipo 82

45 Establecer Estrategia 87

451 Fuerza Bruta 87

4511 Cantidad de combinaciones posibles 88

452 Diccionario 90

453 Analizar los resultados 91

454 Personalizar ataques 91

Conclusioacuten 92

Trabajo Futuro 94 Propuesta de Trabajo a Futuro 94

Bibliografiacutea 96

Anexo 1 102

x

Iacutendice de Figuras

Figura 31 Esquema tiacutepico de configuracioacuten de un cluacutester xi

Figura 32 Imagen del Bios del equipo en la opcioacuten ldquodrive configurationrdquo 61

Figura 33 Bios ATAIDE Legacy Mode 61

Figura 34 Bios Boot PXE 62

Figura 35 Bios Boot device prioriry 63

Figura 36 Pantalla de Inicio de instalacioacuten de Rocks 64

Figura 37 Pantalla de seleccioacuten de Rolls 65

Figura 38 Listado de opciones de rolls para instalar 65

Figura 39 Informacioacuten baacutesica del cluacutester a instalar 66

Figura 310 Configuracioacuten Ethernet de la red privada 67

Figura 311 Configuracioacuten Ethernet de la red puacuteblica 67

Figura 312 Configuracioacuten de DNS y Gateway 68

Figura 313 Ingresar contrasentildea de usuario root 68

Figura 314 Configuracioacuten horaria 69

Figura 315 Particiones del disco duro 69

Figura 316 Pantalla para ingresar nodos 71

Figura 317 Indicador de insercioacuten de nuevos nodos 71

Figura 318 Comando qstat ndashf 74

Figura 319 Enviacuteo de trabajos por medio del comando qsub 75

Figura 320 Estado de los trabajos pendientes mostrados por qstat ndashf 75

Figura 321 Visualizacioacuten de la distribucioacuten de cargas en el cluacutester usando la herramienta

Ganglia 76

Figura 41 Arranque con LiveUSB KaliLinux 79

Figura 42 Resultado de la ejecucioacuten de la herramienta samdump2 80

Figura 43 Sistema de Ecuaciones tipo 119860119909 = 119887 Fuente Propia 84 Figura 44 Distribucioacuten de cargas del cluacutester 86

Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester 89

xi

Iacutendice de Tablas

Tabla 11 Costo del Proyecto 15

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia) 86

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia) 89

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos

(Fuente Elaboracioacuten propia) 90

1

Capiacutetulo 1 Introduccioacuten

11 Antecedentes del problema

Sin lugar a duda una de las herramientas maacutes importantes producida en el siglo XX ha sido

la computadora la cual ha provocado cambios vertiginosos en la sociedad y en el progreso de la

misma En la actualidad el entorno estaacute praacutecticamente controlado por las nuevas tecnologiacuteas que

a medida que transcurre el tiempo avanzan sin liacutemites y en ocasiones son utilizadas

incorrectamente provocando dantildeos de grandes dimensiones

Los trascendentales cambios operados en el mundo moderno caracterizados por su

constante desarrollo la acelerada globalizacioacuten de la economiacutea la acentuada dependencia a

almacenar grandes voluacutemenes de informacioacuten y los sistemas que la proveen aunado a grandes

inversiones de las empresas en conocimiento actual y futuro en sistemas de informacioacuten ademaacutes

del potencial que poseen las tecnologiacuteas para cambiar draacutesticamente las organizaciones y las

praacutecticas de negocio asiacute como crear nuevas oportunidades disentildear nuevas estructuras tecnoloacutegicas

basadas en informacioacuten la convierte en un activo codiciable Tales avances hacen permanente el

riesgo en las tecnologiacuteas y nos llevan a pensar en la problemaacutetica sobre la seguridad informaacutetica

La proteccioacuten de datos documentos y control de acceso a la informacioacuten es un tema que

cada diacutea toma maacutes fuerza en las grandes compantildeiacuteas debido a las diferentes praacutecticas de

especialistas tecnoloacutegicos como los son los hackers y crackers que roban informacioacuten vital para

posteriormente sacar provecho de ella

2

ldquoDesde la aparicioacuten de los grandes sistemas aislados hasta nuestros diacuteas en los que el

trabajo en red es lo habitual los problemas derivados de la seguridad de la informacioacuten han ido

tambieacuten cambiando evolucionando pero estaacuten ahiacute y las soluciones han tenido que ir adaptaacutendose

a los nuevos requerimientos teacutecnicos Aumenta la sofisticacioacuten en el ataque y ello aumenta la

complejidad de la solucioacuten pero la esencia es la mismardquo (Mifsud 2012)

Dentro del mundo actual la informacioacuten es denominada un activo importante de una

institucioacuten la cual debe ser protegida para evitar su peacuterdida modificacioacuten o el uso inadecuado de

su contenido

El extraviacuteo o el mal uso de informacioacuten que para alguien es confidencial genera dantildeos y

repercusiones directas relacionadas a la integridad disponibilidad y confidencialidad de los

archivos y a su vez a los duentildeos de dicha informacioacuten

ldquoLa seguridad informaacutetica se distingue por tener dos propoacutesitos de seguridad la Seguridad

de la Informacioacuten y la Proteccioacuten de Datos estos se diferencian debido a que los datos son valores

numeacutericos que soportan la informacioacuten mientras que la informacioacuten es aquello que tiene un

significado para nosotrosrdquo (Gonzaacutelez Agudelo 2014)

La seguridad informaacutetica consiste en asegurar que los recursos del sistema de informacioacuten

(material informaacutetico o programas) de una organizacioacuten sean utilizados de la manera que se decidioacute

3

inicialmente y que el acceso a la informacioacuten alliacute contenida asiacute como su modificacioacuten soacutelo sea

posible a las personas que se encuentren acreditadas y dentro de los liacutemites de su autorizacioacuten

Actualmente hay mucha informacioacuten circulando en internet por ejemplo correos

electroacutenicos publicaciones en Twitter Facebook videos fotos comercio electroacutenico secretos de

estado militares o industriales Lamentablemente dicha red es puacuteblica e insegura dentro de la cual

existen usuarios bien intencionados y muchos mal intencionados Diariamente encontramos

noticias de sitios con intrusiones mal intencionadas (hackeados) clonacioacuten de tarjeta de creacutedito o

imaacutegenes adulteradas Todo lo anterior motiva la necesidad de proteger la informacioacuten a traveacutes de

mecanismos que impidan a los usuarios no autorizados acceder a dicha informacioacuten

4

12 Planteamiento del Problema

Los sistemas de informacioacuten actuales estaacuten relacionados completamente con la exposicioacuten

de su informacioacuten a entidades externas que son ajenas a la organizacioacuten o delegacioacuten a la que

pertenecen

Cuando no se conoce el alcance que tienen los sistemas informaacuteticos ni lo vulnerables que

pueden ser si son expuestos a Internet por los mismos empleados de la organizacioacuten puede darse

ldquofugardquo de informacioacuten hacia el exterior esto los hace vulnerables a eventos y amenazas que

conllevan a riesgos que pueden provocar peacuterdidas tangibles e intangibles las cuales se traducen

en peacuterdidas que en muchos de los casos por decir lo menos seraacuten monetarias

El portal espantildeol de estadiacutesticas statista muestra la cuota de mercado de los principales

sistemas operativos a nivel mundial a fecha de febrero de 2017 seguacuten el nuacutemero de instalaciones

(statista 2017) Windows 10 fue el segundo sistema operativo maacutes instalado con una cuota de

mercado de 253 Esto significa que alrededor de una de cada cuatro computadoras estaacute

gobernado por este sistema operativo Por su parte en el caso de Windows 7 el porcentaje se situacutea

por encima del 45 a pesar de que ya no se vende ninguacuten PC con este sistema operativo Hablando

de manera conjunta los sistemas operativos Windows cuentan con una cuota del mercado global

de 8857

La empresa de seguridad informaacutetica Britaacutenica Avecto informoacute en su Microsoft

Vulnerabilities Report 2017 (Avecto 2017) (reporte 2017 de vulnerabilidades de Windows) un

aumento de vulnerabilidades publicadas del 111 en los uacuteltimos 5 antildeos de las cuales 235 criacuteticas

5

fueron mitigadas removiendo permisos de administrador asiacute como otras muy importantes

enfocadas al Administrador de Cuentas de Seguridad (SAM Security Account Manager por sus

siglas en ingleacutes) la cual es una base de datos almacenada como un archivo del registro en Windows

y que almacena las contrasentildeas de los usuarios en un formato hash (Algoritmos que crean a partir

de una entrada una salida alfanumeacuterica de longitud fija)

6

13 Objetivos

131 Objetivo General A traveacutes de la implementacioacuten de un procedimiento de fuerza

bruta utilizando para ello un cluacutester de alto rendimiento asiacute como software de uso libre lograr

capacidad de procesamiento capaz de vulnerar un sistema de autenticacioacuten nivel C1

132 Objetivos Especiacuteficos

Analizar los diferentes niveles de seguridad de sistemas operativos

Analizar diferentes meacutetodos de criptoanaacutelisis para vulnerar el Administrador de

cuentas de seguridad

Estudiar las teacutecnicas de agrupamiento de computadoras (clustering) para la

obtencioacuten de mayor poder de procesamiento

Implementar un cluacutester de alto rendimiento en el Laboratorio de la Maestriacutea en

Sistemas Computacionales del Instituto Tecnoloacutegico de Acapulco para ejecutar

operaciones de coacutemputo distribuido

7

14 Justificacioacuten

Antes la seguridad de la informacioacuten se realizaba a traveacutes de medios fiacutesicos por ejemplo

una caja fuerte en la cual las personas resguardaban objetos o informacioacuten valiosa para ellos Con

la introduccioacuten de las computadoras y el uso de internet los usuarios comienzan a almacenar

informacioacuten importante dentro de sus equipos por lo que se considera indispensable el uso de

herramientas que brinden proteccioacuten a la informacioacuten que se encuentra resguardada dentro de

eacutestas Los usuarios informaacuteticos suelen enviar informacioacuten por la red en las empresas al realizar

traacutemites o enviar informes a socios jefes entre otros

El resguardo de informacioacuten siempre ha sido importante para los seres humanos con la

diferencia que anteriormente no se contaba con los avances tecnoloacutegicos que tenemos actualmente

puesto que con la introduccioacuten de internet y el uso de dispositivos electroacutenicos se tiene mayor

riesgo de la informacioacuten que en ellos se maneja

La proteccioacuten del contenido de los datos es una necesidad urgente en casi todos los aacutembitos

de la sociedad incluyendo los servicios puacuteblicos y privados por lo que la tecnologiacutea de la

seguridad de los sistemas de cifrado se encuentra de frente a verdaderos retos

15 Hipoacutetesis

A traveacutes de un de fuerza bruta como teacutecnica de criptoanaacutelisis y con la ayuda de una mayor

capacidad de procesamiento mediante la implementacioacuten de agrupamiento de computadoras

(cluacutester) de alto rendimiento seraacute posible encontrar alguna vulnerabilidad dentro del sistema de

administracioacuten de cuentas de seguridad de Windows server 2012

8

16 Alcances y Limitaciones

Esta tesis se centraraacute en el sistema operativo Windows como objeto de estudio al cual se

le realizaraacute el criptoanaacutelisis

La tesis se enfocaraacute en el meacutetodo Beowulf para realizar el agrupamiento de computadoras

asiacute como la distribucioacuten de software libre del sistema operativo Linux Rocks

El nuacutemero de equipos disponibles para poder realizar el agrupamiento es de 17

computadoras hasta lograr el poder de coacutemputo de 800 Gflops

17 Impacto Social Tecnoloacutegico Econoacutemico y Ambiental

La sostenibilidad del presente proyecto seraacute abordada a partir de los siguientes aspectos

171 Impacto social A veces se puede pensar que un cluacutester de alto rendimiento pudiera

no tener alguacuten impacto directo en el medio social pero si nos enfocamos a un punto de vista en

donde gracias a la capacidad de procesamiento de estas maacutequinas han sido parte fundamental en

el desarrollo de proyectos que inciden de manera directa en beneficio de la sociedad en la que

vivimos como lo es la medicina la fiacutesica quiacutemica

Este proyecto busca beneficiar a nuestra sociedad proveyendo su capacidad de

procesamiento en la buacutesqueda de alguna vulnerabilidad en el sistema operativo maacutes utilizado hoy

en diacutea como lo es Windows ademaacutes de que estaraacute disponible para la comunidad cientiacutefica y

9

estudiantil del Instituto Tecnoloacutegico de Acapulco para optimizar tiempo de caacutelculo en futuras

investigaciones

172 Impacto ambiental Green IT tambieacuten conocido como Green Computing o

traducido al espantildeol como Tecnologiacuteas Informaacuteticas Verdes es definido como el estudio y la

praacutectica de disentildear desarrollar usar y disponer de computadoras servidores y diferentes

perifeacutericos tales como monitores impresoras dispositivos de almacenamiento de redes y

comunicaciones eficientemente y efectivamente con un impacto miacutenimo o nulo en el medio

ambiente (Murugesan 2008)

Bajo la premisa anterior este proyecto hace uso de los equipos con los que cuenta

actualmente el laboratorio de la Maestriacutea en Sistemas Computacionales lo cual evitaraacute la

adquisicioacuten de equipo nuevo y por consecuencia desechar el equipo existente evitando desperdicio

electroacutenico Dicho equipo cuenta con un procesador Intel I3 de 4ta generacioacuten lo cual seguacuten el

portal electroacutenico Europa press

ldquoEsta nueva generacioacuten supone el mayor salto en cuanto ahorro energeacutetico de la historia

de Intel asiacute como una mejora en los graacuteficos y nuevas experiencias de usuariordquo (europa press

2013)

Teniendo como base estos dos puntos importantes como lo son la reutilizacioacuten de equipo

y utilizando procesadores de bajo consumo energeacutetico es como este proyecto busca contribuir de

manera positiva con el medio ambiente

10

173 Impacto econoacutemico Actualmente existe una gran necesidad de procesar grandes

cantidades de datos lo cual hace imprescindible disponer de maacutequinas con estas caracteriacutesticas sin

embargo su alta complejidad aunado al gran costo hace que en instituciones de caraacutecter puacuteblico

sea muy complicado conseguir recurso para este fin Sin embargo un cluacutester de alto rendimiento

reutilizaraacute equipo propio evitando asiacute gastos por concepto de adquisicioacuten de equipo siendo de

esta manera viable para instituciones de caraacutecter puacuteblico

18 Metodologiacutea a Utilizar

181 Anaacutelisis Despueacutes de analizar las diferentes metodologiacuteas de clustering se optoacute por

desarrollar e implementar un cluacutester de alto rendimiento (HPC)

182 Disentildeo

1821 Economiacutea Debido a las caracteriacutesticas del equipo con el cual cuenta el Laboratorios

de la Maestriacutea en Sistemas Computacionales los componentes utilizados para este proyecto son

considerados de uso comuacuten y de bajo costo lo cual los hace faacutecilmente reemplazables en caso de

fallo a un costo accesible El equipo es de la marca Acer Aspire modelos AXC-605-M021 lo cual

nos hace tener ventaja y respaldo del fabricante con respecto a hardware geneacuterico

1822 Instalaciones Un cluacutester requiere de un ambiente controlado Esto es una

habitacioacuten especial con sistema de enfriamiento capacidad suficiente de carga eleacutectrica control

de humedad y un ambiente libre de polvo Ademaacutes se deben considerar el peso del equipo sobre

el piso (ya sea falso o piso normal) Se recomienda colocarlo en los soacutetanos o en la plata baja de

edificios (Rocha Quezada Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

11

En el laboratorio de la Maestriacutea en Sistemas Computacionales se cuenta con espacio que

reuniacutea la mayoriacutea de las caracteriacutesticas requeridas para este proyecto

1823 Escalabilidad Un cluacutester debe ser faacutecilmente escalable y a su vez confiable Por

tal motivo se ha utilizado equipo de marca lo cual nos proporciona maacutes de confiabilidad en su

desempentildeo y a su vez facilidad de aumentar el nuacutemero de equipos si en un futuro fuese necesario

agrandar este proyecto Se armoacute un cluacutester de cinco computadoras con procesadores Intel Core I3

de 64 bits en cada nodo La memoria incluida y perifeacutericos son faacuteciles de adquirir en el mercado

1824 Red En la parte de redes se utilizoacute un switch fast Ethernet con una velocidad de 1

Gbps el cual tiene tazas de transferencia raacutepida y el costo es notablemente maacutes econoacutemico que

uno de fibra oacuteptica

El cableado seleccionado fue el estaacutendar UTP de cobre con la norma Gigabit Ethernet de

IEEE 8023ab con la categoriacutea de cableado 6e que soporta tazas de transferencia de datos de

1000Base T (1 Gbps)

1825 Software

ldquoEl sistema operativo debe constar con servicios dedicados para compartir y respaldar

archivos asiacute como capacidad de acceder a los datos de trabajo raacutepidamente El sistema operativo

debe tambieacuten proveer servicios de monitoreo y reporte de fallas en el sistemardquo (Rocha Quezada

Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

12

Existe una gran variedad de software para instalar cluacutester de alto rendimiento sin embargo

como se ha comentado con anterioridad el costo de adquisicioacuten debe ser accesible por tal motivo

se optoacute por una distribucioacuten con licencia GNU de Linux Rocks Cluster la cual es una distribucioacuten

sencilla de instalar y configurar en comparacioacuten con otras distribuciones analizadas dicha

distribucioacuten estaacute basada en CentOS que a su vez estaacute basada en la conocida distribucioacuten de Linux

Red Hat

1826 Almacenamiento Para este proyecto no se requeriraacute un gran espacio de

almacenamiento por tal motivo los equipos utilizados tanto maestro como esclavos mantuvieron

sus unidades de disco originales las cuales son de 1 TB de almacenamiento

183 Implementacioacuten La implementacioacuten del cluacutester de alto rendimiento fue realizada

dentro de las instalaciones del Laboratorio de la Maestriacutea en Sistemas Computacionales del

Instituto Tecnoloacutegico de Acapulco construido inicialmente para este proyecto de criptoanaacutelisis lo

cual requeriraacute suficiente capacidad de procesamiento para poder implementar ataques de fuerza

bruta a sistemas operativos Las caracteriacutesticas del cluacutester construido son

1831 Software El software instalado en cada uno de los nodos es el siguiente

bull Sistema operativo Rocks Cluacutester Linux 74 (64 bits)

bull Libreriacutea de manejo de mensajes Open-MPI 153

bull Software de monitoreo Ganglia

13

1832 Hardware El cluacutester estaacute compuesto de 17 equipos con las siguientes

caracteriacutesticas

bull Nodo Maestro y 16 Nodos Esclavos

- Procesador Intel Core I3 4150 (4 nuacutecleos) Memoria 6 GB Disco Duro SATA 1 TB

tarjeta de Red Gigabit Ethernet

El hardware adicional es el siguiente

bull Interconexioacuten de Red

bull Switch Cisco 26 puertos 1Gbps modelo SG200 Red interna

1833 Recursos totales del cluacutester

bull Nuacutecleos de unidades de procesamiento (cores) 68

bull Capacidad en memoria 92 GB

bull Capacidad en disco 17 TB

19 Aseguramiento Teacutecnico ndash Material

A continuacioacuten se muestra el desglose del equipo utilizado para la elaboracioacuten de un

cluacutester de alto rendimiento estos componentes consisten en Hardware y Software especializado

asiacute como los costos de produccioacuten y personal involucrados en la metodologiacutea y elaboracioacuten del

proyecto

Costos de Hardware

Costos de Software

14

191 Hardware En este punto se refleja el costo de los dispositivos y herramientas a nivel

fiacutesico las cuales sirvieron para la implementacioacuten del proyecto cluacutester de alto rendimiento Cabe

resaltar que el equipo utilizado forma parte del inventario actual del Laboratorio motivo por el

cual su utilizacioacuten no causoacute erogacioacuten alguna sin embargo la investigacioacuten de costos se realizoacute

con la finalidad que el lector pueda establecer comparativas y buscar alternativas en caso de ajuste

de presupuesto

1911 Equipo de coacutemputo El equipo de coacutemputo utilizado consta de diecisiete

computadoras las cuales serviraacuten una para Nodo Maestro y las dieciseacuteis restantes como Nodos

Esclavos

La descripcioacuten de estos equipos se muestra en la tabla a continuacioacuten mostrando los costos

de todos los equipos utilizados dentro del proyecto

15

Tabla 11 Costo del Proyecto

Modelo

Cantidad

Caracteriacutesticas

Costos

PC - Acer AXC-

605

17

Procesador Intel Core i3

Pantalla 156rdquo

Disco duro 1TB HDD

RAM 6GB

Salida HDMI

Tarjeta de graacuteficos INTEGRADA

Lector de CD

Los costos en el mercado de una PC de

escritorio con estas caracteriacutesticas tiene un

valor aproximado de $600000 pesos

(Moneda nacional Mexicana)

Switch Cisco

Gigabit Ethernet

1

Modelo SG200 de 26 puertos

Costo en el mercado alrededor de

$2000000 pesos MN

Total

12200000 pesos MN

16

Capiacutetulo 2 Estado del Arte

Tiacutetulo del Trabajo Introduccioacuten a la Criptografiacutea

Autor Gibraacuten Granados Paredes

Fecha Julio 2010

Lugar Ciudad de Meacutexico

Publicado en Coordinacioacuten de Publicaciones Digitales DGSCA-UNAM

httpwwwrevistaunammxvol7num7art55int55htm

Siacutentesis Cuando se desea tener seguridad hablando en aacutembitos informaacuteticos la

criptografiacutea es una herramienta muy uacutetil el autor lo entiende tambieacuten como un medio para

garantizar las propiedades de confidencialidad integridad y disponibilidad de los recursos de un

sistema

Con la criptografiacutea se puede garantizar las propiedades de integridad y confidencialidad

pero hay que saber coacutemo utilizarla para ello es importante tener claros los conceptos baacutesicos que

estaacuten detraacutes de los sistemas criptograacuteficos modernos Estos conceptos van desde entender queacute es

la criptografiacutea coacutemo estaacute clasificada entender el funcionamiento baacutesico de algunos sistemas de

cifrado y conocer coacutemo se forman los documentos digitales como firmas y sobres digitales

Resultados El autor realiza un viaje por un gran nuacutemero de conceptos utilizados en

criptografiacutea el inicio y la clasificacioacuten de la misma asiacute como la criptografiacutea claacutesica y moderna y

analiza de manera breve algunos meacutetodos de cifrado maacutes comunes

17

Tiacutetulo del Trabajo Criptoanaacutelisis sobre meacutetodos claacutesicos de cifrado

Autores Sebastiaacuten Goacutemez Juan David Arias Diego Agudelo

Fecha 2 de mayo 2013

Lugar Ciudad de Meacutexico

Publicado en Scientia et Technica Antildeo XVII No 50 abril de 2012

Siacutentesis Los algoritmos criptograacuteficos utilizados desde la antigua Roma hasta nuestros

diacuteas son meacutetodos que convierten un mensaje de texto plano a cifrado al proceso inverso se le

conoce como descifrar Este artiacuteculo realiza un estudio de algunas teacutecnicas de encriptacioacuten claacutesicas

del siglo pasado como lo son el cifrado de Cesar y el cifrado de Vigeneacutere asiacute como muestra

teacutecnicas baacutesicas y modernas de criptoanaacutelisis basadas en la teoriacutea de la informacioacuten y estadiacutestica

como lo son la entropiacutea y el ataque de maacutexima correlacioacuten Las teacutecnicas de criptoanaacutelisis descritas

anteriormente pueden ser usadas en otros meacutetodos de cifrado siempre y cuando esteacuten presentes las

mismas debilidades

Resultados Los autores implementaron en lenguajes de programacioacuten Python un

algoritmo para el caacutelculo de entropiacutea para diferentes longitudes de clave Para la implementacioacuten

de los algoritmos de cifrado y descifrado de Vigeneacutere y de maacutexima correlacioacuten utilizaron lenguaje

de programacioacuten C++ Se probaron los meacutetodos anteriormente descritos sobre textos planos de

diferentes longitudes logrando un resultado de 9385 de efectividad en promedio

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de dos de los

algoritmos de encriptacioacuten maacutes antiguos y baacutesicos pero sobre todo que conociendo los meacutetodos

de criptoanaacutelisis me permitiraacuten analizar debilidades y fortalezas de algoritmos

18

Tiacutetulo del Trabajo ULTRACOM Computacioacuten de Alto Rendimiento para Criptoanaacutelisis

Autor Antonio Castro Lechtaler Alejandro Repetto Martiacuten Bianchi Marcelo Cipriano

Alejandro Arroyo Arzubi Ceacutesar Cicerchia Eduardo Malvacio

Fecha octubre 2014

Lugar Buenos Aires Argentina

Publicado en XX Congreso Argentino de Ciencias de la Computacioacuten (Buenos Aires

2014)

Siacutentesis La generacioacuten de nuacutemeros primos fundamentales para la produccioacuten de claves

el anaacutelisis de secuencias pseudo-aleatorias los procesos de verificacioacuten y validacioacuten de algoritmos

de seguridad en un sentido geneacuterico requieren enormes cantidades de procesamiento Los

procesos relacionados con la matemaacutetica criptograacutefica se caracterizan por la alta necesidad de

coacutemputo El objetivo de ULTRACOM es desarrollar una computacioacuten distribuida multipropoacutesito

que permita como primera aplicacioacuten real el anaacutelisis la validacioacuten y la ejecucioacuten de pruebas de

estreacutes sobre sistemas criptograacuteficos El presente trabajo de investigacioacuten detalla el proceso de

desarrollo de ULTRACOM y muestra un ejemplo de su implementacioacuten en una versioacuten Beta Para

ello toman como entrada dos versiones del algoritmo Trivium Utilizando la misma

infraestructura y sin desarrollo extra se prueban grandes voluacutemenes de claves y vectores de

inicializacioacuten de los algoritmos en busca de secuencias deacutebiles de menor longitud que la de la

buscada

Resultados El equipo implementoacute una versioacuten beta de la plataforma ULTRACOM

comprobando la factibilidad y viabilidad teacutecnica de la generalizacioacuten de la infraestructura de

computacioacuten distribuida en grilla (malla) BOINC Este avance permite extender los horizontes de

BOINC y habilita la posibilidad de obtener la capacidad de coacutemputo de alto rendimiento a bajo

19

costo Concluyeron que ULTRACOM es un proyecto viable escalable y de alto impacto para la

evaluacioacuten y validacioacuten de algoritmos criptograacuteficos

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento y la

implementacioacuten de una arquitectura de computacioacuten distribuida y una vez siendo factible su

desarrollo utilizar su poder de coacutemputo atacando a traveacutes de un algoritmo un sistema criptograacutefico

20

Tiacutetulo del Trabajo Criptografiacutea Cuaacutentica

Autor M Baig

Fecha 2010

Lugar Barcelona Espantildea

Siacutentesis En este artiacuteculo el autor realiza una breve introduccioacuten a la criptografiacutea claacutesica y

la relacioacuten que existe con la teoriacutea de la informacioacuten de Shannon la cual asegura que el cifrado

digital simeacutetrico es secreto y perfecto siempre y cuando se cumplan los tres requisitos

1 La llave ha de ser aleatoria

2 La llave debe usarse soacutelo una vez

3 La llave ha de ser tan larga como el mensaje y de un solo uso debe de estar en posesioacuten

tanto del emisor como del receptor

El punto 3 es el maacutes complicado de cumplir debido a la forma de compartir la llave entre

el emisor y receptor

Maacutes adelante en el artiacuteculo se hace un anaacutelisis sobre otra teacutecnica de criptografiacutea que es el

cifrado digital asimeacutetrico en la que se estudia coacutemo funcionan las llaves privadas y puacuteblicas asiacute

como el meacutetodo de criptograacutefico RSA

Resultados

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento maacutes profundo de

los meacutetodos de criptografiacutea simeacutetricos y asimeacutetricos especiacuteficamente el algoritmo asimeacutetrico

RSA

21

Tiacutetulo del Trabajo La Criptografiacutea Maderista en la Revolucioacuten Mexicana (1910-1911)

Criptoanaacutelisis de una carta cifrada por Gabriel Leyva Solano

Autor Roberto Narvaacuteez

Fecha 2011

Lugar Meacutexico DF

Siacutentesis Este trabajo aborda temas relacionados con las comunicaciones secretas del

movimiento revolucionario comandado por Francisco I Madero a partir de 1910 Se compone de

dos partes la primera es una breve resentildea criacutetica de ejemplos criptograacuteficos del maderismo que

fueron generados entre 1910 y 1911 la segunda describe paso a paso el criptoanaacutelisis que aplicoacute

el autor Roberto Narvaacuteez para desencriptar una carta parcialmente cifrada de Gabriel Leyva Solano

a Francisco I Madero

Resultados El propoacutesito general uacuteltimo es contribuir al conocimiento de la criptografiacutea

mexicana en el siglo XX En lo particular se trata de poner a disposicioacuten de los estudiosos el

contenido completo de la carta de Leyva Solano por primera vez despueacutes de 100 antildeos y al mismo

tiempo someter a la criacutetica teacutecnica e histoacuterica el procedimiento criptoanaliacutetico puesto en operacioacuten

para recuperar el texto plano

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados en nuestro paiacutes sobre formas y meacutetodos de encriptacioacuten durante la Revolucioacuten

Mexicana incluso mucho antes de la 2ordf Guerra mundial momento donde se registroacute un auge

importante dentro de la criptografiacutea moderna

22

Tiacutetulo de Tesis Anaacutelisis de la programacioacuten concurrente sobre la cpu y gpu en el

desarrollo de fractal build

Autor Joseacute Vicente Anilema Guadalupe

Fecha 2012

Lugar Riobamba Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la geometriacutea euclidiana debido a que

el autor realiza una aplicacioacuten que crea paisajes fractales lo que significa crear un paisaje con una

misma figura geomeacutetrica Lo anterior se traduce en una necesidad de gran poder de coacutemputo para

realizar de una manera eficaz la tarea Dentro de la tesis el autor realiza diversos estudios

comparativos entre el procesamiento serializado realizado por una CPU (unidad central de

procesamiento) y procesamiento paralelizado realizado por una GPU (Unidad grafica de

procesamiento) a traveacutes de diversas herramientas para obtener el mejor aprovechamiento de los

recursos

Resultados El autor concluye que es necesario examinar los algoritmos a utilizar para que

estos puedan ser utilizados en coacutemputo paralelo Ademaacutes de que es necesario aprender ciertas

herramientas a utilizar para aprovechar al maacuteximo el coacutemputo distribuido y no desperdiciar el

poder de procesamiento muy superior que las GPUrsquos nos pueden brindar

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados para medir y comparar la velocidad de procesamiento de la unidad central de

procesamiento (CPU) y la unidad graacutefica de procesamiento (GPU) Asiacute como la medida en Flops

(Operaciones de punto flotante por segundo)

23

Tiacutetulo del Trabajo Arquitectura cluacutester de alto rendimiento utilizando herramientas de

software libre

Autores Leonardo Chiquiguanca Edyson Malla Freddy Ajila Rene Guamaacuten-Quincheacute

Fecha mayo 2015

Lugar Loja Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la gran cantidad de datos que tienen

que procesar las universidades puacuteblicas dentro de sus investigaciones realizadas en diferentes aacutereas

como la ingenieriacutea medicina etc y la carencia de recursos econoacutemicos para obtener

supercomputadoras que procesen dicha informacioacuten Los autores proponen dentro de su

investigacioacuten la utilizacioacuten de equipo de coacutemputo existente dentro de su universidad y por medio

de software libre realizar agrupamiento de computadoras para poder lograr el procesamiento de

grandes voluacutemenes de datos de una manera accesible

Resultados Los autores concluyen que la mejor arquitectura para el agrupamiento

(cluacutester) de computadoras en ambientes universitarios es la arquitectura Beowulf debido a que la

implementaron en hardware convencional existente dentro de su campus universitario y que

ademaacutes usaron software libre mencionando que el poder de coacutemputo logrado fue muy cercano al

de una supercomputadora

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de las teacutecnicas

utilizadas en ambientes universitarios para la realizacioacuten de agrupamiento de computadoras y

sobre todo la optimizacioacuten de costos para realizar dicha tarea y tener como finalidad el lograr

mayor capacidad de procesamiento

24

Tiacutetulo de Tesis Desarrollo de un algoritmo de cifrado simeacutetrico de resumen

Autores Jonathan Dave Orjuela Navarrete

Antildeo 2008

Lugar Bogotaacute DC

Siacutentesis Esta tesis realiza un estudio de varios meacutetodos de criptografiacutea simeacutetrica para

posteriormente utilizando diferentes foacutermulas matemaacuteticas crear un algoritmo criptograacutefico

nuevo Dentro de la tesis utiliza dos meacutetodos para realizar pruebas a su algoritmo criptoanaacutelisis

diferencial y criptoanaacutelisis basado en fallos de hardware Dentro de los cuales hace un estudio

detallado de las teacutecnicas y herramientas de criptoanaacutelisis realizado a su algoritmo

Resultados El autor concluye de manera positiva con la realizacioacuten del algoritmo y de

manera satisfactoria con la realizacioacuten de criptoanaacutelisis a su algoritmo pudiendo demostrar la

fortaleza del algoritmo a traveacutes de ejemplo de cifrado con textos claro muy parecido y su

conversioacuten a cadenas completamente diferentes

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de criptoanaacutelisis diferencial y criptoanaacutelisis basado en fallos de hardware para la

evaluacioacuten de algoritmos de cifrado simeacutetrico de textos claros

25

Tiacutetulo del Trabajo Firt step in a Pc cluster development with openMosix

Autores Javier Bilbao Gorka Garate

Antildeo 2008

Lugar Bilbao Spain

Siacutentesis En este trabajo se afirma que es posible hacer maacutequinas de alta capacidad de

caacutelculo mediante la interconexioacuten de equipos con redes de alta velocidad A este tipo de sistemas

se les llama sistemas distribuidos y hoy en diacutea es la tecnologiacutea maacutes utilizada para resolver

problemas que requieren una gran capacidad de caacutelculo La agrupacioacuten de computadoras permite

que varias computadoras trabajen juntas para resolver los problemas de informaacutetica comuacuten Este

artiacuteculo centra su estudio en uno de los diferentes meacutetodos de agrupamiento de computadoras

openMosix El trabajo tambieacuten evaluacutea el cluacutester por dos casos de estudio donde se mejora el

tiempo de ejecucioacuten de los problemas resueltos

Resultados El autor del artiacuteculo concluye con la realizacioacuten satisfactoria de agrupamiento

de computadoras bajo el meacutetodo openMosix el cual uacutenicamente permite agrupamiento de la forma

SSI (Single System Image) que se refiere a que uacutenicamente se puede realizar el agrupamiento con

todos los nodos ejecutando un mismo sistema operativo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras openMosix ventajas desventajas y dificultades para

su implementacioacuten

26

Tiacutetulo del Trabajo Disentildeo e implementacioacuten de un cluacutester tipo Beowulf para el desarrollo

de coacutemputo cientiacutefico avanzado

Autores Edgar Rubeacuten Gonzaacutelez Ramiacuterez Abimael Rodriacuteguez Saacutenchez

Antildeo 2008

Lugar Instituto Politeacutecnico Nacional Meacutexico DF

Siacutentesis Este trabajo de tesis ha desarrollado e implementado una herramienta

computacional llamada Cluster Beowulf para mejorar la programacioacuten paralela Comenzando

con la memoria compartida y distribuida el autor implemento el agrupamiento tipo Beowulf

pensando en procesamiento paralelo la optimizacioacuten de las fuentes informaacuteticas El disentildeo se

construye mediante una distribucioacuten Linux Fedora Core 6 a 64 bits utilizando todas las ventajas

que ofrece el estaacutendar Gigabyt Ethernet La programacioacuten paralela fue desarrollada en lenguaje C

tanto para MPI como para OPENMP

Resultados El autor del artiacuteculo concluye que de acuerdo con los resultados el tiempo

de procesamiento se redujo con el uso muacuteltiples nuacutecleos mejoroacute hasta ocho veces gracias al

multihilo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras Beowulf y su implementacioacuten en sistemas operativos

de uso libre Linux distribucioacuten Fedora 6

27

Marco Teoacuterico

21 Seguridad de la Informacioacuten

La Seguridad de la Informacioacuten consiste y hace referencia a la proteccioacuten de cualquier

amenaza para salvaguardar los activos fijos y en especial toda informacioacuten de la cual estaacute basada

la continuidad de las operaciones de la empresa sean estas ocasionadas dentro o fuera de la misma

con esto se logra disminuir los dantildeos y perjuicios que estas amenazas causariacutean a la organizacioacuten

y a la vez aumentar las oportunidades de servicio hacia otras empresas

La Seguridad de la informacioacuten se consigue mediante la implementacioacuten de controles

efectivos que pueden ser normas manual de funciones buenas praacutecticas procedimientos

estructuras organizativas funciones de software y hardware planes de contingencia y herramientas

que se encargan de proteger la privacidad e integridad de la informacioacuten que se almacena en un

sistema informaacutetico Estos controles necesitan continuamente ser establecidos monitoreados

revisados y mejorados en donde sea necesario para asegurar que se cumplan los objetivos

especiacuteficos de seguridad en cada aacuterea de negocio de la organizacioacuten

La seguridad informaacutetica es en realidad una rama de la seguridad de la informacioacuten aunque

de forma praacutectica algunos autores suelen utilizar de manera indistinta ambos teacuterminos

211 Objetivo de la seguridad de la informacioacuten En la seguridad de la informacioacuten

sabiendo que dichos procesos de seguridad permiten proteger el recurso maacutes importante y valioso

de una organizacioacuten partiendo como principio fundamental los procesos de aseguramiento el

28

objetivo del proceso de seguridad informaacutetica es obtener un nivel aceptable de seguridad ya que

la informacioacuten es lo maacutes valioso que tiene una institucioacuten o empresa por lo tanto esta debe ser

protegida para que no sea vulnerable y utilizada para fines maliciosos

212 Principios de la seguridad informaacutetica

Confidencialidad Los datos solo deben ser conocidos y accedidos por quienes esteacuten

autorizados durante su almacenamiento procesamiento o trasmisioacuten Verificar y certificar que solo

los usuarios con accesos autorizados puedan acceder a la informacioacuten

Integridad Los datos solo pueden ser modificados y eliminados por quienes esteacuten

autorizados para ello es decir los sistemas y aplicaciones solo deben ser operados por personal

autorizado

Disponibilidad Los sistemas que almacenan datos e informacioacuten deben garantizar su

acceso cuando asiacute se requiera por quienes tengan derecho a ello

213 Caracteriacutesticas de seguridad informaacutetica

Control Solo los usuarios autorizados deciden cuaacutendo y coacutemo permitir el acceso a la

informacioacuten

Auditoriacutea Establece las acciones cuaacutendo las implementa y quieacuten las realiza sobre el

sistema

Autenticidad Define que la informacioacuten necesaria es correcta utilizable y vaacutelida en tiempo

y forma

No Repudio Su funcioacuten es evitar que alguna entidad que envioacute o recibioacute informacioacuten

alegue que no lo hizo

29

214 Formas de Autenticacioacuten

Contrasentildea Una contrasentildea es un tipo de seguridad informaacutetica ya que es una serie de

caracteres secretos que permiten a un usuario tener acceso a un archivo equipo de coacutemputo o

programa y negar el acceso a usuarios no autorizados

Certificado digital Es un tipo de seguridad informaacutetica que permite la firma digital

electroacutenica que garantiza teacutecnica y legalmente la identidad de una persona en Internet

Autenticacioacuten HTTP Tipo de seguridad informaacutetica que delega la autenticacioacuten de

usuarios a un servidor a traveacutes de Kerberos

215 Ciber-seguridad Con los avances tecnoloacutegicos y la demanda que ha causado en ello

existe un elevado iacutendice de informacioacuten personal y empresarial que circula y se mantiene en la red

por la utilizacioacuten del internet esto permite que toda informacioacuten quede expuesta a cualquier ataque

de ciber-delincuentes los cuales buscan la manera de vulnerar cualquier sistema para espiar robar

informacioacuten o hacer dantildeo de cualquier tipo por lo que se ha visto la necesidad de tomar medidas

de seguridad para salvaguardar la informacioacuten ya que es muy importante

La ciberseguridad es la proteccioacuten de los sistemas conectados a Internet incluidos el

hardware el software y los datos de los ciberataques En un contexto informaacutetico la seguridad

comprende la ciberseguridad y la seguridad fiacutesica ambas son utilizadas por las empresas para

proteger contra el acceso no autorizado a los centros de datos y otros sistemas de coacutemputo El

objetivo de la ciberseguridad es limitar el riesgo y proteger los activos de Tecnologiacuteas de

Informacioacuten de los atacantes con intenciones maliciosas La seguridad de la informacioacuten estaacute

30

disentildeada para mantener la confidencialidad integridad y disponibilidad de los datos es un

subconjunto de la ciberseguridad

22 Criptografiacutea

La Criptografiacutea tambieacuten llamada ldquoescritura ocultardquo tradicionalmente en el aacutembito de

criptografiacutea es donde se ocupan las teacutecnicas de cifrado o codificacioacuten que permiten alterar el

contenido de cierta informacioacuten o mensajes con el fin de hacerlos ininteligibles a receptores o

personas no autorizadas (Meneacutendez-Barzanallana 17)

Actualmente la criptografiacutea se encarga de analizar algoritmos protocolos y sistemas que

son utilizados para proveer seguridad a las comunicaciones informacioacuten y a las entidades que se

comunican entre siacute

221 Tipos de Criptografiacuteas

2211 Tablas Hash Un hash o funcioacuten hash toma un grupo de caracteres (llamado clave)

y lo asigna a un valor de cierta longitud (llamado valor hash o hash) El valor hash es representativo

de la cadena de caracteres original pero normalmente es maacutes pequentildeo que el original

El hash tambieacuten es utilizado en el cifrado y descifrado de firmas digitales La funcioacuten hash

transforma la firma digital luego tanto el valor hash como la firma se enviacutean al receptor El

receptor utiliza la misma funcioacuten hash para generar el valor hash y luego lo compara con el recibido

31

en el mensaje Si los valores hash son los mismos es probable que el mensaje se haya transmitido

sin errores

Un ejemplo de una funcioacuten hash se llama plegado(folding) Esta toma un valor original lo

divide en varias partes luego agrega las partes y usa los uacuteltimos cuatro diacutegitos restantes como

valor o clave hash

2212 Tipos de algoritmos Hash

22121 SHA - 1 (Secure Hash Algorithm) Es un algoritmo criptograacutefico de Hash

publicado por el gobierno de los Estados Unidos Genera un valor Hash de 160 bits a partir de una

secuencia de longitud arbitraria Es considerado lo suficientemente seguro para aplicaciones

praacutecticas pero hay disponibles versiones maacutes robustas SHA - 256 SHA - 384 y SHA - 512 que

generan valores Hash de 256 384 y 512 bits respectivamente estas versiones reemplazaraacuten a SHA

- 1 mientras se siga trabajando sobre ellas (Borghello 2009)

22122 MD5 (Message Digest Algorithm) En criptografiacutea MD5 es una funcioacuten hash

criptograacutefica ampliamente utilizada con un valor hash de 128 bits Como estaacutendar de Internet (RFC

1321) MD5 se ha empleado en una amplia variedad de aplicaciones de seguridad y tambieacuten se

usa comuacutenmente para verificar la integridad de los archivos Un hash MD5 generalmente se

expresa como un nuacutemero hexadecimal de 32 diacutegitos

MD5 es una versioacuten reforzada de MD4 Al igual que MD4 el hash MD5 fue inventado por

el profesor Ronald Rivest del Massachusetts Institute of Technology (MIT) Ademaacutes MD5 se

32

utilizoacute como modelo para SHA-1 ya que comparten muchas caracteriacutesticas comunes MD5 y

SHA-1 son los dos algoritmos hash maacutes utilizados en la actualidad aunque el uso de MD5 ha

disminuido ya que ahora se considera roto (Borghello 2009)

22123 RIPEMD ndash 160 Es una funcioacuten hash criptograacutefica basada en la construccioacuten

Merkle-Damgaringrd (MD) Se usa en el estaacutendar de Bitcoin Es una versioacuten reforzada del algoritmo

RIPEMD que produce un resumen de hash de 128 bits mientras que el algoritmo RIPEMD-160

produce una salida de 160 bits La funcioacuten de compresioacuten consta de 80 etapas formadas por 5

bloques que se ejecutan 16 veces cada uno Este patroacuten se ejecuta dos veces con los resultados

combinados en la parte inferior utilizando la adicioacuten del moacutedulo 32 (Borghello 2009)

22124 Funcioacuten Merkle-Damgaringrd La construccioacuten MD es una metodologiacutea para crear

funciones hash resistentes a colisiones a partir de funciones de compresioacuten unidireccionales Ralph

Merkle la propuso en el antildeo de 1979 en ldquoA certified Digital Signaturerdquo posterior a este estudio

Ivan Damgaringrd demostroacute de manera independiente que la estructura era soacutelida (Merkle amp

Damgaringrd sf)

2213 Cifrado simeacutetrico Los cifrados simeacutetricos son los cifrados criptograacuteficos maacutes

antiguos y maacutes utilizados En un cifrado simeacutetrico la clave que descifra el texto cifrado es la

misma (o puede derivarse faacutecilmente) de la clave que cifra el texto claro Esta clave a menudo se

conoce como la clave secreta Los cifrados simeacutetricos maacutes utilizados son DES y AES

La problemaacutetica que surge es la seguridad de la clave

33

El emisor cifra el mensaje con una clave

Enviacutea el mensaje cifrado de tal manera que nadie puede descifrarlo sin dicha clave

El receptor obtiene la clave y entonces puede descifrar el mensaje con la misma clave

que recibioacute del emisor

Algunos algoritmos de este tipo son

22131 RC5 (Cifrado de Rivest) Es un algoritmo de cifrado de bloque de clave simeacutetrica

disentildeado por Ron Rivest en 1994 Se destaca por ser simple raacutepido (debido a que usa solo

operaciones de coacutemputo primitivas como XOR o shift) y ademaacutes por consumir menos memoria

RC5 es un cifrado de bloques y aborda dos bloques de palabras a la vez Dependiendo del

tamantildeo del bloque de texto sin formato nuacutemero de rondas y tamantildeo de clave se pueden definir

varias instancias de RC5 y cada instancia se denota como RC5-w r b donde w = tamantildeo de

palabra en bits r = nuacutemero de rondas y b = tamantildeo de la clave en bytes (Pawar 2016)

Como se ha mencionado RC5 utiliza bloques de 2 palabras el tamantildeo del bloque de texto

sin formato puede ser de 32 64 o 128 bits

22132 IDEA (International Data Encryption Algorithm) Baacutesicamente es un algoritmo

de cifrado de bloque simeacutetrico El algoritmo asimeacutetrico utiliza la misma clave para el cifrado y

descifrado Un cifrado de bloque divide el mensaje en bloques cada uno de una longitud fija y

luego cifra cada bloque de forma independiente

34

El tamantildeo de bloque tiacutepico es de 16 bytes de 128 bits Un cifrado de bloque generalmente

operaraacute en bloques o rondas donde se aplica parte de la clave a la ronda Despueacutes de un cierto

nuacutemero de rondas digamos entre 10 y 16 se termina con el texto cifrado para ese bloque

El bloque de texto cifrado tiene exactamente el mismo tamantildeo que el bloque de texto sin

formato 16 bytes Para cada ronda se trabaja en el bloque utilizando una parte de la clave de

cifrado a la que se le llama la clave redonda Muacuteltiples claves redondas se derivan de la clave de

cifrado utilizando para esto un programa de claves

La programacioacuten de claves es un algoritmo que cambia XOR multiplica y realiza otros

tipos de operaciones en la clave de cifrado original para obtener estas claves redondas Bueno si

tengo un bloque de 16 bytes y tengo una clave de 128 bits que tambieacuten es de 16 bytes (Educba

2019)

22133 DES (Data Encryption Standard) El algoritmo DES es el algoritmo de seguridad

maacutes popular Es un algoritmo simeacutetrico lo que significa que se utilizan las mismas claves para

cifrar descifrar datos confidenciales La longitud de la clave es de 8 bytes (64 bits) Entonces

para cifrar descifrar datos el algoritmo DES utiliza una clave de 8 bytes pero 1 byte (8 bits) para

la verificacioacuten de paridad Es un algoritmo de cifrado de bloque por lo tanto el tamantildeo del bloque

de datos del algoritmo DES es de 64 bits Para cifrar descifrar datos el algoritmo DES utiliza la

estructura Feistel Entonces utiliza una ronda para cifrar descifrar datos Aunque el tamantildeo del

35

bloque de datos es de 64 bits el nuacutemero de rondas seraacute de 16 rondas asiacute mismo utilizaraacute diferentes

subclaves para cada ronda por lo tanto el nuacutemero de subclaves seraacute de 16 subclaves

Como se puede observar la clave efectiva es de 56 bits por consiguiente se tiene 256

combinaciones posibles por lo que la fuerza bruta se hace casi imposible (Sanjoy 2015)

2214 Cifrado asimeacutetrico Los cifrados asimeacutetricos tambieacuten se conocen como cifrados

con claves puacuteblicas y privadas Usan dos claves una para el cifrado de mensajes y la otra durante

el descifrado

Un intruso puede encriptar cualquier mensaje usando la clave puacuteblica conocida Los

cifrados asimeacutetricos son por lo tanto vulnerables a los ataques de texto sin formato Los cifrados

con encriptacioacuten de clave puacuteblica deben proporcionar seguridad contra tales ataques Despueacutes de

encriptar dos mensajes con la misma clave puacuteblica el intruso no puede distinguir queacute texto cifrado

estaacute conectado con queacute texto plano Ademaacutes un observador que analiza dos mensajes encriptados

usando el mismo algoritmo y la misma clave puacuteblica no puede distinguir sus textos cifrados

(Kowalczyk 2015)

Los cifrados asimeacutetricos son mucho maacutes lentos que los cifrados simeacutetricos (generalmente

mil veces maacutes lentos) Es una praacutectica comuacuten usar el cifrado de clave puacuteblica solo para establecer

la conexioacuten segura y negociar la nueva clave secreta que luego se utilizaraacute para proteger la

comunicacioacuten mediante cifrado simeacutetrico Ejemplos de este cifrado son

36

22141 DSA (Digital Signature Algorithm - Algoritmo de Firma digital) Es un estaacutendar

del Gobierno Federal de los Estados Unidos para firmas digitales Fue propuesto por el Instituto

Nacional de Estaacutendares y Tecnologiacutea (NIST) en agosto de 1991 para ser usado en su Estaacutendar de

Firma Digital (DSS) en el antildeo de 1993

La primera parte del algoritmo DSA es la generacioacuten de clave puacuteblica y clave privada que

puede describirse como

Se elige un nuacutemero primo q que se llama divisor primo

Se elige otro nuacutemero primo p de modo que pndash1 mod q = 0 p seraacute llamado moacutedulo

primo

Ahora se elige un nuacutemero entero g tal que 1 ltg ltp g q mod p = 1 g = h ((p

ndash 1) q) mod p q tambieacuten se llama moacutedulo de orden multiplicativo de g moacutedulo p

Se elige un nuacutemero entero tal que 0 ltx ltq

Se calcula y como g x mod p

Se empaqueta la clave puacuteblica como p q g y

Por uacuteltimo se empaqueta la clave privada como p q g x

La segunda parte del algoritmo DSA es la generacioacuten de firma y la verificacioacuten de firma

Para generar una firma de mensaje el remitente puede seguir estos pasos

Se genera el resumen del mensaje h utilizando un algoritmo hash como SHA1

Se genera un nuacutemero aleatorio k tal que 0 ltk ltq

37

Se calcula r como (g k mod p) mod q Si r = 0 seleccione una k diferente

Ahora se calcula i de modo que k i mod q = 1 i se llama el inverso multiplicativo modular

de k moacutedulo q

Se calcula s = i (h + r x) mod q Si s = 0 se selecciona una k diferente

Por uacuteltimo se empaqueta la firma digital como r s (Yang 2019)

22142 RSA Encriptacioacuten RSA encriptacioacuten Rivest-Shamir-Adleman tipo de

criptografiacutea de clave puacuteblica ampliamente utilizada para la encriptacioacuten de datos de correo

electroacutenico y otras transacciones digitales a traveacutes de Internet RSA lleva el nombre de sus

inventores Ronald L Rivest Adi Shamir y Leonard M Adleman quienes lo crearon mientras

trabajaban en la facultad del Instituto Tecnoloacutegico de Massachusetts (Simmons 2019)

En el sistema RSA un usuario elige de manera secreta un par de nuacutemeros primos p y q tan

grandes que factorizar el producto n = pq estaacute mucho maacutes allaacute de las capacidades informaacuteticas

proyectadas para la vida uacutetil de los cifrados A partir del antildeo 2000 los estaacutendares de seguridad del

gobierno de EE UU exigen que el moacutedulo tenga un tamantildeo de 1024 bits es decir p y q deben

tener un tamantildeo de aproximadamente 155 diacutegitos decimales por lo que n es aproximadamente un

nuacutemero de 310 diacutegitos Dado que los nuacutemeros duros maacutes grandes que actualmente se pueden

factorizar son solo la mitad de este tamantildeo y dado que la dificultad de factorizar se duplica

aproximadamente por cada tres diacutegitos adicionales en el moacutedulo se cree que los moacutedulos de 310

diacutegitos estaacuten a salvo de factorizar durante varias deacutecadas

38

2215 Cifrado hiacutebrido Es una teacutecnica comuacuten que combina diferentes funciones

criptograacuteficas como el cifrado de bloque Con el cifrado hiacutebrido se pueden cifrar datos firmarlos

o agregar un MAC y enviarlos en un objeto seguro (como una cadena o archivo) a traveacutes de un

canal de comunicacioacuten inseguro (sin un acuerdo clave entre dos partes)

En el sistema de cifrado hiacutebrido el texto plano (sin formato) se divide en tokens Luego

se calcula la longitud de cada ficha Los tokens y sus longitudes se almacenan en una matriz

Posteriormente se aplica el algoritmo Ceacutesar anidado sugerido El texto producido se almacena en

una matriz n x m llamada A Luego la transposicioacuten de esta matriz At se calcula utilizando

nuestra versioacuten revisada del cifrado de transposicioacuten para resolver el problema de secuenciacioacuten

A continuacioacuten el algoritmo RSA revisado se aplica en la matriz producida En el paso final se

aplica el formato de datos textuales usando el coacutedigo ASCII para producir el texto cifrado El

proceso de descifrado se realiza de la misma manera pero en orden inverso (Nahar amp Abu Abbas

2010)

23 Criptoanaacutelisis

El criptoanaacutelisis es el proceso de estudiar sistemas criptograacuteficos para buscar debilidades

o fugas de informacioacuten En general se considera que el criptoanaacutelisis explora las debilidades de

las matemaacuteticas subyacentes de un sistema criptograacutefico pero tambieacuten incluye la buacutesqueda de

debilidades en la implementacioacuten como ataques de canal lateral o entradas de entropiacutea deacutebiles

39

Su funcioacuten es la de conseguir obtener el significado de mensajes creados por medio de

criptografiacutea El objetivo principal del criptoanaacutelisis es opuesto al de la criptografiacutea Tiene como

finalidad encontrar la debilidad de las diferentes teacutecnicas criptograacuteficas para explotarla y de esta

manera reducir o eliminar la seguridad de la teacutecnica criptograacutefica Cualquier intento de

criptoanaacutelisis puede ser llamado ataque Una vez que un atacante logra romper la seguridad que

una teacutecnica criptograacutefica aportaba al sistema se dice que dicho sistema ha sido roto y por lo tanto

dicho ataque tuvo eacutexito

El criptoanaacutelisis es la investigacioacuten de sistemas texto cifrado y cifrados para revelar el

significado oculto o los detalles del sistema mismo El objetivo de este tipo de estudio es descubrir

los aspectos ocultos incluso si la clave o el algoritmo principal no se pueden descifrar Se necesita

una combinacioacuten exitosa de persistencia matemaacuteticas intuicioacuten curiosidad y una computadora

que funcione para hacer un buen criptoanalista Este tipo de ruptura de coacutedigo es extremadamente

importante especialmente en el mundo tecnoloacutegicamente dependiente de hoy El criptoanaacutelisis es

constantemente realizado por criptoacutegrafos que intentan obtener informacioacuten valiosa y por aquellos

que intentan descifrar el coacutedigo para revelar secretos (Security Degree Hub 2017)

24 Niveles de seguridad

Los niveles de seguridad de sistemas operativos son otorgados de acuerdo con el sistema

operativo que esteacute utilizando la empresa o institucioacuten ya sea puacuteblica privada gubernamental o no

gubernamental En el manual ldquoTrusted Computer System Evaluation Criteriardquo (United States

40

Government Department of Defense 1983) el Departamento de Defensa de los Estados Unidos

define los siguientes niveles

241 Nivel D1 Este nivel es el maacutes bajo de seguridad por lo tanto la norma establece que

el sistema no es confiable Esta divisioacuten contiene solo una clase Estaacute reservado para aquellos

sistemas que han sido evaluados pero que no cumplen con los requisitos para un nivel de

evaluacioacuten superior

242 Nivel C1 Un sistema de nivel C1 cumple nominalmente los requisitos de seguridad

discrecionales al proporcionar separacioacuten de usuarios y datos Incorpora alguna forma de controles

creiacutebles capaces de imponer limitaciones de acceso de manera individual es decir aparentemente

adecuados para permitir que los usuarios puedan proteger la informacioacuten privada o del proyecto y

evitar que otros usuarios lean o destruyan accidentalmente sus datos Se espera que el entorno de

nivel C1 sea uno de los usuarios cooperantes que procesan datos con el mismo nivel de

sensibilidad Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten

de nivel C1 son

Control de acceso discrecional por ejemplo listas de control de acceso (ACL)

usuario grupo

Por lo general para usuarios que estaacuten en el mismo nivel de seguridad

Proteccioacuten de nombre de usuario y contrasentildea y base de datos de autorizaciones

seguras (ADB)

Sistema operativo protegido y modo de operaciones del sistema

Comprobacioacuten perioacutedica de integridad de TCB

41

Mecanismos de seguridad probados sin derivaciones obvias

Documentacioacuten para la seguridad del usuario

Documentacioacuten para la seguridad de la administracioacuten de sistemas

Documentacioacuten para pruebas de seguridad

Documentacioacuten de disentildeo TCB

Tiacutepicamente para usuarios en el mismo nivel de seguridad

La certificacioacuten C1 es rara Los sistemas de ejemplo son versiones anteriores de

Unix IBM RACF

243 Nivel C2 Los sistemas de esta clase imponen un control de acceso discrecional maacutes

fino que los sistemas (C1) lo que hace que los usuarios sean individualmente responsables de sus

acciones a traveacutes de procedimientos de inicio de sesioacuten auditoriacutea de eventos relevantes para la

seguridad y aislamiento de recursos Los siguientes son requisitos miacutenimos para los sistemas

asignados a una clasificacioacuten de nivel C2

La proteccioacuten de objetos puede ser para un solo usuario Por ejemplo a traveacutes de

una base de datos ACL

La autorizacioacuten de acceso solo puede ser asignada por usuarios autorizados

Proteccioacuten de reutilizacioacuten de objetos (Por ejemplo para evitar la reasignacioacuten de

objetos eliminados de manera segura)

Procedimientos obligatorios de identificacioacuten y autorizacioacuten para los usuarios (Por

ejemplo Usuario Contrasentildea)

Auditoriacutea completa de eventos de seguridad (es decir fecha hora evento usuario

eacutexito falla ID de terminal)

42

Modo de operacioacuten del sistema protegido

Proteccioacuten adicional para la autorizacioacuten y los datos de auditoriacutea

Documentacioacuten como C1 maacutes informacioacuten sobre el examen de la informacioacuten de

auditoriacutea

Esta es una de las certificaciones maacutes comunes Los sistemas operativos de ejemplo

son VMS IBM OS 400 Windows NT Novell NetWare 411 Oracle 7 DG AOS

VS II

244 Nivel B1 Los sistemas de este nivel requieren todas las caracteriacutesticas requeridas

para el nivel C2 Ademaacutes debe estar presente una declaracioacuten informal del modelo de poliacutetica de

seguridad etiquetado de datos y control de acceso obligatorio sobre sujetos y objetos nombrados

La capacidad debe existir para etiquetar con precisioacuten la informacioacuten exportada Cualquier falla

identificada por la prueba debe ser eliminada Los siguientes son requisitos miacutenimos para los

sistemas asignados a una clasificacioacuten de nivel B1

Etiquetado obligatorio de seguridad y acceso de todos los objetos (Por ejemplo

archivos procesos dispositivos)

Comprobacioacuten de integridad de etiquetas (Por ejemplo mantenimiento de etiquetas

de sensibilidad cuando se exportan datos)

Auditoriacutea de objetos etiquetados

Control de acceso obligatorio para todas las operaciones

Capacidad para especificar el nivel de seguridad impreso en salida legible para

humanos (Por ejemplo impresoras)

43

Capacidad para especificar el nivel de seguridad en cualquier salida legible por

maacutequina

Auditoriacutea mejorada

Proteccioacuten mejorada del sistema operativo

Documentacioacuten mejorada

Los sistemas operativos de ejemplo son HP-UX BLS Cray Research Trusted

Unicos 80 Digital SEVMS Harris CS SX SGI Trusted IRIX

245 Nivel B2 En los sistemas de nivel B2 el TCB se basa en un modelo de poliacutetica de

seguridad formal claramente definido y documentado que requiere que la aplicacioacuten de control de

acceso discrecional y obligatoria que se encuentra en los sistemas de nivel B1 se extienda a todos

los sujetos y objetos en el sistema Ademaacutes se abordan los canales encubiertos El TCB debe

estructurarse cuidadosamente en elementos criacuteticos para la proteccioacuten y no criacuteticos para la

proteccioacuten La interfaz TCB estaacute bien definida y el disentildeo y la implementacioacuten TCB le permiten

someterse a pruebas maacutes exhaustivas y una revisioacuten maacutes completa Se fortalecen los mecanismos

de autenticacioacuten se proporciona una gestioacuten confiable de las instalaciones en forma de soporte

para las funciones de administrador y operador del sistema y se imponen estrictos controles de

gestioacuten de la configuracioacuten El sistema es relativamente resistente a la penetracioacuten Los siguientes

son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de nivel B2

Notificacioacuten de cambios en el nivel de seguridad que afectan a los usuarios

interactivos

Etiquetas de dispositivos jeraacuterquicos

44

Acceso obligatorio a todos los objetos y dispositivos

Comunicaciones de ruta confiables entre usuario y sistema

Rastreo de canales de almacenamiento encubiertos

Modo de operaciones del sistema maacutes estricto en unidades independientes de varios

niveles

Anaacutelisis de canales encubiertos

Pruebas de seguridad mejoradas

Modelos formales de TCB

Versioacuten actualizacioacuten y anaacutelisis y revisioacuten de parches

Los sistemas de ejemplo son Honeywell Multics Cryptek VSLAN Trusted

XENIX

246 Nivel B3 El TCB debe satisfacer los requisitos del monitor de referencia para mediar

todos los accesos de los sujetos a los objetos ser a prueba de manipulaciones y ser lo

suficientemente pequentildeo como para ser sometido a anaacutelisis y pruebas Con este fin el TCB estaacute

estructurado para excluir el coacutedigo que no es esencial para la aplicacioacuten de la poliacutetica de seguridad

con una importante ingenieriacutea del sistema durante el disentildeo y la implementacioacuten del TCB dirigido

a minimizar su complejidad Se admite un administrador de seguridad los mecanismos de

auditoriacutea se ampliacutean para sentildealar eventos relevantes para la seguridad y se requieren

procedimientos de recuperacioacuten del sistema El sistema es altamente resistente a la penetracioacuten

Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de clase

(B3)

45

ACL adicionalmente basadas en grupos e identificadores

Acceso de ruta confiable y autenticacioacuten

Anaacutelisis automaacutetico de seguridad

Modelos TCB maacutes formales

Auditoriacutea de eventos de auditoriacutea de seguridad

Recuperacioacuten confiable despueacutes de la caiacuteda del sistema y documentacioacuten relevante

Cero defectos de disentildeo en TCB y defectos miacutenimos de implementacioacuten

El uacutenico sistema operativo con certificacioacuten B3 es Getronics Wang Federal XTS-

300

247 Nivel A1 Los sistemas en el nivel A1 son funcionalmente equivalentes a los del nivel

B3 en que no se agregan caracteriacutesticas arquitectoacutenicas adicionales ni requisitos de poliacuteticas La

caracteriacutestica distintiva de los sistemas en este nivel es el anaacutelisis derivado de la especificacioacuten

formal del disentildeo y las teacutecnicas de verificacioacuten y el alto grado resultante de seguridad de que el

TCB se implementa correctamente Esta garantiacutea es de naturaleza de desarrollo comenzando con

un modelo formal de la poliacutetica de seguridad y una especificacioacuten formal de alto nivel del disentildeo

Independientemente del lenguaje de especificacioacuten particular o del sistema de verificacioacuten

utilizado existen los siguientes criterios importantes para la verificacioacuten del disentildeo de nivel A1

Meacutetodos formales y prueba de integridad de TCB

Estos son los uacutenicos sistemas con certificacioacuten A1 Boeing MLS LAN Gemini

Trusted Network Processor Honeywell SCOMP (United States Government

Department of Defense 1983)

46

25 Sistemas Operativos

Un sistema operativo actuacutea como intermediario entre el usuario de una computadora y el

hardware de la computadora El propoacutesito de un sistema operativo es proporcionar un entorno en

el que un usuario pueda ejecutar programas de manera conveniente y eficiente

Un sistema operativo es un software que administra el hardware de la computadora El

hardware debe proporcionar mecanismos apropiados para garantizar el correcto funcionamiento

del sistema informaacutetico y para evitar que los programas del usuario interfieran con el correcto

funcionamiento del sistema (Carretero Peacuterez de Miguel Anasagasti Garciacutea Carballeira amp Peacuterez

Costoya 2001)

Un sistema operativo es un programa que controla la ejecucioacuten de programas de aplicacioacuten

y actuacutea como una interfaz entre el usuario de una computadora y el hardware de la computadora

Una definicioacuten maacutes comuacuten es que el sistema operativo es el uacutenico programa que se ejecuta

en todo momento en la computadora (generalmente llamado kernel) y todo lo demaacutes son

programas de aplicacioacuten

Un sistema operativo se ocupa de la asignacioacuten de recursos y servicios como memoria

procesadores dispositivos e informacioacuten El sistema operativo incluye los programas para

administrar estos recursos como un controlador de traacutefico un programador un moacutedulo de

administracioacuten de memoria programas de E S y un sistema de archivos (Pawar 2016)

47

251 Windows Sistema operativo de la empresa Microsoft es un conjunto de programas

que administra los recursos de una computadora Windows empieza a trabajar cuando se enciende

o inicializa el equipo para gestionar el hardware empezando desde los niveles maacutes baacutesicos

Es importante conocer que los sistemas operativos funcionan tanto en las computadoras

como en diferentes dispositivos electroacutenicos que usan microprocesadores En este caso Windows

su versioacuten estaacutendar funciona con computadoras Microsoft domina el mercado de los sistemas

operativos debido a su comodidad se puede decir que eacuteste sistema operativo se encuentra

instalado en el 887 de los equipos de coacutemputo que cuentan con acceso a Internet en todo el

mundo

Se pueden mencionar algunas aplicaciones principales (que eacutestas tambieacuten pueden ser

desinstaladas por los usuarios o actualizadas sin que el sistema operativo se dantildee o deje de

funcionar) se encuentran el procesador de texto WordPad el navegador Internet Explorer el

reproductor multimedia Windows Media y el editor de imaacutegenes Paint

La principal novedad que aportoacute Windows desde sus oriacutegenes fue la facilidad para usarlo

y el atractivo visual De hecho su nombre (ldquoventanasrdquo) se debe a la forma en que el sistema

presenta a los usuarios los recursos con los que cuenta su computadora lo que facilita las tareas

cotidianas Windows tambieacuten suele recibir varias criacuteticas por sus problemas de seguridad y por

otros fallos

48

252 Registro de Windows El registro es una base de datos jeraacuterquica que contiene datos

que son criacuteticos para el funcionamiento de Windows y las aplicaciones y servicios que se ejecutan

en Windows Los datos estaacuten estructurados en un formato de aacuterbol Cada nodo en el aacuterbol se llama

clave Cada clave puede contener subclaves y entradas de datos llamadas valores A veces la

presencia de una clave es el uacutenico dato que requiere una aplicacioacuten otras veces una aplicacioacuten

abre una clave y usa los valores asociados con la clave (Microsoft Inc 2019) Una clave puede

tener cualquier nuacutemero de valores y los valores pueden tener cualquier forma El registro es

utilizado por

Autenticacioacuten

Nuacutecleo (Kernel)

Controladores de dispositivos

Servicios

SAM

Las carpetas del sistema se almacenaraacuten en distintas rutas de acceso dependiendo de la

versioacuten de Windows con la que se esteacute trabajando a continuacioacuten cuatro de los cinco archivos

que maacutes interesan a esta investigacioacuten se encuentran en la siguiente ubicacioacuten SystemRoot

System32 Config dentro de las siguientes sub llaves

SAM - HKEY LOCAL MACHINE SAM

SECURITY - HKEY LOCAL MACHINE SECURITY

SOFTWARE - HKEY LOCAL MACHINE SOFTWARE

SYSTEM - HKEY LOCAL MACHINE SYSTEM

49

253 Administrador de cuentas de seguridad El administrador de cuentas de seguridad

(SAM por sus siglas en ingleacutes) es una base de datos en donde se encuentran las cuentas de

seguridad Esto es utilizado por Windows para administrar las cuentas de usuario y contrasentildeas en

el formato hash

Las contrasentildeas nunca se almacenan en formato de texto claro Se almacenan en formato

de hash para protegerlas de los ataques La base de datos SAM se implementa como un archivo de

registro y las obtiene del kernel de Windows y mantiene un bloqueo exclusivo al archivo SAM

esto quiere decir que el archivo tiene cierta medida de seguridad para el almacenamiento de las

contrasentildeas (Hernandez 2013)

No es posible copiar el archivo SAM a otra ubicacioacuten en el caso de los ataques en liacutenea

Dado que el archivo SAM estaacute bloqueado con un bloqueo exclusivo al sistema de archivos no

puede ser copiado o movido mientras se ejecuta Windows El bloqueo no iniciaraacute hasta que la

excepcioacuten de la pantalla azul haya sido inicializada o el sistema operativo haya sido apagado Sin

embargo los archivos en formato hash de contrasentildeas fuera de liacutenea estaacuten disponibles para los

ataques de fuerza bruta el contenido del archivo SAM puede ser copiado o descargado utilizando

diversas teacutecnicas

Un identificador de seguridad (SID) es un valor uacutenico de longitud variable utilizado para

identificar a un usuario Cada cuenta tiene un SID uacutenico emitido por una autoridad como un

controlador de dominio de Windows y almacenado en una base de datos de seguridad Cada vez

50

que un usuario inicia sesioacuten el sistema recupera el SID para ese usuario de la base de datos y lo

coloca en el token de acceso para ese usuario El sistema usa el SID en el token de acceso para

identificar al usuario en todas las interacciones posteriores con la seguridad de Windows Cuando

se ha usado un SID como identificador uacutenico para un usuario o grupo no se puede volver a usar

para identificar a otro usuario o grupo

La seguridad de Windows usa SID en los siguientes elementos de seguridad

En descriptores de seguridad para identificar al propietario de un objeto y grupo

primario

En las entradas de control de acceso para identificar al usuario para quien el acceso

estaacute permitido denegado o auditado

En tokens de acceso para identificar al usuario y los grupos a los que pertenece

2531 Identificador de Seguridad (SID Security Identifier)

S - 1 - 5 - 21 - 3983109318 - 554656936 - 3066752241 - 1000

S - indica que es un string de SID

1 - el nivel de revisioacuten

5 - el identificador de valor de autoridad o authority value no siempre seraacute 5 Entre otros

valores que se pueden encontrar estaacuten los siguientes

51

0 - sin autoridad

1 - autoridad global

2 - autoridad local

3 - autoridad de creador

4 - autoridad no uacutenica

5 - autoridad NT

9 - autoridad de administrador de recursos

21 - 3983109318 - 554656936 - 3066752241 - es el dominio en el que se encuentra el

sistema o el identificador local de la computadora

1000 - ID uacutenico para cada cuenta aquiacute se encuentra el RID (Relative Identifier) Nuacutemero

de longitud variable cualquier grupo o usuario que se cree de manera diferente a la predeterminada

recibiraacute un RID de 1000 o superior En el caso de que el valor sea 500 responde a que este SID

representa la cuenta de un administrador el valor de 500 siempre seraacute el mismo en cualquier cuenta

de administrador a su vez el valor 501 representa el SID de una cuenta Invitado (Guest)

(Hernandez 2013)

254 Autenticacioacuten NTML NTLM (NT LAN Manager) es un protocolo empleado por

muchos productos de Microsoft para realizar la autenticacioacuten desafiacuteorespuesta por lo tanto es el

esquema de autenticacioacuten que por defecto usa Firewall de Microsoft y tambieacuten los productos del

servidor proxy

52

Este software fue desarrollado para afrontar el problema del trabajo con Tecnologiacuteas Java

en un entorno orientado a Microsoft Puesto que no se basa en ninguna especificacioacuten oficial de

protocolo por lo tanto no hay garantiacutea de que funciona correctamente en todos los casos Tambieacuten

ha estado en algunas instalaciones de Windows donde funcionoacute con eacutexito

La Autenticacioacuten NTLM se compone de dos protocolos protocolo de autenticacioacuten NTLM

y protocolo de autenticacioacuten LM Estos protocolos utilizan una metodologiacutea de hash diferente para

almacenar contrasentildeas de los usuarios en la base de datos SAM (Hernandez 2013) (Meneacutendez-

Barzanallana 17)

26 LINUX (ROCKS)

Rocks es una distribucioacuten para cluacutester de Linux de coacutedigo abierto que permite a los usuarios

finales construir de manera maacutes amigable cluacutesteres computacionales y muros de visualizacioacuten en

mosaico Cientos de investigadores de todo el mundo han utilizado Rocks para implementar su

propio cluacutester

Desde mayo de 2000 el grupo Rocks ha abordado las dificultades de implementar cluacutesteres

manejables Encaminados hacia un objetivo crear cluacutesters de manera maacutes sencilla Por sencilla

significa faacutecil de implementar administrar actualizar y escalar Este objetivo impulsa a los

creadores de esta herramienta a ayudar a entregar el poder computacional de los cluacutesteres a una

amplia gama de usuarios cientiacuteficos Estaacute claro que poner a disposicioacuten de una amplia gama de

53

cientiacuteficos plataformas de computacioacuten paralelas estables y manejables ayudaraacute enormemente a

mejorar el estado del arte en herramientas paralelas (Rocksclusters 2010)

261 Escritorio De todos los escritorios disponibles para el sistema operativo Linux

GNOME ha logrado convertirse en el maacutes eficiente estable y confiable sin dejar de ser sencillo

de usar De hecho la mayoriacutea de los usuarios independientemente de su experiencia pueden

trabajar con GNOME casi sin esfuerzo

Los usuarios que son nuevos tanto en Linux como en GNOME hariacutean mejor en conocer

los entresijos del escritorio que hacen que Linux no solo sea faacutecil sino tambieacuten divertido

Un entorno de escritorio agrupa programas que trabajan juntos para formar un espacio de

trabajo informaacutetico cohesivo unificado transparente e interactivo para los usuarios O para

decirlo de manera maacutes simple el entorno de escritorio es la interfaz de usuario para el sistema

operativo En el caso de GNOME ese sistema operativo es Linux Sin un entorno de escritorio su

uacutenica alternativa es una sesioacuten de Shell (liacutenea de comandos) basada en texto (Wallen 2019)

262 Paquete de Oficina Una suite ofimaacutetica es una coleccioacuten de software creada por el

mismo proveedor y disentildeada para ser utilizada para tareas rutinarias dentro de una organizacioacuten

Por lo general una suite ofimaacutetica incluye aplicaciones como procesamiento de texto hojas de

caacutelculo presentacioacuten correo electroacutenico toma de notas base de datos colaboracioacuten y otros tipos

de software relacionados En la mayoriacutea de los casos cada aplicacioacuten en la suite ofimaacutetica se puede

instalar por separado y todas las aplicaciones dentro de la suite admiten la interoperabilidad entre

54

siacute Microsoft Office Suite Lotus Live Notes y LibreOffice son todas suites de oficina de uso

comuacuten

263 Organizador de archivos Es una funcioacuten avanzada disentildeada para agrupar y

renombrar archivos usando sus atributos del sistema o meta atributos

Cada archivo tiene atributos del sistema como la fecha (Acceso Creado y Modificado) el

tipo de archivo (definido por extensioacuten) y asociado con la aplicacioacuten registrada de ese tipo de

archivo Estos atributos se pueden usar para generar un nuevo nombre de archivo o carpeta (grupo)

para cada archivo con el mismo atributo Ademaacutes de los atributos del sistema algunos archivos

en su mayoriacutea medios o imaacutegenes pueden contener metacampos como el nombre del artista el

tiacutetulo el nombre del aacutelbum y otros El Organizador de archivos tambieacuten usa estos metacampos

para agrupar archivos en una carpeta con el mismo atributo Por lo tanto el organizador de archivos

opera reglas de organizacioacuten de archivos que definen la jerarquiacutea de agrupacioacuten de carpetas y las

reglas de cambio de nombre de archivos

Asiacute como el conocido ldquoexplorador de Windowsrdquo Linux integra un organizador de archivos

y carpetas llamado NAUTILUS para realizar tareas de manejo de archivos como mover copiar

renombrar crear carpetas y de esta manera administrar nuestros dispositivos de almacenamiento

55

27 Agrupamiento (Cluacutester) de Computadoras

El agrupamiento (cluacutester) de computadoras estaacute conformado por una coleccioacuten de

computadoras autoacutenomas interconectadas trabajando unidas como un solo recurso de computacioacuten

integrado El concepto de agrupamiento de computadoras nacioacute cuando los pioneros de la

supercomputacioacuten intentaban difundir diferentes procesos entre varias computadoras para luego

poder recoger los resultados que dichos procesos debiacutean producir Con un hardware maacutes barato y

faacutecil de conseguir se pudo perfilar que podriacutean conseguirse resultados muy parecidos a los

obtenidos con aquellas maacutequinas mucho maacutes costosas (Chirinov 2003)

Un agrupamiento de computadoras se puede definir como el trabajo realizado por dos o

maacutes computadoras que en conjunto se encargan de proveer una determinada solucioacuten Tiene como

finalidad agrupar el poder de coacutemputo de los nodos implicados para proporcionar una mayor

escalabilidad disponibilidad y fiabilidad (Branch Bedoya amp Mesa Muacutenera 2008)

La escalabilidad es la capacidad de un equipo para hacer frente a voluacutemenes de trabajo

cada vez mayores sin por ello dejar de prestar un nivel de rendimiento aceptable

La disponibilidad y la fiabilidad se encuentran bastante relacionadas aunque difieren

ligeramente en algunos aspectos La disponibilidad es la calidad de estar presente y listo para su

uso mientras que la fiabilidad es la probabilidad de un correcto funcionamiento

56

Entre los tipos de agrupamiento maacutes comunes se pueden encontrar de alta disponibilidad

(ambiente a prueba de fallas) coacutemputo de alto desempentildeo (los procesos o las tareas dadas se

presentan como un solo sistema virtual) y escalamiento horizontal (se utiliza para proporcionar

una sola interfaz a un conjunto de recursos que pueden aumentar o disminuir arbitrariamente su

tamantildeo en un cierto periodo de tiempo) (Gonzaacutelez Ramiacuterez amp Rodriacuteguez Saacutenchez 2008)

271 Beowulf Es una clase de computadora masivamente paralela de altas prestaciones

principalmente construida a base de agrupamiento de componentes hardware estaacutendar (Llorens amp

Pentildea 2002) Consta de un conjunto de nodos minimalistas unidos por un medio de

comunicaciones econoacutemico Esto quiere decir que tienen lo miacutenimo para ejecutar su funcioacuten de

hecho los nodos por siacute solos no son capaces de ejecutar siquiera un sistema operativo (Nievas

Pino amp Arroyo) Se puede ver como una supercomputadora paralela construida con hardware

comercial de faacutecil adquisicioacuten que posee como sistema operativo Linux Los cluacutesters Beowulf son

extremadamente poderosos pero no son para todas las personas Su principal desventaja es que

requieren software disentildeado para poder aprovechar los recursos del cluacutester (Lizaacuterraga 2002)

272 Mosix Seguacuten Peacuterez (2001) la arquitectura Mosix estaacute basada en la misma ideologiacutea

de la arquitectura Beowulf Se basa en un conjunto de parches aplicados al nuacutecleo (kernel) de Linux

y que asignan a todo el grupo de nodos un espacio de direcciones y de procesos comuacuten gracias al

cual los procesos migran de uno a otro con el fin de equilibrar favorablemente la carga del sistema

global Es una herramienta disentildeada para realizar balanceo de carga en el agrupamiento de forma

totalmente transparente de manera tal que los nodos se comportan como una sola maacutequina y asiacute

incrementar el aprovechamiento de cada uno de los nodos (Chaacutevez y otros 1999) La principal

57

ventaja de Mosix frente a Beowulf se basa precisamente en esto Mosix da mejores respuestas que

Beowulf frente a la caiacuteda o insercioacuten de nodos A parte de esto Mosix permite un cambio constante

de aplicacioacuten o incluso el correr aplicaciones independientes de forma simultaacutenea

273 OpenMosix OpenMosix es una extensioacuten del proyecto Mosix Seguacuten Chirinov

(2003) la idea de este modelo es que la distribucioacuten de tareas en el cluacutester la determina OpenMosix

de forma dinaacutemica conforme se van creando tareas Cuando un nodo estaacute demasiado cargado las

tareas que se estaacuten ejecutando pueden migrar a cualquier otro nodo del cluacutester Asiacute desde que se

ejecuta una tarea hasta que eacutesta muere podraacute migrar de un nodo a otro sin que el proceso sufra

mayores cambios

Ademaacutes OpenMosix funciona a nivel de kernel por tanto puede conseguir toda la

informacioacuten que necesite para decidir que tanto estaacute cargado un sistema y queacute pasos se deben

seguir para aumentar el rendimiento ademaacutes puede realizar maacutes funciones que cualquier

aplicacioacuten a nivel de usuario

Despueacutes de elegir el tipo de cluacutester a utilizar se procede a elegir los elementos baacutesicos que

se emplearaacuten para implementar el cluacutester capacidad de procesamiento memoria espacio del disco

de cada nodo asiacute como tambieacuten el ancho de banda de la comunicacioacuten entre los nodos Se deberaacute

decidir cuaacuteles son importantes basaacutendose en la variedad de aplicaciones que se piensen ejecutar

en el cluacutester y de la cantidad de dinero que se disponga para construirlo

58

Bajo estos mismos paraacutemetros se debe escoger tambieacuten el tipo de red que interconectaraacute

los nodos (Turner 2004)

Luego se debe escoger el sistema operativo a utilizar Esta eleccioacuten dependeraacute mucho de

la maacutequina que se escoja Linux es siempre una opcioacuten en cualquier maacutequina y es la eleccioacuten maacutes

comuacuten Muchas de las herramientas necesarias para la implementacioacuten de un cluacutester han sido

desarrolladas bajo Linux Pero existen cluacutesters corriendo bajo Windows NT UNIX Solaris y AIX

59

Capiacutetulo 3 Implementacioacuten de Cluacutester

31 Requisitos previos

Antes de iniciar la instalacioacuten del FrontEnd es necesario asegurarse que las conexiones de

red de los equipos junto con la configuracioacuten de la BIOS de cada uno sean las correctas

311 Conexioacuten de los equipos y acceso a la red

Un cluacutester de alto desempentildeo funciona como un uacutenico equipo el cuaacutel comparte los recursos

de los nodos esclavos con el nodo maestro para ello es esencial la existencia de una red interna de

alta velocidad por medio de la cual se realice la comunicacioacuten entre el nodo maestro y los nodos

esclavos como se muestra en la Figura 31 El nodo maestro necesitaraacute 2 tarjetas de red de alta

Figura 31 Esquema tiacutepico de configuracioacuten de un cluacutester (Fuente Elaboracioacuten propia)

60

velocidad una para la comunicacioacuten interna y otra para la comunicacioacuten con redes externas El

sistema operativo Rocks asigna automaacuteticamente la interface ldquoeth0rdquo a la red interna del cluacutester y

la interface ldquoeth1rdquo a la red externa En caso de que Rocks sea incapaz de determinar cuaacutel es la red

externa debido a la falta de conexioacuten a internet estas podriacutean ser asignadas de manera incorrecta

por tal motivo se sugiere asegurar el nombre de cada una de las interfaces

Dado que Rocks no permite volverlas a asignar una vez finalizada la instalacioacuten es

necesario volver a reinstalarlo para poder solucionar este inconveniente

312 Configuracioacuten de la BIOS Para evitar problemas durante la instalacioacuten conviene

configurar correctamente la Bios

3121 ATAIDE Mode Algunos sistemas operativos puede que no sean capaces de

reconocer el controlador del disco duro como es en el caso de esta distribucioacuten de Rocks usada

Para evitar complicaciones de tener que antildeadir el controlador a mano lo mejor es habilitar el modo

ldquoLegacyrdquo de controlador de disco duro

61

Para ello se accede a la Bios pulsando F2 al encender el equipo se situacutea en la pestantildea

ldquoAdvancedrdquo y se selecciona ldquoDrive Configurationrdquo como se muestra en la Figura 32

Figura 32 Imagen del Bios del equipo en la opcioacuten ldquodrive configurationrdquo (Fuente Elaboracioacuten propia)

Figura 33 Bios ATAIDE Legacy Mode (Fuente Elaboracioacuten propia)

62

Dentro del menuacute se tiene que seleccionar el Modo ldquoLegacyrdquo en la opcioacuten ldquoATAIDE

Moderdquo como se muestra en la Figura 33 y para salir se guardan los cambios con F10

3122 PXE Al momento de instalar un nodo puede ocurrir falla al arrancar y aparecer

bootsplash (Reboot and Select proper device) Para evitarlo es necesario habilitar la opcioacuten de

PXE para que tome los archivos de instalacioacuten del nodo maestro a traveacutes de la red interna

En la Bios se selecciona la pestantildea ldquoBootrdquo y dentro de ese mismo menuacute se deshabilita

ldquoSilent bootrdquo y se habilita la opcioacuten de ldquoPXE boot to lanrdquo como se muestra en la Figura 34

Finalmente hay que verificar que en la secuencia de arranque (Figura 35) como primer

dispositivo sea desde red para que de esta manera inicie desde el PXE

Figura 34 Bios Boot PXE (Fuente Elaboracioacuten propia)

63

Se guardan los cambios antes de salir

32 Instalacioacuten de Sistema Operativo Rocks

Una vez configurados los equipos se enciende el equipo que seraacute el nodo maestro

(FrontEnd) en el cuaacutel previamente se ha modificado la secuencia de inicio del boot desde la Bios

de modo que al insertar el CD de Rocks eacuteste procederaacute a iniciar la instalacioacuten con la siguiente

pantalla que se muestra a continuacioacuten

Figura 35 Bios Boot device prioriry (Fuente Elaboracioacuten propia)

64

Para iniciar la instalacioacuten uacutenicamente se selecciona la opcioacuten ldquoInstall CentOS 7rdquo como se

muestra en la Figura 36 dando asiacute comienzo al proceso de instalacioacuten Tras finalizar un proceso

de carga en memoria Rocks mostraraacute un formulario en entorno graacutefico mediante el cual

procederemos a configurar el FrontEnd

Esta primera pantalla se muestra coacutemo se desea realizar la instalacioacuten puede realizarse

por medio de la descarga del sistema operativo (se requiere internet) En este caso como se muestra

en la Figura 37 dado que previamente se descargoacute el DVD completo se seleccionoacute ldquoCDDVD

based rollsrdquo

Figura 36 Pantalla de Inicio de instalacioacuten de Rocks (Fuente Elaboracioacuten propia)

65

A continuacioacuten Figura 38 se selecciona de la lista de Rolls aquellos que se desean instalar

Figura 37 Pantalla de seleccioacuten de Rolls (Fuente Elaboracioacuten propia)

Figura 38 Listado de opciones de rolls para instalar (Fuente Elaboracioacuten propia)

66

Tras presionar el botoacuten ldquoSubmitrdquo la siguiente pantalla (Figura 39) muestra formulario en

el que hay que indicar la informacioacuten baacutesica del cluacutester entre las cuales aparecen

Fully-Qualified Host Name Nombre con el que se conoceraacute en la red externa el cluacutester

Cluster Name Nombre utilizado para ser identificado dentro de las herramientas del cluacutester

Certificate Organization Locality State and Country Organizacioacuten a la que pertenece el

cluacutester la localidad el estado y la ciudad

Contact URL and LattitudeLongitude Contacto direccioacuten web y posicioacuten GPS

Figura 39 Informacioacuten baacutesica del cluacutester a instalar (Fuente Elaboracioacuten propia)

67

Una vez que se ingresa la informacioacuten al cluacutester se presiona el botoacuten ldquoListordquo y

posteriormente se podraacute cambiar la configuracioacuten baacutesica de la red interna del cluacutester En este caso

Figura 310 se dejoacute el valor por defecto una IP de clase B (1011116)

El siguiente paso es la configuracioacuten de la red externa (para tener acceso a internet) En

este punto se introducen los datos de la red externa a la que se encuentra conectado el nodo

maestro como se muestra en la Figura 311

Figura 310 Configuracioacuten Ethernet de la red privada (Fuente Elaboracioacuten propia)

Figura 311 Configuracioacuten Ethernet de la red puacuteblica (Fuente Elaboracioacuten propia)

68

Para terminar de configurar la red externa como se muestra en la Figura 312 se ingresa la

direccioacuten IP del Gateway y los DNS (Servidor de nombre de dominio) que va a usar para el acceso

a internet

Se continuacutea con el resto del formulario donde se introduce la contrasentildea para el usuario

root tal y como se muestran en la Figura 313

Figura 312 Configuracioacuten de DNS y Gateway (Fuente Elaboracioacuten propia)

Figura 313 Ingresar contrasentildea de usuario root (Fuente Elaboracioacuten propia)

69

Paso siguiente se procede a seleccionar la zona horaria como se muestra en la Figura 314

donde se encuentra ubicado el cluacutester asiacute como un servidor de donde podraacute obtener la zona horaria

automaacuteticamente en este caso se dejoacute el valor por default

En el formulario de la Figura 315 se selecciona la forma de particionar el disco duro

(automaacutetica manual) una vez seleccionado daraacute comienzo al proceso de instalacioacuten de manera

Figura 314 Configuracioacuten horaria (Fuente Elaboracioacuten propia)

Figura 315 Particiones del disco duro (Fuente Elaboracioacuten propia)

70

desatendida Cuando ha concluido la instalacioacuten el equipo se reiniciaraacute y se requeriraacute iniciar con

el usuario root y la contrasentildea establecida previamente

321 Configuracioacuten del teclado Debido a que el teclado por defecto estaacute en idioma

ingleacutes podriacutea provocar problemas al momento de escribir la contrasentildea u otros comandos

Seguacuten las pruebas realizadas aunque se cambie la configuracioacuten del teclado desde el menuacute

de preferencias uacutenicamente se mantiene dentro de la sesioacuten desde la que se ha cambiado dicha

opcioacuten (lo cual implica que la contrasentildea de usuario hay que introducirla seguacuten la distribucioacuten

inglesa)

33 Instalacioacuten de los nodos

Previo a la instalacioacuten de los nodos esclavos cada uno de los equipos fueron configurados

desde la Bios para que arranquen desde la red (seccioacuten 3122) Para ir antildeadiendo los nodos solo

se tiene que introducir el siguiente comando desde nuestro FrontEnd

$insert-ethers

A continuacioacuten como se muestra en la Figura 316 apareceraacute una ventana en la pantalla

en la cual se seleccionaraacute la opcioacuten ldquoComputerdquo

71

Una vez realizado este paso se procede a encender los equipos que funcionaraacuten como

nodos esclavos uno a uno

Se sugiere esperar a que cada nuevo equipo encendido esteacute marcado con un asterisco antes

de proceder a encender el siguiente como se muestra en la Figura 317 De esta manera se asegura

que cada nuevo nodo antildeadido posea el nombre y numeracioacuten deseada

Figura 316 Pantalla para ingresar nodos (Fuente Elaboracioacuten propia)

Figura 317 Indicador de insercioacuten de nuevos nodos (Fuente Elaboracioacuten propia)

72

Puede darse el caso de que un nodo no sea detectado automaacuteticamente eso indica que se

ha omitido alguacuten paso o parte de la configuracioacuten realizada hasta el momento es incorrecta En ese

caso comprobar lo siguiente

Que el nodo esclavo este correctamente conectado a la red interna

Que el FrontEnd (nodo maestro) tenga correctamente configurada la red interna y externa

Que el PXE esteacute habilitado en la Bios del nodo esclavo

331 Administracioacuten de nodos Algunos de los comandos maacutes uacutetiles para para la gestioacuten

de los nodos son los siguientes

Eliminar un nodo de la lista

Reinstalar un nodo

Listar los nodos ya instalados

Acceder a un nodo

$rocks remove host nombre_nodo

$rocks remove host nombre_nodo

$rocks set host boot nombre_nodo action=install

$rocks set host boot nombre_nodo action=install

$rocks list host

$rocks list host

$ssh nombre_nodo

$ssh nombre_nodo

73

Ejecutar un comando de manera remota a un nodo

332 Creacioacuten de cuentas de usuario Para agregar a un usuario hay que realizar los

siguientes pasos

1 Creacioacuten de la cuenta

$useradd nombre_usuario

2 Asignacioacuten de una contrasentildea

$passwd nombre_usuario

3 Sincronizacioacuten de la cuenta de usuario con el resto de nodos

$rocks-user-sync

333 Configuracioacuten del directorio compartido El directorio share es compartido por el

FrontEnd y el resto de nodos se localiza dentro del FrontEnd en la carpeta exports siendo la

carpeta share un enlace simboacutelico a esta uacuteltima

Al principio es posible que no se sincronicen correctamente los archivos introducidos en el

directorio debido a que la carpeta inicialmente estaacute vaciacutea por lo que para solucionar este

inconveniente puede usarse el comando siguiente para reiniciar dicho servicio

$ssh nombre_nodo lsquocomandorsquo

$ssh nombre_nodo lsquocomandorsquo

$cd

$export fs ndashrv

service nfs restart

$cd

$export fs ndashrv

service nfs restart

74

34 Operaciones baacutesicas de Rocks

Comandos y aplicaciones esenciales para el manejo del cluacutester

Ver que rolls estaacuten instalados

$rocks list roll

Visualizar el estado del sistema Figura 318

$qstat ndashf

Probar el sistema de colas para distribuir tareas a los nodos

Para ello se prueba que el SGE del cluacutester funcione enviaacutendole una serie de trabajos

mediante el comando qsub

En primer lugar se crea un fichero (pruebapl) que tenga permisos de ejecucioacuten con el

siguiente contenido

Figura 318 Comando qstat ndashf (Fuente Elaboracioacuten propia)

75

usrbinperl

for(my $i=0$ilt30$i++) sleep(2) print okn

Y se ejecuta con el siguiente comando

$ for ((i=1ilt=10i+=1)) do qsub pruebapl done

Al ejecutarse se puede comprobar que los trabajos se han mandado Figura 319

Y al realizar de nuevo un ldquoqstat ndashfrdquo Figura 320 se observa coacutemo se van realizando

Figura 319 Enviacuteo de trabajos por medio del comando qsub (Fuente Elaboracioacuten propia)

Figura 320 Estado de los trabajos pendientes mostrados por qstat ndashf (Fuente Elaboracioacuten propia)

76

Para ver la carga de trabajo en el cluacutester de manera global y de forma graacutefica se tiene que

ingresar en un navegador web en la siguiente direccioacuten httplocalhostganglia apareceraacute la

Figura 321

Figura 321 Visualizacioacuten de la distribucioacuten de cargas en el cluacutester usando la herramienta Ganglia (Fuente Elaboracioacuten propia)

77

Capiacutetulo 4 Metodologiacutea y Resultados

Una vez finalizada la instalacioacuten y puesta en operacioacuten del equipo se analizaron diferentes

metodologiacuteas de trabajo lo que implicoacute un trabajo arduo debido a que existen complicaciones

cuando se buscan temas relacionados a vulnerar sistemas operativos La realizacioacuten de este

proyecto estaacute basado en la metodologiacutea de Joshua Picolet ldquoCracking Methodologyrdquo (Picolet

2017)

41 Obtener Archivo hash

Se pueden vulnerar contrasentildeas de Windows de diferentes maneras Una de ellas es

mediante el acceso al archivo del Administrador de cuentas de seguridad (SAM) el cual se detalla

en el apartado 253 a traveacutes de la obtencioacuten de las contrasentildeas del sistema en su forma hash por

medio de herramientas diferentes Alternativamente las contrasentildeas se pueden leer desde la

memoria lo que tiene el beneficio adicional de recuperar las contrasentildeas en texto plano y evitar el

requisito de descifrado Para comprender los formatos que se observan cuando se descarguen

hashes del sistema de Windows se requiere una breve descripcioacuten de los diferentes formatos de

almacenamiento

Originalmente las contrasentildeas de Windows de menos de 15 caracteres se almacenaban en

el formato hash de Lan Manager (LM) Algunos sistemas operativos como Windows 2000 XP y

Server 2003 continuacutean usando estos hashes a menos que esteacuten deshabilitados por el usuario

Ocasionalmente un sistema operativo como Windows Vista puede almacenar el hash LM para la

compatibilidad con otros sistemas Seguacuten analistas incluye varias vulnerabilidades como dividir

78

la contrasentildea en dos bloques y permitir que cada uno se descifre de forma independiente Mediante

el uso de tablas Rainbow es trivial descifrar una contrasentildea almacenada en un hash LM

independientemente de la complejidad Este hash se almacena con la misma contrasentildea calculada

en el formato de hash NT como el que se muestra en el siguiente ejemplo

Ejemplo de un hash NTLM con el componente LM y NT

Administrator500611D6F6E763B902934544489FCC9192BB71ED1E7F2B60ED5A2

EDD28379D45C91

Los sistemas operativos Windows maacutes recientes como el Windows 8 y 10 usan el hash NT

En teacuterminos simples no hay una debilidad significativa en este hash que lo diferencie de cualquier

otra funcioacuten hash criptograacutefica Se requieren meacutetodos de descifrado como lo es la fuerza bruta o

ataque de diccionario para recuperar la contrasentildea si uacutenicamente se almacena en el formato NT

Ejemplo de un hash NTLM uacutenicamente con el componente NT (como se ve en los sistemas

Windows mas recientes

Administrator500NOPASSWORDEC054D40119570A4663

4350291AF0F72

Es importante sentildealar que la cadena NO PASSWORD es variable seguacuten la herramienta

que se utilice Otras pueden presentar esta informacioacuten como ceros rellenos o comuacutenmente puede

79

ver la cadena ldquoAAD3B435B51404EEAAD3B435B51404EErdquo en lugar de ninguna contrasentildea

Esto significa que el hash LM estaacute vaciacuteo y no estaacute almacenado

El archivo hash se encuentran en el directorio ldquoWindows System32 configrdquo y se

necesitan ambos archivos SAM y SYSTEM Ademaacutes tambieacuten se encuentran en el archivo de

registro HKEY_LOCAL_MACHINE SAM al que no se puede acceder durante el tiempo de

ejecucioacuten Finalmente las copias de seguridad se pueden encontrar a menudo en ldquoWindows

Repairrdquo (Peleus 2019)

Para extraer el archivo hash de un sistema operativo con un nivel de seguridad C1 existen

diferentes meacutetodos en esta ocasioacuten se procederaacute a iniciar el equipo objetivo con una distribucioacuten

de Linux desde una memoria USB como se muestra en la figura 41 para de esta manera ingresar

al directorio CWINDOWSSystem32Config directorio de ubicacioacuten de los archivos SAM y

SYSTEM que son los necesarios para obtener el archivo hash (Caballero 2018)

Figura 41 Arranque con LiveUSB KaliLinux (Fuente Elaboracioacuten propia)

80

42 Dar Formato al Hash

En este punto es donde se tiene que identificar el algoritmo con el que fueron encriptados

los archivos SAM y SYSTEM que se han obtenido en el punto anterior con la finalidad de

seleccionar el tratamiento que se les daraacute El algoritmo de encriptacioacuten del archivo SAM de

Windows 10 es NTLM y ademaacutes estaacute almacenado en un formato binario (ByteBleeder 2017) por

lo que fue necesario instalar la herramienta con licencia GNU samdump2 para obtener la syskey y

de esta manera poder extraer los hash desde el archivo SAM de Windows

En la figura 42 se han obtenido los hashes del archivo SAM donde se puede observar que

los usuarios Administrador e Invitado estaacuten deshabilitados ademaacutes de que existen tres cuentas de

usuario activas las cuales son Gad prueba y usuarioprueba cada una con su contrasentildea cifrada

en formato NTLM a la derecha del nombre de usuario la cuenta usuarioprueba fue a la que se le

realizoacute el anaacutelisis que se detalla posteriormente

43 Evaluar la fuerza del Hash

En criptografiacutea se dice que un algoritmo criptograacutefico se rompe si por alguacuten meacutetodo se

consigue reducir su fortaleza es decir reducir por ejemplo su entropiacutea de los 2256 bits teoacutericos a

Figura 42 Resultado de la ejecucioacuten de la herramienta samdump2 (Fuente Elaboracioacuten propia)

81

tan soacutelo 2255 por ejemplo El hecho de que se encuentre una colisioacuten no implica necesariamente

que un algoritmo se haya roto pues podriacutea haber sido realizado mediante fuerza bruta pero puede

ser una causa

Un ataque de colisioacuten significa que encuentro dos entradas diferentes que producen el

mismo resultado de un hash particular Este es generalmente el tipo de ataque maacutes faacutecil Es el tipo

de ataque que se conoce desde hace varios antildeos contra MD5

Dado que una utilidad importante de las funciones hash estaacute en las firmas digitales

encontrar colisiones puede facilitar falsificar firmas digitales Es decir dos mensajes distintos que

tengan un mismo resumen tienen ademaacutes la misma firma y un atacante puede reemplazar un

mensaje por el otro Un ejemplo de este ataque fue demostrado en 2008 por un grupo de

investigadores en Aacutemsterdam los cuales falsificaron un certificado raiacutez mediante el uso de un

ataque de colisioacuten contra el algoritmo MD5 (Preukschat 2015)

Un ataque previo a la imagen generalmente es mucho maacutes difiacutecil es encontrar otra entrada

que produzca el mismo resultado que un hash que ya se conoce

Para tratar de aclarar la diferencia aquiacute en un ataque de colisioacuten encuentro dos entradas A

y B que producen el mismo resultado En un ataque de preimagen comienzo a partir de alguacuten

resultado conocido X y encuentro una entrada que produciraacute X como resultado (Coffin 2015)

82

Para realizar esta evaluacioacuten se tomoacute como base la tabla del apeacutendice Hash craking

benchmark (Picolet 2017) el objetivo es observar el comportamiento y velocidad del Hash

mencionado cuando fue sometido a pruebas de criptoanaacutelisis Si se trata de un Hash lento se deberaacute

ser maacutes selectivo en queacute tipos de diccionarios y meacutetodos de criptoanaacutelisis se le debe aplicar Si es

un Hash raacutepido se puede ser maacutes libre con la estrategia de criptoanaacutelisis Este estudio busca

realizar una prueba de criptoanaacutelisis mostrando las diferencias entre el poder de procesamiento de

un cluacutester de 17 nodos contra una computadora personal por lo que no necesariamente se

implementaraacute el meacutetodo oacuteptimo para la realizacioacuten del criptoanaacutelisis

44 Calcular la capacidad del equipo

Con la informacioacuten de la evaluacioacuten de la fuerza del Hash obtenida en el apartado anterior en

este apartado se tiene que establecer la capacidad de la plataforma o plataformas que realizaraacuten

el criptoanaacutelisis

Para conocer la capacidad de procesamiento del cluacutester de alto rendimiento se utilizoacute la

herramienta Linpack Benchmark HPL es una implementacioacuten portaacutetil del Benchmark de alto

rendimiento LINPACK para equipos de coacutemputo distribuido Actualmente se utiliza para obtener

varios resultados en la lista actual de Top500 de HP cluacutesters (Dongarra 2010)

El Linpack Benchmark (HPL del Ingleacutes High-Performance Linpack Bench-mark) es un

software que resuelve un sistema lineal aleatorio de doble precisioacuten aritmeacutetica (64 bits) en equipos

de memoria distribuida El rendimiento muestra el nuacutemero de operaciones de punto flotante por

segundo logradas por el sistema (Petitet Whaley Dongarra amp Cleary 2008)

83

El HPL fue desarrollado en el Argone National Laboratory por Jack Don-garra en 1976 y

es uno de los maacutes usados en sistemas cientiacuteficos y de ingenieriacutea para el caacutelculo de prestaciones

Las principales caracteriacutesticas del algoritmo utilizado por el HPL son

Distribucioacuten ciacuteclica de datos de bloques de dos dimensiones

Variante derecha de la factorizacioacuten LU con pivoteo parcial (Teacutecnica de pivoteo

Dicta que el elemento pivote que debe escogerse es el mayor absolutamente de cada

columna)

Factorizacioacuten recursiva con pivoteo y reenviacuteo de columna

Distintas topologiacuteas virtuales de reenviacuteos

Algoritmo de reduccioacuten de reenviacuteo para ancho de banda (Castelloacute Gimeno 2014)

La resolucioacuten del sistema de ecuaciones se realiza del siguiente modo

1 Se crea un sistema de ecuaciones

(1)

119860119909 = 119887

(2)

119860 isin 119877119899119909119899

(3)

119909 119887 isin 119877119899

84

HPL calcula que la solucioacuten para un sistema de ecuaciones lineales se puede generalizar

como 119860119909 = 119887 donde 119860 es una matriz 119873 119909 119873 cuyos valores se generan aleatoriamente

119909 119910 119887 son vectores de tamantildeo 119873 Como se muestra en la Figura 43

2 Primero se calcula la factorizacioacuten 119871119880 con pivoteo parcial de los coeficientes 119899 y 119899 + 1

de la matriz [119860 119887]

(4)

119875119903[119860 119887] = [[119871119880] 119910]

(5)

119875119903 119871 119880 isin 119877119899119909119899

(6)

119910 isin 119877119899

El primer paso es la factorizacioacuten de la matriz 119860 en una matriz triangular superior 119880

y una matriz triangular inferior 119871 tal que 119860 = 119871119880 La factorizacioacuten se usa para calcular

el vector solucioacuten 119909

3 Una vez el pivoteo (representado por la permutacioacuten de la matriz 119875119903) y la factorizacioacuten

inferior se aplican sobre 119887 la solucioacuten se obtiene en un paso resolviendo el sistema

superior triangular

Figura 43 Sistema de Ecuaciones tipo 119860119909 = 119887 (Fuente Elaboracioacuten propia)

85

(7)

119880119909 = 119910

La matriz triangular inferior izquierda y el conjunto de pivotes no se devuelven en el

resultado Para la estabilidad numeacuterica el algoritmo de factorizacioacuten utiliza un pivote parcial de

fila

La implementacioacuten paralela de Linpack divide la matriz 119860 119873 119909 119873 en una cuadriacutecula de

procesos 119875 119909 119876 bidimensional y luego la divide en subgrupos de mosaicos 119873119861 119909 119873119861 (Petitet

Whaley Dongarra amp Cleary 2008)

Utilizando la herramienta HPL en esta investigacioacuten se obtuvieron los siguientes

resultados

La prueba abordoacute el ajuste de 119873 y la eficiencia obtenida en comparacioacuten con el rendimiento

maacuteximo Se determinoacute un valor para 119873 = 800000 aleatoriamente para ejecutar HPL en todo el

cluacutester Sin embargo el tiempo fue excesivo por lo tanto se determinoacute que este tamantildeo del

problema fue demasiado grande para el cluacutester Al realizar otros experimentos con valores maacutes

pequentildeos de 119873 se obtuvieron mejores resultados de rendimiento La Tabla 41 muestra el

rendimiento de HPL en GFlops para 119873 = 300000 400000 y 500000 Como se puede observar

en la Tabla 41 se obtuvo el mejor resultado de rendimiento 850 GFlops para 119873 = 500000 para

valores mayores de 119873 la distribucioacuten de cargas del cluacutester empieza a sobrepasar su capacidad como

se muestra en la Figura 44 y la vez su rendimiento disminuye Esto ocurre porque la cantidad de

memoria utilizada con las memorias intermedias de comunicacioacuten MPI es mayor de lo esperado

Por lo tanto es necesario dejar maacutes del 20 de la memoria para el sistema (Petitet Whaley

86

Dongarra amp Cleary 2008) Tambieacuten se realizaron pruebas usando solo un nodo de coacutemputo y el

rendimiento fue de 34 GFlops para 119873 = 20000

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia)

Analizando la eficiencia obtenida para la ejecucioacuten de un solo nodo cuando 119873 = 20000

se obtuvo el 823 del rendimiento maacuteximo (el rendimiento maacuteximo para un solo nodo es 477

Gflops) Para todo el cluacutester el rendimiento maacuteximo seriacutea 119879119898119886119909 = 477 119909 17 =

8109 119866119891119897119900119901119904 aproximadamente

Figura 44 Distribucioacuten de cargas del cluacutester

0

500

1000

300000 400000 500000

Gflops

Gflops

87

La Figura 44 titulada ldquoDistribucioacuten de cargas del cluacutesterrdquo muestra la imagen de la

herramienta Ganglia de manera graacutefica a traveacutes de cuadros que variacutean de color dependiendo de la

carga que tenga cada uno de los nodos al momento de implementar la herramienta HPL De manera

inicial indica que el cluacutester tiene un total de 17 equipos de 4 cores cada uno eso da un total de 68

cores trabajando sin equipos inactivos Muestra tambieacuten una sobrecarga en el cluacutester y un

porcentaje promedio de 100 de uso en la uacuteltima hora

45 Establecer Estrategia

Esto significa uacutenicamente que en este apartado se realizaraacute una guiacutea baacutesica para procesar

los hashes obtenidos sin perder de vista que cada escenario a criptoanalizar es uacutenico en funcioacuten

de las circunstancias externas Como ya se ha mencionado anteriormente esta estrategia de

criptoanaacutelisis se ha planteado implementar dos meacutetodos los cuales son Fuerza Bruta y ataque de

diccionario sin importar si son o no los oacuteptimos debido a que se realizaraacute una comparativa de

capacidad de procesamiento

451 Fuerza Bruta Una vez que se han intentado varios meacutetodos y han fallado se puede

iniciar un ataque de fuerza bruta estaacutendar poniendo especial atencioacuten en la cantidad de siacutembolos

del alfabeto que puede usar el equipo a analizar Por encima de 8 caracteres esto generalmente no

tiene sentido debido a limitaciones de hardware y entropiacutea (complejidad de la contrasentildea) Una

contrasentildea de Windows seguacuten Microsoft (Microsoft Inc 2019) una contrasentildea de Windows debe

estaacute formada por

88

26 Caracteres mayuacutesculas de la ldquoArdquo a la ldquoZrdquo

26 Caracteres minuacutesculas de la ldquoardquo a la ldquozrdquo

10 Diacutegitos de base 10 (0 a 9)

32 Caracteres especiales (~$^amp_-+=|()[]ltgt)

94 Caracteres alfanumeacutericos en total

4511 Cantidad de combinaciones posibles Si se usa una clave numeacuterica (nuacutemeros del 0

al 9) existen 10 posibilidades de 4 diacutegitos de longitud que es la extensioacuten por defecto de los

teleacutefonos celulares Para 4 diacutegitos las combinaciones posibles seriacutean 10 mil 104 = 10000

(Labaca Castro 2014)

Por otro lado si tomamos un alfabeto de 26 letras mayuacutesculas y 26 minuacutesculas 10 nuacutemeros

y 10 caracteres especiales en total tenemos 72 diferentes posibilidades para un uacutenico caraacutecter Eso

significa que las combinaciones para una contrasentildea de 4 caracteres seriacutean 724 = 26873856

Baacutesicamente maacutes de 26 millones de combinaciones en una clave de 4 caracteres contra 10 mil en

una clave de 4 diacutegitos numeacutericos En este estudio se utiliza la contrasentildea de bloqueo descrita en el

apartado anterior que es de 94 combinaciones para cada caraacutecter teniendo una longitud de 7

caracteres por lo tanto seraacuten 947 = 64847759000000 de posibles combinaciones que

nuestros equipos deben explorar para obtener la contrasentildea correcta

Como se mencionoacute en el apartado 42 el usuario sobre el cual se realizoacute el criptoanaacutelisis

fue usuarioprueba el cual constaba de una contrasentildea de longitud 7 caracteres la cual despueacutes

de realizado el anaacutelisis y como se puede observar en la Figura 45

89

1 Anaacutelisis a usuario usuarioprueba

2 Nuacutemero de nodos en operacioacuten 17

3 Nuacutemero de procesos ejecutaacutendose de forma paralela 68

4 Tiempo de duracioacuten del anaacutelisis en el cluacutester 122727 horas

5 Contrasentildea criptoanalizada Pass7

Asiacute mismo en la Tabla 42 se muestra el resultado final y el tiempo de duracioacuten del

criptoanaacutelisis realizado al archivo SAM con el cluacutester y la computadora personal

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Horas)

1 (PC) 4 1075316

17 (Cluacutester) 68 122727

1

2

3

4 5

Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester (Fuente Elaboracioacuten propia)

90

452 Diccionario Meacutetodo empleado para romper la seguridad de los sistemas basados en

contrasentildeas (password) en la que el atacante intenta dar con la clave adecuada probando todas (o

casi todas) las palabras posibles ingresadas previamente en un diccionario idiomaacutetico

Generalmente se emplean programas especiales que se encargan de ello

Este meacutetodo suele ser maacutes eficiente que el meacutetodo de fuerza bruta debido a que muchas

usuarios casi siempre suelen utilizar contrasentildeas con una o varias palabras existentes en su lengua

para que la contrasentildea no sea olvidada faacutecilmente y sea sencilla de recordar esto no es una praacutectica

recomendable (Alegsa 2018)

Para realizar este meacutetodo se utilizoacute un diccionario descargado de internet el cual contiene

10000000 de posibles contrasentildeas (g0tmi1k 2018)

Ademaacutes se ejecutoacute un programa creado en lenguaje C (Anexo 1) a traveacutes de la

implementacioacuten de las libreriacuteas MPI y open MPI propias de la arquitectura de cluacutester de

computadoras Este programa fue ejecutado en los mismos equipos descritos anteriormente para

obtener todos los nuacutemeros primos encontrados dentro de un intervalo dado En este caso el

intervalo dado fue de 10000000 con los siguientes resultados mostrados en la Tabla 43

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos (Fuente Elaboracioacuten

propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Segs)

1 (PC) 4 5078

17 (Cluacutester) 68 00013

91

453 Analizar los resultados Posterior a realizar el criptoanaacutelisis y descifrar con eacutexito

una cantidad suficiente de hashes se analizan los resultados en busca de pistas o patrones Este

anaacutelisis puede ayudar a tener eacutexito en cualquier hash restante

454 Personalizar ataques Tomando como base el anaacutelisis de resultados realizado

previamente se disentildearaacuten diversas estrategias personalizadas que aprovechen las vulnerabilidades

conocidas o patrones Los ejemplos seriacutean ataques de maacutescara personalizados o reglas para

adaptarse al comportamiento o las preferencias del usuario objetivo

92

Conclusioacuten

El trabajo de investigacioacuten presentado parte de la necesidad de buscar alternativas para

explotar al maacuteximo la capacidad de procesamiento del equipo de coacutemputo que existe actualmente

dentro del inventario del Instituto Tecnoloacutegico de Acapulco asiacute como proveer una plataforma que

coadyuve a la investigacioacuten dentro del Instituto a traveacutes de implementar un cluacutester de coacutemputo

con capacidad para realizar proyectos en el aacuterea de ingenieriacutea y matemaacuteticas con el fin de optimizar

el tiempo de ejecucioacuten lo cual en un futuro se veraacute reflejado en ventajas para el desarrollo de la

regioacuten

La revisioacuten y anaacutelisis de informacioacuten en relacioacuten a cluacutesters es muy interesante pero a la

vez es compleja dado que involucra diferentes aspectos durante su evolucioacuten asiacute como diversas

metodologiacuteas para su formacioacuten e implementacioacuten Se considera de suma importancia para este

trabajo las revisiones efectuadas ya que son la base para la propuesta entregada

De acuerdo a las especificaciones teacutecnicas de los equipos informaacuteticos existentes dentro

del laboratorio de la Maestriacutea en Sistemas Computacionales y una vez que se realizoacute el anaacutelisis

de varios casos de eacutexito se propuso la metodologiacutea para implementacioacuten de un cluacutester homogeacuteneo

tipo Beowolf Este meacutetodo estaacute basado en otros que ya se han implementado bajo realidades

acadeacutemicas similares rescatando las etapas maacutes importantes de cada uno y complementaacutendolo con

los aportes personales se consideroacute que fue el oacuteptimo debido a que se implementoacute con hardware

convencional y herramientas de uso libre

93

El hecho de haber seleccionado un meacutetodo adecuado permitioacute superar gran parte los

problemas que presentaban las metodologiacuteas que fueron analizadas simplificoacute la implementacioacuten

del cluacutester y permitioacute el poder alcanzar una mayor estabilidad en su desempentildeo desde su etapa

inicial fue importante conocer el resultado en cada una de las etapas de implementacioacuten para

asegurar su desenvolvimiento en el futuro

Para integrar los equipos independientes a la arquitectura cluacutester se realizoacute el disentildeo de

una topologiacutea de red Gigabit Ethernet tipo estrella con un direccionamiento IP estaacutetico la

configuracioacuten de protocolos de comunicacioacuten remota sin autenticacioacuten la comparticioacuten de

archivos en red y la utilizacioacuten de aplicaciones de licencia GPL que permiten obtener el

funcionamiento similar a la de una supercomputadora

Haciendo uso de libreriacuteas de paso de mensajes (MPI) y el software John the Ripper para el

descifrado de contrasentildeas la arquitectura cluacutester implementada alcanzoacute una eficiencia de 885

de rendimiento en comparacioacuten con los recursos computacionales de un solo equipo con las

caracteriacutesticas de un nodo Ademaacutes otros de los proyectos ejecutados en la arquitectura cluacutester

para probar el rendimiento fue la ejecucioacuten de un programa para la deteccioacuten de nuacutemeros primos

dentro de un archivo de 10000000 de nuacutemeros obteniendo una eficiencia de maacutes de 99 gracias

a la distribucioacuten de tareas que proporcionan las libreriacuteas de paso de mensajes (MPI) dentro de la

arquitectura cluacutester

Con la implementacioacuten de la arquitectura cluacutester el laboratorio de la Maestriacutea en Sistemas

Computacionales podraacute dar soluciones potentes eficientes y econoacutemicas en los entornos de

94

investigacioacuten mejorando la capacidad de procesamiento en aplicaciones como evaluacioacuten de

algoritmos compresioacuten de archivos renderizacioacuten de imaacutegenes anaacutelisis de datos (big data) en un

tiempo relativamente bajo ideal para las necesidades educativas

La experiencia obtenida al realizar esta investigacioacuten y propuesta ha sido enriquecedora

tanto por la obtencioacuten de conocimiento en base a la historia evolucioacuten y arquitectura de cluacutesters

asiacute como la programacioacuten paralela y sus ventajas en diferentes proyectos desarrollados en todo el

mundo Igualmente la comparacioacuten entre cada uno de los modelos y meacutetodos resulta interesante

dado que existe un sinnuacutemero de ejemplos con caracteriacutesticas diferentes pero baacutesicamente con un

mismo objetivo final

Trabajo Futuro

El cluacutester implementado en el Laboratorio de la Maestriacutea en Sistemas computacionales del

Instituto Tecnoloacutegico de Acapulco puede ser utilizado en gran cantidad de aplicaciones dentro de

las diferentes aacutereas de investigacioacuten del Instituto asiacute como estar disponible para el Departamento

de Posgrado e Investigacioacuten como apoyo durante la realizacioacuten de tareas y proyectos dentro de las

aacutereas de Desarrollo de Sistemas Inteligentes asiacute como de Tecnologiacuteas Web

Propuesta de Trabajo a Futuro

Durante la realizacioacuten de este proyecto se observoacute la necesidad que existe dentro del

departamento de Investigacioacuten y Posgrado de equipos de alta capacidad de procesamiento para

realizar de una manera maacutes eficiente las investigaciones que se estaacuten llevando a cabo Una de ellas

es el ldquoSistema de apoyo al diagnoacutestico oportuno de Retinopatiacutea Diabeacuteticardquo en la cual a traveacutes del

entrenamiento de una red neuronal se clasificaraacuten y evaluaraacuten un nuacutemero de 3000 imaacutegenes para

95

demostrar la presencia de dicha enfermedad en pacientes del Instituto Estatal de Oftalmologiacutea

Actualmente se ha realizado una prueba de entrenamiento de dicha red neuronal con 70 imaacutegenes

obteniendo como resultado un tiempo clasificacioacuten y evaluacioacuten de 301532 horas en un equipo

con un procesador Core I7 con 8 GB en memoria RAM

96

Bibliografiacutea

Alegsa (01 de 01 de 2018) Alegsa Diccionario Informaacutetico Recuperado el 07 de 2019 de

Alegsa httpwwwalegsacomarDicataque_por_diccionariophp

Avecto (2017) Avecto Limited Recuperado el 10 de 08 de 2018 de AVECTO a Bomgar

Company wwwavectocom

Borghello C (2009) Seguridad de la Informacioacuten Recuperado el 11 de 2018 de Criptografiacutea de

la A-Z httpswwwsegu-infocomarproyectosp1_hashhtm

Branch Bedoya J amp Mesa Muacutenera A (Diciembre de 2008) Implementacioacuten de un cluster

homogeacuteneo para la resolucioacuten de problemas de alta complejidad computacional Avances

en Sistemas e Informaacutetica 5(3)

ByteBleeder (02 de 06 de 2017) Practical guide to NTLM Relaying in 2017 Obtenido de Github

httpsbyt3bl33d3rgithubiopractical-guide-to-ntlm-relaying-in-2017-aka-getting-a-

foothold-in-under-5-minuteshtml

Caballero A (26 de 06 de 2018) Hacking Eacutetico Recuperado el 03 de 2019 de John The Ripper

httpwwwreydescomdq=Recuperar_la_Contrasena_del_Administrador_utilizando_s

amdump2_y_John_The_Ripper

Carretero Peacuterez J de Miguel Anasagasti P Garciacutea Carballeira F amp Peacuterez Costoya F (2001)

Sistemas Operativos Una visioacuten aplicada (C F Madrid Ed) Madrid Espantildea

McGRAW-HillInteramericana

Castelloacute Gimeno A (30 de 07 de 2014) Universitat Jaume Recuperado el 10 de 2019 de

Evaluacioacuten de prestaciones mediante laaplicacioacuten HPL de clusters utilizandorCUDA

97

httprepositoriujiesxmluibitstreamhandle10234115082TFM_2014_CastelloGimen

oApdfsequence=1ampisAllowed=y

Chaacutevez J Echeverriacutea C Correa M Vaacutezquez E Suaacuterez M Maacutermol X Diacuteaz G (07 de

1999) Centro de Caacutelculo Cientiacutefico Recuperado el 01 de 05 de 2018 de Universidad de

Los Andes httpwwwcecalculavedocumentaciontutorialesbeowulfinformehtml

Chirinov R (2003) Nfinite9000 SL Recuperado el 26 de 04 de 2018 de Noticias 3D

httpswwwnoticias3dcomarticuloaspidarticulo=248amppag=4

Coffin J (23 de 07 de 2015) Quora Recuperado el 15 de 08 de 2019 de

httpswwwquoracomWhat-does-it-mean-when-a-hashing-algorithm-has-been-broken

Dongarra J (2010) Top500 Super computer sites Recuperado el 07 de 2019 de http

wwwtop500org

Educba (01 de 01 de 2019) Recuperado el 10 de 2019 de Educbaorg

httpswwweducbacomidea-algorithm

europa press (04 de 06 de 2013) Portal Tic Recuperado el 18 de 11 de 2018 de Europa Press

httpswwweuropapressesportalticgadgetsnoticia-cuarta-generacion-intel-core-mayor-

salto-cuanto-ahorro-energetico-20130604174722html

g0tmi1k (2018) github Recuperado el 05 de 2019 de github

httpsgithubcomdanielmiesslerSecListsblobmasterPasswordsCommon-

Credentials10-million-password-list-top-1000000txt

Gonzaacutelez Agudelo D (2014) El riesgo y la falta de politicas de seguridad informaacutetica una

amenaza en las empresas certificadas basc Recuperado el 20 de 05 de 2018 de

Universidad Militar Nueva Granada

httpsrepositoryunimilitareducobitstream10654122511ENSAYO20FINALpdf

98

Gonzaacutelez Ramiacuterez E amp Rodriacuteguez Saacutenchez A (2008) Disentildeo e implementacioacuten de un cluster

tipo BEOWULF para el desarrollo de coacutemputo cientiacutefico avanzado CdMx Mexico

Hernandez M (2013) Forensics Mexico Recuperado el 07 de 2018 de La importancia del

registro de Windows parte 1 httpforensicsmexicoblogspotcom201309la-

importancia-del-registro-de-windowshtml

Kowalczyk C (01 de 2015) Crypto-IT Recuperado el 11 de 2018 de Crypto-IT

httpwwwcrypto-itnetengasymmetricindexhtml

Labaca Castro R (13 de 06 de 2014) We live security Recuperado el 2019 de 08 de 07 de

Welivesecuritybyeset httpswwwwelivesecuritycomla-es20140613matematica-

claves-numerica-alfanumerica

Lizaacuterraga C (2002) Departamento de Fiacutesica Recuperado el 12 de 03 de 2018 de Universidad

de Sonora httpclustersfisicausonmx

Llorens E amp Pentildea M (2002) Recuperado el 04 de 2018 de Departament dArquitectura de

Computadors httppersonalsacupceduenricPFCBeowulfbeowulfhtml

Meneacutendez-Barzanallana R (07 de 08 de 17) Universidad de Murcia Recuperado el 11 de 2018

de Informaacutetica Aplicada a las Ciencias Sociales

httpswwwumesdocenciabarzanaIACCSSCriptografiahtml

Merkle R amp Damgaringrd I (sf) Numerenturorg Recuperado el 06 de 2019 de Para computar -

numerenturorg httpnumerenturorgfuncion-merkle-damgard

Microsoft Inc (02 de 05 de 2019) wwwmicrosoftcom Obtenido de Password must meet

complexity requirements httpsdocsmicrosoftcomes-eswindowssecuritythreat-

protectionsecurity-policy-settingspassword-must-meet-complexity-requirements

99

Mifsud E (26 de 03 de 2012) Introduccioacuten a la seguridad informaacutetica Recuperado el 07 de 05

de 2018 de Ministerio de educacioacuten cultura y deportes Gobierno de Espantildea

httprecursosticeducacionesobservatoriowebessoftwaresoftware-general1040-

introduccion-a-la-seguridad-informaticashowall=1

Murugesan S (01 de 02 de 2008) Researchgate doi101109MITP200810

Nahar K amp Abu Abbas O (01 de 2010) Researchgate Recuperado el 07 de 2019 de

Researchgate

httpswwwresearchgatenetpublication315492522_Hybrid_Cipher_System

Nievas F Pino O amp Arroyo R (sf) Los clusters como Plataforma de Procesamiento Paralelo

Recuperado el 25 de 04 de 2018 de

httpusuarioslycoseslacaraocultadescargasClusters_definitivo pdf

Pawar S (2016) A computer science portal for geeks Recuperado el 10 de 2018 de

Geeksforgeeks httpswwwgeeksforgeeksorgrc5-encryption-algorithm

Peleus (2019) NETSEC Recuperado el 08 de 2019 de httpsnetsecwsp=314

Peacuterez Tavera I (2014) Obtenido de Universidad Autonoma del Estado de Hidalgo

httpswwwuaehedumxscigeboletinprepa4n2e4html

Peacuterez M (2001) Recuperado el 15 de 04 de 2018 de

httpwwwdragonesorgBibliotecaArticulosArquitecturaParalela2pdf

Petitet A Whaley R C Dongarra J amp Cleary A (2008) HPL - A Portable Implementation of

the High-Performance Linpack Benchmark for Distributed-Memory Computers

Recuperado el 07 de 2019 de httpwwwnetliborgbenchmarkhpl

Picolet J (2017) Hash Crack Password Cracking Manual (Vol 2) Createspace Independent

Pub

100

Preukschat A (23 de 02 de 2015) Oro y Finanzas Recuperado el 07 de 2019 de

httpswwworoyfinanzascom201502que-es-colision-criptografia-bitcoin

Robbins D (2008) OpenMosix Recuperado el 22 de 04 de 2018 de the openMosix Project

httpopenmosixsourceforgenetintroduction_to_openmosixhtml

Rocha Quezada J d Botello Rionda S Vargas Feacutelix J M amp Munguiacutea Torres I A (Sep-Dic

de 2011) Disentildeo e implementacioacuten de un cluacutester de coacutemputo de alto rendimiento Acta

Universitaria 21(3) 24-33 Recuperado el 1 de 12 de 2018

Rocksclusters (01 de 01 de 2010) httpwwwrocksclustersorg Recuperado el 01 de 06 de 2018

de httpwwwrocksclustersorg httpwwwrocksclustersorg

Sanjoy K (01 de 01 de 2015) DZone Recuperado el 15 de 06 de 2019 de DZone

httpsdzonecomarticlessecurity-algorithms-des-algorithm

Security Degree Hub (01 de 2017) Security Degree Hub Recuperado el 13 de 02 de 2019 de

Security Degree Hub httpswwwsecuritydegreehubcomwhat-is-cryptanalysis

Simmons G (01 de 01 de 2019) Encyclopedia Britannica Recuperado el 08 de 2019 de

Encyclopedia Britannica httpswwwbritannicacomtopicRSA-encryption

statista (09 de 2017) Statista Obtenido de Statista Co httpsesstatistacom

Turner D (2004) Recuperado el 12 de 02 de 2018 de Ames Lab

httpwwwsclameslabgovProjectsparrallel_computingpara_intohtml

United States Government Department of Defense (1983) Trusted Computer System Evaluation

Criteria Rainbow Series

Universidad Internacional de Valencia (09 de Septiembre de 2016) Nuestros

expertosTecnologiacutea Recuperado el 27 de Abril de 2018 de Universidad Internacional de

Valencia httpswwwuniversidadviuesla-seguridad-informatica-puede-ayudarme

101

Wallen J (19 de 01 de 2019) Lifewire Recuperado el 13 de 06 de 2019 de Lifewire

httpswwwlifewirecomgnome-3-desktop-4175640

Yang H (01 de 02 de 2019) Herong Yang Recuperado el 15 de 06 de 2019 de Cryptography

Tutorials httpwwwherongyangcomCryptographyDSA-Introduction-What-Is-DSA-

Digital-Signature-Algorithmhtml

102

Anexo 1

Programa en Lenguaje C para la obtencioacuten de nuacutemeros primos utilizando libreriacuteas mpi

include ltcstdlibgt

include ltiostreamgt

include ltiomanipgt

include ltcmathgt

include ltctimegt

include mpih

using namespace std

int main ( int argc char argv[] )

int prime_number ( int n int id int p )

void timestamp ( )

int main ( int argc char argv[] )

int i

int id

int master = 0

int n

int n_factor

int n_hi

int n_lo

int p

int primes

int primes_part

double wtime

n_lo = 1

n_hi = 10000000

n_factor = 2

MPIInit ( argc argv )

p = MPICOMM_WORLDGet_size ( )

id = MPICOMM_WORLDGet_rank ( )

if ( id == master )

cout ltlt n

cout ltlt Cuenta primosn

cout ltlt C++MPI versionn

cout ltlt n

cout ltlt Programa para contar cantidad de primos para un N dadon

cout ltlt Corriendo en ltlt p ltlt procesosn

cout ltlt n

103

cout ltlt N S Tiempon

cout ltlt n

n = n_lo

while ( n lt= n_hi )

if ( id == master )

wtime = MPIWtime ( )

MPICOMM_WORLDBcast ( ampn 1 MPIINT master )

primes_part = prime_number ( n id p )

MPICOMM_WORLDReduce ( ampprimes_part ampprimes 1 MPIINT

MPISUM

master )

if ( id == master )

wtime = MPIWtime ( ) - wtime

cout ltlt ltlt setw(8) ltlt n

ltlt ltlt setw(8) ltlt primes

ltlt ltlt setw(14) ltlt wtime ltlt n

n = n n_factor

MPIFinalize ( )

if ( id == master )

cout ltlt n

cout ltlt PRIME_MPI - Procesos maestron

cout ltlt Finalizacion del calculo normaln

return 0

int prime_number ( int n int id int p )

int i

int j

int prime

int total

104

total = 0

for ( i = 2 + id i lt= n i = i + p )

prime = 1

for ( j = 2 j lt i j++ )

if ( ( i j ) == 0 )

prime = 0

break

total = total + prime

return total

void timestamp ( )

define TIME_SIZE 40

static char time_buffer[TIME_SIZE]

const struct tm tm

size_t len

time_t now

now = time ( NULL )

tm = localtime ( ampnow )

len = strftime ( time_buffer TIME_SIZE d B Y IMS p tm )

cout ltlt time_buffer ltlt n

return

undef TIME_SIZE

Page 3: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios

ii

Descargo de Responsabilidad Institucional

El que suscribe declara que el presente documento titulado ldquoCriptoanaacutelisis a la funcioacuten

hash de un sistema operativo nivel C1 empleando un cluacutester HPC con software de uso librerdquo es un

trabajo propio y original el cuaacutel no ha sido utilizado anteriormente en institucioacuten alguna para

propoacutesitos de evaluacioacuten publicacioacuten yo obtencioacuten de alguacuten grado acadeacutemico

Ademaacutes se han recogido todas las fuentes de informacioacuten utilizadas las cuales han sido

citadas en la seccioacuten de referencias bibliograacutefica de este trabajo

Nombre Ing Gaddiel Fredy Flores Arteaga Fecha y firma

iii

Dedicatoria

Este logro se lo dedico a mi toda mi familia que incondicionalmente siempre estaacute ahiacute

cuando los necesito A mis Padres especialmente dedicado a mi Madre que es un ejemplo de

esfuerzo para miacute sabe el camino complicado que he tenido que pasar para poder llegar a este

gratificante momento y siempre ha tenido una palabra que me alienta a no desmallar y seguir

adelante

Dedicado tambieacuten para mi hermano Uriel porque sin saberlo y a la distancia su apoyo y

confianza han sido un pilar fundamental para poder llegar a este momento

Adrielito hijo te dedico este logro por tu paciencia porque seacute que has tenido que pasar

tiempo con Papaacute en la escuela en lugar de estar en casa descansando o jugando despueacutes de salir

de tus clases gracias por soportarlo te amo y espero ser un ejemplo de esfuerzo y perseverancia

para ti

Los amo a todos

iv

Agradecimientos

Agradezco primero y ante todo a Dios todo se lo debo a Eacutel por derramar sus

bendiciones sobre miacute por acompantildearme en cada paso que doy y haber fortalecido mi corazoacuten e

iluminado mi mente Gracias Padre

A mi familia que ha estado ahiacute siempre a mi lado en los momentos maacutes oscuros y

difiacuteciles creyendo en miacute impulsaacutendome para alcanzar mis metas

Al Consejo Nacional de Ciencia y Tecnologiacutea por haberme apoyado econoacutemicamente

para la realizacioacuten de este proyecto

A mi director de tesis el Dr Eduardo de la Cruz Gaacutemez por su tiempo por su paciencia

por los valiosos aportes criacuteticas comentarios y sugerencias que realizoacute durante este proyecto

Al Departamento de Posgrado e Investigacioacuten del Instituto Tecnoloacutegico de Acapulco asiacute

como a toda la plantilla docente de la cual me llevo conocimiento y experiencias

enriquecedoras que sin lugar a dudas marcaron mi vida profesional

A la segunda generacioacuten muchas gracias Abejorros sin el apoyo mutuo durante el

tiempo que pasamos en las aulas y durante el desarrollo de los proyectos tal vez no lo

hubieacuteramos logrado

v

Resumen

El presente trabajo inicia con una breve introduccioacuten sobre la importancia que tiene la

seguridad en cualquier aspecto de la vida y sobre todo en el aacuterea laboral especiacuteficamente en el

aacuterea informaacutetica Posteriormente resalta coacutemo la criptografiacutea ha estado presente en momentos

importantes de la vida del ser humano sobre todo dentro del aacutembito militar en la cual ha sido

fundamental para permitir comunicaciones seguras Actualmente la criptografiacutea estaacute dentro de

nuestro diario vivir cuando realizamos transacciones en internet de manera segura Como parte de

la investigacioacuten en este trabajo se describen los tipos de criptografiacutea y criptoanaacutelisis tambieacuten se

analizan los niveles de seguridad de sistemas operativos asiacute como los meacutetodos de agrupamiento

de computadoras para implementar con la ayuda de esta herramienta de una manera maacutes raacutepida

criptoanaacutelisis a un sistema operativo con un nivel de seguridad C1

Palabras clave cluacutester seguridad criptoanaacutelisis

vi

Abstract

This work begins with a review of the importance of security in any aspect of life and

especially in the workplace specifically in the computer area Later this work speaks briefly about

how cryptography has been present at important moments in the life of the human being especially

in the military field in which it has been fundamental to allow secure communications Currently

cryptography is inside our daily life when we conduct transactions on the internet in a secure

manner As part of the research in this work the types of cryptography and cryptanalysis are

described as well as the security levels of operating systems and above all the main methods of

computers clustering to implement a system with a faster method of cryptanalysis in an operative

system with a security level C1

Keywords cluster security cryptanalysis

vii

Iacutendice de Contenido

Descargo de Responsabilidad Institucional ii

Dedicatoria iii

Agradecimientos iv

Resumen v

Abstract vi

Iacutendice de Contenido vii

Iacutendice de Figuras x

Iacutendice de Tablas xi

Capiacutetulo 1 Introduccioacuten 1 11 Antecedentes del problema 1

12 Planteamiento del Problema 4

13 Objetivos 6

131 Objetivo General 6

132 Objetivos Especiacuteficos 6

14 Justificacioacuten 7

15 Hipoacutetesis 7

16 Alcances y Limitaciones 8

17 Impacto Social Tecnoloacutegico Econoacutemico y Ambiental 8

171 Impacto social 8

172 Impacto ambiental 9

173 Impacto econoacutemico 10

18 Metodologiacutea a Utilizar 10

181 Anaacutelisis 10

182 Disentildeo 10

1821 Economiacutea 10

1822 Instalaciones 10

1823 Escalabilidad 11

1824 Red 11

1825 Software 11

1826 Almacenamiento 12

183 Implementacioacuten 12

1831 Software 12

1832 Hardware 13

1833 Recursos totales del cluacutester 13

19 Aseguramiento Teacutecnico ndash Material 13

191 Hardware 14

viii

1911 Equipo de coacutemputo 14

Capiacutetulo 2 Estado del Arte 16

Marco Teoacuterico 27 21 Seguridad de la Informacioacuten 27

211 Objetivo de la seguridad de la informacioacuten 27

212 Principios de la seguridad informaacutetica 28

213 Caracteriacutesticas de seguridad informaacutetica 28

214 Formas de Autenticacioacuten 29

215 Ciber-seguridad 29

22 Criptografiacutea 30

221 Tipos de Criptografiacuteas 30

2211 Tablas Hash 30

2212 Tipos de algoritmos Hash 31

22121 SHA - 1 (Secure Hash Algorithm) 31

22122 MD5 (Message Digest Algorithm) 31

22123 RIPEMD ndash 160 32

22124 Funcioacuten Merkle-Damgaringrd 32

2213 Cifrado simeacutetrico 32

22131 RC5 (Cifrado de Rivest) 33

22132 IDEA (International Data Encryption Algorithm) 33

22133 DES (Data Encryption Standard) 34

2214 Cifrado asimeacutetrico 35

22141 DSA (Digital Signature Algorithm - Algoritmo de Firma digital) 36

22142 RSA 37

2215 Cifrado hiacutebrido 38

23 Criptoanaacutelisis 38

24 Niveles de seguridad 39

241 Nivel D1 40

242 Nivel C1 40

243 Nivel C2 41

244 Nivel B1 42

245 Nivel B2 43

246 Nivel B3 44

247 Nivel A1 45

25 Sistemas Operativos 46

251 Windows 47

252 Registro de Windows 48

253 Administrador de cuentas de seguridad 49

2531 Identificador de Seguridad (SID Security Identifier) 50

254 Autenticacioacuten NTML 51

26 LINUX (ROCKS) 52

261 Escritorio 53

262 Paquete de Oficina 53

263 Organizador de archivos 54

27 Agrupamiento (Cluacutester) de Computadoras 55

271 Beowulf 56

ix

272 Mosix 56

273 OpenMosix 57

Capiacutetulo 3 Implementacioacuten de Cluacutester 59 31 Requisitos previos 59

311 Conexioacuten de los equipos y acceso a la red 59

312 Configuracioacuten de la BIOS 60

3121 ATAIDE Mode 60

3122 PXE 62

32 Instalacioacuten de Sistema Operativo Rocks 63

321 Configuracioacuten del teclado 70

33 Instalacioacuten de los nodos 70

331 Administracioacuten de nodos 72

332 Creacioacuten de cuentas de usuario 73

333 Configuracioacuten del directorio compartido 73

34 Operaciones baacutesicas de Rocks 74

Capiacutetulo 4 Metodologiacutea y Resultados 77 41 Obtener Archivo hash 77

42 Dar Formato al Hash 80

43 Evaluar la fuerza del Hash 80

44 Calcular la capacidad del equipo 82

45 Establecer Estrategia 87

451 Fuerza Bruta 87

4511 Cantidad de combinaciones posibles 88

452 Diccionario 90

453 Analizar los resultados 91

454 Personalizar ataques 91

Conclusioacuten 92

Trabajo Futuro 94 Propuesta de Trabajo a Futuro 94

Bibliografiacutea 96

Anexo 1 102

x

Iacutendice de Figuras

Figura 31 Esquema tiacutepico de configuracioacuten de un cluacutester xi

Figura 32 Imagen del Bios del equipo en la opcioacuten ldquodrive configurationrdquo 61

Figura 33 Bios ATAIDE Legacy Mode 61

Figura 34 Bios Boot PXE 62

Figura 35 Bios Boot device prioriry 63

Figura 36 Pantalla de Inicio de instalacioacuten de Rocks 64

Figura 37 Pantalla de seleccioacuten de Rolls 65

Figura 38 Listado de opciones de rolls para instalar 65

Figura 39 Informacioacuten baacutesica del cluacutester a instalar 66

Figura 310 Configuracioacuten Ethernet de la red privada 67

Figura 311 Configuracioacuten Ethernet de la red puacuteblica 67

Figura 312 Configuracioacuten de DNS y Gateway 68

Figura 313 Ingresar contrasentildea de usuario root 68

Figura 314 Configuracioacuten horaria 69

Figura 315 Particiones del disco duro 69

Figura 316 Pantalla para ingresar nodos 71

Figura 317 Indicador de insercioacuten de nuevos nodos 71

Figura 318 Comando qstat ndashf 74

Figura 319 Enviacuteo de trabajos por medio del comando qsub 75

Figura 320 Estado de los trabajos pendientes mostrados por qstat ndashf 75

Figura 321 Visualizacioacuten de la distribucioacuten de cargas en el cluacutester usando la herramienta

Ganglia 76

Figura 41 Arranque con LiveUSB KaliLinux 79

Figura 42 Resultado de la ejecucioacuten de la herramienta samdump2 80

Figura 43 Sistema de Ecuaciones tipo 119860119909 = 119887 Fuente Propia 84 Figura 44 Distribucioacuten de cargas del cluacutester 86

Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester 89

xi

Iacutendice de Tablas

Tabla 11 Costo del Proyecto 15

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia) 86

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia) 89

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos

(Fuente Elaboracioacuten propia) 90

1

Capiacutetulo 1 Introduccioacuten

11 Antecedentes del problema

Sin lugar a duda una de las herramientas maacutes importantes producida en el siglo XX ha sido

la computadora la cual ha provocado cambios vertiginosos en la sociedad y en el progreso de la

misma En la actualidad el entorno estaacute praacutecticamente controlado por las nuevas tecnologiacuteas que

a medida que transcurre el tiempo avanzan sin liacutemites y en ocasiones son utilizadas

incorrectamente provocando dantildeos de grandes dimensiones

Los trascendentales cambios operados en el mundo moderno caracterizados por su

constante desarrollo la acelerada globalizacioacuten de la economiacutea la acentuada dependencia a

almacenar grandes voluacutemenes de informacioacuten y los sistemas que la proveen aunado a grandes

inversiones de las empresas en conocimiento actual y futuro en sistemas de informacioacuten ademaacutes

del potencial que poseen las tecnologiacuteas para cambiar draacutesticamente las organizaciones y las

praacutecticas de negocio asiacute como crear nuevas oportunidades disentildear nuevas estructuras tecnoloacutegicas

basadas en informacioacuten la convierte en un activo codiciable Tales avances hacen permanente el

riesgo en las tecnologiacuteas y nos llevan a pensar en la problemaacutetica sobre la seguridad informaacutetica

La proteccioacuten de datos documentos y control de acceso a la informacioacuten es un tema que

cada diacutea toma maacutes fuerza en las grandes compantildeiacuteas debido a las diferentes praacutecticas de

especialistas tecnoloacutegicos como los son los hackers y crackers que roban informacioacuten vital para

posteriormente sacar provecho de ella

2

ldquoDesde la aparicioacuten de los grandes sistemas aislados hasta nuestros diacuteas en los que el

trabajo en red es lo habitual los problemas derivados de la seguridad de la informacioacuten han ido

tambieacuten cambiando evolucionando pero estaacuten ahiacute y las soluciones han tenido que ir adaptaacutendose

a los nuevos requerimientos teacutecnicos Aumenta la sofisticacioacuten en el ataque y ello aumenta la

complejidad de la solucioacuten pero la esencia es la mismardquo (Mifsud 2012)

Dentro del mundo actual la informacioacuten es denominada un activo importante de una

institucioacuten la cual debe ser protegida para evitar su peacuterdida modificacioacuten o el uso inadecuado de

su contenido

El extraviacuteo o el mal uso de informacioacuten que para alguien es confidencial genera dantildeos y

repercusiones directas relacionadas a la integridad disponibilidad y confidencialidad de los

archivos y a su vez a los duentildeos de dicha informacioacuten

ldquoLa seguridad informaacutetica se distingue por tener dos propoacutesitos de seguridad la Seguridad

de la Informacioacuten y la Proteccioacuten de Datos estos se diferencian debido a que los datos son valores

numeacutericos que soportan la informacioacuten mientras que la informacioacuten es aquello que tiene un

significado para nosotrosrdquo (Gonzaacutelez Agudelo 2014)

La seguridad informaacutetica consiste en asegurar que los recursos del sistema de informacioacuten

(material informaacutetico o programas) de una organizacioacuten sean utilizados de la manera que se decidioacute

3

inicialmente y que el acceso a la informacioacuten alliacute contenida asiacute como su modificacioacuten soacutelo sea

posible a las personas que se encuentren acreditadas y dentro de los liacutemites de su autorizacioacuten

Actualmente hay mucha informacioacuten circulando en internet por ejemplo correos

electroacutenicos publicaciones en Twitter Facebook videos fotos comercio electroacutenico secretos de

estado militares o industriales Lamentablemente dicha red es puacuteblica e insegura dentro de la cual

existen usuarios bien intencionados y muchos mal intencionados Diariamente encontramos

noticias de sitios con intrusiones mal intencionadas (hackeados) clonacioacuten de tarjeta de creacutedito o

imaacutegenes adulteradas Todo lo anterior motiva la necesidad de proteger la informacioacuten a traveacutes de

mecanismos que impidan a los usuarios no autorizados acceder a dicha informacioacuten

4

12 Planteamiento del Problema

Los sistemas de informacioacuten actuales estaacuten relacionados completamente con la exposicioacuten

de su informacioacuten a entidades externas que son ajenas a la organizacioacuten o delegacioacuten a la que

pertenecen

Cuando no se conoce el alcance que tienen los sistemas informaacuteticos ni lo vulnerables que

pueden ser si son expuestos a Internet por los mismos empleados de la organizacioacuten puede darse

ldquofugardquo de informacioacuten hacia el exterior esto los hace vulnerables a eventos y amenazas que

conllevan a riesgos que pueden provocar peacuterdidas tangibles e intangibles las cuales se traducen

en peacuterdidas que en muchos de los casos por decir lo menos seraacuten monetarias

El portal espantildeol de estadiacutesticas statista muestra la cuota de mercado de los principales

sistemas operativos a nivel mundial a fecha de febrero de 2017 seguacuten el nuacutemero de instalaciones

(statista 2017) Windows 10 fue el segundo sistema operativo maacutes instalado con una cuota de

mercado de 253 Esto significa que alrededor de una de cada cuatro computadoras estaacute

gobernado por este sistema operativo Por su parte en el caso de Windows 7 el porcentaje se situacutea

por encima del 45 a pesar de que ya no se vende ninguacuten PC con este sistema operativo Hablando

de manera conjunta los sistemas operativos Windows cuentan con una cuota del mercado global

de 8857

La empresa de seguridad informaacutetica Britaacutenica Avecto informoacute en su Microsoft

Vulnerabilities Report 2017 (Avecto 2017) (reporte 2017 de vulnerabilidades de Windows) un

aumento de vulnerabilidades publicadas del 111 en los uacuteltimos 5 antildeos de las cuales 235 criacuteticas

5

fueron mitigadas removiendo permisos de administrador asiacute como otras muy importantes

enfocadas al Administrador de Cuentas de Seguridad (SAM Security Account Manager por sus

siglas en ingleacutes) la cual es una base de datos almacenada como un archivo del registro en Windows

y que almacena las contrasentildeas de los usuarios en un formato hash (Algoritmos que crean a partir

de una entrada una salida alfanumeacuterica de longitud fija)

6

13 Objetivos

131 Objetivo General A traveacutes de la implementacioacuten de un procedimiento de fuerza

bruta utilizando para ello un cluacutester de alto rendimiento asiacute como software de uso libre lograr

capacidad de procesamiento capaz de vulnerar un sistema de autenticacioacuten nivel C1

132 Objetivos Especiacuteficos

Analizar los diferentes niveles de seguridad de sistemas operativos

Analizar diferentes meacutetodos de criptoanaacutelisis para vulnerar el Administrador de

cuentas de seguridad

Estudiar las teacutecnicas de agrupamiento de computadoras (clustering) para la

obtencioacuten de mayor poder de procesamiento

Implementar un cluacutester de alto rendimiento en el Laboratorio de la Maestriacutea en

Sistemas Computacionales del Instituto Tecnoloacutegico de Acapulco para ejecutar

operaciones de coacutemputo distribuido

7

14 Justificacioacuten

Antes la seguridad de la informacioacuten se realizaba a traveacutes de medios fiacutesicos por ejemplo

una caja fuerte en la cual las personas resguardaban objetos o informacioacuten valiosa para ellos Con

la introduccioacuten de las computadoras y el uso de internet los usuarios comienzan a almacenar

informacioacuten importante dentro de sus equipos por lo que se considera indispensable el uso de

herramientas que brinden proteccioacuten a la informacioacuten que se encuentra resguardada dentro de

eacutestas Los usuarios informaacuteticos suelen enviar informacioacuten por la red en las empresas al realizar

traacutemites o enviar informes a socios jefes entre otros

El resguardo de informacioacuten siempre ha sido importante para los seres humanos con la

diferencia que anteriormente no se contaba con los avances tecnoloacutegicos que tenemos actualmente

puesto que con la introduccioacuten de internet y el uso de dispositivos electroacutenicos se tiene mayor

riesgo de la informacioacuten que en ellos se maneja

La proteccioacuten del contenido de los datos es una necesidad urgente en casi todos los aacutembitos

de la sociedad incluyendo los servicios puacuteblicos y privados por lo que la tecnologiacutea de la

seguridad de los sistemas de cifrado se encuentra de frente a verdaderos retos

15 Hipoacutetesis

A traveacutes de un de fuerza bruta como teacutecnica de criptoanaacutelisis y con la ayuda de una mayor

capacidad de procesamiento mediante la implementacioacuten de agrupamiento de computadoras

(cluacutester) de alto rendimiento seraacute posible encontrar alguna vulnerabilidad dentro del sistema de

administracioacuten de cuentas de seguridad de Windows server 2012

8

16 Alcances y Limitaciones

Esta tesis se centraraacute en el sistema operativo Windows como objeto de estudio al cual se

le realizaraacute el criptoanaacutelisis

La tesis se enfocaraacute en el meacutetodo Beowulf para realizar el agrupamiento de computadoras

asiacute como la distribucioacuten de software libre del sistema operativo Linux Rocks

El nuacutemero de equipos disponibles para poder realizar el agrupamiento es de 17

computadoras hasta lograr el poder de coacutemputo de 800 Gflops

17 Impacto Social Tecnoloacutegico Econoacutemico y Ambiental

La sostenibilidad del presente proyecto seraacute abordada a partir de los siguientes aspectos

171 Impacto social A veces se puede pensar que un cluacutester de alto rendimiento pudiera

no tener alguacuten impacto directo en el medio social pero si nos enfocamos a un punto de vista en

donde gracias a la capacidad de procesamiento de estas maacutequinas han sido parte fundamental en

el desarrollo de proyectos que inciden de manera directa en beneficio de la sociedad en la que

vivimos como lo es la medicina la fiacutesica quiacutemica

Este proyecto busca beneficiar a nuestra sociedad proveyendo su capacidad de

procesamiento en la buacutesqueda de alguna vulnerabilidad en el sistema operativo maacutes utilizado hoy

en diacutea como lo es Windows ademaacutes de que estaraacute disponible para la comunidad cientiacutefica y

9

estudiantil del Instituto Tecnoloacutegico de Acapulco para optimizar tiempo de caacutelculo en futuras

investigaciones

172 Impacto ambiental Green IT tambieacuten conocido como Green Computing o

traducido al espantildeol como Tecnologiacuteas Informaacuteticas Verdes es definido como el estudio y la

praacutectica de disentildear desarrollar usar y disponer de computadoras servidores y diferentes

perifeacutericos tales como monitores impresoras dispositivos de almacenamiento de redes y

comunicaciones eficientemente y efectivamente con un impacto miacutenimo o nulo en el medio

ambiente (Murugesan 2008)

Bajo la premisa anterior este proyecto hace uso de los equipos con los que cuenta

actualmente el laboratorio de la Maestriacutea en Sistemas Computacionales lo cual evitaraacute la

adquisicioacuten de equipo nuevo y por consecuencia desechar el equipo existente evitando desperdicio

electroacutenico Dicho equipo cuenta con un procesador Intel I3 de 4ta generacioacuten lo cual seguacuten el

portal electroacutenico Europa press

ldquoEsta nueva generacioacuten supone el mayor salto en cuanto ahorro energeacutetico de la historia

de Intel asiacute como una mejora en los graacuteficos y nuevas experiencias de usuariordquo (europa press

2013)

Teniendo como base estos dos puntos importantes como lo son la reutilizacioacuten de equipo

y utilizando procesadores de bajo consumo energeacutetico es como este proyecto busca contribuir de

manera positiva con el medio ambiente

10

173 Impacto econoacutemico Actualmente existe una gran necesidad de procesar grandes

cantidades de datos lo cual hace imprescindible disponer de maacutequinas con estas caracteriacutesticas sin

embargo su alta complejidad aunado al gran costo hace que en instituciones de caraacutecter puacuteblico

sea muy complicado conseguir recurso para este fin Sin embargo un cluacutester de alto rendimiento

reutilizaraacute equipo propio evitando asiacute gastos por concepto de adquisicioacuten de equipo siendo de

esta manera viable para instituciones de caraacutecter puacuteblico

18 Metodologiacutea a Utilizar

181 Anaacutelisis Despueacutes de analizar las diferentes metodologiacuteas de clustering se optoacute por

desarrollar e implementar un cluacutester de alto rendimiento (HPC)

182 Disentildeo

1821 Economiacutea Debido a las caracteriacutesticas del equipo con el cual cuenta el Laboratorios

de la Maestriacutea en Sistemas Computacionales los componentes utilizados para este proyecto son

considerados de uso comuacuten y de bajo costo lo cual los hace faacutecilmente reemplazables en caso de

fallo a un costo accesible El equipo es de la marca Acer Aspire modelos AXC-605-M021 lo cual

nos hace tener ventaja y respaldo del fabricante con respecto a hardware geneacuterico

1822 Instalaciones Un cluacutester requiere de un ambiente controlado Esto es una

habitacioacuten especial con sistema de enfriamiento capacidad suficiente de carga eleacutectrica control

de humedad y un ambiente libre de polvo Ademaacutes se deben considerar el peso del equipo sobre

el piso (ya sea falso o piso normal) Se recomienda colocarlo en los soacutetanos o en la plata baja de

edificios (Rocha Quezada Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

11

En el laboratorio de la Maestriacutea en Sistemas Computacionales se cuenta con espacio que

reuniacutea la mayoriacutea de las caracteriacutesticas requeridas para este proyecto

1823 Escalabilidad Un cluacutester debe ser faacutecilmente escalable y a su vez confiable Por

tal motivo se ha utilizado equipo de marca lo cual nos proporciona maacutes de confiabilidad en su

desempentildeo y a su vez facilidad de aumentar el nuacutemero de equipos si en un futuro fuese necesario

agrandar este proyecto Se armoacute un cluacutester de cinco computadoras con procesadores Intel Core I3

de 64 bits en cada nodo La memoria incluida y perifeacutericos son faacuteciles de adquirir en el mercado

1824 Red En la parte de redes se utilizoacute un switch fast Ethernet con una velocidad de 1

Gbps el cual tiene tazas de transferencia raacutepida y el costo es notablemente maacutes econoacutemico que

uno de fibra oacuteptica

El cableado seleccionado fue el estaacutendar UTP de cobre con la norma Gigabit Ethernet de

IEEE 8023ab con la categoriacutea de cableado 6e que soporta tazas de transferencia de datos de

1000Base T (1 Gbps)

1825 Software

ldquoEl sistema operativo debe constar con servicios dedicados para compartir y respaldar

archivos asiacute como capacidad de acceder a los datos de trabajo raacutepidamente El sistema operativo

debe tambieacuten proveer servicios de monitoreo y reporte de fallas en el sistemardquo (Rocha Quezada

Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

12

Existe una gran variedad de software para instalar cluacutester de alto rendimiento sin embargo

como se ha comentado con anterioridad el costo de adquisicioacuten debe ser accesible por tal motivo

se optoacute por una distribucioacuten con licencia GNU de Linux Rocks Cluster la cual es una distribucioacuten

sencilla de instalar y configurar en comparacioacuten con otras distribuciones analizadas dicha

distribucioacuten estaacute basada en CentOS que a su vez estaacute basada en la conocida distribucioacuten de Linux

Red Hat

1826 Almacenamiento Para este proyecto no se requeriraacute un gran espacio de

almacenamiento por tal motivo los equipos utilizados tanto maestro como esclavos mantuvieron

sus unidades de disco originales las cuales son de 1 TB de almacenamiento

183 Implementacioacuten La implementacioacuten del cluacutester de alto rendimiento fue realizada

dentro de las instalaciones del Laboratorio de la Maestriacutea en Sistemas Computacionales del

Instituto Tecnoloacutegico de Acapulco construido inicialmente para este proyecto de criptoanaacutelisis lo

cual requeriraacute suficiente capacidad de procesamiento para poder implementar ataques de fuerza

bruta a sistemas operativos Las caracteriacutesticas del cluacutester construido son

1831 Software El software instalado en cada uno de los nodos es el siguiente

bull Sistema operativo Rocks Cluacutester Linux 74 (64 bits)

bull Libreriacutea de manejo de mensajes Open-MPI 153

bull Software de monitoreo Ganglia

13

1832 Hardware El cluacutester estaacute compuesto de 17 equipos con las siguientes

caracteriacutesticas

bull Nodo Maestro y 16 Nodos Esclavos

- Procesador Intel Core I3 4150 (4 nuacutecleos) Memoria 6 GB Disco Duro SATA 1 TB

tarjeta de Red Gigabit Ethernet

El hardware adicional es el siguiente

bull Interconexioacuten de Red

bull Switch Cisco 26 puertos 1Gbps modelo SG200 Red interna

1833 Recursos totales del cluacutester

bull Nuacutecleos de unidades de procesamiento (cores) 68

bull Capacidad en memoria 92 GB

bull Capacidad en disco 17 TB

19 Aseguramiento Teacutecnico ndash Material

A continuacioacuten se muestra el desglose del equipo utilizado para la elaboracioacuten de un

cluacutester de alto rendimiento estos componentes consisten en Hardware y Software especializado

asiacute como los costos de produccioacuten y personal involucrados en la metodologiacutea y elaboracioacuten del

proyecto

Costos de Hardware

Costos de Software

14

191 Hardware En este punto se refleja el costo de los dispositivos y herramientas a nivel

fiacutesico las cuales sirvieron para la implementacioacuten del proyecto cluacutester de alto rendimiento Cabe

resaltar que el equipo utilizado forma parte del inventario actual del Laboratorio motivo por el

cual su utilizacioacuten no causoacute erogacioacuten alguna sin embargo la investigacioacuten de costos se realizoacute

con la finalidad que el lector pueda establecer comparativas y buscar alternativas en caso de ajuste

de presupuesto

1911 Equipo de coacutemputo El equipo de coacutemputo utilizado consta de diecisiete

computadoras las cuales serviraacuten una para Nodo Maestro y las dieciseacuteis restantes como Nodos

Esclavos

La descripcioacuten de estos equipos se muestra en la tabla a continuacioacuten mostrando los costos

de todos los equipos utilizados dentro del proyecto

15

Tabla 11 Costo del Proyecto

Modelo

Cantidad

Caracteriacutesticas

Costos

PC - Acer AXC-

605

17

Procesador Intel Core i3

Pantalla 156rdquo

Disco duro 1TB HDD

RAM 6GB

Salida HDMI

Tarjeta de graacuteficos INTEGRADA

Lector de CD

Los costos en el mercado de una PC de

escritorio con estas caracteriacutesticas tiene un

valor aproximado de $600000 pesos

(Moneda nacional Mexicana)

Switch Cisco

Gigabit Ethernet

1

Modelo SG200 de 26 puertos

Costo en el mercado alrededor de

$2000000 pesos MN

Total

12200000 pesos MN

16

Capiacutetulo 2 Estado del Arte

Tiacutetulo del Trabajo Introduccioacuten a la Criptografiacutea

Autor Gibraacuten Granados Paredes

Fecha Julio 2010

Lugar Ciudad de Meacutexico

Publicado en Coordinacioacuten de Publicaciones Digitales DGSCA-UNAM

httpwwwrevistaunammxvol7num7art55int55htm

Siacutentesis Cuando se desea tener seguridad hablando en aacutembitos informaacuteticos la

criptografiacutea es una herramienta muy uacutetil el autor lo entiende tambieacuten como un medio para

garantizar las propiedades de confidencialidad integridad y disponibilidad de los recursos de un

sistema

Con la criptografiacutea se puede garantizar las propiedades de integridad y confidencialidad

pero hay que saber coacutemo utilizarla para ello es importante tener claros los conceptos baacutesicos que

estaacuten detraacutes de los sistemas criptograacuteficos modernos Estos conceptos van desde entender queacute es

la criptografiacutea coacutemo estaacute clasificada entender el funcionamiento baacutesico de algunos sistemas de

cifrado y conocer coacutemo se forman los documentos digitales como firmas y sobres digitales

Resultados El autor realiza un viaje por un gran nuacutemero de conceptos utilizados en

criptografiacutea el inicio y la clasificacioacuten de la misma asiacute como la criptografiacutea claacutesica y moderna y

analiza de manera breve algunos meacutetodos de cifrado maacutes comunes

17

Tiacutetulo del Trabajo Criptoanaacutelisis sobre meacutetodos claacutesicos de cifrado

Autores Sebastiaacuten Goacutemez Juan David Arias Diego Agudelo

Fecha 2 de mayo 2013

Lugar Ciudad de Meacutexico

Publicado en Scientia et Technica Antildeo XVII No 50 abril de 2012

Siacutentesis Los algoritmos criptograacuteficos utilizados desde la antigua Roma hasta nuestros

diacuteas son meacutetodos que convierten un mensaje de texto plano a cifrado al proceso inverso se le

conoce como descifrar Este artiacuteculo realiza un estudio de algunas teacutecnicas de encriptacioacuten claacutesicas

del siglo pasado como lo son el cifrado de Cesar y el cifrado de Vigeneacutere asiacute como muestra

teacutecnicas baacutesicas y modernas de criptoanaacutelisis basadas en la teoriacutea de la informacioacuten y estadiacutestica

como lo son la entropiacutea y el ataque de maacutexima correlacioacuten Las teacutecnicas de criptoanaacutelisis descritas

anteriormente pueden ser usadas en otros meacutetodos de cifrado siempre y cuando esteacuten presentes las

mismas debilidades

Resultados Los autores implementaron en lenguajes de programacioacuten Python un

algoritmo para el caacutelculo de entropiacutea para diferentes longitudes de clave Para la implementacioacuten

de los algoritmos de cifrado y descifrado de Vigeneacutere y de maacutexima correlacioacuten utilizaron lenguaje

de programacioacuten C++ Se probaron los meacutetodos anteriormente descritos sobre textos planos de

diferentes longitudes logrando un resultado de 9385 de efectividad en promedio

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de dos de los

algoritmos de encriptacioacuten maacutes antiguos y baacutesicos pero sobre todo que conociendo los meacutetodos

de criptoanaacutelisis me permitiraacuten analizar debilidades y fortalezas de algoritmos

18

Tiacutetulo del Trabajo ULTRACOM Computacioacuten de Alto Rendimiento para Criptoanaacutelisis

Autor Antonio Castro Lechtaler Alejandro Repetto Martiacuten Bianchi Marcelo Cipriano

Alejandro Arroyo Arzubi Ceacutesar Cicerchia Eduardo Malvacio

Fecha octubre 2014

Lugar Buenos Aires Argentina

Publicado en XX Congreso Argentino de Ciencias de la Computacioacuten (Buenos Aires

2014)

Siacutentesis La generacioacuten de nuacutemeros primos fundamentales para la produccioacuten de claves

el anaacutelisis de secuencias pseudo-aleatorias los procesos de verificacioacuten y validacioacuten de algoritmos

de seguridad en un sentido geneacuterico requieren enormes cantidades de procesamiento Los

procesos relacionados con la matemaacutetica criptograacutefica se caracterizan por la alta necesidad de

coacutemputo El objetivo de ULTRACOM es desarrollar una computacioacuten distribuida multipropoacutesito

que permita como primera aplicacioacuten real el anaacutelisis la validacioacuten y la ejecucioacuten de pruebas de

estreacutes sobre sistemas criptograacuteficos El presente trabajo de investigacioacuten detalla el proceso de

desarrollo de ULTRACOM y muestra un ejemplo de su implementacioacuten en una versioacuten Beta Para

ello toman como entrada dos versiones del algoritmo Trivium Utilizando la misma

infraestructura y sin desarrollo extra se prueban grandes voluacutemenes de claves y vectores de

inicializacioacuten de los algoritmos en busca de secuencias deacutebiles de menor longitud que la de la

buscada

Resultados El equipo implementoacute una versioacuten beta de la plataforma ULTRACOM

comprobando la factibilidad y viabilidad teacutecnica de la generalizacioacuten de la infraestructura de

computacioacuten distribuida en grilla (malla) BOINC Este avance permite extender los horizontes de

BOINC y habilita la posibilidad de obtener la capacidad de coacutemputo de alto rendimiento a bajo

19

costo Concluyeron que ULTRACOM es un proyecto viable escalable y de alto impacto para la

evaluacioacuten y validacioacuten de algoritmos criptograacuteficos

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento y la

implementacioacuten de una arquitectura de computacioacuten distribuida y una vez siendo factible su

desarrollo utilizar su poder de coacutemputo atacando a traveacutes de un algoritmo un sistema criptograacutefico

20

Tiacutetulo del Trabajo Criptografiacutea Cuaacutentica

Autor M Baig

Fecha 2010

Lugar Barcelona Espantildea

Siacutentesis En este artiacuteculo el autor realiza una breve introduccioacuten a la criptografiacutea claacutesica y

la relacioacuten que existe con la teoriacutea de la informacioacuten de Shannon la cual asegura que el cifrado

digital simeacutetrico es secreto y perfecto siempre y cuando se cumplan los tres requisitos

1 La llave ha de ser aleatoria

2 La llave debe usarse soacutelo una vez

3 La llave ha de ser tan larga como el mensaje y de un solo uso debe de estar en posesioacuten

tanto del emisor como del receptor

El punto 3 es el maacutes complicado de cumplir debido a la forma de compartir la llave entre

el emisor y receptor

Maacutes adelante en el artiacuteculo se hace un anaacutelisis sobre otra teacutecnica de criptografiacutea que es el

cifrado digital asimeacutetrico en la que se estudia coacutemo funcionan las llaves privadas y puacuteblicas asiacute

como el meacutetodo de criptograacutefico RSA

Resultados

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento maacutes profundo de

los meacutetodos de criptografiacutea simeacutetricos y asimeacutetricos especiacuteficamente el algoritmo asimeacutetrico

RSA

21

Tiacutetulo del Trabajo La Criptografiacutea Maderista en la Revolucioacuten Mexicana (1910-1911)

Criptoanaacutelisis de una carta cifrada por Gabriel Leyva Solano

Autor Roberto Narvaacuteez

Fecha 2011

Lugar Meacutexico DF

Siacutentesis Este trabajo aborda temas relacionados con las comunicaciones secretas del

movimiento revolucionario comandado por Francisco I Madero a partir de 1910 Se compone de

dos partes la primera es una breve resentildea criacutetica de ejemplos criptograacuteficos del maderismo que

fueron generados entre 1910 y 1911 la segunda describe paso a paso el criptoanaacutelisis que aplicoacute

el autor Roberto Narvaacuteez para desencriptar una carta parcialmente cifrada de Gabriel Leyva Solano

a Francisco I Madero

Resultados El propoacutesito general uacuteltimo es contribuir al conocimiento de la criptografiacutea

mexicana en el siglo XX En lo particular se trata de poner a disposicioacuten de los estudiosos el

contenido completo de la carta de Leyva Solano por primera vez despueacutes de 100 antildeos y al mismo

tiempo someter a la criacutetica teacutecnica e histoacuterica el procedimiento criptoanaliacutetico puesto en operacioacuten

para recuperar el texto plano

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados en nuestro paiacutes sobre formas y meacutetodos de encriptacioacuten durante la Revolucioacuten

Mexicana incluso mucho antes de la 2ordf Guerra mundial momento donde se registroacute un auge

importante dentro de la criptografiacutea moderna

22

Tiacutetulo de Tesis Anaacutelisis de la programacioacuten concurrente sobre la cpu y gpu en el

desarrollo de fractal build

Autor Joseacute Vicente Anilema Guadalupe

Fecha 2012

Lugar Riobamba Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la geometriacutea euclidiana debido a que

el autor realiza una aplicacioacuten que crea paisajes fractales lo que significa crear un paisaje con una

misma figura geomeacutetrica Lo anterior se traduce en una necesidad de gran poder de coacutemputo para

realizar de una manera eficaz la tarea Dentro de la tesis el autor realiza diversos estudios

comparativos entre el procesamiento serializado realizado por una CPU (unidad central de

procesamiento) y procesamiento paralelizado realizado por una GPU (Unidad grafica de

procesamiento) a traveacutes de diversas herramientas para obtener el mejor aprovechamiento de los

recursos

Resultados El autor concluye que es necesario examinar los algoritmos a utilizar para que

estos puedan ser utilizados en coacutemputo paralelo Ademaacutes de que es necesario aprender ciertas

herramientas a utilizar para aprovechar al maacuteximo el coacutemputo distribuido y no desperdiciar el

poder de procesamiento muy superior que las GPUrsquos nos pueden brindar

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados para medir y comparar la velocidad de procesamiento de la unidad central de

procesamiento (CPU) y la unidad graacutefica de procesamiento (GPU) Asiacute como la medida en Flops

(Operaciones de punto flotante por segundo)

23

Tiacutetulo del Trabajo Arquitectura cluacutester de alto rendimiento utilizando herramientas de

software libre

Autores Leonardo Chiquiguanca Edyson Malla Freddy Ajila Rene Guamaacuten-Quincheacute

Fecha mayo 2015

Lugar Loja Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la gran cantidad de datos que tienen

que procesar las universidades puacuteblicas dentro de sus investigaciones realizadas en diferentes aacutereas

como la ingenieriacutea medicina etc y la carencia de recursos econoacutemicos para obtener

supercomputadoras que procesen dicha informacioacuten Los autores proponen dentro de su

investigacioacuten la utilizacioacuten de equipo de coacutemputo existente dentro de su universidad y por medio

de software libre realizar agrupamiento de computadoras para poder lograr el procesamiento de

grandes voluacutemenes de datos de una manera accesible

Resultados Los autores concluyen que la mejor arquitectura para el agrupamiento

(cluacutester) de computadoras en ambientes universitarios es la arquitectura Beowulf debido a que la

implementaron en hardware convencional existente dentro de su campus universitario y que

ademaacutes usaron software libre mencionando que el poder de coacutemputo logrado fue muy cercano al

de una supercomputadora

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de las teacutecnicas

utilizadas en ambientes universitarios para la realizacioacuten de agrupamiento de computadoras y

sobre todo la optimizacioacuten de costos para realizar dicha tarea y tener como finalidad el lograr

mayor capacidad de procesamiento

24

Tiacutetulo de Tesis Desarrollo de un algoritmo de cifrado simeacutetrico de resumen

Autores Jonathan Dave Orjuela Navarrete

Antildeo 2008

Lugar Bogotaacute DC

Siacutentesis Esta tesis realiza un estudio de varios meacutetodos de criptografiacutea simeacutetrica para

posteriormente utilizando diferentes foacutermulas matemaacuteticas crear un algoritmo criptograacutefico

nuevo Dentro de la tesis utiliza dos meacutetodos para realizar pruebas a su algoritmo criptoanaacutelisis

diferencial y criptoanaacutelisis basado en fallos de hardware Dentro de los cuales hace un estudio

detallado de las teacutecnicas y herramientas de criptoanaacutelisis realizado a su algoritmo

Resultados El autor concluye de manera positiva con la realizacioacuten del algoritmo y de

manera satisfactoria con la realizacioacuten de criptoanaacutelisis a su algoritmo pudiendo demostrar la

fortaleza del algoritmo a traveacutes de ejemplo de cifrado con textos claro muy parecido y su

conversioacuten a cadenas completamente diferentes

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de criptoanaacutelisis diferencial y criptoanaacutelisis basado en fallos de hardware para la

evaluacioacuten de algoritmos de cifrado simeacutetrico de textos claros

25

Tiacutetulo del Trabajo Firt step in a Pc cluster development with openMosix

Autores Javier Bilbao Gorka Garate

Antildeo 2008

Lugar Bilbao Spain

Siacutentesis En este trabajo se afirma que es posible hacer maacutequinas de alta capacidad de

caacutelculo mediante la interconexioacuten de equipos con redes de alta velocidad A este tipo de sistemas

se les llama sistemas distribuidos y hoy en diacutea es la tecnologiacutea maacutes utilizada para resolver

problemas que requieren una gran capacidad de caacutelculo La agrupacioacuten de computadoras permite

que varias computadoras trabajen juntas para resolver los problemas de informaacutetica comuacuten Este

artiacuteculo centra su estudio en uno de los diferentes meacutetodos de agrupamiento de computadoras

openMosix El trabajo tambieacuten evaluacutea el cluacutester por dos casos de estudio donde se mejora el

tiempo de ejecucioacuten de los problemas resueltos

Resultados El autor del artiacuteculo concluye con la realizacioacuten satisfactoria de agrupamiento

de computadoras bajo el meacutetodo openMosix el cual uacutenicamente permite agrupamiento de la forma

SSI (Single System Image) que se refiere a que uacutenicamente se puede realizar el agrupamiento con

todos los nodos ejecutando un mismo sistema operativo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras openMosix ventajas desventajas y dificultades para

su implementacioacuten

26

Tiacutetulo del Trabajo Disentildeo e implementacioacuten de un cluacutester tipo Beowulf para el desarrollo

de coacutemputo cientiacutefico avanzado

Autores Edgar Rubeacuten Gonzaacutelez Ramiacuterez Abimael Rodriacuteguez Saacutenchez

Antildeo 2008

Lugar Instituto Politeacutecnico Nacional Meacutexico DF

Siacutentesis Este trabajo de tesis ha desarrollado e implementado una herramienta

computacional llamada Cluster Beowulf para mejorar la programacioacuten paralela Comenzando

con la memoria compartida y distribuida el autor implemento el agrupamiento tipo Beowulf

pensando en procesamiento paralelo la optimizacioacuten de las fuentes informaacuteticas El disentildeo se

construye mediante una distribucioacuten Linux Fedora Core 6 a 64 bits utilizando todas las ventajas

que ofrece el estaacutendar Gigabyt Ethernet La programacioacuten paralela fue desarrollada en lenguaje C

tanto para MPI como para OPENMP

Resultados El autor del artiacuteculo concluye que de acuerdo con los resultados el tiempo

de procesamiento se redujo con el uso muacuteltiples nuacutecleos mejoroacute hasta ocho veces gracias al

multihilo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras Beowulf y su implementacioacuten en sistemas operativos

de uso libre Linux distribucioacuten Fedora 6

27

Marco Teoacuterico

21 Seguridad de la Informacioacuten

La Seguridad de la Informacioacuten consiste y hace referencia a la proteccioacuten de cualquier

amenaza para salvaguardar los activos fijos y en especial toda informacioacuten de la cual estaacute basada

la continuidad de las operaciones de la empresa sean estas ocasionadas dentro o fuera de la misma

con esto se logra disminuir los dantildeos y perjuicios que estas amenazas causariacutean a la organizacioacuten

y a la vez aumentar las oportunidades de servicio hacia otras empresas

La Seguridad de la informacioacuten se consigue mediante la implementacioacuten de controles

efectivos que pueden ser normas manual de funciones buenas praacutecticas procedimientos

estructuras organizativas funciones de software y hardware planes de contingencia y herramientas

que se encargan de proteger la privacidad e integridad de la informacioacuten que se almacena en un

sistema informaacutetico Estos controles necesitan continuamente ser establecidos monitoreados

revisados y mejorados en donde sea necesario para asegurar que se cumplan los objetivos

especiacuteficos de seguridad en cada aacuterea de negocio de la organizacioacuten

La seguridad informaacutetica es en realidad una rama de la seguridad de la informacioacuten aunque

de forma praacutectica algunos autores suelen utilizar de manera indistinta ambos teacuterminos

211 Objetivo de la seguridad de la informacioacuten En la seguridad de la informacioacuten

sabiendo que dichos procesos de seguridad permiten proteger el recurso maacutes importante y valioso

de una organizacioacuten partiendo como principio fundamental los procesos de aseguramiento el

28

objetivo del proceso de seguridad informaacutetica es obtener un nivel aceptable de seguridad ya que

la informacioacuten es lo maacutes valioso que tiene una institucioacuten o empresa por lo tanto esta debe ser

protegida para que no sea vulnerable y utilizada para fines maliciosos

212 Principios de la seguridad informaacutetica

Confidencialidad Los datos solo deben ser conocidos y accedidos por quienes esteacuten

autorizados durante su almacenamiento procesamiento o trasmisioacuten Verificar y certificar que solo

los usuarios con accesos autorizados puedan acceder a la informacioacuten

Integridad Los datos solo pueden ser modificados y eliminados por quienes esteacuten

autorizados para ello es decir los sistemas y aplicaciones solo deben ser operados por personal

autorizado

Disponibilidad Los sistemas que almacenan datos e informacioacuten deben garantizar su

acceso cuando asiacute se requiera por quienes tengan derecho a ello

213 Caracteriacutesticas de seguridad informaacutetica

Control Solo los usuarios autorizados deciden cuaacutendo y coacutemo permitir el acceso a la

informacioacuten

Auditoriacutea Establece las acciones cuaacutendo las implementa y quieacuten las realiza sobre el

sistema

Autenticidad Define que la informacioacuten necesaria es correcta utilizable y vaacutelida en tiempo

y forma

No Repudio Su funcioacuten es evitar que alguna entidad que envioacute o recibioacute informacioacuten

alegue que no lo hizo

29

214 Formas de Autenticacioacuten

Contrasentildea Una contrasentildea es un tipo de seguridad informaacutetica ya que es una serie de

caracteres secretos que permiten a un usuario tener acceso a un archivo equipo de coacutemputo o

programa y negar el acceso a usuarios no autorizados

Certificado digital Es un tipo de seguridad informaacutetica que permite la firma digital

electroacutenica que garantiza teacutecnica y legalmente la identidad de una persona en Internet

Autenticacioacuten HTTP Tipo de seguridad informaacutetica que delega la autenticacioacuten de

usuarios a un servidor a traveacutes de Kerberos

215 Ciber-seguridad Con los avances tecnoloacutegicos y la demanda que ha causado en ello

existe un elevado iacutendice de informacioacuten personal y empresarial que circula y se mantiene en la red

por la utilizacioacuten del internet esto permite que toda informacioacuten quede expuesta a cualquier ataque

de ciber-delincuentes los cuales buscan la manera de vulnerar cualquier sistema para espiar robar

informacioacuten o hacer dantildeo de cualquier tipo por lo que se ha visto la necesidad de tomar medidas

de seguridad para salvaguardar la informacioacuten ya que es muy importante

La ciberseguridad es la proteccioacuten de los sistemas conectados a Internet incluidos el

hardware el software y los datos de los ciberataques En un contexto informaacutetico la seguridad

comprende la ciberseguridad y la seguridad fiacutesica ambas son utilizadas por las empresas para

proteger contra el acceso no autorizado a los centros de datos y otros sistemas de coacutemputo El

objetivo de la ciberseguridad es limitar el riesgo y proteger los activos de Tecnologiacuteas de

Informacioacuten de los atacantes con intenciones maliciosas La seguridad de la informacioacuten estaacute

30

disentildeada para mantener la confidencialidad integridad y disponibilidad de los datos es un

subconjunto de la ciberseguridad

22 Criptografiacutea

La Criptografiacutea tambieacuten llamada ldquoescritura ocultardquo tradicionalmente en el aacutembito de

criptografiacutea es donde se ocupan las teacutecnicas de cifrado o codificacioacuten que permiten alterar el

contenido de cierta informacioacuten o mensajes con el fin de hacerlos ininteligibles a receptores o

personas no autorizadas (Meneacutendez-Barzanallana 17)

Actualmente la criptografiacutea se encarga de analizar algoritmos protocolos y sistemas que

son utilizados para proveer seguridad a las comunicaciones informacioacuten y a las entidades que se

comunican entre siacute

221 Tipos de Criptografiacuteas

2211 Tablas Hash Un hash o funcioacuten hash toma un grupo de caracteres (llamado clave)

y lo asigna a un valor de cierta longitud (llamado valor hash o hash) El valor hash es representativo

de la cadena de caracteres original pero normalmente es maacutes pequentildeo que el original

El hash tambieacuten es utilizado en el cifrado y descifrado de firmas digitales La funcioacuten hash

transforma la firma digital luego tanto el valor hash como la firma se enviacutean al receptor El

receptor utiliza la misma funcioacuten hash para generar el valor hash y luego lo compara con el recibido

31

en el mensaje Si los valores hash son los mismos es probable que el mensaje se haya transmitido

sin errores

Un ejemplo de una funcioacuten hash se llama plegado(folding) Esta toma un valor original lo

divide en varias partes luego agrega las partes y usa los uacuteltimos cuatro diacutegitos restantes como

valor o clave hash

2212 Tipos de algoritmos Hash

22121 SHA - 1 (Secure Hash Algorithm) Es un algoritmo criptograacutefico de Hash

publicado por el gobierno de los Estados Unidos Genera un valor Hash de 160 bits a partir de una

secuencia de longitud arbitraria Es considerado lo suficientemente seguro para aplicaciones

praacutecticas pero hay disponibles versiones maacutes robustas SHA - 256 SHA - 384 y SHA - 512 que

generan valores Hash de 256 384 y 512 bits respectivamente estas versiones reemplazaraacuten a SHA

- 1 mientras se siga trabajando sobre ellas (Borghello 2009)

22122 MD5 (Message Digest Algorithm) En criptografiacutea MD5 es una funcioacuten hash

criptograacutefica ampliamente utilizada con un valor hash de 128 bits Como estaacutendar de Internet (RFC

1321) MD5 se ha empleado en una amplia variedad de aplicaciones de seguridad y tambieacuten se

usa comuacutenmente para verificar la integridad de los archivos Un hash MD5 generalmente se

expresa como un nuacutemero hexadecimal de 32 diacutegitos

MD5 es una versioacuten reforzada de MD4 Al igual que MD4 el hash MD5 fue inventado por

el profesor Ronald Rivest del Massachusetts Institute of Technology (MIT) Ademaacutes MD5 se

32

utilizoacute como modelo para SHA-1 ya que comparten muchas caracteriacutesticas comunes MD5 y

SHA-1 son los dos algoritmos hash maacutes utilizados en la actualidad aunque el uso de MD5 ha

disminuido ya que ahora se considera roto (Borghello 2009)

22123 RIPEMD ndash 160 Es una funcioacuten hash criptograacutefica basada en la construccioacuten

Merkle-Damgaringrd (MD) Se usa en el estaacutendar de Bitcoin Es una versioacuten reforzada del algoritmo

RIPEMD que produce un resumen de hash de 128 bits mientras que el algoritmo RIPEMD-160

produce una salida de 160 bits La funcioacuten de compresioacuten consta de 80 etapas formadas por 5

bloques que se ejecutan 16 veces cada uno Este patroacuten se ejecuta dos veces con los resultados

combinados en la parte inferior utilizando la adicioacuten del moacutedulo 32 (Borghello 2009)

22124 Funcioacuten Merkle-Damgaringrd La construccioacuten MD es una metodologiacutea para crear

funciones hash resistentes a colisiones a partir de funciones de compresioacuten unidireccionales Ralph

Merkle la propuso en el antildeo de 1979 en ldquoA certified Digital Signaturerdquo posterior a este estudio

Ivan Damgaringrd demostroacute de manera independiente que la estructura era soacutelida (Merkle amp

Damgaringrd sf)

2213 Cifrado simeacutetrico Los cifrados simeacutetricos son los cifrados criptograacuteficos maacutes

antiguos y maacutes utilizados En un cifrado simeacutetrico la clave que descifra el texto cifrado es la

misma (o puede derivarse faacutecilmente) de la clave que cifra el texto claro Esta clave a menudo se

conoce como la clave secreta Los cifrados simeacutetricos maacutes utilizados son DES y AES

La problemaacutetica que surge es la seguridad de la clave

33

El emisor cifra el mensaje con una clave

Enviacutea el mensaje cifrado de tal manera que nadie puede descifrarlo sin dicha clave

El receptor obtiene la clave y entonces puede descifrar el mensaje con la misma clave

que recibioacute del emisor

Algunos algoritmos de este tipo son

22131 RC5 (Cifrado de Rivest) Es un algoritmo de cifrado de bloque de clave simeacutetrica

disentildeado por Ron Rivest en 1994 Se destaca por ser simple raacutepido (debido a que usa solo

operaciones de coacutemputo primitivas como XOR o shift) y ademaacutes por consumir menos memoria

RC5 es un cifrado de bloques y aborda dos bloques de palabras a la vez Dependiendo del

tamantildeo del bloque de texto sin formato nuacutemero de rondas y tamantildeo de clave se pueden definir

varias instancias de RC5 y cada instancia se denota como RC5-w r b donde w = tamantildeo de

palabra en bits r = nuacutemero de rondas y b = tamantildeo de la clave en bytes (Pawar 2016)

Como se ha mencionado RC5 utiliza bloques de 2 palabras el tamantildeo del bloque de texto

sin formato puede ser de 32 64 o 128 bits

22132 IDEA (International Data Encryption Algorithm) Baacutesicamente es un algoritmo

de cifrado de bloque simeacutetrico El algoritmo asimeacutetrico utiliza la misma clave para el cifrado y

descifrado Un cifrado de bloque divide el mensaje en bloques cada uno de una longitud fija y

luego cifra cada bloque de forma independiente

34

El tamantildeo de bloque tiacutepico es de 16 bytes de 128 bits Un cifrado de bloque generalmente

operaraacute en bloques o rondas donde se aplica parte de la clave a la ronda Despueacutes de un cierto

nuacutemero de rondas digamos entre 10 y 16 se termina con el texto cifrado para ese bloque

El bloque de texto cifrado tiene exactamente el mismo tamantildeo que el bloque de texto sin

formato 16 bytes Para cada ronda se trabaja en el bloque utilizando una parte de la clave de

cifrado a la que se le llama la clave redonda Muacuteltiples claves redondas se derivan de la clave de

cifrado utilizando para esto un programa de claves

La programacioacuten de claves es un algoritmo que cambia XOR multiplica y realiza otros

tipos de operaciones en la clave de cifrado original para obtener estas claves redondas Bueno si

tengo un bloque de 16 bytes y tengo una clave de 128 bits que tambieacuten es de 16 bytes (Educba

2019)

22133 DES (Data Encryption Standard) El algoritmo DES es el algoritmo de seguridad

maacutes popular Es un algoritmo simeacutetrico lo que significa que se utilizan las mismas claves para

cifrar descifrar datos confidenciales La longitud de la clave es de 8 bytes (64 bits) Entonces

para cifrar descifrar datos el algoritmo DES utiliza una clave de 8 bytes pero 1 byte (8 bits) para

la verificacioacuten de paridad Es un algoritmo de cifrado de bloque por lo tanto el tamantildeo del bloque

de datos del algoritmo DES es de 64 bits Para cifrar descifrar datos el algoritmo DES utiliza la

estructura Feistel Entonces utiliza una ronda para cifrar descifrar datos Aunque el tamantildeo del

35

bloque de datos es de 64 bits el nuacutemero de rondas seraacute de 16 rondas asiacute mismo utilizaraacute diferentes

subclaves para cada ronda por lo tanto el nuacutemero de subclaves seraacute de 16 subclaves

Como se puede observar la clave efectiva es de 56 bits por consiguiente se tiene 256

combinaciones posibles por lo que la fuerza bruta se hace casi imposible (Sanjoy 2015)

2214 Cifrado asimeacutetrico Los cifrados asimeacutetricos tambieacuten se conocen como cifrados

con claves puacuteblicas y privadas Usan dos claves una para el cifrado de mensajes y la otra durante

el descifrado

Un intruso puede encriptar cualquier mensaje usando la clave puacuteblica conocida Los

cifrados asimeacutetricos son por lo tanto vulnerables a los ataques de texto sin formato Los cifrados

con encriptacioacuten de clave puacuteblica deben proporcionar seguridad contra tales ataques Despueacutes de

encriptar dos mensajes con la misma clave puacuteblica el intruso no puede distinguir queacute texto cifrado

estaacute conectado con queacute texto plano Ademaacutes un observador que analiza dos mensajes encriptados

usando el mismo algoritmo y la misma clave puacuteblica no puede distinguir sus textos cifrados

(Kowalczyk 2015)

Los cifrados asimeacutetricos son mucho maacutes lentos que los cifrados simeacutetricos (generalmente

mil veces maacutes lentos) Es una praacutectica comuacuten usar el cifrado de clave puacuteblica solo para establecer

la conexioacuten segura y negociar la nueva clave secreta que luego se utilizaraacute para proteger la

comunicacioacuten mediante cifrado simeacutetrico Ejemplos de este cifrado son

36

22141 DSA (Digital Signature Algorithm - Algoritmo de Firma digital) Es un estaacutendar

del Gobierno Federal de los Estados Unidos para firmas digitales Fue propuesto por el Instituto

Nacional de Estaacutendares y Tecnologiacutea (NIST) en agosto de 1991 para ser usado en su Estaacutendar de

Firma Digital (DSS) en el antildeo de 1993

La primera parte del algoritmo DSA es la generacioacuten de clave puacuteblica y clave privada que

puede describirse como

Se elige un nuacutemero primo q que se llama divisor primo

Se elige otro nuacutemero primo p de modo que pndash1 mod q = 0 p seraacute llamado moacutedulo

primo

Ahora se elige un nuacutemero entero g tal que 1 ltg ltp g q mod p = 1 g = h ((p

ndash 1) q) mod p q tambieacuten se llama moacutedulo de orden multiplicativo de g moacutedulo p

Se elige un nuacutemero entero tal que 0 ltx ltq

Se calcula y como g x mod p

Se empaqueta la clave puacuteblica como p q g y

Por uacuteltimo se empaqueta la clave privada como p q g x

La segunda parte del algoritmo DSA es la generacioacuten de firma y la verificacioacuten de firma

Para generar una firma de mensaje el remitente puede seguir estos pasos

Se genera el resumen del mensaje h utilizando un algoritmo hash como SHA1

Se genera un nuacutemero aleatorio k tal que 0 ltk ltq

37

Se calcula r como (g k mod p) mod q Si r = 0 seleccione una k diferente

Ahora se calcula i de modo que k i mod q = 1 i se llama el inverso multiplicativo modular

de k moacutedulo q

Se calcula s = i (h + r x) mod q Si s = 0 se selecciona una k diferente

Por uacuteltimo se empaqueta la firma digital como r s (Yang 2019)

22142 RSA Encriptacioacuten RSA encriptacioacuten Rivest-Shamir-Adleman tipo de

criptografiacutea de clave puacuteblica ampliamente utilizada para la encriptacioacuten de datos de correo

electroacutenico y otras transacciones digitales a traveacutes de Internet RSA lleva el nombre de sus

inventores Ronald L Rivest Adi Shamir y Leonard M Adleman quienes lo crearon mientras

trabajaban en la facultad del Instituto Tecnoloacutegico de Massachusetts (Simmons 2019)

En el sistema RSA un usuario elige de manera secreta un par de nuacutemeros primos p y q tan

grandes que factorizar el producto n = pq estaacute mucho maacutes allaacute de las capacidades informaacuteticas

proyectadas para la vida uacutetil de los cifrados A partir del antildeo 2000 los estaacutendares de seguridad del

gobierno de EE UU exigen que el moacutedulo tenga un tamantildeo de 1024 bits es decir p y q deben

tener un tamantildeo de aproximadamente 155 diacutegitos decimales por lo que n es aproximadamente un

nuacutemero de 310 diacutegitos Dado que los nuacutemeros duros maacutes grandes que actualmente se pueden

factorizar son solo la mitad de este tamantildeo y dado que la dificultad de factorizar se duplica

aproximadamente por cada tres diacutegitos adicionales en el moacutedulo se cree que los moacutedulos de 310

diacutegitos estaacuten a salvo de factorizar durante varias deacutecadas

38

2215 Cifrado hiacutebrido Es una teacutecnica comuacuten que combina diferentes funciones

criptograacuteficas como el cifrado de bloque Con el cifrado hiacutebrido se pueden cifrar datos firmarlos

o agregar un MAC y enviarlos en un objeto seguro (como una cadena o archivo) a traveacutes de un

canal de comunicacioacuten inseguro (sin un acuerdo clave entre dos partes)

En el sistema de cifrado hiacutebrido el texto plano (sin formato) se divide en tokens Luego

se calcula la longitud de cada ficha Los tokens y sus longitudes se almacenan en una matriz

Posteriormente se aplica el algoritmo Ceacutesar anidado sugerido El texto producido se almacena en

una matriz n x m llamada A Luego la transposicioacuten de esta matriz At se calcula utilizando

nuestra versioacuten revisada del cifrado de transposicioacuten para resolver el problema de secuenciacioacuten

A continuacioacuten el algoritmo RSA revisado se aplica en la matriz producida En el paso final se

aplica el formato de datos textuales usando el coacutedigo ASCII para producir el texto cifrado El

proceso de descifrado se realiza de la misma manera pero en orden inverso (Nahar amp Abu Abbas

2010)

23 Criptoanaacutelisis

El criptoanaacutelisis es el proceso de estudiar sistemas criptograacuteficos para buscar debilidades

o fugas de informacioacuten En general se considera que el criptoanaacutelisis explora las debilidades de

las matemaacuteticas subyacentes de un sistema criptograacutefico pero tambieacuten incluye la buacutesqueda de

debilidades en la implementacioacuten como ataques de canal lateral o entradas de entropiacutea deacutebiles

39

Su funcioacuten es la de conseguir obtener el significado de mensajes creados por medio de

criptografiacutea El objetivo principal del criptoanaacutelisis es opuesto al de la criptografiacutea Tiene como

finalidad encontrar la debilidad de las diferentes teacutecnicas criptograacuteficas para explotarla y de esta

manera reducir o eliminar la seguridad de la teacutecnica criptograacutefica Cualquier intento de

criptoanaacutelisis puede ser llamado ataque Una vez que un atacante logra romper la seguridad que

una teacutecnica criptograacutefica aportaba al sistema se dice que dicho sistema ha sido roto y por lo tanto

dicho ataque tuvo eacutexito

El criptoanaacutelisis es la investigacioacuten de sistemas texto cifrado y cifrados para revelar el

significado oculto o los detalles del sistema mismo El objetivo de este tipo de estudio es descubrir

los aspectos ocultos incluso si la clave o el algoritmo principal no se pueden descifrar Se necesita

una combinacioacuten exitosa de persistencia matemaacuteticas intuicioacuten curiosidad y una computadora

que funcione para hacer un buen criptoanalista Este tipo de ruptura de coacutedigo es extremadamente

importante especialmente en el mundo tecnoloacutegicamente dependiente de hoy El criptoanaacutelisis es

constantemente realizado por criptoacutegrafos que intentan obtener informacioacuten valiosa y por aquellos

que intentan descifrar el coacutedigo para revelar secretos (Security Degree Hub 2017)

24 Niveles de seguridad

Los niveles de seguridad de sistemas operativos son otorgados de acuerdo con el sistema

operativo que esteacute utilizando la empresa o institucioacuten ya sea puacuteblica privada gubernamental o no

gubernamental En el manual ldquoTrusted Computer System Evaluation Criteriardquo (United States

40

Government Department of Defense 1983) el Departamento de Defensa de los Estados Unidos

define los siguientes niveles

241 Nivel D1 Este nivel es el maacutes bajo de seguridad por lo tanto la norma establece que

el sistema no es confiable Esta divisioacuten contiene solo una clase Estaacute reservado para aquellos

sistemas que han sido evaluados pero que no cumplen con los requisitos para un nivel de

evaluacioacuten superior

242 Nivel C1 Un sistema de nivel C1 cumple nominalmente los requisitos de seguridad

discrecionales al proporcionar separacioacuten de usuarios y datos Incorpora alguna forma de controles

creiacutebles capaces de imponer limitaciones de acceso de manera individual es decir aparentemente

adecuados para permitir que los usuarios puedan proteger la informacioacuten privada o del proyecto y

evitar que otros usuarios lean o destruyan accidentalmente sus datos Se espera que el entorno de

nivel C1 sea uno de los usuarios cooperantes que procesan datos con el mismo nivel de

sensibilidad Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten

de nivel C1 son

Control de acceso discrecional por ejemplo listas de control de acceso (ACL)

usuario grupo

Por lo general para usuarios que estaacuten en el mismo nivel de seguridad

Proteccioacuten de nombre de usuario y contrasentildea y base de datos de autorizaciones

seguras (ADB)

Sistema operativo protegido y modo de operaciones del sistema

Comprobacioacuten perioacutedica de integridad de TCB

41

Mecanismos de seguridad probados sin derivaciones obvias

Documentacioacuten para la seguridad del usuario

Documentacioacuten para la seguridad de la administracioacuten de sistemas

Documentacioacuten para pruebas de seguridad

Documentacioacuten de disentildeo TCB

Tiacutepicamente para usuarios en el mismo nivel de seguridad

La certificacioacuten C1 es rara Los sistemas de ejemplo son versiones anteriores de

Unix IBM RACF

243 Nivel C2 Los sistemas de esta clase imponen un control de acceso discrecional maacutes

fino que los sistemas (C1) lo que hace que los usuarios sean individualmente responsables de sus

acciones a traveacutes de procedimientos de inicio de sesioacuten auditoriacutea de eventos relevantes para la

seguridad y aislamiento de recursos Los siguientes son requisitos miacutenimos para los sistemas

asignados a una clasificacioacuten de nivel C2

La proteccioacuten de objetos puede ser para un solo usuario Por ejemplo a traveacutes de

una base de datos ACL

La autorizacioacuten de acceso solo puede ser asignada por usuarios autorizados

Proteccioacuten de reutilizacioacuten de objetos (Por ejemplo para evitar la reasignacioacuten de

objetos eliminados de manera segura)

Procedimientos obligatorios de identificacioacuten y autorizacioacuten para los usuarios (Por

ejemplo Usuario Contrasentildea)

Auditoriacutea completa de eventos de seguridad (es decir fecha hora evento usuario

eacutexito falla ID de terminal)

42

Modo de operacioacuten del sistema protegido

Proteccioacuten adicional para la autorizacioacuten y los datos de auditoriacutea

Documentacioacuten como C1 maacutes informacioacuten sobre el examen de la informacioacuten de

auditoriacutea

Esta es una de las certificaciones maacutes comunes Los sistemas operativos de ejemplo

son VMS IBM OS 400 Windows NT Novell NetWare 411 Oracle 7 DG AOS

VS II

244 Nivel B1 Los sistemas de este nivel requieren todas las caracteriacutesticas requeridas

para el nivel C2 Ademaacutes debe estar presente una declaracioacuten informal del modelo de poliacutetica de

seguridad etiquetado de datos y control de acceso obligatorio sobre sujetos y objetos nombrados

La capacidad debe existir para etiquetar con precisioacuten la informacioacuten exportada Cualquier falla

identificada por la prueba debe ser eliminada Los siguientes son requisitos miacutenimos para los

sistemas asignados a una clasificacioacuten de nivel B1

Etiquetado obligatorio de seguridad y acceso de todos los objetos (Por ejemplo

archivos procesos dispositivos)

Comprobacioacuten de integridad de etiquetas (Por ejemplo mantenimiento de etiquetas

de sensibilidad cuando se exportan datos)

Auditoriacutea de objetos etiquetados

Control de acceso obligatorio para todas las operaciones

Capacidad para especificar el nivel de seguridad impreso en salida legible para

humanos (Por ejemplo impresoras)

43

Capacidad para especificar el nivel de seguridad en cualquier salida legible por

maacutequina

Auditoriacutea mejorada

Proteccioacuten mejorada del sistema operativo

Documentacioacuten mejorada

Los sistemas operativos de ejemplo son HP-UX BLS Cray Research Trusted

Unicos 80 Digital SEVMS Harris CS SX SGI Trusted IRIX

245 Nivel B2 En los sistemas de nivel B2 el TCB se basa en un modelo de poliacutetica de

seguridad formal claramente definido y documentado que requiere que la aplicacioacuten de control de

acceso discrecional y obligatoria que se encuentra en los sistemas de nivel B1 se extienda a todos

los sujetos y objetos en el sistema Ademaacutes se abordan los canales encubiertos El TCB debe

estructurarse cuidadosamente en elementos criacuteticos para la proteccioacuten y no criacuteticos para la

proteccioacuten La interfaz TCB estaacute bien definida y el disentildeo y la implementacioacuten TCB le permiten

someterse a pruebas maacutes exhaustivas y una revisioacuten maacutes completa Se fortalecen los mecanismos

de autenticacioacuten se proporciona una gestioacuten confiable de las instalaciones en forma de soporte

para las funciones de administrador y operador del sistema y se imponen estrictos controles de

gestioacuten de la configuracioacuten El sistema es relativamente resistente a la penetracioacuten Los siguientes

son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de nivel B2

Notificacioacuten de cambios en el nivel de seguridad que afectan a los usuarios

interactivos

Etiquetas de dispositivos jeraacuterquicos

44

Acceso obligatorio a todos los objetos y dispositivos

Comunicaciones de ruta confiables entre usuario y sistema

Rastreo de canales de almacenamiento encubiertos

Modo de operaciones del sistema maacutes estricto en unidades independientes de varios

niveles

Anaacutelisis de canales encubiertos

Pruebas de seguridad mejoradas

Modelos formales de TCB

Versioacuten actualizacioacuten y anaacutelisis y revisioacuten de parches

Los sistemas de ejemplo son Honeywell Multics Cryptek VSLAN Trusted

XENIX

246 Nivel B3 El TCB debe satisfacer los requisitos del monitor de referencia para mediar

todos los accesos de los sujetos a los objetos ser a prueba de manipulaciones y ser lo

suficientemente pequentildeo como para ser sometido a anaacutelisis y pruebas Con este fin el TCB estaacute

estructurado para excluir el coacutedigo que no es esencial para la aplicacioacuten de la poliacutetica de seguridad

con una importante ingenieriacutea del sistema durante el disentildeo y la implementacioacuten del TCB dirigido

a minimizar su complejidad Se admite un administrador de seguridad los mecanismos de

auditoriacutea se ampliacutean para sentildealar eventos relevantes para la seguridad y se requieren

procedimientos de recuperacioacuten del sistema El sistema es altamente resistente a la penetracioacuten

Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de clase

(B3)

45

ACL adicionalmente basadas en grupos e identificadores

Acceso de ruta confiable y autenticacioacuten

Anaacutelisis automaacutetico de seguridad

Modelos TCB maacutes formales

Auditoriacutea de eventos de auditoriacutea de seguridad

Recuperacioacuten confiable despueacutes de la caiacuteda del sistema y documentacioacuten relevante

Cero defectos de disentildeo en TCB y defectos miacutenimos de implementacioacuten

El uacutenico sistema operativo con certificacioacuten B3 es Getronics Wang Federal XTS-

300

247 Nivel A1 Los sistemas en el nivel A1 son funcionalmente equivalentes a los del nivel

B3 en que no se agregan caracteriacutesticas arquitectoacutenicas adicionales ni requisitos de poliacuteticas La

caracteriacutestica distintiva de los sistemas en este nivel es el anaacutelisis derivado de la especificacioacuten

formal del disentildeo y las teacutecnicas de verificacioacuten y el alto grado resultante de seguridad de que el

TCB se implementa correctamente Esta garantiacutea es de naturaleza de desarrollo comenzando con

un modelo formal de la poliacutetica de seguridad y una especificacioacuten formal de alto nivel del disentildeo

Independientemente del lenguaje de especificacioacuten particular o del sistema de verificacioacuten

utilizado existen los siguientes criterios importantes para la verificacioacuten del disentildeo de nivel A1

Meacutetodos formales y prueba de integridad de TCB

Estos son los uacutenicos sistemas con certificacioacuten A1 Boeing MLS LAN Gemini

Trusted Network Processor Honeywell SCOMP (United States Government

Department of Defense 1983)

46

25 Sistemas Operativos

Un sistema operativo actuacutea como intermediario entre el usuario de una computadora y el

hardware de la computadora El propoacutesito de un sistema operativo es proporcionar un entorno en

el que un usuario pueda ejecutar programas de manera conveniente y eficiente

Un sistema operativo es un software que administra el hardware de la computadora El

hardware debe proporcionar mecanismos apropiados para garantizar el correcto funcionamiento

del sistema informaacutetico y para evitar que los programas del usuario interfieran con el correcto

funcionamiento del sistema (Carretero Peacuterez de Miguel Anasagasti Garciacutea Carballeira amp Peacuterez

Costoya 2001)

Un sistema operativo es un programa que controla la ejecucioacuten de programas de aplicacioacuten

y actuacutea como una interfaz entre el usuario de una computadora y el hardware de la computadora

Una definicioacuten maacutes comuacuten es que el sistema operativo es el uacutenico programa que se ejecuta

en todo momento en la computadora (generalmente llamado kernel) y todo lo demaacutes son

programas de aplicacioacuten

Un sistema operativo se ocupa de la asignacioacuten de recursos y servicios como memoria

procesadores dispositivos e informacioacuten El sistema operativo incluye los programas para

administrar estos recursos como un controlador de traacutefico un programador un moacutedulo de

administracioacuten de memoria programas de E S y un sistema de archivos (Pawar 2016)

47

251 Windows Sistema operativo de la empresa Microsoft es un conjunto de programas

que administra los recursos de una computadora Windows empieza a trabajar cuando se enciende

o inicializa el equipo para gestionar el hardware empezando desde los niveles maacutes baacutesicos

Es importante conocer que los sistemas operativos funcionan tanto en las computadoras

como en diferentes dispositivos electroacutenicos que usan microprocesadores En este caso Windows

su versioacuten estaacutendar funciona con computadoras Microsoft domina el mercado de los sistemas

operativos debido a su comodidad se puede decir que eacuteste sistema operativo se encuentra

instalado en el 887 de los equipos de coacutemputo que cuentan con acceso a Internet en todo el

mundo

Se pueden mencionar algunas aplicaciones principales (que eacutestas tambieacuten pueden ser

desinstaladas por los usuarios o actualizadas sin que el sistema operativo se dantildee o deje de

funcionar) se encuentran el procesador de texto WordPad el navegador Internet Explorer el

reproductor multimedia Windows Media y el editor de imaacutegenes Paint

La principal novedad que aportoacute Windows desde sus oriacutegenes fue la facilidad para usarlo

y el atractivo visual De hecho su nombre (ldquoventanasrdquo) se debe a la forma en que el sistema

presenta a los usuarios los recursos con los que cuenta su computadora lo que facilita las tareas

cotidianas Windows tambieacuten suele recibir varias criacuteticas por sus problemas de seguridad y por

otros fallos

48

252 Registro de Windows El registro es una base de datos jeraacuterquica que contiene datos

que son criacuteticos para el funcionamiento de Windows y las aplicaciones y servicios que se ejecutan

en Windows Los datos estaacuten estructurados en un formato de aacuterbol Cada nodo en el aacuterbol se llama

clave Cada clave puede contener subclaves y entradas de datos llamadas valores A veces la

presencia de una clave es el uacutenico dato que requiere una aplicacioacuten otras veces una aplicacioacuten

abre una clave y usa los valores asociados con la clave (Microsoft Inc 2019) Una clave puede

tener cualquier nuacutemero de valores y los valores pueden tener cualquier forma El registro es

utilizado por

Autenticacioacuten

Nuacutecleo (Kernel)

Controladores de dispositivos

Servicios

SAM

Las carpetas del sistema se almacenaraacuten en distintas rutas de acceso dependiendo de la

versioacuten de Windows con la que se esteacute trabajando a continuacioacuten cuatro de los cinco archivos

que maacutes interesan a esta investigacioacuten se encuentran en la siguiente ubicacioacuten SystemRoot

System32 Config dentro de las siguientes sub llaves

SAM - HKEY LOCAL MACHINE SAM

SECURITY - HKEY LOCAL MACHINE SECURITY

SOFTWARE - HKEY LOCAL MACHINE SOFTWARE

SYSTEM - HKEY LOCAL MACHINE SYSTEM

49

253 Administrador de cuentas de seguridad El administrador de cuentas de seguridad

(SAM por sus siglas en ingleacutes) es una base de datos en donde se encuentran las cuentas de

seguridad Esto es utilizado por Windows para administrar las cuentas de usuario y contrasentildeas en

el formato hash

Las contrasentildeas nunca se almacenan en formato de texto claro Se almacenan en formato

de hash para protegerlas de los ataques La base de datos SAM se implementa como un archivo de

registro y las obtiene del kernel de Windows y mantiene un bloqueo exclusivo al archivo SAM

esto quiere decir que el archivo tiene cierta medida de seguridad para el almacenamiento de las

contrasentildeas (Hernandez 2013)

No es posible copiar el archivo SAM a otra ubicacioacuten en el caso de los ataques en liacutenea

Dado que el archivo SAM estaacute bloqueado con un bloqueo exclusivo al sistema de archivos no

puede ser copiado o movido mientras se ejecuta Windows El bloqueo no iniciaraacute hasta que la

excepcioacuten de la pantalla azul haya sido inicializada o el sistema operativo haya sido apagado Sin

embargo los archivos en formato hash de contrasentildeas fuera de liacutenea estaacuten disponibles para los

ataques de fuerza bruta el contenido del archivo SAM puede ser copiado o descargado utilizando

diversas teacutecnicas

Un identificador de seguridad (SID) es un valor uacutenico de longitud variable utilizado para

identificar a un usuario Cada cuenta tiene un SID uacutenico emitido por una autoridad como un

controlador de dominio de Windows y almacenado en una base de datos de seguridad Cada vez

50

que un usuario inicia sesioacuten el sistema recupera el SID para ese usuario de la base de datos y lo

coloca en el token de acceso para ese usuario El sistema usa el SID en el token de acceso para

identificar al usuario en todas las interacciones posteriores con la seguridad de Windows Cuando

se ha usado un SID como identificador uacutenico para un usuario o grupo no se puede volver a usar

para identificar a otro usuario o grupo

La seguridad de Windows usa SID en los siguientes elementos de seguridad

En descriptores de seguridad para identificar al propietario de un objeto y grupo

primario

En las entradas de control de acceso para identificar al usuario para quien el acceso

estaacute permitido denegado o auditado

En tokens de acceso para identificar al usuario y los grupos a los que pertenece

2531 Identificador de Seguridad (SID Security Identifier)

S - 1 - 5 - 21 - 3983109318 - 554656936 - 3066752241 - 1000

S - indica que es un string de SID

1 - el nivel de revisioacuten

5 - el identificador de valor de autoridad o authority value no siempre seraacute 5 Entre otros

valores que se pueden encontrar estaacuten los siguientes

51

0 - sin autoridad

1 - autoridad global

2 - autoridad local

3 - autoridad de creador

4 - autoridad no uacutenica

5 - autoridad NT

9 - autoridad de administrador de recursos

21 - 3983109318 - 554656936 - 3066752241 - es el dominio en el que se encuentra el

sistema o el identificador local de la computadora

1000 - ID uacutenico para cada cuenta aquiacute se encuentra el RID (Relative Identifier) Nuacutemero

de longitud variable cualquier grupo o usuario que se cree de manera diferente a la predeterminada

recibiraacute un RID de 1000 o superior En el caso de que el valor sea 500 responde a que este SID

representa la cuenta de un administrador el valor de 500 siempre seraacute el mismo en cualquier cuenta

de administrador a su vez el valor 501 representa el SID de una cuenta Invitado (Guest)

(Hernandez 2013)

254 Autenticacioacuten NTML NTLM (NT LAN Manager) es un protocolo empleado por

muchos productos de Microsoft para realizar la autenticacioacuten desafiacuteorespuesta por lo tanto es el

esquema de autenticacioacuten que por defecto usa Firewall de Microsoft y tambieacuten los productos del

servidor proxy

52

Este software fue desarrollado para afrontar el problema del trabajo con Tecnologiacuteas Java

en un entorno orientado a Microsoft Puesto que no se basa en ninguna especificacioacuten oficial de

protocolo por lo tanto no hay garantiacutea de que funciona correctamente en todos los casos Tambieacuten

ha estado en algunas instalaciones de Windows donde funcionoacute con eacutexito

La Autenticacioacuten NTLM se compone de dos protocolos protocolo de autenticacioacuten NTLM

y protocolo de autenticacioacuten LM Estos protocolos utilizan una metodologiacutea de hash diferente para

almacenar contrasentildeas de los usuarios en la base de datos SAM (Hernandez 2013) (Meneacutendez-

Barzanallana 17)

26 LINUX (ROCKS)

Rocks es una distribucioacuten para cluacutester de Linux de coacutedigo abierto que permite a los usuarios

finales construir de manera maacutes amigable cluacutesteres computacionales y muros de visualizacioacuten en

mosaico Cientos de investigadores de todo el mundo han utilizado Rocks para implementar su

propio cluacutester

Desde mayo de 2000 el grupo Rocks ha abordado las dificultades de implementar cluacutesteres

manejables Encaminados hacia un objetivo crear cluacutesters de manera maacutes sencilla Por sencilla

significa faacutecil de implementar administrar actualizar y escalar Este objetivo impulsa a los

creadores de esta herramienta a ayudar a entregar el poder computacional de los cluacutesteres a una

amplia gama de usuarios cientiacuteficos Estaacute claro que poner a disposicioacuten de una amplia gama de

53

cientiacuteficos plataformas de computacioacuten paralelas estables y manejables ayudaraacute enormemente a

mejorar el estado del arte en herramientas paralelas (Rocksclusters 2010)

261 Escritorio De todos los escritorios disponibles para el sistema operativo Linux

GNOME ha logrado convertirse en el maacutes eficiente estable y confiable sin dejar de ser sencillo

de usar De hecho la mayoriacutea de los usuarios independientemente de su experiencia pueden

trabajar con GNOME casi sin esfuerzo

Los usuarios que son nuevos tanto en Linux como en GNOME hariacutean mejor en conocer

los entresijos del escritorio que hacen que Linux no solo sea faacutecil sino tambieacuten divertido

Un entorno de escritorio agrupa programas que trabajan juntos para formar un espacio de

trabajo informaacutetico cohesivo unificado transparente e interactivo para los usuarios O para

decirlo de manera maacutes simple el entorno de escritorio es la interfaz de usuario para el sistema

operativo En el caso de GNOME ese sistema operativo es Linux Sin un entorno de escritorio su

uacutenica alternativa es una sesioacuten de Shell (liacutenea de comandos) basada en texto (Wallen 2019)

262 Paquete de Oficina Una suite ofimaacutetica es una coleccioacuten de software creada por el

mismo proveedor y disentildeada para ser utilizada para tareas rutinarias dentro de una organizacioacuten

Por lo general una suite ofimaacutetica incluye aplicaciones como procesamiento de texto hojas de

caacutelculo presentacioacuten correo electroacutenico toma de notas base de datos colaboracioacuten y otros tipos

de software relacionados En la mayoriacutea de los casos cada aplicacioacuten en la suite ofimaacutetica se puede

instalar por separado y todas las aplicaciones dentro de la suite admiten la interoperabilidad entre

54

siacute Microsoft Office Suite Lotus Live Notes y LibreOffice son todas suites de oficina de uso

comuacuten

263 Organizador de archivos Es una funcioacuten avanzada disentildeada para agrupar y

renombrar archivos usando sus atributos del sistema o meta atributos

Cada archivo tiene atributos del sistema como la fecha (Acceso Creado y Modificado) el

tipo de archivo (definido por extensioacuten) y asociado con la aplicacioacuten registrada de ese tipo de

archivo Estos atributos se pueden usar para generar un nuevo nombre de archivo o carpeta (grupo)

para cada archivo con el mismo atributo Ademaacutes de los atributos del sistema algunos archivos

en su mayoriacutea medios o imaacutegenes pueden contener metacampos como el nombre del artista el

tiacutetulo el nombre del aacutelbum y otros El Organizador de archivos tambieacuten usa estos metacampos

para agrupar archivos en una carpeta con el mismo atributo Por lo tanto el organizador de archivos

opera reglas de organizacioacuten de archivos que definen la jerarquiacutea de agrupacioacuten de carpetas y las

reglas de cambio de nombre de archivos

Asiacute como el conocido ldquoexplorador de Windowsrdquo Linux integra un organizador de archivos

y carpetas llamado NAUTILUS para realizar tareas de manejo de archivos como mover copiar

renombrar crear carpetas y de esta manera administrar nuestros dispositivos de almacenamiento

55

27 Agrupamiento (Cluacutester) de Computadoras

El agrupamiento (cluacutester) de computadoras estaacute conformado por una coleccioacuten de

computadoras autoacutenomas interconectadas trabajando unidas como un solo recurso de computacioacuten

integrado El concepto de agrupamiento de computadoras nacioacute cuando los pioneros de la

supercomputacioacuten intentaban difundir diferentes procesos entre varias computadoras para luego

poder recoger los resultados que dichos procesos debiacutean producir Con un hardware maacutes barato y

faacutecil de conseguir se pudo perfilar que podriacutean conseguirse resultados muy parecidos a los

obtenidos con aquellas maacutequinas mucho maacutes costosas (Chirinov 2003)

Un agrupamiento de computadoras se puede definir como el trabajo realizado por dos o

maacutes computadoras que en conjunto se encargan de proveer una determinada solucioacuten Tiene como

finalidad agrupar el poder de coacutemputo de los nodos implicados para proporcionar una mayor

escalabilidad disponibilidad y fiabilidad (Branch Bedoya amp Mesa Muacutenera 2008)

La escalabilidad es la capacidad de un equipo para hacer frente a voluacutemenes de trabajo

cada vez mayores sin por ello dejar de prestar un nivel de rendimiento aceptable

La disponibilidad y la fiabilidad se encuentran bastante relacionadas aunque difieren

ligeramente en algunos aspectos La disponibilidad es la calidad de estar presente y listo para su

uso mientras que la fiabilidad es la probabilidad de un correcto funcionamiento

56

Entre los tipos de agrupamiento maacutes comunes se pueden encontrar de alta disponibilidad

(ambiente a prueba de fallas) coacutemputo de alto desempentildeo (los procesos o las tareas dadas se

presentan como un solo sistema virtual) y escalamiento horizontal (se utiliza para proporcionar

una sola interfaz a un conjunto de recursos que pueden aumentar o disminuir arbitrariamente su

tamantildeo en un cierto periodo de tiempo) (Gonzaacutelez Ramiacuterez amp Rodriacuteguez Saacutenchez 2008)

271 Beowulf Es una clase de computadora masivamente paralela de altas prestaciones

principalmente construida a base de agrupamiento de componentes hardware estaacutendar (Llorens amp

Pentildea 2002) Consta de un conjunto de nodos minimalistas unidos por un medio de

comunicaciones econoacutemico Esto quiere decir que tienen lo miacutenimo para ejecutar su funcioacuten de

hecho los nodos por siacute solos no son capaces de ejecutar siquiera un sistema operativo (Nievas

Pino amp Arroyo) Se puede ver como una supercomputadora paralela construida con hardware

comercial de faacutecil adquisicioacuten que posee como sistema operativo Linux Los cluacutesters Beowulf son

extremadamente poderosos pero no son para todas las personas Su principal desventaja es que

requieren software disentildeado para poder aprovechar los recursos del cluacutester (Lizaacuterraga 2002)

272 Mosix Seguacuten Peacuterez (2001) la arquitectura Mosix estaacute basada en la misma ideologiacutea

de la arquitectura Beowulf Se basa en un conjunto de parches aplicados al nuacutecleo (kernel) de Linux

y que asignan a todo el grupo de nodos un espacio de direcciones y de procesos comuacuten gracias al

cual los procesos migran de uno a otro con el fin de equilibrar favorablemente la carga del sistema

global Es una herramienta disentildeada para realizar balanceo de carga en el agrupamiento de forma

totalmente transparente de manera tal que los nodos se comportan como una sola maacutequina y asiacute

incrementar el aprovechamiento de cada uno de los nodos (Chaacutevez y otros 1999) La principal

57

ventaja de Mosix frente a Beowulf se basa precisamente en esto Mosix da mejores respuestas que

Beowulf frente a la caiacuteda o insercioacuten de nodos A parte de esto Mosix permite un cambio constante

de aplicacioacuten o incluso el correr aplicaciones independientes de forma simultaacutenea

273 OpenMosix OpenMosix es una extensioacuten del proyecto Mosix Seguacuten Chirinov

(2003) la idea de este modelo es que la distribucioacuten de tareas en el cluacutester la determina OpenMosix

de forma dinaacutemica conforme se van creando tareas Cuando un nodo estaacute demasiado cargado las

tareas que se estaacuten ejecutando pueden migrar a cualquier otro nodo del cluacutester Asiacute desde que se

ejecuta una tarea hasta que eacutesta muere podraacute migrar de un nodo a otro sin que el proceso sufra

mayores cambios

Ademaacutes OpenMosix funciona a nivel de kernel por tanto puede conseguir toda la

informacioacuten que necesite para decidir que tanto estaacute cargado un sistema y queacute pasos se deben

seguir para aumentar el rendimiento ademaacutes puede realizar maacutes funciones que cualquier

aplicacioacuten a nivel de usuario

Despueacutes de elegir el tipo de cluacutester a utilizar se procede a elegir los elementos baacutesicos que

se emplearaacuten para implementar el cluacutester capacidad de procesamiento memoria espacio del disco

de cada nodo asiacute como tambieacuten el ancho de banda de la comunicacioacuten entre los nodos Se deberaacute

decidir cuaacuteles son importantes basaacutendose en la variedad de aplicaciones que se piensen ejecutar

en el cluacutester y de la cantidad de dinero que se disponga para construirlo

58

Bajo estos mismos paraacutemetros se debe escoger tambieacuten el tipo de red que interconectaraacute

los nodos (Turner 2004)

Luego se debe escoger el sistema operativo a utilizar Esta eleccioacuten dependeraacute mucho de

la maacutequina que se escoja Linux es siempre una opcioacuten en cualquier maacutequina y es la eleccioacuten maacutes

comuacuten Muchas de las herramientas necesarias para la implementacioacuten de un cluacutester han sido

desarrolladas bajo Linux Pero existen cluacutesters corriendo bajo Windows NT UNIX Solaris y AIX

59

Capiacutetulo 3 Implementacioacuten de Cluacutester

31 Requisitos previos

Antes de iniciar la instalacioacuten del FrontEnd es necesario asegurarse que las conexiones de

red de los equipos junto con la configuracioacuten de la BIOS de cada uno sean las correctas

311 Conexioacuten de los equipos y acceso a la red

Un cluacutester de alto desempentildeo funciona como un uacutenico equipo el cuaacutel comparte los recursos

de los nodos esclavos con el nodo maestro para ello es esencial la existencia de una red interna de

alta velocidad por medio de la cual se realice la comunicacioacuten entre el nodo maestro y los nodos

esclavos como se muestra en la Figura 31 El nodo maestro necesitaraacute 2 tarjetas de red de alta

Figura 31 Esquema tiacutepico de configuracioacuten de un cluacutester (Fuente Elaboracioacuten propia)

60

velocidad una para la comunicacioacuten interna y otra para la comunicacioacuten con redes externas El

sistema operativo Rocks asigna automaacuteticamente la interface ldquoeth0rdquo a la red interna del cluacutester y

la interface ldquoeth1rdquo a la red externa En caso de que Rocks sea incapaz de determinar cuaacutel es la red

externa debido a la falta de conexioacuten a internet estas podriacutean ser asignadas de manera incorrecta

por tal motivo se sugiere asegurar el nombre de cada una de las interfaces

Dado que Rocks no permite volverlas a asignar una vez finalizada la instalacioacuten es

necesario volver a reinstalarlo para poder solucionar este inconveniente

312 Configuracioacuten de la BIOS Para evitar problemas durante la instalacioacuten conviene

configurar correctamente la Bios

3121 ATAIDE Mode Algunos sistemas operativos puede que no sean capaces de

reconocer el controlador del disco duro como es en el caso de esta distribucioacuten de Rocks usada

Para evitar complicaciones de tener que antildeadir el controlador a mano lo mejor es habilitar el modo

ldquoLegacyrdquo de controlador de disco duro

61

Para ello se accede a la Bios pulsando F2 al encender el equipo se situacutea en la pestantildea

ldquoAdvancedrdquo y se selecciona ldquoDrive Configurationrdquo como se muestra en la Figura 32

Figura 32 Imagen del Bios del equipo en la opcioacuten ldquodrive configurationrdquo (Fuente Elaboracioacuten propia)

Figura 33 Bios ATAIDE Legacy Mode (Fuente Elaboracioacuten propia)

62

Dentro del menuacute se tiene que seleccionar el Modo ldquoLegacyrdquo en la opcioacuten ldquoATAIDE

Moderdquo como se muestra en la Figura 33 y para salir se guardan los cambios con F10

3122 PXE Al momento de instalar un nodo puede ocurrir falla al arrancar y aparecer

bootsplash (Reboot and Select proper device) Para evitarlo es necesario habilitar la opcioacuten de

PXE para que tome los archivos de instalacioacuten del nodo maestro a traveacutes de la red interna

En la Bios se selecciona la pestantildea ldquoBootrdquo y dentro de ese mismo menuacute se deshabilita

ldquoSilent bootrdquo y se habilita la opcioacuten de ldquoPXE boot to lanrdquo como se muestra en la Figura 34

Finalmente hay que verificar que en la secuencia de arranque (Figura 35) como primer

dispositivo sea desde red para que de esta manera inicie desde el PXE

Figura 34 Bios Boot PXE (Fuente Elaboracioacuten propia)

63

Se guardan los cambios antes de salir

32 Instalacioacuten de Sistema Operativo Rocks

Una vez configurados los equipos se enciende el equipo que seraacute el nodo maestro

(FrontEnd) en el cuaacutel previamente se ha modificado la secuencia de inicio del boot desde la Bios

de modo que al insertar el CD de Rocks eacuteste procederaacute a iniciar la instalacioacuten con la siguiente

pantalla que se muestra a continuacioacuten

Figura 35 Bios Boot device prioriry (Fuente Elaboracioacuten propia)

64

Para iniciar la instalacioacuten uacutenicamente se selecciona la opcioacuten ldquoInstall CentOS 7rdquo como se

muestra en la Figura 36 dando asiacute comienzo al proceso de instalacioacuten Tras finalizar un proceso

de carga en memoria Rocks mostraraacute un formulario en entorno graacutefico mediante el cual

procederemos a configurar el FrontEnd

Esta primera pantalla se muestra coacutemo se desea realizar la instalacioacuten puede realizarse

por medio de la descarga del sistema operativo (se requiere internet) En este caso como se muestra

en la Figura 37 dado que previamente se descargoacute el DVD completo se seleccionoacute ldquoCDDVD

based rollsrdquo

Figura 36 Pantalla de Inicio de instalacioacuten de Rocks (Fuente Elaboracioacuten propia)

65

A continuacioacuten Figura 38 se selecciona de la lista de Rolls aquellos que se desean instalar

Figura 37 Pantalla de seleccioacuten de Rolls (Fuente Elaboracioacuten propia)

Figura 38 Listado de opciones de rolls para instalar (Fuente Elaboracioacuten propia)

66

Tras presionar el botoacuten ldquoSubmitrdquo la siguiente pantalla (Figura 39) muestra formulario en

el que hay que indicar la informacioacuten baacutesica del cluacutester entre las cuales aparecen

Fully-Qualified Host Name Nombre con el que se conoceraacute en la red externa el cluacutester

Cluster Name Nombre utilizado para ser identificado dentro de las herramientas del cluacutester

Certificate Organization Locality State and Country Organizacioacuten a la que pertenece el

cluacutester la localidad el estado y la ciudad

Contact URL and LattitudeLongitude Contacto direccioacuten web y posicioacuten GPS

Figura 39 Informacioacuten baacutesica del cluacutester a instalar (Fuente Elaboracioacuten propia)

67

Una vez que se ingresa la informacioacuten al cluacutester se presiona el botoacuten ldquoListordquo y

posteriormente se podraacute cambiar la configuracioacuten baacutesica de la red interna del cluacutester En este caso

Figura 310 se dejoacute el valor por defecto una IP de clase B (1011116)

El siguiente paso es la configuracioacuten de la red externa (para tener acceso a internet) En

este punto se introducen los datos de la red externa a la que se encuentra conectado el nodo

maestro como se muestra en la Figura 311

Figura 310 Configuracioacuten Ethernet de la red privada (Fuente Elaboracioacuten propia)

Figura 311 Configuracioacuten Ethernet de la red puacuteblica (Fuente Elaboracioacuten propia)

68

Para terminar de configurar la red externa como se muestra en la Figura 312 se ingresa la

direccioacuten IP del Gateway y los DNS (Servidor de nombre de dominio) que va a usar para el acceso

a internet

Se continuacutea con el resto del formulario donde se introduce la contrasentildea para el usuario

root tal y como se muestran en la Figura 313

Figura 312 Configuracioacuten de DNS y Gateway (Fuente Elaboracioacuten propia)

Figura 313 Ingresar contrasentildea de usuario root (Fuente Elaboracioacuten propia)

69

Paso siguiente se procede a seleccionar la zona horaria como se muestra en la Figura 314

donde se encuentra ubicado el cluacutester asiacute como un servidor de donde podraacute obtener la zona horaria

automaacuteticamente en este caso se dejoacute el valor por default

En el formulario de la Figura 315 se selecciona la forma de particionar el disco duro

(automaacutetica manual) una vez seleccionado daraacute comienzo al proceso de instalacioacuten de manera

Figura 314 Configuracioacuten horaria (Fuente Elaboracioacuten propia)

Figura 315 Particiones del disco duro (Fuente Elaboracioacuten propia)

70

desatendida Cuando ha concluido la instalacioacuten el equipo se reiniciaraacute y se requeriraacute iniciar con

el usuario root y la contrasentildea establecida previamente

321 Configuracioacuten del teclado Debido a que el teclado por defecto estaacute en idioma

ingleacutes podriacutea provocar problemas al momento de escribir la contrasentildea u otros comandos

Seguacuten las pruebas realizadas aunque se cambie la configuracioacuten del teclado desde el menuacute

de preferencias uacutenicamente se mantiene dentro de la sesioacuten desde la que se ha cambiado dicha

opcioacuten (lo cual implica que la contrasentildea de usuario hay que introducirla seguacuten la distribucioacuten

inglesa)

33 Instalacioacuten de los nodos

Previo a la instalacioacuten de los nodos esclavos cada uno de los equipos fueron configurados

desde la Bios para que arranquen desde la red (seccioacuten 3122) Para ir antildeadiendo los nodos solo

se tiene que introducir el siguiente comando desde nuestro FrontEnd

$insert-ethers

A continuacioacuten como se muestra en la Figura 316 apareceraacute una ventana en la pantalla

en la cual se seleccionaraacute la opcioacuten ldquoComputerdquo

71

Una vez realizado este paso se procede a encender los equipos que funcionaraacuten como

nodos esclavos uno a uno

Se sugiere esperar a que cada nuevo equipo encendido esteacute marcado con un asterisco antes

de proceder a encender el siguiente como se muestra en la Figura 317 De esta manera se asegura

que cada nuevo nodo antildeadido posea el nombre y numeracioacuten deseada

Figura 316 Pantalla para ingresar nodos (Fuente Elaboracioacuten propia)

Figura 317 Indicador de insercioacuten de nuevos nodos (Fuente Elaboracioacuten propia)

72

Puede darse el caso de que un nodo no sea detectado automaacuteticamente eso indica que se

ha omitido alguacuten paso o parte de la configuracioacuten realizada hasta el momento es incorrecta En ese

caso comprobar lo siguiente

Que el nodo esclavo este correctamente conectado a la red interna

Que el FrontEnd (nodo maestro) tenga correctamente configurada la red interna y externa

Que el PXE esteacute habilitado en la Bios del nodo esclavo

331 Administracioacuten de nodos Algunos de los comandos maacutes uacutetiles para para la gestioacuten

de los nodos son los siguientes

Eliminar un nodo de la lista

Reinstalar un nodo

Listar los nodos ya instalados

Acceder a un nodo

$rocks remove host nombre_nodo

$rocks remove host nombre_nodo

$rocks set host boot nombre_nodo action=install

$rocks set host boot nombre_nodo action=install

$rocks list host

$rocks list host

$ssh nombre_nodo

$ssh nombre_nodo

73

Ejecutar un comando de manera remota a un nodo

332 Creacioacuten de cuentas de usuario Para agregar a un usuario hay que realizar los

siguientes pasos

1 Creacioacuten de la cuenta

$useradd nombre_usuario

2 Asignacioacuten de una contrasentildea

$passwd nombre_usuario

3 Sincronizacioacuten de la cuenta de usuario con el resto de nodos

$rocks-user-sync

333 Configuracioacuten del directorio compartido El directorio share es compartido por el

FrontEnd y el resto de nodos se localiza dentro del FrontEnd en la carpeta exports siendo la

carpeta share un enlace simboacutelico a esta uacuteltima

Al principio es posible que no se sincronicen correctamente los archivos introducidos en el

directorio debido a que la carpeta inicialmente estaacute vaciacutea por lo que para solucionar este

inconveniente puede usarse el comando siguiente para reiniciar dicho servicio

$ssh nombre_nodo lsquocomandorsquo

$ssh nombre_nodo lsquocomandorsquo

$cd

$export fs ndashrv

service nfs restart

$cd

$export fs ndashrv

service nfs restart

74

34 Operaciones baacutesicas de Rocks

Comandos y aplicaciones esenciales para el manejo del cluacutester

Ver que rolls estaacuten instalados

$rocks list roll

Visualizar el estado del sistema Figura 318

$qstat ndashf

Probar el sistema de colas para distribuir tareas a los nodos

Para ello se prueba que el SGE del cluacutester funcione enviaacutendole una serie de trabajos

mediante el comando qsub

En primer lugar se crea un fichero (pruebapl) que tenga permisos de ejecucioacuten con el

siguiente contenido

Figura 318 Comando qstat ndashf (Fuente Elaboracioacuten propia)

75

usrbinperl

for(my $i=0$ilt30$i++) sleep(2) print okn

Y se ejecuta con el siguiente comando

$ for ((i=1ilt=10i+=1)) do qsub pruebapl done

Al ejecutarse se puede comprobar que los trabajos se han mandado Figura 319

Y al realizar de nuevo un ldquoqstat ndashfrdquo Figura 320 se observa coacutemo se van realizando

Figura 319 Enviacuteo de trabajos por medio del comando qsub (Fuente Elaboracioacuten propia)

Figura 320 Estado de los trabajos pendientes mostrados por qstat ndashf (Fuente Elaboracioacuten propia)

76

Para ver la carga de trabajo en el cluacutester de manera global y de forma graacutefica se tiene que

ingresar en un navegador web en la siguiente direccioacuten httplocalhostganglia apareceraacute la

Figura 321

Figura 321 Visualizacioacuten de la distribucioacuten de cargas en el cluacutester usando la herramienta Ganglia (Fuente Elaboracioacuten propia)

77

Capiacutetulo 4 Metodologiacutea y Resultados

Una vez finalizada la instalacioacuten y puesta en operacioacuten del equipo se analizaron diferentes

metodologiacuteas de trabajo lo que implicoacute un trabajo arduo debido a que existen complicaciones

cuando se buscan temas relacionados a vulnerar sistemas operativos La realizacioacuten de este

proyecto estaacute basado en la metodologiacutea de Joshua Picolet ldquoCracking Methodologyrdquo (Picolet

2017)

41 Obtener Archivo hash

Se pueden vulnerar contrasentildeas de Windows de diferentes maneras Una de ellas es

mediante el acceso al archivo del Administrador de cuentas de seguridad (SAM) el cual se detalla

en el apartado 253 a traveacutes de la obtencioacuten de las contrasentildeas del sistema en su forma hash por

medio de herramientas diferentes Alternativamente las contrasentildeas se pueden leer desde la

memoria lo que tiene el beneficio adicional de recuperar las contrasentildeas en texto plano y evitar el

requisito de descifrado Para comprender los formatos que se observan cuando se descarguen

hashes del sistema de Windows se requiere una breve descripcioacuten de los diferentes formatos de

almacenamiento

Originalmente las contrasentildeas de Windows de menos de 15 caracteres se almacenaban en

el formato hash de Lan Manager (LM) Algunos sistemas operativos como Windows 2000 XP y

Server 2003 continuacutean usando estos hashes a menos que esteacuten deshabilitados por el usuario

Ocasionalmente un sistema operativo como Windows Vista puede almacenar el hash LM para la

compatibilidad con otros sistemas Seguacuten analistas incluye varias vulnerabilidades como dividir

78

la contrasentildea en dos bloques y permitir que cada uno se descifre de forma independiente Mediante

el uso de tablas Rainbow es trivial descifrar una contrasentildea almacenada en un hash LM

independientemente de la complejidad Este hash se almacena con la misma contrasentildea calculada

en el formato de hash NT como el que se muestra en el siguiente ejemplo

Ejemplo de un hash NTLM con el componente LM y NT

Administrator500611D6F6E763B902934544489FCC9192BB71ED1E7F2B60ED5A2

EDD28379D45C91

Los sistemas operativos Windows maacutes recientes como el Windows 8 y 10 usan el hash NT

En teacuterminos simples no hay una debilidad significativa en este hash que lo diferencie de cualquier

otra funcioacuten hash criptograacutefica Se requieren meacutetodos de descifrado como lo es la fuerza bruta o

ataque de diccionario para recuperar la contrasentildea si uacutenicamente se almacena en el formato NT

Ejemplo de un hash NTLM uacutenicamente con el componente NT (como se ve en los sistemas

Windows mas recientes

Administrator500NOPASSWORDEC054D40119570A4663

4350291AF0F72

Es importante sentildealar que la cadena NO PASSWORD es variable seguacuten la herramienta

que se utilice Otras pueden presentar esta informacioacuten como ceros rellenos o comuacutenmente puede

79

ver la cadena ldquoAAD3B435B51404EEAAD3B435B51404EErdquo en lugar de ninguna contrasentildea

Esto significa que el hash LM estaacute vaciacuteo y no estaacute almacenado

El archivo hash se encuentran en el directorio ldquoWindows System32 configrdquo y se

necesitan ambos archivos SAM y SYSTEM Ademaacutes tambieacuten se encuentran en el archivo de

registro HKEY_LOCAL_MACHINE SAM al que no se puede acceder durante el tiempo de

ejecucioacuten Finalmente las copias de seguridad se pueden encontrar a menudo en ldquoWindows

Repairrdquo (Peleus 2019)

Para extraer el archivo hash de un sistema operativo con un nivel de seguridad C1 existen

diferentes meacutetodos en esta ocasioacuten se procederaacute a iniciar el equipo objetivo con una distribucioacuten

de Linux desde una memoria USB como se muestra en la figura 41 para de esta manera ingresar

al directorio CWINDOWSSystem32Config directorio de ubicacioacuten de los archivos SAM y

SYSTEM que son los necesarios para obtener el archivo hash (Caballero 2018)

Figura 41 Arranque con LiveUSB KaliLinux (Fuente Elaboracioacuten propia)

80

42 Dar Formato al Hash

En este punto es donde se tiene que identificar el algoritmo con el que fueron encriptados

los archivos SAM y SYSTEM que se han obtenido en el punto anterior con la finalidad de

seleccionar el tratamiento que se les daraacute El algoritmo de encriptacioacuten del archivo SAM de

Windows 10 es NTLM y ademaacutes estaacute almacenado en un formato binario (ByteBleeder 2017) por

lo que fue necesario instalar la herramienta con licencia GNU samdump2 para obtener la syskey y

de esta manera poder extraer los hash desde el archivo SAM de Windows

En la figura 42 se han obtenido los hashes del archivo SAM donde se puede observar que

los usuarios Administrador e Invitado estaacuten deshabilitados ademaacutes de que existen tres cuentas de

usuario activas las cuales son Gad prueba y usuarioprueba cada una con su contrasentildea cifrada

en formato NTLM a la derecha del nombre de usuario la cuenta usuarioprueba fue a la que se le

realizoacute el anaacutelisis que se detalla posteriormente

43 Evaluar la fuerza del Hash

En criptografiacutea se dice que un algoritmo criptograacutefico se rompe si por alguacuten meacutetodo se

consigue reducir su fortaleza es decir reducir por ejemplo su entropiacutea de los 2256 bits teoacutericos a

Figura 42 Resultado de la ejecucioacuten de la herramienta samdump2 (Fuente Elaboracioacuten propia)

81

tan soacutelo 2255 por ejemplo El hecho de que se encuentre una colisioacuten no implica necesariamente

que un algoritmo se haya roto pues podriacutea haber sido realizado mediante fuerza bruta pero puede

ser una causa

Un ataque de colisioacuten significa que encuentro dos entradas diferentes que producen el

mismo resultado de un hash particular Este es generalmente el tipo de ataque maacutes faacutecil Es el tipo

de ataque que se conoce desde hace varios antildeos contra MD5

Dado que una utilidad importante de las funciones hash estaacute en las firmas digitales

encontrar colisiones puede facilitar falsificar firmas digitales Es decir dos mensajes distintos que

tengan un mismo resumen tienen ademaacutes la misma firma y un atacante puede reemplazar un

mensaje por el otro Un ejemplo de este ataque fue demostrado en 2008 por un grupo de

investigadores en Aacutemsterdam los cuales falsificaron un certificado raiacutez mediante el uso de un

ataque de colisioacuten contra el algoritmo MD5 (Preukschat 2015)

Un ataque previo a la imagen generalmente es mucho maacutes difiacutecil es encontrar otra entrada

que produzca el mismo resultado que un hash que ya se conoce

Para tratar de aclarar la diferencia aquiacute en un ataque de colisioacuten encuentro dos entradas A

y B que producen el mismo resultado En un ataque de preimagen comienzo a partir de alguacuten

resultado conocido X y encuentro una entrada que produciraacute X como resultado (Coffin 2015)

82

Para realizar esta evaluacioacuten se tomoacute como base la tabla del apeacutendice Hash craking

benchmark (Picolet 2017) el objetivo es observar el comportamiento y velocidad del Hash

mencionado cuando fue sometido a pruebas de criptoanaacutelisis Si se trata de un Hash lento se deberaacute

ser maacutes selectivo en queacute tipos de diccionarios y meacutetodos de criptoanaacutelisis se le debe aplicar Si es

un Hash raacutepido se puede ser maacutes libre con la estrategia de criptoanaacutelisis Este estudio busca

realizar una prueba de criptoanaacutelisis mostrando las diferencias entre el poder de procesamiento de

un cluacutester de 17 nodos contra una computadora personal por lo que no necesariamente se

implementaraacute el meacutetodo oacuteptimo para la realizacioacuten del criptoanaacutelisis

44 Calcular la capacidad del equipo

Con la informacioacuten de la evaluacioacuten de la fuerza del Hash obtenida en el apartado anterior en

este apartado se tiene que establecer la capacidad de la plataforma o plataformas que realizaraacuten

el criptoanaacutelisis

Para conocer la capacidad de procesamiento del cluacutester de alto rendimiento se utilizoacute la

herramienta Linpack Benchmark HPL es una implementacioacuten portaacutetil del Benchmark de alto

rendimiento LINPACK para equipos de coacutemputo distribuido Actualmente se utiliza para obtener

varios resultados en la lista actual de Top500 de HP cluacutesters (Dongarra 2010)

El Linpack Benchmark (HPL del Ingleacutes High-Performance Linpack Bench-mark) es un

software que resuelve un sistema lineal aleatorio de doble precisioacuten aritmeacutetica (64 bits) en equipos

de memoria distribuida El rendimiento muestra el nuacutemero de operaciones de punto flotante por

segundo logradas por el sistema (Petitet Whaley Dongarra amp Cleary 2008)

83

El HPL fue desarrollado en el Argone National Laboratory por Jack Don-garra en 1976 y

es uno de los maacutes usados en sistemas cientiacuteficos y de ingenieriacutea para el caacutelculo de prestaciones

Las principales caracteriacutesticas del algoritmo utilizado por el HPL son

Distribucioacuten ciacuteclica de datos de bloques de dos dimensiones

Variante derecha de la factorizacioacuten LU con pivoteo parcial (Teacutecnica de pivoteo

Dicta que el elemento pivote que debe escogerse es el mayor absolutamente de cada

columna)

Factorizacioacuten recursiva con pivoteo y reenviacuteo de columna

Distintas topologiacuteas virtuales de reenviacuteos

Algoritmo de reduccioacuten de reenviacuteo para ancho de banda (Castelloacute Gimeno 2014)

La resolucioacuten del sistema de ecuaciones se realiza del siguiente modo

1 Se crea un sistema de ecuaciones

(1)

119860119909 = 119887

(2)

119860 isin 119877119899119909119899

(3)

119909 119887 isin 119877119899

84

HPL calcula que la solucioacuten para un sistema de ecuaciones lineales se puede generalizar

como 119860119909 = 119887 donde 119860 es una matriz 119873 119909 119873 cuyos valores se generan aleatoriamente

119909 119910 119887 son vectores de tamantildeo 119873 Como se muestra en la Figura 43

2 Primero se calcula la factorizacioacuten 119871119880 con pivoteo parcial de los coeficientes 119899 y 119899 + 1

de la matriz [119860 119887]

(4)

119875119903[119860 119887] = [[119871119880] 119910]

(5)

119875119903 119871 119880 isin 119877119899119909119899

(6)

119910 isin 119877119899

El primer paso es la factorizacioacuten de la matriz 119860 en una matriz triangular superior 119880

y una matriz triangular inferior 119871 tal que 119860 = 119871119880 La factorizacioacuten se usa para calcular

el vector solucioacuten 119909

3 Una vez el pivoteo (representado por la permutacioacuten de la matriz 119875119903) y la factorizacioacuten

inferior se aplican sobre 119887 la solucioacuten se obtiene en un paso resolviendo el sistema

superior triangular

Figura 43 Sistema de Ecuaciones tipo 119860119909 = 119887 (Fuente Elaboracioacuten propia)

85

(7)

119880119909 = 119910

La matriz triangular inferior izquierda y el conjunto de pivotes no se devuelven en el

resultado Para la estabilidad numeacuterica el algoritmo de factorizacioacuten utiliza un pivote parcial de

fila

La implementacioacuten paralela de Linpack divide la matriz 119860 119873 119909 119873 en una cuadriacutecula de

procesos 119875 119909 119876 bidimensional y luego la divide en subgrupos de mosaicos 119873119861 119909 119873119861 (Petitet

Whaley Dongarra amp Cleary 2008)

Utilizando la herramienta HPL en esta investigacioacuten se obtuvieron los siguientes

resultados

La prueba abordoacute el ajuste de 119873 y la eficiencia obtenida en comparacioacuten con el rendimiento

maacuteximo Se determinoacute un valor para 119873 = 800000 aleatoriamente para ejecutar HPL en todo el

cluacutester Sin embargo el tiempo fue excesivo por lo tanto se determinoacute que este tamantildeo del

problema fue demasiado grande para el cluacutester Al realizar otros experimentos con valores maacutes

pequentildeos de 119873 se obtuvieron mejores resultados de rendimiento La Tabla 41 muestra el

rendimiento de HPL en GFlops para 119873 = 300000 400000 y 500000 Como se puede observar

en la Tabla 41 se obtuvo el mejor resultado de rendimiento 850 GFlops para 119873 = 500000 para

valores mayores de 119873 la distribucioacuten de cargas del cluacutester empieza a sobrepasar su capacidad como

se muestra en la Figura 44 y la vez su rendimiento disminuye Esto ocurre porque la cantidad de

memoria utilizada con las memorias intermedias de comunicacioacuten MPI es mayor de lo esperado

Por lo tanto es necesario dejar maacutes del 20 de la memoria para el sistema (Petitet Whaley

86

Dongarra amp Cleary 2008) Tambieacuten se realizaron pruebas usando solo un nodo de coacutemputo y el

rendimiento fue de 34 GFlops para 119873 = 20000

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia)

Analizando la eficiencia obtenida para la ejecucioacuten de un solo nodo cuando 119873 = 20000

se obtuvo el 823 del rendimiento maacuteximo (el rendimiento maacuteximo para un solo nodo es 477

Gflops) Para todo el cluacutester el rendimiento maacuteximo seriacutea 119879119898119886119909 = 477 119909 17 =

8109 119866119891119897119900119901119904 aproximadamente

Figura 44 Distribucioacuten de cargas del cluacutester

0

500

1000

300000 400000 500000

Gflops

Gflops

87

La Figura 44 titulada ldquoDistribucioacuten de cargas del cluacutesterrdquo muestra la imagen de la

herramienta Ganglia de manera graacutefica a traveacutes de cuadros que variacutean de color dependiendo de la

carga que tenga cada uno de los nodos al momento de implementar la herramienta HPL De manera

inicial indica que el cluacutester tiene un total de 17 equipos de 4 cores cada uno eso da un total de 68

cores trabajando sin equipos inactivos Muestra tambieacuten una sobrecarga en el cluacutester y un

porcentaje promedio de 100 de uso en la uacuteltima hora

45 Establecer Estrategia

Esto significa uacutenicamente que en este apartado se realizaraacute una guiacutea baacutesica para procesar

los hashes obtenidos sin perder de vista que cada escenario a criptoanalizar es uacutenico en funcioacuten

de las circunstancias externas Como ya se ha mencionado anteriormente esta estrategia de

criptoanaacutelisis se ha planteado implementar dos meacutetodos los cuales son Fuerza Bruta y ataque de

diccionario sin importar si son o no los oacuteptimos debido a que se realizaraacute una comparativa de

capacidad de procesamiento

451 Fuerza Bruta Una vez que se han intentado varios meacutetodos y han fallado se puede

iniciar un ataque de fuerza bruta estaacutendar poniendo especial atencioacuten en la cantidad de siacutembolos

del alfabeto que puede usar el equipo a analizar Por encima de 8 caracteres esto generalmente no

tiene sentido debido a limitaciones de hardware y entropiacutea (complejidad de la contrasentildea) Una

contrasentildea de Windows seguacuten Microsoft (Microsoft Inc 2019) una contrasentildea de Windows debe

estaacute formada por

88

26 Caracteres mayuacutesculas de la ldquoArdquo a la ldquoZrdquo

26 Caracteres minuacutesculas de la ldquoardquo a la ldquozrdquo

10 Diacutegitos de base 10 (0 a 9)

32 Caracteres especiales (~$^amp_-+=|()[]ltgt)

94 Caracteres alfanumeacutericos en total

4511 Cantidad de combinaciones posibles Si se usa una clave numeacuterica (nuacutemeros del 0

al 9) existen 10 posibilidades de 4 diacutegitos de longitud que es la extensioacuten por defecto de los

teleacutefonos celulares Para 4 diacutegitos las combinaciones posibles seriacutean 10 mil 104 = 10000

(Labaca Castro 2014)

Por otro lado si tomamos un alfabeto de 26 letras mayuacutesculas y 26 minuacutesculas 10 nuacutemeros

y 10 caracteres especiales en total tenemos 72 diferentes posibilidades para un uacutenico caraacutecter Eso

significa que las combinaciones para una contrasentildea de 4 caracteres seriacutean 724 = 26873856

Baacutesicamente maacutes de 26 millones de combinaciones en una clave de 4 caracteres contra 10 mil en

una clave de 4 diacutegitos numeacutericos En este estudio se utiliza la contrasentildea de bloqueo descrita en el

apartado anterior que es de 94 combinaciones para cada caraacutecter teniendo una longitud de 7

caracteres por lo tanto seraacuten 947 = 64847759000000 de posibles combinaciones que

nuestros equipos deben explorar para obtener la contrasentildea correcta

Como se mencionoacute en el apartado 42 el usuario sobre el cual se realizoacute el criptoanaacutelisis

fue usuarioprueba el cual constaba de una contrasentildea de longitud 7 caracteres la cual despueacutes

de realizado el anaacutelisis y como se puede observar en la Figura 45

89

1 Anaacutelisis a usuario usuarioprueba

2 Nuacutemero de nodos en operacioacuten 17

3 Nuacutemero de procesos ejecutaacutendose de forma paralela 68

4 Tiempo de duracioacuten del anaacutelisis en el cluacutester 122727 horas

5 Contrasentildea criptoanalizada Pass7

Asiacute mismo en la Tabla 42 se muestra el resultado final y el tiempo de duracioacuten del

criptoanaacutelisis realizado al archivo SAM con el cluacutester y la computadora personal

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Horas)

1 (PC) 4 1075316

17 (Cluacutester) 68 122727

1

2

3

4 5

Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester (Fuente Elaboracioacuten propia)

90

452 Diccionario Meacutetodo empleado para romper la seguridad de los sistemas basados en

contrasentildeas (password) en la que el atacante intenta dar con la clave adecuada probando todas (o

casi todas) las palabras posibles ingresadas previamente en un diccionario idiomaacutetico

Generalmente se emplean programas especiales que se encargan de ello

Este meacutetodo suele ser maacutes eficiente que el meacutetodo de fuerza bruta debido a que muchas

usuarios casi siempre suelen utilizar contrasentildeas con una o varias palabras existentes en su lengua

para que la contrasentildea no sea olvidada faacutecilmente y sea sencilla de recordar esto no es una praacutectica

recomendable (Alegsa 2018)

Para realizar este meacutetodo se utilizoacute un diccionario descargado de internet el cual contiene

10000000 de posibles contrasentildeas (g0tmi1k 2018)

Ademaacutes se ejecutoacute un programa creado en lenguaje C (Anexo 1) a traveacutes de la

implementacioacuten de las libreriacuteas MPI y open MPI propias de la arquitectura de cluacutester de

computadoras Este programa fue ejecutado en los mismos equipos descritos anteriormente para

obtener todos los nuacutemeros primos encontrados dentro de un intervalo dado En este caso el

intervalo dado fue de 10000000 con los siguientes resultados mostrados en la Tabla 43

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos (Fuente Elaboracioacuten

propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Segs)

1 (PC) 4 5078

17 (Cluacutester) 68 00013

91

453 Analizar los resultados Posterior a realizar el criptoanaacutelisis y descifrar con eacutexito

una cantidad suficiente de hashes se analizan los resultados en busca de pistas o patrones Este

anaacutelisis puede ayudar a tener eacutexito en cualquier hash restante

454 Personalizar ataques Tomando como base el anaacutelisis de resultados realizado

previamente se disentildearaacuten diversas estrategias personalizadas que aprovechen las vulnerabilidades

conocidas o patrones Los ejemplos seriacutean ataques de maacutescara personalizados o reglas para

adaptarse al comportamiento o las preferencias del usuario objetivo

92

Conclusioacuten

El trabajo de investigacioacuten presentado parte de la necesidad de buscar alternativas para

explotar al maacuteximo la capacidad de procesamiento del equipo de coacutemputo que existe actualmente

dentro del inventario del Instituto Tecnoloacutegico de Acapulco asiacute como proveer una plataforma que

coadyuve a la investigacioacuten dentro del Instituto a traveacutes de implementar un cluacutester de coacutemputo

con capacidad para realizar proyectos en el aacuterea de ingenieriacutea y matemaacuteticas con el fin de optimizar

el tiempo de ejecucioacuten lo cual en un futuro se veraacute reflejado en ventajas para el desarrollo de la

regioacuten

La revisioacuten y anaacutelisis de informacioacuten en relacioacuten a cluacutesters es muy interesante pero a la

vez es compleja dado que involucra diferentes aspectos durante su evolucioacuten asiacute como diversas

metodologiacuteas para su formacioacuten e implementacioacuten Se considera de suma importancia para este

trabajo las revisiones efectuadas ya que son la base para la propuesta entregada

De acuerdo a las especificaciones teacutecnicas de los equipos informaacuteticos existentes dentro

del laboratorio de la Maestriacutea en Sistemas Computacionales y una vez que se realizoacute el anaacutelisis

de varios casos de eacutexito se propuso la metodologiacutea para implementacioacuten de un cluacutester homogeacuteneo

tipo Beowolf Este meacutetodo estaacute basado en otros que ya se han implementado bajo realidades

acadeacutemicas similares rescatando las etapas maacutes importantes de cada uno y complementaacutendolo con

los aportes personales se consideroacute que fue el oacuteptimo debido a que se implementoacute con hardware

convencional y herramientas de uso libre

93

El hecho de haber seleccionado un meacutetodo adecuado permitioacute superar gran parte los

problemas que presentaban las metodologiacuteas que fueron analizadas simplificoacute la implementacioacuten

del cluacutester y permitioacute el poder alcanzar una mayor estabilidad en su desempentildeo desde su etapa

inicial fue importante conocer el resultado en cada una de las etapas de implementacioacuten para

asegurar su desenvolvimiento en el futuro

Para integrar los equipos independientes a la arquitectura cluacutester se realizoacute el disentildeo de

una topologiacutea de red Gigabit Ethernet tipo estrella con un direccionamiento IP estaacutetico la

configuracioacuten de protocolos de comunicacioacuten remota sin autenticacioacuten la comparticioacuten de

archivos en red y la utilizacioacuten de aplicaciones de licencia GPL que permiten obtener el

funcionamiento similar a la de una supercomputadora

Haciendo uso de libreriacuteas de paso de mensajes (MPI) y el software John the Ripper para el

descifrado de contrasentildeas la arquitectura cluacutester implementada alcanzoacute una eficiencia de 885

de rendimiento en comparacioacuten con los recursos computacionales de un solo equipo con las

caracteriacutesticas de un nodo Ademaacutes otros de los proyectos ejecutados en la arquitectura cluacutester

para probar el rendimiento fue la ejecucioacuten de un programa para la deteccioacuten de nuacutemeros primos

dentro de un archivo de 10000000 de nuacutemeros obteniendo una eficiencia de maacutes de 99 gracias

a la distribucioacuten de tareas que proporcionan las libreriacuteas de paso de mensajes (MPI) dentro de la

arquitectura cluacutester

Con la implementacioacuten de la arquitectura cluacutester el laboratorio de la Maestriacutea en Sistemas

Computacionales podraacute dar soluciones potentes eficientes y econoacutemicas en los entornos de

94

investigacioacuten mejorando la capacidad de procesamiento en aplicaciones como evaluacioacuten de

algoritmos compresioacuten de archivos renderizacioacuten de imaacutegenes anaacutelisis de datos (big data) en un

tiempo relativamente bajo ideal para las necesidades educativas

La experiencia obtenida al realizar esta investigacioacuten y propuesta ha sido enriquecedora

tanto por la obtencioacuten de conocimiento en base a la historia evolucioacuten y arquitectura de cluacutesters

asiacute como la programacioacuten paralela y sus ventajas en diferentes proyectos desarrollados en todo el

mundo Igualmente la comparacioacuten entre cada uno de los modelos y meacutetodos resulta interesante

dado que existe un sinnuacutemero de ejemplos con caracteriacutesticas diferentes pero baacutesicamente con un

mismo objetivo final

Trabajo Futuro

El cluacutester implementado en el Laboratorio de la Maestriacutea en Sistemas computacionales del

Instituto Tecnoloacutegico de Acapulco puede ser utilizado en gran cantidad de aplicaciones dentro de

las diferentes aacutereas de investigacioacuten del Instituto asiacute como estar disponible para el Departamento

de Posgrado e Investigacioacuten como apoyo durante la realizacioacuten de tareas y proyectos dentro de las

aacutereas de Desarrollo de Sistemas Inteligentes asiacute como de Tecnologiacuteas Web

Propuesta de Trabajo a Futuro

Durante la realizacioacuten de este proyecto se observoacute la necesidad que existe dentro del

departamento de Investigacioacuten y Posgrado de equipos de alta capacidad de procesamiento para

realizar de una manera maacutes eficiente las investigaciones que se estaacuten llevando a cabo Una de ellas

es el ldquoSistema de apoyo al diagnoacutestico oportuno de Retinopatiacutea Diabeacuteticardquo en la cual a traveacutes del

entrenamiento de una red neuronal se clasificaraacuten y evaluaraacuten un nuacutemero de 3000 imaacutegenes para

95

demostrar la presencia de dicha enfermedad en pacientes del Instituto Estatal de Oftalmologiacutea

Actualmente se ha realizado una prueba de entrenamiento de dicha red neuronal con 70 imaacutegenes

obteniendo como resultado un tiempo clasificacioacuten y evaluacioacuten de 301532 horas en un equipo

con un procesador Core I7 con 8 GB en memoria RAM

96

Bibliografiacutea

Alegsa (01 de 01 de 2018) Alegsa Diccionario Informaacutetico Recuperado el 07 de 2019 de

Alegsa httpwwwalegsacomarDicataque_por_diccionariophp

Avecto (2017) Avecto Limited Recuperado el 10 de 08 de 2018 de AVECTO a Bomgar

Company wwwavectocom

Borghello C (2009) Seguridad de la Informacioacuten Recuperado el 11 de 2018 de Criptografiacutea de

la A-Z httpswwwsegu-infocomarproyectosp1_hashhtm

Branch Bedoya J amp Mesa Muacutenera A (Diciembre de 2008) Implementacioacuten de un cluster

homogeacuteneo para la resolucioacuten de problemas de alta complejidad computacional Avances

en Sistemas e Informaacutetica 5(3)

ByteBleeder (02 de 06 de 2017) Practical guide to NTLM Relaying in 2017 Obtenido de Github

httpsbyt3bl33d3rgithubiopractical-guide-to-ntlm-relaying-in-2017-aka-getting-a-

foothold-in-under-5-minuteshtml

Caballero A (26 de 06 de 2018) Hacking Eacutetico Recuperado el 03 de 2019 de John The Ripper

httpwwwreydescomdq=Recuperar_la_Contrasena_del_Administrador_utilizando_s

amdump2_y_John_The_Ripper

Carretero Peacuterez J de Miguel Anasagasti P Garciacutea Carballeira F amp Peacuterez Costoya F (2001)

Sistemas Operativos Una visioacuten aplicada (C F Madrid Ed) Madrid Espantildea

McGRAW-HillInteramericana

Castelloacute Gimeno A (30 de 07 de 2014) Universitat Jaume Recuperado el 10 de 2019 de

Evaluacioacuten de prestaciones mediante laaplicacioacuten HPL de clusters utilizandorCUDA

97

httprepositoriujiesxmluibitstreamhandle10234115082TFM_2014_CastelloGimen

oApdfsequence=1ampisAllowed=y

Chaacutevez J Echeverriacutea C Correa M Vaacutezquez E Suaacuterez M Maacutermol X Diacuteaz G (07 de

1999) Centro de Caacutelculo Cientiacutefico Recuperado el 01 de 05 de 2018 de Universidad de

Los Andes httpwwwcecalculavedocumentaciontutorialesbeowulfinformehtml

Chirinov R (2003) Nfinite9000 SL Recuperado el 26 de 04 de 2018 de Noticias 3D

httpswwwnoticias3dcomarticuloaspidarticulo=248amppag=4

Coffin J (23 de 07 de 2015) Quora Recuperado el 15 de 08 de 2019 de

httpswwwquoracomWhat-does-it-mean-when-a-hashing-algorithm-has-been-broken

Dongarra J (2010) Top500 Super computer sites Recuperado el 07 de 2019 de http

wwwtop500org

Educba (01 de 01 de 2019) Recuperado el 10 de 2019 de Educbaorg

httpswwweducbacomidea-algorithm

europa press (04 de 06 de 2013) Portal Tic Recuperado el 18 de 11 de 2018 de Europa Press

httpswwweuropapressesportalticgadgetsnoticia-cuarta-generacion-intel-core-mayor-

salto-cuanto-ahorro-energetico-20130604174722html

g0tmi1k (2018) github Recuperado el 05 de 2019 de github

httpsgithubcomdanielmiesslerSecListsblobmasterPasswordsCommon-

Credentials10-million-password-list-top-1000000txt

Gonzaacutelez Agudelo D (2014) El riesgo y la falta de politicas de seguridad informaacutetica una

amenaza en las empresas certificadas basc Recuperado el 20 de 05 de 2018 de

Universidad Militar Nueva Granada

httpsrepositoryunimilitareducobitstream10654122511ENSAYO20FINALpdf

98

Gonzaacutelez Ramiacuterez E amp Rodriacuteguez Saacutenchez A (2008) Disentildeo e implementacioacuten de un cluster

tipo BEOWULF para el desarrollo de coacutemputo cientiacutefico avanzado CdMx Mexico

Hernandez M (2013) Forensics Mexico Recuperado el 07 de 2018 de La importancia del

registro de Windows parte 1 httpforensicsmexicoblogspotcom201309la-

importancia-del-registro-de-windowshtml

Kowalczyk C (01 de 2015) Crypto-IT Recuperado el 11 de 2018 de Crypto-IT

httpwwwcrypto-itnetengasymmetricindexhtml

Labaca Castro R (13 de 06 de 2014) We live security Recuperado el 2019 de 08 de 07 de

Welivesecuritybyeset httpswwwwelivesecuritycomla-es20140613matematica-

claves-numerica-alfanumerica

Lizaacuterraga C (2002) Departamento de Fiacutesica Recuperado el 12 de 03 de 2018 de Universidad

de Sonora httpclustersfisicausonmx

Llorens E amp Pentildea M (2002) Recuperado el 04 de 2018 de Departament dArquitectura de

Computadors httppersonalsacupceduenricPFCBeowulfbeowulfhtml

Meneacutendez-Barzanallana R (07 de 08 de 17) Universidad de Murcia Recuperado el 11 de 2018

de Informaacutetica Aplicada a las Ciencias Sociales

httpswwwumesdocenciabarzanaIACCSSCriptografiahtml

Merkle R amp Damgaringrd I (sf) Numerenturorg Recuperado el 06 de 2019 de Para computar -

numerenturorg httpnumerenturorgfuncion-merkle-damgard

Microsoft Inc (02 de 05 de 2019) wwwmicrosoftcom Obtenido de Password must meet

complexity requirements httpsdocsmicrosoftcomes-eswindowssecuritythreat-

protectionsecurity-policy-settingspassword-must-meet-complexity-requirements

99

Mifsud E (26 de 03 de 2012) Introduccioacuten a la seguridad informaacutetica Recuperado el 07 de 05

de 2018 de Ministerio de educacioacuten cultura y deportes Gobierno de Espantildea

httprecursosticeducacionesobservatoriowebessoftwaresoftware-general1040-

introduccion-a-la-seguridad-informaticashowall=1

Murugesan S (01 de 02 de 2008) Researchgate doi101109MITP200810

Nahar K amp Abu Abbas O (01 de 2010) Researchgate Recuperado el 07 de 2019 de

Researchgate

httpswwwresearchgatenetpublication315492522_Hybrid_Cipher_System

Nievas F Pino O amp Arroyo R (sf) Los clusters como Plataforma de Procesamiento Paralelo

Recuperado el 25 de 04 de 2018 de

httpusuarioslycoseslacaraocultadescargasClusters_definitivo pdf

Pawar S (2016) A computer science portal for geeks Recuperado el 10 de 2018 de

Geeksforgeeks httpswwwgeeksforgeeksorgrc5-encryption-algorithm

Peleus (2019) NETSEC Recuperado el 08 de 2019 de httpsnetsecwsp=314

Peacuterez Tavera I (2014) Obtenido de Universidad Autonoma del Estado de Hidalgo

httpswwwuaehedumxscigeboletinprepa4n2e4html

Peacuterez M (2001) Recuperado el 15 de 04 de 2018 de

httpwwwdragonesorgBibliotecaArticulosArquitecturaParalela2pdf

Petitet A Whaley R C Dongarra J amp Cleary A (2008) HPL - A Portable Implementation of

the High-Performance Linpack Benchmark for Distributed-Memory Computers

Recuperado el 07 de 2019 de httpwwwnetliborgbenchmarkhpl

Picolet J (2017) Hash Crack Password Cracking Manual (Vol 2) Createspace Independent

Pub

100

Preukschat A (23 de 02 de 2015) Oro y Finanzas Recuperado el 07 de 2019 de

httpswwworoyfinanzascom201502que-es-colision-criptografia-bitcoin

Robbins D (2008) OpenMosix Recuperado el 22 de 04 de 2018 de the openMosix Project

httpopenmosixsourceforgenetintroduction_to_openmosixhtml

Rocha Quezada J d Botello Rionda S Vargas Feacutelix J M amp Munguiacutea Torres I A (Sep-Dic

de 2011) Disentildeo e implementacioacuten de un cluacutester de coacutemputo de alto rendimiento Acta

Universitaria 21(3) 24-33 Recuperado el 1 de 12 de 2018

Rocksclusters (01 de 01 de 2010) httpwwwrocksclustersorg Recuperado el 01 de 06 de 2018

de httpwwwrocksclustersorg httpwwwrocksclustersorg

Sanjoy K (01 de 01 de 2015) DZone Recuperado el 15 de 06 de 2019 de DZone

httpsdzonecomarticlessecurity-algorithms-des-algorithm

Security Degree Hub (01 de 2017) Security Degree Hub Recuperado el 13 de 02 de 2019 de

Security Degree Hub httpswwwsecuritydegreehubcomwhat-is-cryptanalysis

Simmons G (01 de 01 de 2019) Encyclopedia Britannica Recuperado el 08 de 2019 de

Encyclopedia Britannica httpswwwbritannicacomtopicRSA-encryption

statista (09 de 2017) Statista Obtenido de Statista Co httpsesstatistacom

Turner D (2004) Recuperado el 12 de 02 de 2018 de Ames Lab

httpwwwsclameslabgovProjectsparrallel_computingpara_intohtml

United States Government Department of Defense (1983) Trusted Computer System Evaluation

Criteria Rainbow Series

Universidad Internacional de Valencia (09 de Septiembre de 2016) Nuestros

expertosTecnologiacutea Recuperado el 27 de Abril de 2018 de Universidad Internacional de

Valencia httpswwwuniversidadviuesla-seguridad-informatica-puede-ayudarme

101

Wallen J (19 de 01 de 2019) Lifewire Recuperado el 13 de 06 de 2019 de Lifewire

httpswwwlifewirecomgnome-3-desktop-4175640

Yang H (01 de 02 de 2019) Herong Yang Recuperado el 15 de 06 de 2019 de Cryptography

Tutorials httpwwwherongyangcomCryptographyDSA-Introduction-What-Is-DSA-

Digital-Signature-Algorithmhtml

102

Anexo 1

Programa en Lenguaje C para la obtencioacuten de nuacutemeros primos utilizando libreriacuteas mpi

include ltcstdlibgt

include ltiostreamgt

include ltiomanipgt

include ltcmathgt

include ltctimegt

include mpih

using namespace std

int main ( int argc char argv[] )

int prime_number ( int n int id int p )

void timestamp ( )

int main ( int argc char argv[] )

int i

int id

int master = 0

int n

int n_factor

int n_hi

int n_lo

int p

int primes

int primes_part

double wtime

n_lo = 1

n_hi = 10000000

n_factor = 2

MPIInit ( argc argv )

p = MPICOMM_WORLDGet_size ( )

id = MPICOMM_WORLDGet_rank ( )

if ( id == master )

cout ltlt n

cout ltlt Cuenta primosn

cout ltlt C++MPI versionn

cout ltlt n

cout ltlt Programa para contar cantidad de primos para un N dadon

cout ltlt Corriendo en ltlt p ltlt procesosn

cout ltlt n

103

cout ltlt N S Tiempon

cout ltlt n

n = n_lo

while ( n lt= n_hi )

if ( id == master )

wtime = MPIWtime ( )

MPICOMM_WORLDBcast ( ampn 1 MPIINT master )

primes_part = prime_number ( n id p )

MPICOMM_WORLDReduce ( ampprimes_part ampprimes 1 MPIINT

MPISUM

master )

if ( id == master )

wtime = MPIWtime ( ) - wtime

cout ltlt ltlt setw(8) ltlt n

ltlt ltlt setw(8) ltlt primes

ltlt ltlt setw(14) ltlt wtime ltlt n

n = n n_factor

MPIFinalize ( )

if ( id == master )

cout ltlt n

cout ltlt PRIME_MPI - Procesos maestron

cout ltlt Finalizacion del calculo normaln

return 0

int prime_number ( int n int id int p )

int i

int j

int prime

int total

104

total = 0

for ( i = 2 + id i lt= n i = i + p )

prime = 1

for ( j = 2 j lt i j++ )

if ( ( i j ) == 0 )

prime = 0

break

total = total + prime

return total

void timestamp ( )

define TIME_SIZE 40

static char time_buffer[TIME_SIZE]

const struct tm tm

size_t len

time_t now

now = time ( NULL )

tm = localtime ( ampnow )

len = strftime ( time_buffer TIME_SIZE d B Y IMS p tm )

cout ltlt time_buffer ltlt n

return

undef TIME_SIZE

Page 4: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios

iii

Dedicatoria

Este logro se lo dedico a mi toda mi familia que incondicionalmente siempre estaacute ahiacute

cuando los necesito A mis Padres especialmente dedicado a mi Madre que es un ejemplo de

esfuerzo para miacute sabe el camino complicado que he tenido que pasar para poder llegar a este

gratificante momento y siempre ha tenido una palabra que me alienta a no desmallar y seguir

adelante

Dedicado tambieacuten para mi hermano Uriel porque sin saberlo y a la distancia su apoyo y

confianza han sido un pilar fundamental para poder llegar a este momento

Adrielito hijo te dedico este logro por tu paciencia porque seacute que has tenido que pasar

tiempo con Papaacute en la escuela en lugar de estar en casa descansando o jugando despueacutes de salir

de tus clases gracias por soportarlo te amo y espero ser un ejemplo de esfuerzo y perseverancia

para ti

Los amo a todos

iv

Agradecimientos

Agradezco primero y ante todo a Dios todo se lo debo a Eacutel por derramar sus

bendiciones sobre miacute por acompantildearme en cada paso que doy y haber fortalecido mi corazoacuten e

iluminado mi mente Gracias Padre

A mi familia que ha estado ahiacute siempre a mi lado en los momentos maacutes oscuros y

difiacuteciles creyendo en miacute impulsaacutendome para alcanzar mis metas

Al Consejo Nacional de Ciencia y Tecnologiacutea por haberme apoyado econoacutemicamente

para la realizacioacuten de este proyecto

A mi director de tesis el Dr Eduardo de la Cruz Gaacutemez por su tiempo por su paciencia

por los valiosos aportes criacuteticas comentarios y sugerencias que realizoacute durante este proyecto

Al Departamento de Posgrado e Investigacioacuten del Instituto Tecnoloacutegico de Acapulco asiacute

como a toda la plantilla docente de la cual me llevo conocimiento y experiencias

enriquecedoras que sin lugar a dudas marcaron mi vida profesional

A la segunda generacioacuten muchas gracias Abejorros sin el apoyo mutuo durante el

tiempo que pasamos en las aulas y durante el desarrollo de los proyectos tal vez no lo

hubieacuteramos logrado

v

Resumen

El presente trabajo inicia con una breve introduccioacuten sobre la importancia que tiene la

seguridad en cualquier aspecto de la vida y sobre todo en el aacuterea laboral especiacuteficamente en el

aacuterea informaacutetica Posteriormente resalta coacutemo la criptografiacutea ha estado presente en momentos

importantes de la vida del ser humano sobre todo dentro del aacutembito militar en la cual ha sido

fundamental para permitir comunicaciones seguras Actualmente la criptografiacutea estaacute dentro de

nuestro diario vivir cuando realizamos transacciones en internet de manera segura Como parte de

la investigacioacuten en este trabajo se describen los tipos de criptografiacutea y criptoanaacutelisis tambieacuten se

analizan los niveles de seguridad de sistemas operativos asiacute como los meacutetodos de agrupamiento

de computadoras para implementar con la ayuda de esta herramienta de una manera maacutes raacutepida

criptoanaacutelisis a un sistema operativo con un nivel de seguridad C1

Palabras clave cluacutester seguridad criptoanaacutelisis

vi

Abstract

This work begins with a review of the importance of security in any aspect of life and

especially in the workplace specifically in the computer area Later this work speaks briefly about

how cryptography has been present at important moments in the life of the human being especially

in the military field in which it has been fundamental to allow secure communications Currently

cryptography is inside our daily life when we conduct transactions on the internet in a secure

manner As part of the research in this work the types of cryptography and cryptanalysis are

described as well as the security levels of operating systems and above all the main methods of

computers clustering to implement a system with a faster method of cryptanalysis in an operative

system with a security level C1

Keywords cluster security cryptanalysis

vii

Iacutendice de Contenido

Descargo de Responsabilidad Institucional ii

Dedicatoria iii

Agradecimientos iv

Resumen v

Abstract vi

Iacutendice de Contenido vii

Iacutendice de Figuras x

Iacutendice de Tablas xi

Capiacutetulo 1 Introduccioacuten 1 11 Antecedentes del problema 1

12 Planteamiento del Problema 4

13 Objetivos 6

131 Objetivo General 6

132 Objetivos Especiacuteficos 6

14 Justificacioacuten 7

15 Hipoacutetesis 7

16 Alcances y Limitaciones 8

17 Impacto Social Tecnoloacutegico Econoacutemico y Ambiental 8

171 Impacto social 8

172 Impacto ambiental 9

173 Impacto econoacutemico 10

18 Metodologiacutea a Utilizar 10

181 Anaacutelisis 10

182 Disentildeo 10

1821 Economiacutea 10

1822 Instalaciones 10

1823 Escalabilidad 11

1824 Red 11

1825 Software 11

1826 Almacenamiento 12

183 Implementacioacuten 12

1831 Software 12

1832 Hardware 13

1833 Recursos totales del cluacutester 13

19 Aseguramiento Teacutecnico ndash Material 13

191 Hardware 14

viii

1911 Equipo de coacutemputo 14

Capiacutetulo 2 Estado del Arte 16

Marco Teoacuterico 27 21 Seguridad de la Informacioacuten 27

211 Objetivo de la seguridad de la informacioacuten 27

212 Principios de la seguridad informaacutetica 28

213 Caracteriacutesticas de seguridad informaacutetica 28

214 Formas de Autenticacioacuten 29

215 Ciber-seguridad 29

22 Criptografiacutea 30

221 Tipos de Criptografiacuteas 30

2211 Tablas Hash 30

2212 Tipos de algoritmos Hash 31

22121 SHA - 1 (Secure Hash Algorithm) 31

22122 MD5 (Message Digest Algorithm) 31

22123 RIPEMD ndash 160 32

22124 Funcioacuten Merkle-Damgaringrd 32

2213 Cifrado simeacutetrico 32

22131 RC5 (Cifrado de Rivest) 33

22132 IDEA (International Data Encryption Algorithm) 33

22133 DES (Data Encryption Standard) 34

2214 Cifrado asimeacutetrico 35

22141 DSA (Digital Signature Algorithm - Algoritmo de Firma digital) 36

22142 RSA 37

2215 Cifrado hiacutebrido 38

23 Criptoanaacutelisis 38

24 Niveles de seguridad 39

241 Nivel D1 40

242 Nivel C1 40

243 Nivel C2 41

244 Nivel B1 42

245 Nivel B2 43

246 Nivel B3 44

247 Nivel A1 45

25 Sistemas Operativos 46

251 Windows 47

252 Registro de Windows 48

253 Administrador de cuentas de seguridad 49

2531 Identificador de Seguridad (SID Security Identifier) 50

254 Autenticacioacuten NTML 51

26 LINUX (ROCKS) 52

261 Escritorio 53

262 Paquete de Oficina 53

263 Organizador de archivos 54

27 Agrupamiento (Cluacutester) de Computadoras 55

271 Beowulf 56

ix

272 Mosix 56

273 OpenMosix 57

Capiacutetulo 3 Implementacioacuten de Cluacutester 59 31 Requisitos previos 59

311 Conexioacuten de los equipos y acceso a la red 59

312 Configuracioacuten de la BIOS 60

3121 ATAIDE Mode 60

3122 PXE 62

32 Instalacioacuten de Sistema Operativo Rocks 63

321 Configuracioacuten del teclado 70

33 Instalacioacuten de los nodos 70

331 Administracioacuten de nodos 72

332 Creacioacuten de cuentas de usuario 73

333 Configuracioacuten del directorio compartido 73

34 Operaciones baacutesicas de Rocks 74

Capiacutetulo 4 Metodologiacutea y Resultados 77 41 Obtener Archivo hash 77

42 Dar Formato al Hash 80

43 Evaluar la fuerza del Hash 80

44 Calcular la capacidad del equipo 82

45 Establecer Estrategia 87

451 Fuerza Bruta 87

4511 Cantidad de combinaciones posibles 88

452 Diccionario 90

453 Analizar los resultados 91

454 Personalizar ataques 91

Conclusioacuten 92

Trabajo Futuro 94 Propuesta de Trabajo a Futuro 94

Bibliografiacutea 96

Anexo 1 102

x

Iacutendice de Figuras

Figura 31 Esquema tiacutepico de configuracioacuten de un cluacutester xi

Figura 32 Imagen del Bios del equipo en la opcioacuten ldquodrive configurationrdquo 61

Figura 33 Bios ATAIDE Legacy Mode 61

Figura 34 Bios Boot PXE 62

Figura 35 Bios Boot device prioriry 63

Figura 36 Pantalla de Inicio de instalacioacuten de Rocks 64

Figura 37 Pantalla de seleccioacuten de Rolls 65

Figura 38 Listado de opciones de rolls para instalar 65

Figura 39 Informacioacuten baacutesica del cluacutester a instalar 66

Figura 310 Configuracioacuten Ethernet de la red privada 67

Figura 311 Configuracioacuten Ethernet de la red puacuteblica 67

Figura 312 Configuracioacuten de DNS y Gateway 68

Figura 313 Ingresar contrasentildea de usuario root 68

Figura 314 Configuracioacuten horaria 69

Figura 315 Particiones del disco duro 69

Figura 316 Pantalla para ingresar nodos 71

Figura 317 Indicador de insercioacuten de nuevos nodos 71

Figura 318 Comando qstat ndashf 74

Figura 319 Enviacuteo de trabajos por medio del comando qsub 75

Figura 320 Estado de los trabajos pendientes mostrados por qstat ndashf 75

Figura 321 Visualizacioacuten de la distribucioacuten de cargas en el cluacutester usando la herramienta

Ganglia 76

Figura 41 Arranque con LiveUSB KaliLinux 79

Figura 42 Resultado de la ejecucioacuten de la herramienta samdump2 80

Figura 43 Sistema de Ecuaciones tipo 119860119909 = 119887 Fuente Propia 84 Figura 44 Distribucioacuten de cargas del cluacutester 86

Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester 89

xi

Iacutendice de Tablas

Tabla 11 Costo del Proyecto 15

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia) 86

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia) 89

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos

(Fuente Elaboracioacuten propia) 90

1

Capiacutetulo 1 Introduccioacuten

11 Antecedentes del problema

Sin lugar a duda una de las herramientas maacutes importantes producida en el siglo XX ha sido

la computadora la cual ha provocado cambios vertiginosos en la sociedad y en el progreso de la

misma En la actualidad el entorno estaacute praacutecticamente controlado por las nuevas tecnologiacuteas que

a medida que transcurre el tiempo avanzan sin liacutemites y en ocasiones son utilizadas

incorrectamente provocando dantildeos de grandes dimensiones

Los trascendentales cambios operados en el mundo moderno caracterizados por su

constante desarrollo la acelerada globalizacioacuten de la economiacutea la acentuada dependencia a

almacenar grandes voluacutemenes de informacioacuten y los sistemas que la proveen aunado a grandes

inversiones de las empresas en conocimiento actual y futuro en sistemas de informacioacuten ademaacutes

del potencial que poseen las tecnologiacuteas para cambiar draacutesticamente las organizaciones y las

praacutecticas de negocio asiacute como crear nuevas oportunidades disentildear nuevas estructuras tecnoloacutegicas

basadas en informacioacuten la convierte en un activo codiciable Tales avances hacen permanente el

riesgo en las tecnologiacuteas y nos llevan a pensar en la problemaacutetica sobre la seguridad informaacutetica

La proteccioacuten de datos documentos y control de acceso a la informacioacuten es un tema que

cada diacutea toma maacutes fuerza en las grandes compantildeiacuteas debido a las diferentes praacutecticas de

especialistas tecnoloacutegicos como los son los hackers y crackers que roban informacioacuten vital para

posteriormente sacar provecho de ella

2

ldquoDesde la aparicioacuten de los grandes sistemas aislados hasta nuestros diacuteas en los que el

trabajo en red es lo habitual los problemas derivados de la seguridad de la informacioacuten han ido

tambieacuten cambiando evolucionando pero estaacuten ahiacute y las soluciones han tenido que ir adaptaacutendose

a los nuevos requerimientos teacutecnicos Aumenta la sofisticacioacuten en el ataque y ello aumenta la

complejidad de la solucioacuten pero la esencia es la mismardquo (Mifsud 2012)

Dentro del mundo actual la informacioacuten es denominada un activo importante de una

institucioacuten la cual debe ser protegida para evitar su peacuterdida modificacioacuten o el uso inadecuado de

su contenido

El extraviacuteo o el mal uso de informacioacuten que para alguien es confidencial genera dantildeos y

repercusiones directas relacionadas a la integridad disponibilidad y confidencialidad de los

archivos y a su vez a los duentildeos de dicha informacioacuten

ldquoLa seguridad informaacutetica se distingue por tener dos propoacutesitos de seguridad la Seguridad

de la Informacioacuten y la Proteccioacuten de Datos estos se diferencian debido a que los datos son valores

numeacutericos que soportan la informacioacuten mientras que la informacioacuten es aquello que tiene un

significado para nosotrosrdquo (Gonzaacutelez Agudelo 2014)

La seguridad informaacutetica consiste en asegurar que los recursos del sistema de informacioacuten

(material informaacutetico o programas) de una organizacioacuten sean utilizados de la manera que se decidioacute

3

inicialmente y que el acceso a la informacioacuten alliacute contenida asiacute como su modificacioacuten soacutelo sea

posible a las personas que se encuentren acreditadas y dentro de los liacutemites de su autorizacioacuten

Actualmente hay mucha informacioacuten circulando en internet por ejemplo correos

electroacutenicos publicaciones en Twitter Facebook videos fotos comercio electroacutenico secretos de

estado militares o industriales Lamentablemente dicha red es puacuteblica e insegura dentro de la cual

existen usuarios bien intencionados y muchos mal intencionados Diariamente encontramos

noticias de sitios con intrusiones mal intencionadas (hackeados) clonacioacuten de tarjeta de creacutedito o

imaacutegenes adulteradas Todo lo anterior motiva la necesidad de proteger la informacioacuten a traveacutes de

mecanismos que impidan a los usuarios no autorizados acceder a dicha informacioacuten

4

12 Planteamiento del Problema

Los sistemas de informacioacuten actuales estaacuten relacionados completamente con la exposicioacuten

de su informacioacuten a entidades externas que son ajenas a la organizacioacuten o delegacioacuten a la que

pertenecen

Cuando no se conoce el alcance que tienen los sistemas informaacuteticos ni lo vulnerables que

pueden ser si son expuestos a Internet por los mismos empleados de la organizacioacuten puede darse

ldquofugardquo de informacioacuten hacia el exterior esto los hace vulnerables a eventos y amenazas que

conllevan a riesgos que pueden provocar peacuterdidas tangibles e intangibles las cuales se traducen

en peacuterdidas que en muchos de los casos por decir lo menos seraacuten monetarias

El portal espantildeol de estadiacutesticas statista muestra la cuota de mercado de los principales

sistemas operativos a nivel mundial a fecha de febrero de 2017 seguacuten el nuacutemero de instalaciones

(statista 2017) Windows 10 fue el segundo sistema operativo maacutes instalado con una cuota de

mercado de 253 Esto significa que alrededor de una de cada cuatro computadoras estaacute

gobernado por este sistema operativo Por su parte en el caso de Windows 7 el porcentaje se situacutea

por encima del 45 a pesar de que ya no se vende ninguacuten PC con este sistema operativo Hablando

de manera conjunta los sistemas operativos Windows cuentan con una cuota del mercado global

de 8857

La empresa de seguridad informaacutetica Britaacutenica Avecto informoacute en su Microsoft

Vulnerabilities Report 2017 (Avecto 2017) (reporte 2017 de vulnerabilidades de Windows) un

aumento de vulnerabilidades publicadas del 111 en los uacuteltimos 5 antildeos de las cuales 235 criacuteticas

5

fueron mitigadas removiendo permisos de administrador asiacute como otras muy importantes

enfocadas al Administrador de Cuentas de Seguridad (SAM Security Account Manager por sus

siglas en ingleacutes) la cual es una base de datos almacenada como un archivo del registro en Windows

y que almacena las contrasentildeas de los usuarios en un formato hash (Algoritmos que crean a partir

de una entrada una salida alfanumeacuterica de longitud fija)

6

13 Objetivos

131 Objetivo General A traveacutes de la implementacioacuten de un procedimiento de fuerza

bruta utilizando para ello un cluacutester de alto rendimiento asiacute como software de uso libre lograr

capacidad de procesamiento capaz de vulnerar un sistema de autenticacioacuten nivel C1

132 Objetivos Especiacuteficos

Analizar los diferentes niveles de seguridad de sistemas operativos

Analizar diferentes meacutetodos de criptoanaacutelisis para vulnerar el Administrador de

cuentas de seguridad

Estudiar las teacutecnicas de agrupamiento de computadoras (clustering) para la

obtencioacuten de mayor poder de procesamiento

Implementar un cluacutester de alto rendimiento en el Laboratorio de la Maestriacutea en

Sistemas Computacionales del Instituto Tecnoloacutegico de Acapulco para ejecutar

operaciones de coacutemputo distribuido

7

14 Justificacioacuten

Antes la seguridad de la informacioacuten se realizaba a traveacutes de medios fiacutesicos por ejemplo

una caja fuerte en la cual las personas resguardaban objetos o informacioacuten valiosa para ellos Con

la introduccioacuten de las computadoras y el uso de internet los usuarios comienzan a almacenar

informacioacuten importante dentro de sus equipos por lo que se considera indispensable el uso de

herramientas que brinden proteccioacuten a la informacioacuten que se encuentra resguardada dentro de

eacutestas Los usuarios informaacuteticos suelen enviar informacioacuten por la red en las empresas al realizar

traacutemites o enviar informes a socios jefes entre otros

El resguardo de informacioacuten siempre ha sido importante para los seres humanos con la

diferencia que anteriormente no se contaba con los avances tecnoloacutegicos que tenemos actualmente

puesto que con la introduccioacuten de internet y el uso de dispositivos electroacutenicos se tiene mayor

riesgo de la informacioacuten que en ellos se maneja

La proteccioacuten del contenido de los datos es una necesidad urgente en casi todos los aacutembitos

de la sociedad incluyendo los servicios puacuteblicos y privados por lo que la tecnologiacutea de la

seguridad de los sistemas de cifrado se encuentra de frente a verdaderos retos

15 Hipoacutetesis

A traveacutes de un de fuerza bruta como teacutecnica de criptoanaacutelisis y con la ayuda de una mayor

capacidad de procesamiento mediante la implementacioacuten de agrupamiento de computadoras

(cluacutester) de alto rendimiento seraacute posible encontrar alguna vulnerabilidad dentro del sistema de

administracioacuten de cuentas de seguridad de Windows server 2012

8

16 Alcances y Limitaciones

Esta tesis se centraraacute en el sistema operativo Windows como objeto de estudio al cual se

le realizaraacute el criptoanaacutelisis

La tesis se enfocaraacute en el meacutetodo Beowulf para realizar el agrupamiento de computadoras

asiacute como la distribucioacuten de software libre del sistema operativo Linux Rocks

El nuacutemero de equipos disponibles para poder realizar el agrupamiento es de 17

computadoras hasta lograr el poder de coacutemputo de 800 Gflops

17 Impacto Social Tecnoloacutegico Econoacutemico y Ambiental

La sostenibilidad del presente proyecto seraacute abordada a partir de los siguientes aspectos

171 Impacto social A veces se puede pensar que un cluacutester de alto rendimiento pudiera

no tener alguacuten impacto directo en el medio social pero si nos enfocamos a un punto de vista en

donde gracias a la capacidad de procesamiento de estas maacutequinas han sido parte fundamental en

el desarrollo de proyectos que inciden de manera directa en beneficio de la sociedad en la que

vivimos como lo es la medicina la fiacutesica quiacutemica

Este proyecto busca beneficiar a nuestra sociedad proveyendo su capacidad de

procesamiento en la buacutesqueda de alguna vulnerabilidad en el sistema operativo maacutes utilizado hoy

en diacutea como lo es Windows ademaacutes de que estaraacute disponible para la comunidad cientiacutefica y

9

estudiantil del Instituto Tecnoloacutegico de Acapulco para optimizar tiempo de caacutelculo en futuras

investigaciones

172 Impacto ambiental Green IT tambieacuten conocido como Green Computing o

traducido al espantildeol como Tecnologiacuteas Informaacuteticas Verdes es definido como el estudio y la

praacutectica de disentildear desarrollar usar y disponer de computadoras servidores y diferentes

perifeacutericos tales como monitores impresoras dispositivos de almacenamiento de redes y

comunicaciones eficientemente y efectivamente con un impacto miacutenimo o nulo en el medio

ambiente (Murugesan 2008)

Bajo la premisa anterior este proyecto hace uso de los equipos con los que cuenta

actualmente el laboratorio de la Maestriacutea en Sistemas Computacionales lo cual evitaraacute la

adquisicioacuten de equipo nuevo y por consecuencia desechar el equipo existente evitando desperdicio

electroacutenico Dicho equipo cuenta con un procesador Intel I3 de 4ta generacioacuten lo cual seguacuten el

portal electroacutenico Europa press

ldquoEsta nueva generacioacuten supone el mayor salto en cuanto ahorro energeacutetico de la historia

de Intel asiacute como una mejora en los graacuteficos y nuevas experiencias de usuariordquo (europa press

2013)

Teniendo como base estos dos puntos importantes como lo son la reutilizacioacuten de equipo

y utilizando procesadores de bajo consumo energeacutetico es como este proyecto busca contribuir de

manera positiva con el medio ambiente

10

173 Impacto econoacutemico Actualmente existe una gran necesidad de procesar grandes

cantidades de datos lo cual hace imprescindible disponer de maacutequinas con estas caracteriacutesticas sin

embargo su alta complejidad aunado al gran costo hace que en instituciones de caraacutecter puacuteblico

sea muy complicado conseguir recurso para este fin Sin embargo un cluacutester de alto rendimiento

reutilizaraacute equipo propio evitando asiacute gastos por concepto de adquisicioacuten de equipo siendo de

esta manera viable para instituciones de caraacutecter puacuteblico

18 Metodologiacutea a Utilizar

181 Anaacutelisis Despueacutes de analizar las diferentes metodologiacuteas de clustering se optoacute por

desarrollar e implementar un cluacutester de alto rendimiento (HPC)

182 Disentildeo

1821 Economiacutea Debido a las caracteriacutesticas del equipo con el cual cuenta el Laboratorios

de la Maestriacutea en Sistemas Computacionales los componentes utilizados para este proyecto son

considerados de uso comuacuten y de bajo costo lo cual los hace faacutecilmente reemplazables en caso de

fallo a un costo accesible El equipo es de la marca Acer Aspire modelos AXC-605-M021 lo cual

nos hace tener ventaja y respaldo del fabricante con respecto a hardware geneacuterico

1822 Instalaciones Un cluacutester requiere de un ambiente controlado Esto es una

habitacioacuten especial con sistema de enfriamiento capacidad suficiente de carga eleacutectrica control

de humedad y un ambiente libre de polvo Ademaacutes se deben considerar el peso del equipo sobre

el piso (ya sea falso o piso normal) Se recomienda colocarlo en los soacutetanos o en la plata baja de

edificios (Rocha Quezada Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

11

En el laboratorio de la Maestriacutea en Sistemas Computacionales se cuenta con espacio que

reuniacutea la mayoriacutea de las caracteriacutesticas requeridas para este proyecto

1823 Escalabilidad Un cluacutester debe ser faacutecilmente escalable y a su vez confiable Por

tal motivo se ha utilizado equipo de marca lo cual nos proporciona maacutes de confiabilidad en su

desempentildeo y a su vez facilidad de aumentar el nuacutemero de equipos si en un futuro fuese necesario

agrandar este proyecto Se armoacute un cluacutester de cinco computadoras con procesadores Intel Core I3

de 64 bits en cada nodo La memoria incluida y perifeacutericos son faacuteciles de adquirir en el mercado

1824 Red En la parte de redes se utilizoacute un switch fast Ethernet con una velocidad de 1

Gbps el cual tiene tazas de transferencia raacutepida y el costo es notablemente maacutes econoacutemico que

uno de fibra oacuteptica

El cableado seleccionado fue el estaacutendar UTP de cobre con la norma Gigabit Ethernet de

IEEE 8023ab con la categoriacutea de cableado 6e que soporta tazas de transferencia de datos de

1000Base T (1 Gbps)

1825 Software

ldquoEl sistema operativo debe constar con servicios dedicados para compartir y respaldar

archivos asiacute como capacidad de acceder a los datos de trabajo raacutepidamente El sistema operativo

debe tambieacuten proveer servicios de monitoreo y reporte de fallas en el sistemardquo (Rocha Quezada

Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

12

Existe una gran variedad de software para instalar cluacutester de alto rendimiento sin embargo

como se ha comentado con anterioridad el costo de adquisicioacuten debe ser accesible por tal motivo

se optoacute por una distribucioacuten con licencia GNU de Linux Rocks Cluster la cual es una distribucioacuten

sencilla de instalar y configurar en comparacioacuten con otras distribuciones analizadas dicha

distribucioacuten estaacute basada en CentOS que a su vez estaacute basada en la conocida distribucioacuten de Linux

Red Hat

1826 Almacenamiento Para este proyecto no se requeriraacute un gran espacio de

almacenamiento por tal motivo los equipos utilizados tanto maestro como esclavos mantuvieron

sus unidades de disco originales las cuales son de 1 TB de almacenamiento

183 Implementacioacuten La implementacioacuten del cluacutester de alto rendimiento fue realizada

dentro de las instalaciones del Laboratorio de la Maestriacutea en Sistemas Computacionales del

Instituto Tecnoloacutegico de Acapulco construido inicialmente para este proyecto de criptoanaacutelisis lo

cual requeriraacute suficiente capacidad de procesamiento para poder implementar ataques de fuerza

bruta a sistemas operativos Las caracteriacutesticas del cluacutester construido son

1831 Software El software instalado en cada uno de los nodos es el siguiente

bull Sistema operativo Rocks Cluacutester Linux 74 (64 bits)

bull Libreriacutea de manejo de mensajes Open-MPI 153

bull Software de monitoreo Ganglia

13

1832 Hardware El cluacutester estaacute compuesto de 17 equipos con las siguientes

caracteriacutesticas

bull Nodo Maestro y 16 Nodos Esclavos

- Procesador Intel Core I3 4150 (4 nuacutecleos) Memoria 6 GB Disco Duro SATA 1 TB

tarjeta de Red Gigabit Ethernet

El hardware adicional es el siguiente

bull Interconexioacuten de Red

bull Switch Cisco 26 puertos 1Gbps modelo SG200 Red interna

1833 Recursos totales del cluacutester

bull Nuacutecleos de unidades de procesamiento (cores) 68

bull Capacidad en memoria 92 GB

bull Capacidad en disco 17 TB

19 Aseguramiento Teacutecnico ndash Material

A continuacioacuten se muestra el desglose del equipo utilizado para la elaboracioacuten de un

cluacutester de alto rendimiento estos componentes consisten en Hardware y Software especializado

asiacute como los costos de produccioacuten y personal involucrados en la metodologiacutea y elaboracioacuten del

proyecto

Costos de Hardware

Costos de Software

14

191 Hardware En este punto se refleja el costo de los dispositivos y herramientas a nivel

fiacutesico las cuales sirvieron para la implementacioacuten del proyecto cluacutester de alto rendimiento Cabe

resaltar que el equipo utilizado forma parte del inventario actual del Laboratorio motivo por el

cual su utilizacioacuten no causoacute erogacioacuten alguna sin embargo la investigacioacuten de costos se realizoacute

con la finalidad que el lector pueda establecer comparativas y buscar alternativas en caso de ajuste

de presupuesto

1911 Equipo de coacutemputo El equipo de coacutemputo utilizado consta de diecisiete

computadoras las cuales serviraacuten una para Nodo Maestro y las dieciseacuteis restantes como Nodos

Esclavos

La descripcioacuten de estos equipos se muestra en la tabla a continuacioacuten mostrando los costos

de todos los equipos utilizados dentro del proyecto

15

Tabla 11 Costo del Proyecto

Modelo

Cantidad

Caracteriacutesticas

Costos

PC - Acer AXC-

605

17

Procesador Intel Core i3

Pantalla 156rdquo

Disco duro 1TB HDD

RAM 6GB

Salida HDMI

Tarjeta de graacuteficos INTEGRADA

Lector de CD

Los costos en el mercado de una PC de

escritorio con estas caracteriacutesticas tiene un

valor aproximado de $600000 pesos

(Moneda nacional Mexicana)

Switch Cisco

Gigabit Ethernet

1

Modelo SG200 de 26 puertos

Costo en el mercado alrededor de

$2000000 pesos MN

Total

12200000 pesos MN

16

Capiacutetulo 2 Estado del Arte

Tiacutetulo del Trabajo Introduccioacuten a la Criptografiacutea

Autor Gibraacuten Granados Paredes

Fecha Julio 2010

Lugar Ciudad de Meacutexico

Publicado en Coordinacioacuten de Publicaciones Digitales DGSCA-UNAM

httpwwwrevistaunammxvol7num7art55int55htm

Siacutentesis Cuando se desea tener seguridad hablando en aacutembitos informaacuteticos la

criptografiacutea es una herramienta muy uacutetil el autor lo entiende tambieacuten como un medio para

garantizar las propiedades de confidencialidad integridad y disponibilidad de los recursos de un

sistema

Con la criptografiacutea se puede garantizar las propiedades de integridad y confidencialidad

pero hay que saber coacutemo utilizarla para ello es importante tener claros los conceptos baacutesicos que

estaacuten detraacutes de los sistemas criptograacuteficos modernos Estos conceptos van desde entender queacute es

la criptografiacutea coacutemo estaacute clasificada entender el funcionamiento baacutesico de algunos sistemas de

cifrado y conocer coacutemo se forman los documentos digitales como firmas y sobres digitales

Resultados El autor realiza un viaje por un gran nuacutemero de conceptos utilizados en

criptografiacutea el inicio y la clasificacioacuten de la misma asiacute como la criptografiacutea claacutesica y moderna y

analiza de manera breve algunos meacutetodos de cifrado maacutes comunes

17

Tiacutetulo del Trabajo Criptoanaacutelisis sobre meacutetodos claacutesicos de cifrado

Autores Sebastiaacuten Goacutemez Juan David Arias Diego Agudelo

Fecha 2 de mayo 2013

Lugar Ciudad de Meacutexico

Publicado en Scientia et Technica Antildeo XVII No 50 abril de 2012

Siacutentesis Los algoritmos criptograacuteficos utilizados desde la antigua Roma hasta nuestros

diacuteas son meacutetodos que convierten un mensaje de texto plano a cifrado al proceso inverso se le

conoce como descifrar Este artiacuteculo realiza un estudio de algunas teacutecnicas de encriptacioacuten claacutesicas

del siglo pasado como lo son el cifrado de Cesar y el cifrado de Vigeneacutere asiacute como muestra

teacutecnicas baacutesicas y modernas de criptoanaacutelisis basadas en la teoriacutea de la informacioacuten y estadiacutestica

como lo son la entropiacutea y el ataque de maacutexima correlacioacuten Las teacutecnicas de criptoanaacutelisis descritas

anteriormente pueden ser usadas en otros meacutetodos de cifrado siempre y cuando esteacuten presentes las

mismas debilidades

Resultados Los autores implementaron en lenguajes de programacioacuten Python un

algoritmo para el caacutelculo de entropiacutea para diferentes longitudes de clave Para la implementacioacuten

de los algoritmos de cifrado y descifrado de Vigeneacutere y de maacutexima correlacioacuten utilizaron lenguaje

de programacioacuten C++ Se probaron los meacutetodos anteriormente descritos sobre textos planos de

diferentes longitudes logrando un resultado de 9385 de efectividad en promedio

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de dos de los

algoritmos de encriptacioacuten maacutes antiguos y baacutesicos pero sobre todo que conociendo los meacutetodos

de criptoanaacutelisis me permitiraacuten analizar debilidades y fortalezas de algoritmos

18

Tiacutetulo del Trabajo ULTRACOM Computacioacuten de Alto Rendimiento para Criptoanaacutelisis

Autor Antonio Castro Lechtaler Alejandro Repetto Martiacuten Bianchi Marcelo Cipriano

Alejandro Arroyo Arzubi Ceacutesar Cicerchia Eduardo Malvacio

Fecha octubre 2014

Lugar Buenos Aires Argentina

Publicado en XX Congreso Argentino de Ciencias de la Computacioacuten (Buenos Aires

2014)

Siacutentesis La generacioacuten de nuacutemeros primos fundamentales para la produccioacuten de claves

el anaacutelisis de secuencias pseudo-aleatorias los procesos de verificacioacuten y validacioacuten de algoritmos

de seguridad en un sentido geneacuterico requieren enormes cantidades de procesamiento Los

procesos relacionados con la matemaacutetica criptograacutefica se caracterizan por la alta necesidad de

coacutemputo El objetivo de ULTRACOM es desarrollar una computacioacuten distribuida multipropoacutesito

que permita como primera aplicacioacuten real el anaacutelisis la validacioacuten y la ejecucioacuten de pruebas de

estreacutes sobre sistemas criptograacuteficos El presente trabajo de investigacioacuten detalla el proceso de

desarrollo de ULTRACOM y muestra un ejemplo de su implementacioacuten en una versioacuten Beta Para

ello toman como entrada dos versiones del algoritmo Trivium Utilizando la misma

infraestructura y sin desarrollo extra se prueban grandes voluacutemenes de claves y vectores de

inicializacioacuten de los algoritmos en busca de secuencias deacutebiles de menor longitud que la de la

buscada

Resultados El equipo implementoacute una versioacuten beta de la plataforma ULTRACOM

comprobando la factibilidad y viabilidad teacutecnica de la generalizacioacuten de la infraestructura de

computacioacuten distribuida en grilla (malla) BOINC Este avance permite extender los horizontes de

BOINC y habilita la posibilidad de obtener la capacidad de coacutemputo de alto rendimiento a bajo

19

costo Concluyeron que ULTRACOM es un proyecto viable escalable y de alto impacto para la

evaluacioacuten y validacioacuten de algoritmos criptograacuteficos

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento y la

implementacioacuten de una arquitectura de computacioacuten distribuida y una vez siendo factible su

desarrollo utilizar su poder de coacutemputo atacando a traveacutes de un algoritmo un sistema criptograacutefico

20

Tiacutetulo del Trabajo Criptografiacutea Cuaacutentica

Autor M Baig

Fecha 2010

Lugar Barcelona Espantildea

Siacutentesis En este artiacuteculo el autor realiza una breve introduccioacuten a la criptografiacutea claacutesica y

la relacioacuten que existe con la teoriacutea de la informacioacuten de Shannon la cual asegura que el cifrado

digital simeacutetrico es secreto y perfecto siempre y cuando se cumplan los tres requisitos

1 La llave ha de ser aleatoria

2 La llave debe usarse soacutelo una vez

3 La llave ha de ser tan larga como el mensaje y de un solo uso debe de estar en posesioacuten

tanto del emisor como del receptor

El punto 3 es el maacutes complicado de cumplir debido a la forma de compartir la llave entre

el emisor y receptor

Maacutes adelante en el artiacuteculo se hace un anaacutelisis sobre otra teacutecnica de criptografiacutea que es el

cifrado digital asimeacutetrico en la que se estudia coacutemo funcionan las llaves privadas y puacuteblicas asiacute

como el meacutetodo de criptograacutefico RSA

Resultados

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento maacutes profundo de

los meacutetodos de criptografiacutea simeacutetricos y asimeacutetricos especiacuteficamente el algoritmo asimeacutetrico

RSA

21

Tiacutetulo del Trabajo La Criptografiacutea Maderista en la Revolucioacuten Mexicana (1910-1911)

Criptoanaacutelisis de una carta cifrada por Gabriel Leyva Solano

Autor Roberto Narvaacuteez

Fecha 2011

Lugar Meacutexico DF

Siacutentesis Este trabajo aborda temas relacionados con las comunicaciones secretas del

movimiento revolucionario comandado por Francisco I Madero a partir de 1910 Se compone de

dos partes la primera es una breve resentildea criacutetica de ejemplos criptograacuteficos del maderismo que

fueron generados entre 1910 y 1911 la segunda describe paso a paso el criptoanaacutelisis que aplicoacute

el autor Roberto Narvaacuteez para desencriptar una carta parcialmente cifrada de Gabriel Leyva Solano

a Francisco I Madero

Resultados El propoacutesito general uacuteltimo es contribuir al conocimiento de la criptografiacutea

mexicana en el siglo XX En lo particular se trata de poner a disposicioacuten de los estudiosos el

contenido completo de la carta de Leyva Solano por primera vez despueacutes de 100 antildeos y al mismo

tiempo someter a la criacutetica teacutecnica e histoacuterica el procedimiento criptoanaliacutetico puesto en operacioacuten

para recuperar el texto plano

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados en nuestro paiacutes sobre formas y meacutetodos de encriptacioacuten durante la Revolucioacuten

Mexicana incluso mucho antes de la 2ordf Guerra mundial momento donde se registroacute un auge

importante dentro de la criptografiacutea moderna

22

Tiacutetulo de Tesis Anaacutelisis de la programacioacuten concurrente sobre la cpu y gpu en el

desarrollo de fractal build

Autor Joseacute Vicente Anilema Guadalupe

Fecha 2012

Lugar Riobamba Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la geometriacutea euclidiana debido a que

el autor realiza una aplicacioacuten que crea paisajes fractales lo que significa crear un paisaje con una

misma figura geomeacutetrica Lo anterior se traduce en una necesidad de gran poder de coacutemputo para

realizar de una manera eficaz la tarea Dentro de la tesis el autor realiza diversos estudios

comparativos entre el procesamiento serializado realizado por una CPU (unidad central de

procesamiento) y procesamiento paralelizado realizado por una GPU (Unidad grafica de

procesamiento) a traveacutes de diversas herramientas para obtener el mejor aprovechamiento de los

recursos

Resultados El autor concluye que es necesario examinar los algoritmos a utilizar para que

estos puedan ser utilizados en coacutemputo paralelo Ademaacutes de que es necesario aprender ciertas

herramientas a utilizar para aprovechar al maacuteximo el coacutemputo distribuido y no desperdiciar el

poder de procesamiento muy superior que las GPUrsquos nos pueden brindar

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados para medir y comparar la velocidad de procesamiento de la unidad central de

procesamiento (CPU) y la unidad graacutefica de procesamiento (GPU) Asiacute como la medida en Flops

(Operaciones de punto flotante por segundo)

23

Tiacutetulo del Trabajo Arquitectura cluacutester de alto rendimiento utilizando herramientas de

software libre

Autores Leonardo Chiquiguanca Edyson Malla Freddy Ajila Rene Guamaacuten-Quincheacute

Fecha mayo 2015

Lugar Loja Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la gran cantidad de datos que tienen

que procesar las universidades puacuteblicas dentro de sus investigaciones realizadas en diferentes aacutereas

como la ingenieriacutea medicina etc y la carencia de recursos econoacutemicos para obtener

supercomputadoras que procesen dicha informacioacuten Los autores proponen dentro de su

investigacioacuten la utilizacioacuten de equipo de coacutemputo existente dentro de su universidad y por medio

de software libre realizar agrupamiento de computadoras para poder lograr el procesamiento de

grandes voluacutemenes de datos de una manera accesible

Resultados Los autores concluyen que la mejor arquitectura para el agrupamiento

(cluacutester) de computadoras en ambientes universitarios es la arquitectura Beowulf debido a que la

implementaron en hardware convencional existente dentro de su campus universitario y que

ademaacutes usaron software libre mencionando que el poder de coacutemputo logrado fue muy cercano al

de una supercomputadora

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de las teacutecnicas

utilizadas en ambientes universitarios para la realizacioacuten de agrupamiento de computadoras y

sobre todo la optimizacioacuten de costos para realizar dicha tarea y tener como finalidad el lograr

mayor capacidad de procesamiento

24

Tiacutetulo de Tesis Desarrollo de un algoritmo de cifrado simeacutetrico de resumen

Autores Jonathan Dave Orjuela Navarrete

Antildeo 2008

Lugar Bogotaacute DC

Siacutentesis Esta tesis realiza un estudio de varios meacutetodos de criptografiacutea simeacutetrica para

posteriormente utilizando diferentes foacutermulas matemaacuteticas crear un algoritmo criptograacutefico

nuevo Dentro de la tesis utiliza dos meacutetodos para realizar pruebas a su algoritmo criptoanaacutelisis

diferencial y criptoanaacutelisis basado en fallos de hardware Dentro de los cuales hace un estudio

detallado de las teacutecnicas y herramientas de criptoanaacutelisis realizado a su algoritmo

Resultados El autor concluye de manera positiva con la realizacioacuten del algoritmo y de

manera satisfactoria con la realizacioacuten de criptoanaacutelisis a su algoritmo pudiendo demostrar la

fortaleza del algoritmo a traveacutes de ejemplo de cifrado con textos claro muy parecido y su

conversioacuten a cadenas completamente diferentes

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de criptoanaacutelisis diferencial y criptoanaacutelisis basado en fallos de hardware para la

evaluacioacuten de algoritmos de cifrado simeacutetrico de textos claros

25

Tiacutetulo del Trabajo Firt step in a Pc cluster development with openMosix

Autores Javier Bilbao Gorka Garate

Antildeo 2008

Lugar Bilbao Spain

Siacutentesis En este trabajo se afirma que es posible hacer maacutequinas de alta capacidad de

caacutelculo mediante la interconexioacuten de equipos con redes de alta velocidad A este tipo de sistemas

se les llama sistemas distribuidos y hoy en diacutea es la tecnologiacutea maacutes utilizada para resolver

problemas que requieren una gran capacidad de caacutelculo La agrupacioacuten de computadoras permite

que varias computadoras trabajen juntas para resolver los problemas de informaacutetica comuacuten Este

artiacuteculo centra su estudio en uno de los diferentes meacutetodos de agrupamiento de computadoras

openMosix El trabajo tambieacuten evaluacutea el cluacutester por dos casos de estudio donde se mejora el

tiempo de ejecucioacuten de los problemas resueltos

Resultados El autor del artiacuteculo concluye con la realizacioacuten satisfactoria de agrupamiento

de computadoras bajo el meacutetodo openMosix el cual uacutenicamente permite agrupamiento de la forma

SSI (Single System Image) que se refiere a que uacutenicamente se puede realizar el agrupamiento con

todos los nodos ejecutando un mismo sistema operativo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras openMosix ventajas desventajas y dificultades para

su implementacioacuten

26

Tiacutetulo del Trabajo Disentildeo e implementacioacuten de un cluacutester tipo Beowulf para el desarrollo

de coacutemputo cientiacutefico avanzado

Autores Edgar Rubeacuten Gonzaacutelez Ramiacuterez Abimael Rodriacuteguez Saacutenchez

Antildeo 2008

Lugar Instituto Politeacutecnico Nacional Meacutexico DF

Siacutentesis Este trabajo de tesis ha desarrollado e implementado una herramienta

computacional llamada Cluster Beowulf para mejorar la programacioacuten paralela Comenzando

con la memoria compartida y distribuida el autor implemento el agrupamiento tipo Beowulf

pensando en procesamiento paralelo la optimizacioacuten de las fuentes informaacuteticas El disentildeo se

construye mediante una distribucioacuten Linux Fedora Core 6 a 64 bits utilizando todas las ventajas

que ofrece el estaacutendar Gigabyt Ethernet La programacioacuten paralela fue desarrollada en lenguaje C

tanto para MPI como para OPENMP

Resultados El autor del artiacuteculo concluye que de acuerdo con los resultados el tiempo

de procesamiento se redujo con el uso muacuteltiples nuacutecleos mejoroacute hasta ocho veces gracias al

multihilo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras Beowulf y su implementacioacuten en sistemas operativos

de uso libre Linux distribucioacuten Fedora 6

27

Marco Teoacuterico

21 Seguridad de la Informacioacuten

La Seguridad de la Informacioacuten consiste y hace referencia a la proteccioacuten de cualquier

amenaza para salvaguardar los activos fijos y en especial toda informacioacuten de la cual estaacute basada

la continuidad de las operaciones de la empresa sean estas ocasionadas dentro o fuera de la misma

con esto se logra disminuir los dantildeos y perjuicios que estas amenazas causariacutean a la organizacioacuten

y a la vez aumentar las oportunidades de servicio hacia otras empresas

La Seguridad de la informacioacuten se consigue mediante la implementacioacuten de controles

efectivos que pueden ser normas manual de funciones buenas praacutecticas procedimientos

estructuras organizativas funciones de software y hardware planes de contingencia y herramientas

que se encargan de proteger la privacidad e integridad de la informacioacuten que se almacena en un

sistema informaacutetico Estos controles necesitan continuamente ser establecidos monitoreados

revisados y mejorados en donde sea necesario para asegurar que se cumplan los objetivos

especiacuteficos de seguridad en cada aacuterea de negocio de la organizacioacuten

La seguridad informaacutetica es en realidad una rama de la seguridad de la informacioacuten aunque

de forma praacutectica algunos autores suelen utilizar de manera indistinta ambos teacuterminos

211 Objetivo de la seguridad de la informacioacuten En la seguridad de la informacioacuten

sabiendo que dichos procesos de seguridad permiten proteger el recurso maacutes importante y valioso

de una organizacioacuten partiendo como principio fundamental los procesos de aseguramiento el

28

objetivo del proceso de seguridad informaacutetica es obtener un nivel aceptable de seguridad ya que

la informacioacuten es lo maacutes valioso que tiene una institucioacuten o empresa por lo tanto esta debe ser

protegida para que no sea vulnerable y utilizada para fines maliciosos

212 Principios de la seguridad informaacutetica

Confidencialidad Los datos solo deben ser conocidos y accedidos por quienes esteacuten

autorizados durante su almacenamiento procesamiento o trasmisioacuten Verificar y certificar que solo

los usuarios con accesos autorizados puedan acceder a la informacioacuten

Integridad Los datos solo pueden ser modificados y eliminados por quienes esteacuten

autorizados para ello es decir los sistemas y aplicaciones solo deben ser operados por personal

autorizado

Disponibilidad Los sistemas que almacenan datos e informacioacuten deben garantizar su

acceso cuando asiacute se requiera por quienes tengan derecho a ello

213 Caracteriacutesticas de seguridad informaacutetica

Control Solo los usuarios autorizados deciden cuaacutendo y coacutemo permitir el acceso a la

informacioacuten

Auditoriacutea Establece las acciones cuaacutendo las implementa y quieacuten las realiza sobre el

sistema

Autenticidad Define que la informacioacuten necesaria es correcta utilizable y vaacutelida en tiempo

y forma

No Repudio Su funcioacuten es evitar que alguna entidad que envioacute o recibioacute informacioacuten

alegue que no lo hizo

29

214 Formas de Autenticacioacuten

Contrasentildea Una contrasentildea es un tipo de seguridad informaacutetica ya que es una serie de

caracteres secretos que permiten a un usuario tener acceso a un archivo equipo de coacutemputo o

programa y negar el acceso a usuarios no autorizados

Certificado digital Es un tipo de seguridad informaacutetica que permite la firma digital

electroacutenica que garantiza teacutecnica y legalmente la identidad de una persona en Internet

Autenticacioacuten HTTP Tipo de seguridad informaacutetica que delega la autenticacioacuten de

usuarios a un servidor a traveacutes de Kerberos

215 Ciber-seguridad Con los avances tecnoloacutegicos y la demanda que ha causado en ello

existe un elevado iacutendice de informacioacuten personal y empresarial que circula y se mantiene en la red

por la utilizacioacuten del internet esto permite que toda informacioacuten quede expuesta a cualquier ataque

de ciber-delincuentes los cuales buscan la manera de vulnerar cualquier sistema para espiar robar

informacioacuten o hacer dantildeo de cualquier tipo por lo que se ha visto la necesidad de tomar medidas

de seguridad para salvaguardar la informacioacuten ya que es muy importante

La ciberseguridad es la proteccioacuten de los sistemas conectados a Internet incluidos el

hardware el software y los datos de los ciberataques En un contexto informaacutetico la seguridad

comprende la ciberseguridad y la seguridad fiacutesica ambas son utilizadas por las empresas para

proteger contra el acceso no autorizado a los centros de datos y otros sistemas de coacutemputo El

objetivo de la ciberseguridad es limitar el riesgo y proteger los activos de Tecnologiacuteas de

Informacioacuten de los atacantes con intenciones maliciosas La seguridad de la informacioacuten estaacute

30

disentildeada para mantener la confidencialidad integridad y disponibilidad de los datos es un

subconjunto de la ciberseguridad

22 Criptografiacutea

La Criptografiacutea tambieacuten llamada ldquoescritura ocultardquo tradicionalmente en el aacutembito de

criptografiacutea es donde se ocupan las teacutecnicas de cifrado o codificacioacuten que permiten alterar el

contenido de cierta informacioacuten o mensajes con el fin de hacerlos ininteligibles a receptores o

personas no autorizadas (Meneacutendez-Barzanallana 17)

Actualmente la criptografiacutea se encarga de analizar algoritmos protocolos y sistemas que

son utilizados para proveer seguridad a las comunicaciones informacioacuten y a las entidades que se

comunican entre siacute

221 Tipos de Criptografiacuteas

2211 Tablas Hash Un hash o funcioacuten hash toma un grupo de caracteres (llamado clave)

y lo asigna a un valor de cierta longitud (llamado valor hash o hash) El valor hash es representativo

de la cadena de caracteres original pero normalmente es maacutes pequentildeo que el original

El hash tambieacuten es utilizado en el cifrado y descifrado de firmas digitales La funcioacuten hash

transforma la firma digital luego tanto el valor hash como la firma se enviacutean al receptor El

receptor utiliza la misma funcioacuten hash para generar el valor hash y luego lo compara con el recibido

31

en el mensaje Si los valores hash son los mismos es probable que el mensaje se haya transmitido

sin errores

Un ejemplo de una funcioacuten hash se llama plegado(folding) Esta toma un valor original lo

divide en varias partes luego agrega las partes y usa los uacuteltimos cuatro diacutegitos restantes como

valor o clave hash

2212 Tipos de algoritmos Hash

22121 SHA - 1 (Secure Hash Algorithm) Es un algoritmo criptograacutefico de Hash

publicado por el gobierno de los Estados Unidos Genera un valor Hash de 160 bits a partir de una

secuencia de longitud arbitraria Es considerado lo suficientemente seguro para aplicaciones

praacutecticas pero hay disponibles versiones maacutes robustas SHA - 256 SHA - 384 y SHA - 512 que

generan valores Hash de 256 384 y 512 bits respectivamente estas versiones reemplazaraacuten a SHA

- 1 mientras se siga trabajando sobre ellas (Borghello 2009)

22122 MD5 (Message Digest Algorithm) En criptografiacutea MD5 es una funcioacuten hash

criptograacutefica ampliamente utilizada con un valor hash de 128 bits Como estaacutendar de Internet (RFC

1321) MD5 se ha empleado en una amplia variedad de aplicaciones de seguridad y tambieacuten se

usa comuacutenmente para verificar la integridad de los archivos Un hash MD5 generalmente se

expresa como un nuacutemero hexadecimal de 32 diacutegitos

MD5 es una versioacuten reforzada de MD4 Al igual que MD4 el hash MD5 fue inventado por

el profesor Ronald Rivest del Massachusetts Institute of Technology (MIT) Ademaacutes MD5 se

32

utilizoacute como modelo para SHA-1 ya que comparten muchas caracteriacutesticas comunes MD5 y

SHA-1 son los dos algoritmos hash maacutes utilizados en la actualidad aunque el uso de MD5 ha

disminuido ya que ahora se considera roto (Borghello 2009)

22123 RIPEMD ndash 160 Es una funcioacuten hash criptograacutefica basada en la construccioacuten

Merkle-Damgaringrd (MD) Se usa en el estaacutendar de Bitcoin Es una versioacuten reforzada del algoritmo

RIPEMD que produce un resumen de hash de 128 bits mientras que el algoritmo RIPEMD-160

produce una salida de 160 bits La funcioacuten de compresioacuten consta de 80 etapas formadas por 5

bloques que se ejecutan 16 veces cada uno Este patroacuten se ejecuta dos veces con los resultados

combinados en la parte inferior utilizando la adicioacuten del moacutedulo 32 (Borghello 2009)

22124 Funcioacuten Merkle-Damgaringrd La construccioacuten MD es una metodologiacutea para crear

funciones hash resistentes a colisiones a partir de funciones de compresioacuten unidireccionales Ralph

Merkle la propuso en el antildeo de 1979 en ldquoA certified Digital Signaturerdquo posterior a este estudio

Ivan Damgaringrd demostroacute de manera independiente que la estructura era soacutelida (Merkle amp

Damgaringrd sf)

2213 Cifrado simeacutetrico Los cifrados simeacutetricos son los cifrados criptograacuteficos maacutes

antiguos y maacutes utilizados En un cifrado simeacutetrico la clave que descifra el texto cifrado es la

misma (o puede derivarse faacutecilmente) de la clave que cifra el texto claro Esta clave a menudo se

conoce como la clave secreta Los cifrados simeacutetricos maacutes utilizados son DES y AES

La problemaacutetica que surge es la seguridad de la clave

33

El emisor cifra el mensaje con una clave

Enviacutea el mensaje cifrado de tal manera que nadie puede descifrarlo sin dicha clave

El receptor obtiene la clave y entonces puede descifrar el mensaje con la misma clave

que recibioacute del emisor

Algunos algoritmos de este tipo son

22131 RC5 (Cifrado de Rivest) Es un algoritmo de cifrado de bloque de clave simeacutetrica

disentildeado por Ron Rivest en 1994 Se destaca por ser simple raacutepido (debido a que usa solo

operaciones de coacutemputo primitivas como XOR o shift) y ademaacutes por consumir menos memoria

RC5 es un cifrado de bloques y aborda dos bloques de palabras a la vez Dependiendo del

tamantildeo del bloque de texto sin formato nuacutemero de rondas y tamantildeo de clave se pueden definir

varias instancias de RC5 y cada instancia se denota como RC5-w r b donde w = tamantildeo de

palabra en bits r = nuacutemero de rondas y b = tamantildeo de la clave en bytes (Pawar 2016)

Como se ha mencionado RC5 utiliza bloques de 2 palabras el tamantildeo del bloque de texto

sin formato puede ser de 32 64 o 128 bits

22132 IDEA (International Data Encryption Algorithm) Baacutesicamente es un algoritmo

de cifrado de bloque simeacutetrico El algoritmo asimeacutetrico utiliza la misma clave para el cifrado y

descifrado Un cifrado de bloque divide el mensaje en bloques cada uno de una longitud fija y

luego cifra cada bloque de forma independiente

34

El tamantildeo de bloque tiacutepico es de 16 bytes de 128 bits Un cifrado de bloque generalmente

operaraacute en bloques o rondas donde se aplica parte de la clave a la ronda Despueacutes de un cierto

nuacutemero de rondas digamos entre 10 y 16 se termina con el texto cifrado para ese bloque

El bloque de texto cifrado tiene exactamente el mismo tamantildeo que el bloque de texto sin

formato 16 bytes Para cada ronda se trabaja en el bloque utilizando una parte de la clave de

cifrado a la que se le llama la clave redonda Muacuteltiples claves redondas se derivan de la clave de

cifrado utilizando para esto un programa de claves

La programacioacuten de claves es un algoritmo que cambia XOR multiplica y realiza otros

tipos de operaciones en la clave de cifrado original para obtener estas claves redondas Bueno si

tengo un bloque de 16 bytes y tengo una clave de 128 bits que tambieacuten es de 16 bytes (Educba

2019)

22133 DES (Data Encryption Standard) El algoritmo DES es el algoritmo de seguridad

maacutes popular Es un algoritmo simeacutetrico lo que significa que se utilizan las mismas claves para

cifrar descifrar datos confidenciales La longitud de la clave es de 8 bytes (64 bits) Entonces

para cifrar descifrar datos el algoritmo DES utiliza una clave de 8 bytes pero 1 byte (8 bits) para

la verificacioacuten de paridad Es un algoritmo de cifrado de bloque por lo tanto el tamantildeo del bloque

de datos del algoritmo DES es de 64 bits Para cifrar descifrar datos el algoritmo DES utiliza la

estructura Feistel Entonces utiliza una ronda para cifrar descifrar datos Aunque el tamantildeo del

35

bloque de datos es de 64 bits el nuacutemero de rondas seraacute de 16 rondas asiacute mismo utilizaraacute diferentes

subclaves para cada ronda por lo tanto el nuacutemero de subclaves seraacute de 16 subclaves

Como se puede observar la clave efectiva es de 56 bits por consiguiente se tiene 256

combinaciones posibles por lo que la fuerza bruta se hace casi imposible (Sanjoy 2015)

2214 Cifrado asimeacutetrico Los cifrados asimeacutetricos tambieacuten se conocen como cifrados

con claves puacuteblicas y privadas Usan dos claves una para el cifrado de mensajes y la otra durante

el descifrado

Un intruso puede encriptar cualquier mensaje usando la clave puacuteblica conocida Los

cifrados asimeacutetricos son por lo tanto vulnerables a los ataques de texto sin formato Los cifrados

con encriptacioacuten de clave puacuteblica deben proporcionar seguridad contra tales ataques Despueacutes de

encriptar dos mensajes con la misma clave puacuteblica el intruso no puede distinguir queacute texto cifrado

estaacute conectado con queacute texto plano Ademaacutes un observador que analiza dos mensajes encriptados

usando el mismo algoritmo y la misma clave puacuteblica no puede distinguir sus textos cifrados

(Kowalczyk 2015)

Los cifrados asimeacutetricos son mucho maacutes lentos que los cifrados simeacutetricos (generalmente

mil veces maacutes lentos) Es una praacutectica comuacuten usar el cifrado de clave puacuteblica solo para establecer

la conexioacuten segura y negociar la nueva clave secreta que luego se utilizaraacute para proteger la

comunicacioacuten mediante cifrado simeacutetrico Ejemplos de este cifrado son

36

22141 DSA (Digital Signature Algorithm - Algoritmo de Firma digital) Es un estaacutendar

del Gobierno Federal de los Estados Unidos para firmas digitales Fue propuesto por el Instituto

Nacional de Estaacutendares y Tecnologiacutea (NIST) en agosto de 1991 para ser usado en su Estaacutendar de

Firma Digital (DSS) en el antildeo de 1993

La primera parte del algoritmo DSA es la generacioacuten de clave puacuteblica y clave privada que

puede describirse como

Se elige un nuacutemero primo q que se llama divisor primo

Se elige otro nuacutemero primo p de modo que pndash1 mod q = 0 p seraacute llamado moacutedulo

primo

Ahora se elige un nuacutemero entero g tal que 1 ltg ltp g q mod p = 1 g = h ((p

ndash 1) q) mod p q tambieacuten se llama moacutedulo de orden multiplicativo de g moacutedulo p

Se elige un nuacutemero entero tal que 0 ltx ltq

Se calcula y como g x mod p

Se empaqueta la clave puacuteblica como p q g y

Por uacuteltimo se empaqueta la clave privada como p q g x

La segunda parte del algoritmo DSA es la generacioacuten de firma y la verificacioacuten de firma

Para generar una firma de mensaje el remitente puede seguir estos pasos

Se genera el resumen del mensaje h utilizando un algoritmo hash como SHA1

Se genera un nuacutemero aleatorio k tal que 0 ltk ltq

37

Se calcula r como (g k mod p) mod q Si r = 0 seleccione una k diferente

Ahora se calcula i de modo que k i mod q = 1 i se llama el inverso multiplicativo modular

de k moacutedulo q

Se calcula s = i (h + r x) mod q Si s = 0 se selecciona una k diferente

Por uacuteltimo se empaqueta la firma digital como r s (Yang 2019)

22142 RSA Encriptacioacuten RSA encriptacioacuten Rivest-Shamir-Adleman tipo de

criptografiacutea de clave puacuteblica ampliamente utilizada para la encriptacioacuten de datos de correo

electroacutenico y otras transacciones digitales a traveacutes de Internet RSA lleva el nombre de sus

inventores Ronald L Rivest Adi Shamir y Leonard M Adleman quienes lo crearon mientras

trabajaban en la facultad del Instituto Tecnoloacutegico de Massachusetts (Simmons 2019)

En el sistema RSA un usuario elige de manera secreta un par de nuacutemeros primos p y q tan

grandes que factorizar el producto n = pq estaacute mucho maacutes allaacute de las capacidades informaacuteticas

proyectadas para la vida uacutetil de los cifrados A partir del antildeo 2000 los estaacutendares de seguridad del

gobierno de EE UU exigen que el moacutedulo tenga un tamantildeo de 1024 bits es decir p y q deben

tener un tamantildeo de aproximadamente 155 diacutegitos decimales por lo que n es aproximadamente un

nuacutemero de 310 diacutegitos Dado que los nuacutemeros duros maacutes grandes que actualmente se pueden

factorizar son solo la mitad de este tamantildeo y dado que la dificultad de factorizar se duplica

aproximadamente por cada tres diacutegitos adicionales en el moacutedulo se cree que los moacutedulos de 310

diacutegitos estaacuten a salvo de factorizar durante varias deacutecadas

38

2215 Cifrado hiacutebrido Es una teacutecnica comuacuten que combina diferentes funciones

criptograacuteficas como el cifrado de bloque Con el cifrado hiacutebrido se pueden cifrar datos firmarlos

o agregar un MAC y enviarlos en un objeto seguro (como una cadena o archivo) a traveacutes de un

canal de comunicacioacuten inseguro (sin un acuerdo clave entre dos partes)

En el sistema de cifrado hiacutebrido el texto plano (sin formato) se divide en tokens Luego

se calcula la longitud de cada ficha Los tokens y sus longitudes se almacenan en una matriz

Posteriormente se aplica el algoritmo Ceacutesar anidado sugerido El texto producido se almacena en

una matriz n x m llamada A Luego la transposicioacuten de esta matriz At se calcula utilizando

nuestra versioacuten revisada del cifrado de transposicioacuten para resolver el problema de secuenciacioacuten

A continuacioacuten el algoritmo RSA revisado se aplica en la matriz producida En el paso final se

aplica el formato de datos textuales usando el coacutedigo ASCII para producir el texto cifrado El

proceso de descifrado se realiza de la misma manera pero en orden inverso (Nahar amp Abu Abbas

2010)

23 Criptoanaacutelisis

El criptoanaacutelisis es el proceso de estudiar sistemas criptograacuteficos para buscar debilidades

o fugas de informacioacuten En general se considera que el criptoanaacutelisis explora las debilidades de

las matemaacuteticas subyacentes de un sistema criptograacutefico pero tambieacuten incluye la buacutesqueda de

debilidades en la implementacioacuten como ataques de canal lateral o entradas de entropiacutea deacutebiles

39

Su funcioacuten es la de conseguir obtener el significado de mensajes creados por medio de

criptografiacutea El objetivo principal del criptoanaacutelisis es opuesto al de la criptografiacutea Tiene como

finalidad encontrar la debilidad de las diferentes teacutecnicas criptograacuteficas para explotarla y de esta

manera reducir o eliminar la seguridad de la teacutecnica criptograacutefica Cualquier intento de

criptoanaacutelisis puede ser llamado ataque Una vez que un atacante logra romper la seguridad que

una teacutecnica criptograacutefica aportaba al sistema se dice que dicho sistema ha sido roto y por lo tanto

dicho ataque tuvo eacutexito

El criptoanaacutelisis es la investigacioacuten de sistemas texto cifrado y cifrados para revelar el

significado oculto o los detalles del sistema mismo El objetivo de este tipo de estudio es descubrir

los aspectos ocultos incluso si la clave o el algoritmo principal no se pueden descifrar Se necesita

una combinacioacuten exitosa de persistencia matemaacuteticas intuicioacuten curiosidad y una computadora

que funcione para hacer un buen criptoanalista Este tipo de ruptura de coacutedigo es extremadamente

importante especialmente en el mundo tecnoloacutegicamente dependiente de hoy El criptoanaacutelisis es

constantemente realizado por criptoacutegrafos que intentan obtener informacioacuten valiosa y por aquellos

que intentan descifrar el coacutedigo para revelar secretos (Security Degree Hub 2017)

24 Niveles de seguridad

Los niveles de seguridad de sistemas operativos son otorgados de acuerdo con el sistema

operativo que esteacute utilizando la empresa o institucioacuten ya sea puacuteblica privada gubernamental o no

gubernamental En el manual ldquoTrusted Computer System Evaluation Criteriardquo (United States

40

Government Department of Defense 1983) el Departamento de Defensa de los Estados Unidos

define los siguientes niveles

241 Nivel D1 Este nivel es el maacutes bajo de seguridad por lo tanto la norma establece que

el sistema no es confiable Esta divisioacuten contiene solo una clase Estaacute reservado para aquellos

sistemas que han sido evaluados pero que no cumplen con los requisitos para un nivel de

evaluacioacuten superior

242 Nivel C1 Un sistema de nivel C1 cumple nominalmente los requisitos de seguridad

discrecionales al proporcionar separacioacuten de usuarios y datos Incorpora alguna forma de controles

creiacutebles capaces de imponer limitaciones de acceso de manera individual es decir aparentemente

adecuados para permitir que los usuarios puedan proteger la informacioacuten privada o del proyecto y

evitar que otros usuarios lean o destruyan accidentalmente sus datos Se espera que el entorno de

nivel C1 sea uno de los usuarios cooperantes que procesan datos con el mismo nivel de

sensibilidad Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten

de nivel C1 son

Control de acceso discrecional por ejemplo listas de control de acceso (ACL)

usuario grupo

Por lo general para usuarios que estaacuten en el mismo nivel de seguridad

Proteccioacuten de nombre de usuario y contrasentildea y base de datos de autorizaciones

seguras (ADB)

Sistema operativo protegido y modo de operaciones del sistema

Comprobacioacuten perioacutedica de integridad de TCB

41

Mecanismos de seguridad probados sin derivaciones obvias

Documentacioacuten para la seguridad del usuario

Documentacioacuten para la seguridad de la administracioacuten de sistemas

Documentacioacuten para pruebas de seguridad

Documentacioacuten de disentildeo TCB

Tiacutepicamente para usuarios en el mismo nivel de seguridad

La certificacioacuten C1 es rara Los sistemas de ejemplo son versiones anteriores de

Unix IBM RACF

243 Nivel C2 Los sistemas de esta clase imponen un control de acceso discrecional maacutes

fino que los sistemas (C1) lo que hace que los usuarios sean individualmente responsables de sus

acciones a traveacutes de procedimientos de inicio de sesioacuten auditoriacutea de eventos relevantes para la

seguridad y aislamiento de recursos Los siguientes son requisitos miacutenimos para los sistemas

asignados a una clasificacioacuten de nivel C2

La proteccioacuten de objetos puede ser para un solo usuario Por ejemplo a traveacutes de

una base de datos ACL

La autorizacioacuten de acceso solo puede ser asignada por usuarios autorizados

Proteccioacuten de reutilizacioacuten de objetos (Por ejemplo para evitar la reasignacioacuten de

objetos eliminados de manera segura)

Procedimientos obligatorios de identificacioacuten y autorizacioacuten para los usuarios (Por

ejemplo Usuario Contrasentildea)

Auditoriacutea completa de eventos de seguridad (es decir fecha hora evento usuario

eacutexito falla ID de terminal)

42

Modo de operacioacuten del sistema protegido

Proteccioacuten adicional para la autorizacioacuten y los datos de auditoriacutea

Documentacioacuten como C1 maacutes informacioacuten sobre el examen de la informacioacuten de

auditoriacutea

Esta es una de las certificaciones maacutes comunes Los sistemas operativos de ejemplo

son VMS IBM OS 400 Windows NT Novell NetWare 411 Oracle 7 DG AOS

VS II

244 Nivel B1 Los sistemas de este nivel requieren todas las caracteriacutesticas requeridas

para el nivel C2 Ademaacutes debe estar presente una declaracioacuten informal del modelo de poliacutetica de

seguridad etiquetado de datos y control de acceso obligatorio sobre sujetos y objetos nombrados

La capacidad debe existir para etiquetar con precisioacuten la informacioacuten exportada Cualquier falla

identificada por la prueba debe ser eliminada Los siguientes son requisitos miacutenimos para los

sistemas asignados a una clasificacioacuten de nivel B1

Etiquetado obligatorio de seguridad y acceso de todos los objetos (Por ejemplo

archivos procesos dispositivos)

Comprobacioacuten de integridad de etiquetas (Por ejemplo mantenimiento de etiquetas

de sensibilidad cuando se exportan datos)

Auditoriacutea de objetos etiquetados

Control de acceso obligatorio para todas las operaciones

Capacidad para especificar el nivel de seguridad impreso en salida legible para

humanos (Por ejemplo impresoras)

43

Capacidad para especificar el nivel de seguridad en cualquier salida legible por

maacutequina

Auditoriacutea mejorada

Proteccioacuten mejorada del sistema operativo

Documentacioacuten mejorada

Los sistemas operativos de ejemplo son HP-UX BLS Cray Research Trusted

Unicos 80 Digital SEVMS Harris CS SX SGI Trusted IRIX

245 Nivel B2 En los sistemas de nivel B2 el TCB se basa en un modelo de poliacutetica de

seguridad formal claramente definido y documentado que requiere que la aplicacioacuten de control de

acceso discrecional y obligatoria que se encuentra en los sistemas de nivel B1 se extienda a todos

los sujetos y objetos en el sistema Ademaacutes se abordan los canales encubiertos El TCB debe

estructurarse cuidadosamente en elementos criacuteticos para la proteccioacuten y no criacuteticos para la

proteccioacuten La interfaz TCB estaacute bien definida y el disentildeo y la implementacioacuten TCB le permiten

someterse a pruebas maacutes exhaustivas y una revisioacuten maacutes completa Se fortalecen los mecanismos

de autenticacioacuten se proporciona una gestioacuten confiable de las instalaciones en forma de soporte

para las funciones de administrador y operador del sistema y se imponen estrictos controles de

gestioacuten de la configuracioacuten El sistema es relativamente resistente a la penetracioacuten Los siguientes

son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de nivel B2

Notificacioacuten de cambios en el nivel de seguridad que afectan a los usuarios

interactivos

Etiquetas de dispositivos jeraacuterquicos

44

Acceso obligatorio a todos los objetos y dispositivos

Comunicaciones de ruta confiables entre usuario y sistema

Rastreo de canales de almacenamiento encubiertos

Modo de operaciones del sistema maacutes estricto en unidades independientes de varios

niveles

Anaacutelisis de canales encubiertos

Pruebas de seguridad mejoradas

Modelos formales de TCB

Versioacuten actualizacioacuten y anaacutelisis y revisioacuten de parches

Los sistemas de ejemplo son Honeywell Multics Cryptek VSLAN Trusted

XENIX

246 Nivel B3 El TCB debe satisfacer los requisitos del monitor de referencia para mediar

todos los accesos de los sujetos a los objetos ser a prueba de manipulaciones y ser lo

suficientemente pequentildeo como para ser sometido a anaacutelisis y pruebas Con este fin el TCB estaacute

estructurado para excluir el coacutedigo que no es esencial para la aplicacioacuten de la poliacutetica de seguridad

con una importante ingenieriacutea del sistema durante el disentildeo y la implementacioacuten del TCB dirigido

a minimizar su complejidad Se admite un administrador de seguridad los mecanismos de

auditoriacutea se ampliacutean para sentildealar eventos relevantes para la seguridad y se requieren

procedimientos de recuperacioacuten del sistema El sistema es altamente resistente a la penetracioacuten

Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de clase

(B3)

45

ACL adicionalmente basadas en grupos e identificadores

Acceso de ruta confiable y autenticacioacuten

Anaacutelisis automaacutetico de seguridad

Modelos TCB maacutes formales

Auditoriacutea de eventos de auditoriacutea de seguridad

Recuperacioacuten confiable despueacutes de la caiacuteda del sistema y documentacioacuten relevante

Cero defectos de disentildeo en TCB y defectos miacutenimos de implementacioacuten

El uacutenico sistema operativo con certificacioacuten B3 es Getronics Wang Federal XTS-

300

247 Nivel A1 Los sistemas en el nivel A1 son funcionalmente equivalentes a los del nivel

B3 en que no se agregan caracteriacutesticas arquitectoacutenicas adicionales ni requisitos de poliacuteticas La

caracteriacutestica distintiva de los sistemas en este nivel es el anaacutelisis derivado de la especificacioacuten

formal del disentildeo y las teacutecnicas de verificacioacuten y el alto grado resultante de seguridad de que el

TCB se implementa correctamente Esta garantiacutea es de naturaleza de desarrollo comenzando con

un modelo formal de la poliacutetica de seguridad y una especificacioacuten formal de alto nivel del disentildeo

Independientemente del lenguaje de especificacioacuten particular o del sistema de verificacioacuten

utilizado existen los siguientes criterios importantes para la verificacioacuten del disentildeo de nivel A1

Meacutetodos formales y prueba de integridad de TCB

Estos son los uacutenicos sistemas con certificacioacuten A1 Boeing MLS LAN Gemini

Trusted Network Processor Honeywell SCOMP (United States Government

Department of Defense 1983)

46

25 Sistemas Operativos

Un sistema operativo actuacutea como intermediario entre el usuario de una computadora y el

hardware de la computadora El propoacutesito de un sistema operativo es proporcionar un entorno en

el que un usuario pueda ejecutar programas de manera conveniente y eficiente

Un sistema operativo es un software que administra el hardware de la computadora El

hardware debe proporcionar mecanismos apropiados para garantizar el correcto funcionamiento

del sistema informaacutetico y para evitar que los programas del usuario interfieran con el correcto

funcionamiento del sistema (Carretero Peacuterez de Miguel Anasagasti Garciacutea Carballeira amp Peacuterez

Costoya 2001)

Un sistema operativo es un programa que controla la ejecucioacuten de programas de aplicacioacuten

y actuacutea como una interfaz entre el usuario de una computadora y el hardware de la computadora

Una definicioacuten maacutes comuacuten es que el sistema operativo es el uacutenico programa que se ejecuta

en todo momento en la computadora (generalmente llamado kernel) y todo lo demaacutes son

programas de aplicacioacuten

Un sistema operativo se ocupa de la asignacioacuten de recursos y servicios como memoria

procesadores dispositivos e informacioacuten El sistema operativo incluye los programas para

administrar estos recursos como un controlador de traacutefico un programador un moacutedulo de

administracioacuten de memoria programas de E S y un sistema de archivos (Pawar 2016)

47

251 Windows Sistema operativo de la empresa Microsoft es un conjunto de programas

que administra los recursos de una computadora Windows empieza a trabajar cuando se enciende

o inicializa el equipo para gestionar el hardware empezando desde los niveles maacutes baacutesicos

Es importante conocer que los sistemas operativos funcionan tanto en las computadoras

como en diferentes dispositivos electroacutenicos que usan microprocesadores En este caso Windows

su versioacuten estaacutendar funciona con computadoras Microsoft domina el mercado de los sistemas

operativos debido a su comodidad se puede decir que eacuteste sistema operativo se encuentra

instalado en el 887 de los equipos de coacutemputo que cuentan con acceso a Internet en todo el

mundo

Se pueden mencionar algunas aplicaciones principales (que eacutestas tambieacuten pueden ser

desinstaladas por los usuarios o actualizadas sin que el sistema operativo se dantildee o deje de

funcionar) se encuentran el procesador de texto WordPad el navegador Internet Explorer el

reproductor multimedia Windows Media y el editor de imaacutegenes Paint

La principal novedad que aportoacute Windows desde sus oriacutegenes fue la facilidad para usarlo

y el atractivo visual De hecho su nombre (ldquoventanasrdquo) se debe a la forma en que el sistema

presenta a los usuarios los recursos con los que cuenta su computadora lo que facilita las tareas

cotidianas Windows tambieacuten suele recibir varias criacuteticas por sus problemas de seguridad y por

otros fallos

48

252 Registro de Windows El registro es una base de datos jeraacuterquica que contiene datos

que son criacuteticos para el funcionamiento de Windows y las aplicaciones y servicios que se ejecutan

en Windows Los datos estaacuten estructurados en un formato de aacuterbol Cada nodo en el aacuterbol se llama

clave Cada clave puede contener subclaves y entradas de datos llamadas valores A veces la

presencia de una clave es el uacutenico dato que requiere una aplicacioacuten otras veces una aplicacioacuten

abre una clave y usa los valores asociados con la clave (Microsoft Inc 2019) Una clave puede

tener cualquier nuacutemero de valores y los valores pueden tener cualquier forma El registro es

utilizado por

Autenticacioacuten

Nuacutecleo (Kernel)

Controladores de dispositivos

Servicios

SAM

Las carpetas del sistema se almacenaraacuten en distintas rutas de acceso dependiendo de la

versioacuten de Windows con la que se esteacute trabajando a continuacioacuten cuatro de los cinco archivos

que maacutes interesan a esta investigacioacuten se encuentran en la siguiente ubicacioacuten SystemRoot

System32 Config dentro de las siguientes sub llaves

SAM - HKEY LOCAL MACHINE SAM

SECURITY - HKEY LOCAL MACHINE SECURITY

SOFTWARE - HKEY LOCAL MACHINE SOFTWARE

SYSTEM - HKEY LOCAL MACHINE SYSTEM

49

253 Administrador de cuentas de seguridad El administrador de cuentas de seguridad

(SAM por sus siglas en ingleacutes) es una base de datos en donde se encuentran las cuentas de

seguridad Esto es utilizado por Windows para administrar las cuentas de usuario y contrasentildeas en

el formato hash

Las contrasentildeas nunca se almacenan en formato de texto claro Se almacenan en formato

de hash para protegerlas de los ataques La base de datos SAM se implementa como un archivo de

registro y las obtiene del kernel de Windows y mantiene un bloqueo exclusivo al archivo SAM

esto quiere decir que el archivo tiene cierta medida de seguridad para el almacenamiento de las

contrasentildeas (Hernandez 2013)

No es posible copiar el archivo SAM a otra ubicacioacuten en el caso de los ataques en liacutenea

Dado que el archivo SAM estaacute bloqueado con un bloqueo exclusivo al sistema de archivos no

puede ser copiado o movido mientras se ejecuta Windows El bloqueo no iniciaraacute hasta que la

excepcioacuten de la pantalla azul haya sido inicializada o el sistema operativo haya sido apagado Sin

embargo los archivos en formato hash de contrasentildeas fuera de liacutenea estaacuten disponibles para los

ataques de fuerza bruta el contenido del archivo SAM puede ser copiado o descargado utilizando

diversas teacutecnicas

Un identificador de seguridad (SID) es un valor uacutenico de longitud variable utilizado para

identificar a un usuario Cada cuenta tiene un SID uacutenico emitido por una autoridad como un

controlador de dominio de Windows y almacenado en una base de datos de seguridad Cada vez

50

que un usuario inicia sesioacuten el sistema recupera el SID para ese usuario de la base de datos y lo

coloca en el token de acceso para ese usuario El sistema usa el SID en el token de acceso para

identificar al usuario en todas las interacciones posteriores con la seguridad de Windows Cuando

se ha usado un SID como identificador uacutenico para un usuario o grupo no se puede volver a usar

para identificar a otro usuario o grupo

La seguridad de Windows usa SID en los siguientes elementos de seguridad

En descriptores de seguridad para identificar al propietario de un objeto y grupo

primario

En las entradas de control de acceso para identificar al usuario para quien el acceso

estaacute permitido denegado o auditado

En tokens de acceso para identificar al usuario y los grupos a los que pertenece

2531 Identificador de Seguridad (SID Security Identifier)

S - 1 - 5 - 21 - 3983109318 - 554656936 - 3066752241 - 1000

S - indica que es un string de SID

1 - el nivel de revisioacuten

5 - el identificador de valor de autoridad o authority value no siempre seraacute 5 Entre otros

valores que se pueden encontrar estaacuten los siguientes

51

0 - sin autoridad

1 - autoridad global

2 - autoridad local

3 - autoridad de creador

4 - autoridad no uacutenica

5 - autoridad NT

9 - autoridad de administrador de recursos

21 - 3983109318 - 554656936 - 3066752241 - es el dominio en el que se encuentra el

sistema o el identificador local de la computadora

1000 - ID uacutenico para cada cuenta aquiacute se encuentra el RID (Relative Identifier) Nuacutemero

de longitud variable cualquier grupo o usuario que se cree de manera diferente a la predeterminada

recibiraacute un RID de 1000 o superior En el caso de que el valor sea 500 responde a que este SID

representa la cuenta de un administrador el valor de 500 siempre seraacute el mismo en cualquier cuenta

de administrador a su vez el valor 501 representa el SID de una cuenta Invitado (Guest)

(Hernandez 2013)

254 Autenticacioacuten NTML NTLM (NT LAN Manager) es un protocolo empleado por

muchos productos de Microsoft para realizar la autenticacioacuten desafiacuteorespuesta por lo tanto es el

esquema de autenticacioacuten que por defecto usa Firewall de Microsoft y tambieacuten los productos del

servidor proxy

52

Este software fue desarrollado para afrontar el problema del trabajo con Tecnologiacuteas Java

en un entorno orientado a Microsoft Puesto que no se basa en ninguna especificacioacuten oficial de

protocolo por lo tanto no hay garantiacutea de que funciona correctamente en todos los casos Tambieacuten

ha estado en algunas instalaciones de Windows donde funcionoacute con eacutexito

La Autenticacioacuten NTLM se compone de dos protocolos protocolo de autenticacioacuten NTLM

y protocolo de autenticacioacuten LM Estos protocolos utilizan una metodologiacutea de hash diferente para

almacenar contrasentildeas de los usuarios en la base de datos SAM (Hernandez 2013) (Meneacutendez-

Barzanallana 17)

26 LINUX (ROCKS)

Rocks es una distribucioacuten para cluacutester de Linux de coacutedigo abierto que permite a los usuarios

finales construir de manera maacutes amigable cluacutesteres computacionales y muros de visualizacioacuten en

mosaico Cientos de investigadores de todo el mundo han utilizado Rocks para implementar su

propio cluacutester

Desde mayo de 2000 el grupo Rocks ha abordado las dificultades de implementar cluacutesteres

manejables Encaminados hacia un objetivo crear cluacutesters de manera maacutes sencilla Por sencilla

significa faacutecil de implementar administrar actualizar y escalar Este objetivo impulsa a los

creadores de esta herramienta a ayudar a entregar el poder computacional de los cluacutesteres a una

amplia gama de usuarios cientiacuteficos Estaacute claro que poner a disposicioacuten de una amplia gama de

53

cientiacuteficos plataformas de computacioacuten paralelas estables y manejables ayudaraacute enormemente a

mejorar el estado del arte en herramientas paralelas (Rocksclusters 2010)

261 Escritorio De todos los escritorios disponibles para el sistema operativo Linux

GNOME ha logrado convertirse en el maacutes eficiente estable y confiable sin dejar de ser sencillo

de usar De hecho la mayoriacutea de los usuarios independientemente de su experiencia pueden

trabajar con GNOME casi sin esfuerzo

Los usuarios que son nuevos tanto en Linux como en GNOME hariacutean mejor en conocer

los entresijos del escritorio que hacen que Linux no solo sea faacutecil sino tambieacuten divertido

Un entorno de escritorio agrupa programas que trabajan juntos para formar un espacio de

trabajo informaacutetico cohesivo unificado transparente e interactivo para los usuarios O para

decirlo de manera maacutes simple el entorno de escritorio es la interfaz de usuario para el sistema

operativo En el caso de GNOME ese sistema operativo es Linux Sin un entorno de escritorio su

uacutenica alternativa es una sesioacuten de Shell (liacutenea de comandos) basada en texto (Wallen 2019)

262 Paquete de Oficina Una suite ofimaacutetica es una coleccioacuten de software creada por el

mismo proveedor y disentildeada para ser utilizada para tareas rutinarias dentro de una organizacioacuten

Por lo general una suite ofimaacutetica incluye aplicaciones como procesamiento de texto hojas de

caacutelculo presentacioacuten correo electroacutenico toma de notas base de datos colaboracioacuten y otros tipos

de software relacionados En la mayoriacutea de los casos cada aplicacioacuten en la suite ofimaacutetica se puede

instalar por separado y todas las aplicaciones dentro de la suite admiten la interoperabilidad entre

54

siacute Microsoft Office Suite Lotus Live Notes y LibreOffice son todas suites de oficina de uso

comuacuten

263 Organizador de archivos Es una funcioacuten avanzada disentildeada para agrupar y

renombrar archivos usando sus atributos del sistema o meta atributos

Cada archivo tiene atributos del sistema como la fecha (Acceso Creado y Modificado) el

tipo de archivo (definido por extensioacuten) y asociado con la aplicacioacuten registrada de ese tipo de

archivo Estos atributos se pueden usar para generar un nuevo nombre de archivo o carpeta (grupo)

para cada archivo con el mismo atributo Ademaacutes de los atributos del sistema algunos archivos

en su mayoriacutea medios o imaacutegenes pueden contener metacampos como el nombre del artista el

tiacutetulo el nombre del aacutelbum y otros El Organizador de archivos tambieacuten usa estos metacampos

para agrupar archivos en una carpeta con el mismo atributo Por lo tanto el organizador de archivos

opera reglas de organizacioacuten de archivos que definen la jerarquiacutea de agrupacioacuten de carpetas y las

reglas de cambio de nombre de archivos

Asiacute como el conocido ldquoexplorador de Windowsrdquo Linux integra un organizador de archivos

y carpetas llamado NAUTILUS para realizar tareas de manejo de archivos como mover copiar

renombrar crear carpetas y de esta manera administrar nuestros dispositivos de almacenamiento

55

27 Agrupamiento (Cluacutester) de Computadoras

El agrupamiento (cluacutester) de computadoras estaacute conformado por una coleccioacuten de

computadoras autoacutenomas interconectadas trabajando unidas como un solo recurso de computacioacuten

integrado El concepto de agrupamiento de computadoras nacioacute cuando los pioneros de la

supercomputacioacuten intentaban difundir diferentes procesos entre varias computadoras para luego

poder recoger los resultados que dichos procesos debiacutean producir Con un hardware maacutes barato y

faacutecil de conseguir se pudo perfilar que podriacutean conseguirse resultados muy parecidos a los

obtenidos con aquellas maacutequinas mucho maacutes costosas (Chirinov 2003)

Un agrupamiento de computadoras se puede definir como el trabajo realizado por dos o

maacutes computadoras que en conjunto se encargan de proveer una determinada solucioacuten Tiene como

finalidad agrupar el poder de coacutemputo de los nodos implicados para proporcionar una mayor

escalabilidad disponibilidad y fiabilidad (Branch Bedoya amp Mesa Muacutenera 2008)

La escalabilidad es la capacidad de un equipo para hacer frente a voluacutemenes de trabajo

cada vez mayores sin por ello dejar de prestar un nivel de rendimiento aceptable

La disponibilidad y la fiabilidad se encuentran bastante relacionadas aunque difieren

ligeramente en algunos aspectos La disponibilidad es la calidad de estar presente y listo para su

uso mientras que la fiabilidad es la probabilidad de un correcto funcionamiento

56

Entre los tipos de agrupamiento maacutes comunes se pueden encontrar de alta disponibilidad

(ambiente a prueba de fallas) coacutemputo de alto desempentildeo (los procesos o las tareas dadas se

presentan como un solo sistema virtual) y escalamiento horizontal (se utiliza para proporcionar

una sola interfaz a un conjunto de recursos que pueden aumentar o disminuir arbitrariamente su

tamantildeo en un cierto periodo de tiempo) (Gonzaacutelez Ramiacuterez amp Rodriacuteguez Saacutenchez 2008)

271 Beowulf Es una clase de computadora masivamente paralela de altas prestaciones

principalmente construida a base de agrupamiento de componentes hardware estaacutendar (Llorens amp

Pentildea 2002) Consta de un conjunto de nodos minimalistas unidos por un medio de

comunicaciones econoacutemico Esto quiere decir que tienen lo miacutenimo para ejecutar su funcioacuten de

hecho los nodos por siacute solos no son capaces de ejecutar siquiera un sistema operativo (Nievas

Pino amp Arroyo) Se puede ver como una supercomputadora paralela construida con hardware

comercial de faacutecil adquisicioacuten que posee como sistema operativo Linux Los cluacutesters Beowulf son

extremadamente poderosos pero no son para todas las personas Su principal desventaja es que

requieren software disentildeado para poder aprovechar los recursos del cluacutester (Lizaacuterraga 2002)

272 Mosix Seguacuten Peacuterez (2001) la arquitectura Mosix estaacute basada en la misma ideologiacutea

de la arquitectura Beowulf Se basa en un conjunto de parches aplicados al nuacutecleo (kernel) de Linux

y que asignan a todo el grupo de nodos un espacio de direcciones y de procesos comuacuten gracias al

cual los procesos migran de uno a otro con el fin de equilibrar favorablemente la carga del sistema

global Es una herramienta disentildeada para realizar balanceo de carga en el agrupamiento de forma

totalmente transparente de manera tal que los nodos se comportan como una sola maacutequina y asiacute

incrementar el aprovechamiento de cada uno de los nodos (Chaacutevez y otros 1999) La principal

57

ventaja de Mosix frente a Beowulf se basa precisamente en esto Mosix da mejores respuestas que

Beowulf frente a la caiacuteda o insercioacuten de nodos A parte de esto Mosix permite un cambio constante

de aplicacioacuten o incluso el correr aplicaciones independientes de forma simultaacutenea

273 OpenMosix OpenMosix es una extensioacuten del proyecto Mosix Seguacuten Chirinov

(2003) la idea de este modelo es que la distribucioacuten de tareas en el cluacutester la determina OpenMosix

de forma dinaacutemica conforme se van creando tareas Cuando un nodo estaacute demasiado cargado las

tareas que se estaacuten ejecutando pueden migrar a cualquier otro nodo del cluacutester Asiacute desde que se

ejecuta una tarea hasta que eacutesta muere podraacute migrar de un nodo a otro sin que el proceso sufra

mayores cambios

Ademaacutes OpenMosix funciona a nivel de kernel por tanto puede conseguir toda la

informacioacuten que necesite para decidir que tanto estaacute cargado un sistema y queacute pasos se deben

seguir para aumentar el rendimiento ademaacutes puede realizar maacutes funciones que cualquier

aplicacioacuten a nivel de usuario

Despueacutes de elegir el tipo de cluacutester a utilizar se procede a elegir los elementos baacutesicos que

se emplearaacuten para implementar el cluacutester capacidad de procesamiento memoria espacio del disco

de cada nodo asiacute como tambieacuten el ancho de banda de la comunicacioacuten entre los nodos Se deberaacute

decidir cuaacuteles son importantes basaacutendose en la variedad de aplicaciones que se piensen ejecutar

en el cluacutester y de la cantidad de dinero que se disponga para construirlo

58

Bajo estos mismos paraacutemetros se debe escoger tambieacuten el tipo de red que interconectaraacute

los nodos (Turner 2004)

Luego se debe escoger el sistema operativo a utilizar Esta eleccioacuten dependeraacute mucho de

la maacutequina que se escoja Linux es siempre una opcioacuten en cualquier maacutequina y es la eleccioacuten maacutes

comuacuten Muchas de las herramientas necesarias para la implementacioacuten de un cluacutester han sido

desarrolladas bajo Linux Pero existen cluacutesters corriendo bajo Windows NT UNIX Solaris y AIX

59

Capiacutetulo 3 Implementacioacuten de Cluacutester

31 Requisitos previos

Antes de iniciar la instalacioacuten del FrontEnd es necesario asegurarse que las conexiones de

red de los equipos junto con la configuracioacuten de la BIOS de cada uno sean las correctas

311 Conexioacuten de los equipos y acceso a la red

Un cluacutester de alto desempentildeo funciona como un uacutenico equipo el cuaacutel comparte los recursos

de los nodos esclavos con el nodo maestro para ello es esencial la existencia de una red interna de

alta velocidad por medio de la cual se realice la comunicacioacuten entre el nodo maestro y los nodos

esclavos como se muestra en la Figura 31 El nodo maestro necesitaraacute 2 tarjetas de red de alta

Figura 31 Esquema tiacutepico de configuracioacuten de un cluacutester (Fuente Elaboracioacuten propia)

60

velocidad una para la comunicacioacuten interna y otra para la comunicacioacuten con redes externas El

sistema operativo Rocks asigna automaacuteticamente la interface ldquoeth0rdquo a la red interna del cluacutester y

la interface ldquoeth1rdquo a la red externa En caso de que Rocks sea incapaz de determinar cuaacutel es la red

externa debido a la falta de conexioacuten a internet estas podriacutean ser asignadas de manera incorrecta

por tal motivo se sugiere asegurar el nombre de cada una de las interfaces

Dado que Rocks no permite volverlas a asignar una vez finalizada la instalacioacuten es

necesario volver a reinstalarlo para poder solucionar este inconveniente

312 Configuracioacuten de la BIOS Para evitar problemas durante la instalacioacuten conviene

configurar correctamente la Bios

3121 ATAIDE Mode Algunos sistemas operativos puede que no sean capaces de

reconocer el controlador del disco duro como es en el caso de esta distribucioacuten de Rocks usada

Para evitar complicaciones de tener que antildeadir el controlador a mano lo mejor es habilitar el modo

ldquoLegacyrdquo de controlador de disco duro

61

Para ello se accede a la Bios pulsando F2 al encender el equipo se situacutea en la pestantildea

ldquoAdvancedrdquo y se selecciona ldquoDrive Configurationrdquo como se muestra en la Figura 32

Figura 32 Imagen del Bios del equipo en la opcioacuten ldquodrive configurationrdquo (Fuente Elaboracioacuten propia)

Figura 33 Bios ATAIDE Legacy Mode (Fuente Elaboracioacuten propia)

62

Dentro del menuacute se tiene que seleccionar el Modo ldquoLegacyrdquo en la opcioacuten ldquoATAIDE

Moderdquo como se muestra en la Figura 33 y para salir se guardan los cambios con F10

3122 PXE Al momento de instalar un nodo puede ocurrir falla al arrancar y aparecer

bootsplash (Reboot and Select proper device) Para evitarlo es necesario habilitar la opcioacuten de

PXE para que tome los archivos de instalacioacuten del nodo maestro a traveacutes de la red interna

En la Bios se selecciona la pestantildea ldquoBootrdquo y dentro de ese mismo menuacute se deshabilita

ldquoSilent bootrdquo y se habilita la opcioacuten de ldquoPXE boot to lanrdquo como se muestra en la Figura 34

Finalmente hay que verificar que en la secuencia de arranque (Figura 35) como primer

dispositivo sea desde red para que de esta manera inicie desde el PXE

Figura 34 Bios Boot PXE (Fuente Elaboracioacuten propia)

63

Se guardan los cambios antes de salir

32 Instalacioacuten de Sistema Operativo Rocks

Una vez configurados los equipos se enciende el equipo que seraacute el nodo maestro

(FrontEnd) en el cuaacutel previamente se ha modificado la secuencia de inicio del boot desde la Bios

de modo que al insertar el CD de Rocks eacuteste procederaacute a iniciar la instalacioacuten con la siguiente

pantalla que se muestra a continuacioacuten

Figura 35 Bios Boot device prioriry (Fuente Elaboracioacuten propia)

64

Para iniciar la instalacioacuten uacutenicamente se selecciona la opcioacuten ldquoInstall CentOS 7rdquo como se

muestra en la Figura 36 dando asiacute comienzo al proceso de instalacioacuten Tras finalizar un proceso

de carga en memoria Rocks mostraraacute un formulario en entorno graacutefico mediante el cual

procederemos a configurar el FrontEnd

Esta primera pantalla se muestra coacutemo se desea realizar la instalacioacuten puede realizarse

por medio de la descarga del sistema operativo (se requiere internet) En este caso como se muestra

en la Figura 37 dado que previamente se descargoacute el DVD completo se seleccionoacute ldquoCDDVD

based rollsrdquo

Figura 36 Pantalla de Inicio de instalacioacuten de Rocks (Fuente Elaboracioacuten propia)

65

A continuacioacuten Figura 38 se selecciona de la lista de Rolls aquellos que se desean instalar

Figura 37 Pantalla de seleccioacuten de Rolls (Fuente Elaboracioacuten propia)

Figura 38 Listado de opciones de rolls para instalar (Fuente Elaboracioacuten propia)

66

Tras presionar el botoacuten ldquoSubmitrdquo la siguiente pantalla (Figura 39) muestra formulario en

el que hay que indicar la informacioacuten baacutesica del cluacutester entre las cuales aparecen

Fully-Qualified Host Name Nombre con el que se conoceraacute en la red externa el cluacutester

Cluster Name Nombre utilizado para ser identificado dentro de las herramientas del cluacutester

Certificate Organization Locality State and Country Organizacioacuten a la que pertenece el

cluacutester la localidad el estado y la ciudad

Contact URL and LattitudeLongitude Contacto direccioacuten web y posicioacuten GPS

Figura 39 Informacioacuten baacutesica del cluacutester a instalar (Fuente Elaboracioacuten propia)

67

Una vez que se ingresa la informacioacuten al cluacutester se presiona el botoacuten ldquoListordquo y

posteriormente se podraacute cambiar la configuracioacuten baacutesica de la red interna del cluacutester En este caso

Figura 310 se dejoacute el valor por defecto una IP de clase B (1011116)

El siguiente paso es la configuracioacuten de la red externa (para tener acceso a internet) En

este punto se introducen los datos de la red externa a la que se encuentra conectado el nodo

maestro como se muestra en la Figura 311

Figura 310 Configuracioacuten Ethernet de la red privada (Fuente Elaboracioacuten propia)

Figura 311 Configuracioacuten Ethernet de la red puacuteblica (Fuente Elaboracioacuten propia)

68

Para terminar de configurar la red externa como se muestra en la Figura 312 se ingresa la

direccioacuten IP del Gateway y los DNS (Servidor de nombre de dominio) que va a usar para el acceso

a internet

Se continuacutea con el resto del formulario donde se introduce la contrasentildea para el usuario

root tal y como se muestran en la Figura 313

Figura 312 Configuracioacuten de DNS y Gateway (Fuente Elaboracioacuten propia)

Figura 313 Ingresar contrasentildea de usuario root (Fuente Elaboracioacuten propia)

69

Paso siguiente se procede a seleccionar la zona horaria como se muestra en la Figura 314

donde se encuentra ubicado el cluacutester asiacute como un servidor de donde podraacute obtener la zona horaria

automaacuteticamente en este caso se dejoacute el valor por default

En el formulario de la Figura 315 se selecciona la forma de particionar el disco duro

(automaacutetica manual) una vez seleccionado daraacute comienzo al proceso de instalacioacuten de manera

Figura 314 Configuracioacuten horaria (Fuente Elaboracioacuten propia)

Figura 315 Particiones del disco duro (Fuente Elaboracioacuten propia)

70

desatendida Cuando ha concluido la instalacioacuten el equipo se reiniciaraacute y se requeriraacute iniciar con

el usuario root y la contrasentildea establecida previamente

321 Configuracioacuten del teclado Debido a que el teclado por defecto estaacute en idioma

ingleacutes podriacutea provocar problemas al momento de escribir la contrasentildea u otros comandos

Seguacuten las pruebas realizadas aunque se cambie la configuracioacuten del teclado desde el menuacute

de preferencias uacutenicamente se mantiene dentro de la sesioacuten desde la que se ha cambiado dicha

opcioacuten (lo cual implica que la contrasentildea de usuario hay que introducirla seguacuten la distribucioacuten

inglesa)

33 Instalacioacuten de los nodos

Previo a la instalacioacuten de los nodos esclavos cada uno de los equipos fueron configurados

desde la Bios para que arranquen desde la red (seccioacuten 3122) Para ir antildeadiendo los nodos solo

se tiene que introducir el siguiente comando desde nuestro FrontEnd

$insert-ethers

A continuacioacuten como se muestra en la Figura 316 apareceraacute una ventana en la pantalla

en la cual se seleccionaraacute la opcioacuten ldquoComputerdquo

71

Una vez realizado este paso se procede a encender los equipos que funcionaraacuten como

nodos esclavos uno a uno

Se sugiere esperar a que cada nuevo equipo encendido esteacute marcado con un asterisco antes

de proceder a encender el siguiente como se muestra en la Figura 317 De esta manera se asegura

que cada nuevo nodo antildeadido posea el nombre y numeracioacuten deseada

Figura 316 Pantalla para ingresar nodos (Fuente Elaboracioacuten propia)

Figura 317 Indicador de insercioacuten de nuevos nodos (Fuente Elaboracioacuten propia)

72

Puede darse el caso de que un nodo no sea detectado automaacuteticamente eso indica que se

ha omitido alguacuten paso o parte de la configuracioacuten realizada hasta el momento es incorrecta En ese

caso comprobar lo siguiente

Que el nodo esclavo este correctamente conectado a la red interna

Que el FrontEnd (nodo maestro) tenga correctamente configurada la red interna y externa

Que el PXE esteacute habilitado en la Bios del nodo esclavo

331 Administracioacuten de nodos Algunos de los comandos maacutes uacutetiles para para la gestioacuten

de los nodos son los siguientes

Eliminar un nodo de la lista

Reinstalar un nodo

Listar los nodos ya instalados

Acceder a un nodo

$rocks remove host nombre_nodo

$rocks remove host nombre_nodo

$rocks set host boot nombre_nodo action=install

$rocks set host boot nombre_nodo action=install

$rocks list host

$rocks list host

$ssh nombre_nodo

$ssh nombre_nodo

73

Ejecutar un comando de manera remota a un nodo

332 Creacioacuten de cuentas de usuario Para agregar a un usuario hay que realizar los

siguientes pasos

1 Creacioacuten de la cuenta

$useradd nombre_usuario

2 Asignacioacuten de una contrasentildea

$passwd nombre_usuario

3 Sincronizacioacuten de la cuenta de usuario con el resto de nodos

$rocks-user-sync

333 Configuracioacuten del directorio compartido El directorio share es compartido por el

FrontEnd y el resto de nodos se localiza dentro del FrontEnd en la carpeta exports siendo la

carpeta share un enlace simboacutelico a esta uacuteltima

Al principio es posible que no se sincronicen correctamente los archivos introducidos en el

directorio debido a que la carpeta inicialmente estaacute vaciacutea por lo que para solucionar este

inconveniente puede usarse el comando siguiente para reiniciar dicho servicio

$ssh nombre_nodo lsquocomandorsquo

$ssh nombre_nodo lsquocomandorsquo

$cd

$export fs ndashrv

service nfs restart

$cd

$export fs ndashrv

service nfs restart

74

34 Operaciones baacutesicas de Rocks

Comandos y aplicaciones esenciales para el manejo del cluacutester

Ver que rolls estaacuten instalados

$rocks list roll

Visualizar el estado del sistema Figura 318

$qstat ndashf

Probar el sistema de colas para distribuir tareas a los nodos

Para ello se prueba que el SGE del cluacutester funcione enviaacutendole una serie de trabajos

mediante el comando qsub

En primer lugar se crea un fichero (pruebapl) que tenga permisos de ejecucioacuten con el

siguiente contenido

Figura 318 Comando qstat ndashf (Fuente Elaboracioacuten propia)

75

usrbinperl

for(my $i=0$ilt30$i++) sleep(2) print okn

Y se ejecuta con el siguiente comando

$ for ((i=1ilt=10i+=1)) do qsub pruebapl done

Al ejecutarse se puede comprobar que los trabajos se han mandado Figura 319

Y al realizar de nuevo un ldquoqstat ndashfrdquo Figura 320 se observa coacutemo se van realizando

Figura 319 Enviacuteo de trabajos por medio del comando qsub (Fuente Elaboracioacuten propia)

Figura 320 Estado de los trabajos pendientes mostrados por qstat ndashf (Fuente Elaboracioacuten propia)

76

Para ver la carga de trabajo en el cluacutester de manera global y de forma graacutefica se tiene que

ingresar en un navegador web en la siguiente direccioacuten httplocalhostganglia apareceraacute la

Figura 321

Figura 321 Visualizacioacuten de la distribucioacuten de cargas en el cluacutester usando la herramienta Ganglia (Fuente Elaboracioacuten propia)

77

Capiacutetulo 4 Metodologiacutea y Resultados

Una vez finalizada la instalacioacuten y puesta en operacioacuten del equipo se analizaron diferentes

metodologiacuteas de trabajo lo que implicoacute un trabajo arduo debido a que existen complicaciones

cuando se buscan temas relacionados a vulnerar sistemas operativos La realizacioacuten de este

proyecto estaacute basado en la metodologiacutea de Joshua Picolet ldquoCracking Methodologyrdquo (Picolet

2017)

41 Obtener Archivo hash

Se pueden vulnerar contrasentildeas de Windows de diferentes maneras Una de ellas es

mediante el acceso al archivo del Administrador de cuentas de seguridad (SAM) el cual se detalla

en el apartado 253 a traveacutes de la obtencioacuten de las contrasentildeas del sistema en su forma hash por

medio de herramientas diferentes Alternativamente las contrasentildeas se pueden leer desde la

memoria lo que tiene el beneficio adicional de recuperar las contrasentildeas en texto plano y evitar el

requisito de descifrado Para comprender los formatos que se observan cuando se descarguen

hashes del sistema de Windows se requiere una breve descripcioacuten de los diferentes formatos de

almacenamiento

Originalmente las contrasentildeas de Windows de menos de 15 caracteres se almacenaban en

el formato hash de Lan Manager (LM) Algunos sistemas operativos como Windows 2000 XP y

Server 2003 continuacutean usando estos hashes a menos que esteacuten deshabilitados por el usuario

Ocasionalmente un sistema operativo como Windows Vista puede almacenar el hash LM para la

compatibilidad con otros sistemas Seguacuten analistas incluye varias vulnerabilidades como dividir

78

la contrasentildea en dos bloques y permitir que cada uno se descifre de forma independiente Mediante

el uso de tablas Rainbow es trivial descifrar una contrasentildea almacenada en un hash LM

independientemente de la complejidad Este hash se almacena con la misma contrasentildea calculada

en el formato de hash NT como el que se muestra en el siguiente ejemplo

Ejemplo de un hash NTLM con el componente LM y NT

Administrator500611D6F6E763B902934544489FCC9192BB71ED1E7F2B60ED5A2

EDD28379D45C91

Los sistemas operativos Windows maacutes recientes como el Windows 8 y 10 usan el hash NT

En teacuterminos simples no hay una debilidad significativa en este hash que lo diferencie de cualquier

otra funcioacuten hash criptograacutefica Se requieren meacutetodos de descifrado como lo es la fuerza bruta o

ataque de diccionario para recuperar la contrasentildea si uacutenicamente se almacena en el formato NT

Ejemplo de un hash NTLM uacutenicamente con el componente NT (como se ve en los sistemas

Windows mas recientes

Administrator500NOPASSWORDEC054D40119570A4663

4350291AF0F72

Es importante sentildealar que la cadena NO PASSWORD es variable seguacuten la herramienta

que se utilice Otras pueden presentar esta informacioacuten como ceros rellenos o comuacutenmente puede

79

ver la cadena ldquoAAD3B435B51404EEAAD3B435B51404EErdquo en lugar de ninguna contrasentildea

Esto significa que el hash LM estaacute vaciacuteo y no estaacute almacenado

El archivo hash se encuentran en el directorio ldquoWindows System32 configrdquo y se

necesitan ambos archivos SAM y SYSTEM Ademaacutes tambieacuten se encuentran en el archivo de

registro HKEY_LOCAL_MACHINE SAM al que no se puede acceder durante el tiempo de

ejecucioacuten Finalmente las copias de seguridad se pueden encontrar a menudo en ldquoWindows

Repairrdquo (Peleus 2019)

Para extraer el archivo hash de un sistema operativo con un nivel de seguridad C1 existen

diferentes meacutetodos en esta ocasioacuten se procederaacute a iniciar el equipo objetivo con una distribucioacuten

de Linux desde una memoria USB como se muestra en la figura 41 para de esta manera ingresar

al directorio CWINDOWSSystem32Config directorio de ubicacioacuten de los archivos SAM y

SYSTEM que son los necesarios para obtener el archivo hash (Caballero 2018)

Figura 41 Arranque con LiveUSB KaliLinux (Fuente Elaboracioacuten propia)

80

42 Dar Formato al Hash

En este punto es donde se tiene que identificar el algoritmo con el que fueron encriptados

los archivos SAM y SYSTEM que se han obtenido en el punto anterior con la finalidad de

seleccionar el tratamiento que se les daraacute El algoritmo de encriptacioacuten del archivo SAM de

Windows 10 es NTLM y ademaacutes estaacute almacenado en un formato binario (ByteBleeder 2017) por

lo que fue necesario instalar la herramienta con licencia GNU samdump2 para obtener la syskey y

de esta manera poder extraer los hash desde el archivo SAM de Windows

En la figura 42 se han obtenido los hashes del archivo SAM donde se puede observar que

los usuarios Administrador e Invitado estaacuten deshabilitados ademaacutes de que existen tres cuentas de

usuario activas las cuales son Gad prueba y usuarioprueba cada una con su contrasentildea cifrada

en formato NTLM a la derecha del nombre de usuario la cuenta usuarioprueba fue a la que se le

realizoacute el anaacutelisis que se detalla posteriormente

43 Evaluar la fuerza del Hash

En criptografiacutea se dice que un algoritmo criptograacutefico se rompe si por alguacuten meacutetodo se

consigue reducir su fortaleza es decir reducir por ejemplo su entropiacutea de los 2256 bits teoacutericos a

Figura 42 Resultado de la ejecucioacuten de la herramienta samdump2 (Fuente Elaboracioacuten propia)

81

tan soacutelo 2255 por ejemplo El hecho de que se encuentre una colisioacuten no implica necesariamente

que un algoritmo se haya roto pues podriacutea haber sido realizado mediante fuerza bruta pero puede

ser una causa

Un ataque de colisioacuten significa que encuentro dos entradas diferentes que producen el

mismo resultado de un hash particular Este es generalmente el tipo de ataque maacutes faacutecil Es el tipo

de ataque que se conoce desde hace varios antildeos contra MD5

Dado que una utilidad importante de las funciones hash estaacute en las firmas digitales

encontrar colisiones puede facilitar falsificar firmas digitales Es decir dos mensajes distintos que

tengan un mismo resumen tienen ademaacutes la misma firma y un atacante puede reemplazar un

mensaje por el otro Un ejemplo de este ataque fue demostrado en 2008 por un grupo de

investigadores en Aacutemsterdam los cuales falsificaron un certificado raiacutez mediante el uso de un

ataque de colisioacuten contra el algoritmo MD5 (Preukschat 2015)

Un ataque previo a la imagen generalmente es mucho maacutes difiacutecil es encontrar otra entrada

que produzca el mismo resultado que un hash que ya se conoce

Para tratar de aclarar la diferencia aquiacute en un ataque de colisioacuten encuentro dos entradas A

y B que producen el mismo resultado En un ataque de preimagen comienzo a partir de alguacuten

resultado conocido X y encuentro una entrada que produciraacute X como resultado (Coffin 2015)

82

Para realizar esta evaluacioacuten se tomoacute como base la tabla del apeacutendice Hash craking

benchmark (Picolet 2017) el objetivo es observar el comportamiento y velocidad del Hash

mencionado cuando fue sometido a pruebas de criptoanaacutelisis Si se trata de un Hash lento se deberaacute

ser maacutes selectivo en queacute tipos de diccionarios y meacutetodos de criptoanaacutelisis se le debe aplicar Si es

un Hash raacutepido se puede ser maacutes libre con la estrategia de criptoanaacutelisis Este estudio busca

realizar una prueba de criptoanaacutelisis mostrando las diferencias entre el poder de procesamiento de

un cluacutester de 17 nodos contra una computadora personal por lo que no necesariamente se

implementaraacute el meacutetodo oacuteptimo para la realizacioacuten del criptoanaacutelisis

44 Calcular la capacidad del equipo

Con la informacioacuten de la evaluacioacuten de la fuerza del Hash obtenida en el apartado anterior en

este apartado se tiene que establecer la capacidad de la plataforma o plataformas que realizaraacuten

el criptoanaacutelisis

Para conocer la capacidad de procesamiento del cluacutester de alto rendimiento se utilizoacute la

herramienta Linpack Benchmark HPL es una implementacioacuten portaacutetil del Benchmark de alto

rendimiento LINPACK para equipos de coacutemputo distribuido Actualmente se utiliza para obtener

varios resultados en la lista actual de Top500 de HP cluacutesters (Dongarra 2010)

El Linpack Benchmark (HPL del Ingleacutes High-Performance Linpack Bench-mark) es un

software que resuelve un sistema lineal aleatorio de doble precisioacuten aritmeacutetica (64 bits) en equipos

de memoria distribuida El rendimiento muestra el nuacutemero de operaciones de punto flotante por

segundo logradas por el sistema (Petitet Whaley Dongarra amp Cleary 2008)

83

El HPL fue desarrollado en el Argone National Laboratory por Jack Don-garra en 1976 y

es uno de los maacutes usados en sistemas cientiacuteficos y de ingenieriacutea para el caacutelculo de prestaciones

Las principales caracteriacutesticas del algoritmo utilizado por el HPL son

Distribucioacuten ciacuteclica de datos de bloques de dos dimensiones

Variante derecha de la factorizacioacuten LU con pivoteo parcial (Teacutecnica de pivoteo

Dicta que el elemento pivote que debe escogerse es el mayor absolutamente de cada

columna)

Factorizacioacuten recursiva con pivoteo y reenviacuteo de columna

Distintas topologiacuteas virtuales de reenviacuteos

Algoritmo de reduccioacuten de reenviacuteo para ancho de banda (Castelloacute Gimeno 2014)

La resolucioacuten del sistema de ecuaciones se realiza del siguiente modo

1 Se crea un sistema de ecuaciones

(1)

119860119909 = 119887

(2)

119860 isin 119877119899119909119899

(3)

119909 119887 isin 119877119899

84

HPL calcula que la solucioacuten para un sistema de ecuaciones lineales se puede generalizar

como 119860119909 = 119887 donde 119860 es una matriz 119873 119909 119873 cuyos valores se generan aleatoriamente

119909 119910 119887 son vectores de tamantildeo 119873 Como se muestra en la Figura 43

2 Primero se calcula la factorizacioacuten 119871119880 con pivoteo parcial de los coeficientes 119899 y 119899 + 1

de la matriz [119860 119887]

(4)

119875119903[119860 119887] = [[119871119880] 119910]

(5)

119875119903 119871 119880 isin 119877119899119909119899

(6)

119910 isin 119877119899

El primer paso es la factorizacioacuten de la matriz 119860 en una matriz triangular superior 119880

y una matriz triangular inferior 119871 tal que 119860 = 119871119880 La factorizacioacuten se usa para calcular

el vector solucioacuten 119909

3 Una vez el pivoteo (representado por la permutacioacuten de la matriz 119875119903) y la factorizacioacuten

inferior se aplican sobre 119887 la solucioacuten se obtiene en un paso resolviendo el sistema

superior triangular

Figura 43 Sistema de Ecuaciones tipo 119860119909 = 119887 (Fuente Elaboracioacuten propia)

85

(7)

119880119909 = 119910

La matriz triangular inferior izquierda y el conjunto de pivotes no se devuelven en el

resultado Para la estabilidad numeacuterica el algoritmo de factorizacioacuten utiliza un pivote parcial de

fila

La implementacioacuten paralela de Linpack divide la matriz 119860 119873 119909 119873 en una cuadriacutecula de

procesos 119875 119909 119876 bidimensional y luego la divide en subgrupos de mosaicos 119873119861 119909 119873119861 (Petitet

Whaley Dongarra amp Cleary 2008)

Utilizando la herramienta HPL en esta investigacioacuten se obtuvieron los siguientes

resultados

La prueba abordoacute el ajuste de 119873 y la eficiencia obtenida en comparacioacuten con el rendimiento

maacuteximo Se determinoacute un valor para 119873 = 800000 aleatoriamente para ejecutar HPL en todo el

cluacutester Sin embargo el tiempo fue excesivo por lo tanto se determinoacute que este tamantildeo del

problema fue demasiado grande para el cluacutester Al realizar otros experimentos con valores maacutes

pequentildeos de 119873 se obtuvieron mejores resultados de rendimiento La Tabla 41 muestra el

rendimiento de HPL en GFlops para 119873 = 300000 400000 y 500000 Como se puede observar

en la Tabla 41 se obtuvo el mejor resultado de rendimiento 850 GFlops para 119873 = 500000 para

valores mayores de 119873 la distribucioacuten de cargas del cluacutester empieza a sobrepasar su capacidad como

se muestra en la Figura 44 y la vez su rendimiento disminuye Esto ocurre porque la cantidad de

memoria utilizada con las memorias intermedias de comunicacioacuten MPI es mayor de lo esperado

Por lo tanto es necesario dejar maacutes del 20 de la memoria para el sistema (Petitet Whaley

86

Dongarra amp Cleary 2008) Tambieacuten se realizaron pruebas usando solo un nodo de coacutemputo y el

rendimiento fue de 34 GFlops para 119873 = 20000

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia)

Analizando la eficiencia obtenida para la ejecucioacuten de un solo nodo cuando 119873 = 20000

se obtuvo el 823 del rendimiento maacuteximo (el rendimiento maacuteximo para un solo nodo es 477

Gflops) Para todo el cluacutester el rendimiento maacuteximo seriacutea 119879119898119886119909 = 477 119909 17 =

8109 119866119891119897119900119901119904 aproximadamente

Figura 44 Distribucioacuten de cargas del cluacutester

0

500

1000

300000 400000 500000

Gflops

Gflops

87

La Figura 44 titulada ldquoDistribucioacuten de cargas del cluacutesterrdquo muestra la imagen de la

herramienta Ganglia de manera graacutefica a traveacutes de cuadros que variacutean de color dependiendo de la

carga que tenga cada uno de los nodos al momento de implementar la herramienta HPL De manera

inicial indica que el cluacutester tiene un total de 17 equipos de 4 cores cada uno eso da un total de 68

cores trabajando sin equipos inactivos Muestra tambieacuten una sobrecarga en el cluacutester y un

porcentaje promedio de 100 de uso en la uacuteltima hora

45 Establecer Estrategia

Esto significa uacutenicamente que en este apartado se realizaraacute una guiacutea baacutesica para procesar

los hashes obtenidos sin perder de vista que cada escenario a criptoanalizar es uacutenico en funcioacuten

de las circunstancias externas Como ya se ha mencionado anteriormente esta estrategia de

criptoanaacutelisis se ha planteado implementar dos meacutetodos los cuales son Fuerza Bruta y ataque de

diccionario sin importar si son o no los oacuteptimos debido a que se realizaraacute una comparativa de

capacidad de procesamiento

451 Fuerza Bruta Una vez que se han intentado varios meacutetodos y han fallado se puede

iniciar un ataque de fuerza bruta estaacutendar poniendo especial atencioacuten en la cantidad de siacutembolos

del alfabeto que puede usar el equipo a analizar Por encima de 8 caracteres esto generalmente no

tiene sentido debido a limitaciones de hardware y entropiacutea (complejidad de la contrasentildea) Una

contrasentildea de Windows seguacuten Microsoft (Microsoft Inc 2019) una contrasentildea de Windows debe

estaacute formada por

88

26 Caracteres mayuacutesculas de la ldquoArdquo a la ldquoZrdquo

26 Caracteres minuacutesculas de la ldquoardquo a la ldquozrdquo

10 Diacutegitos de base 10 (0 a 9)

32 Caracteres especiales (~$^amp_-+=|()[]ltgt)

94 Caracteres alfanumeacutericos en total

4511 Cantidad de combinaciones posibles Si se usa una clave numeacuterica (nuacutemeros del 0

al 9) existen 10 posibilidades de 4 diacutegitos de longitud que es la extensioacuten por defecto de los

teleacutefonos celulares Para 4 diacutegitos las combinaciones posibles seriacutean 10 mil 104 = 10000

(Labaca Castro 2014)

Por otro lado si tomamos un alfabeto de 26 letras mayuacutesculas y 26 minuacutesculas 10 nuacutemeros

y 10 caracteres especiales en total tenemos 72 diferentes posibilidades para un uacutenico caraacutecter Eso

significa que las combinaciones para una contrasentildea de 4 caracteres seriacutean 724 = 26873856

Baacutesicamente maacutes de 26 millones de combinaciones en una clave de 4 caracteres contra 10 mil en

una clave de 4 diacutegitos numeacutericos En este estudio se utiliza la contrasentildea de bloqueo descrita en el

apartado anterior que es de 94 combinaciones para cada caraacutecter teniendo una longitud de 7

caracteres por lo tanto seraacuten 947 = 64847759000000 de posibles combinaciones que

nuestros equipos deben explorar para obtener la contrasentildea correcta

Como se mencionoacute en el apartado 42 el usuario sobre el cual se realizoacute el criptoanaacutelisis

fue usuarioprueba el cual constaba de una contrasentildea de longitud 7 caracteres la cual despueacutes

de realizado el anaacutelisis y como se puede observar en la Figura 45

89

1 Anaacutelisis a usuario usuarioprueba

2 Nuacutemero de nodos en operacioacuten 17

3 Nuacutemero de procesos ejecutaacutendose de forma paralela 68

4 Tiempo de duracioacuten del anaacutelisis en el cluacutester 122727 horas

5 Contrasentildea criptoanalizada Pass7

Asiacute mismo en la Tabla 42 se muestra el resultado final y el tiempo de duracioacuten del

criptoanaacutelisis realizado al archivo SAM con el cluacutester y la computadora personal

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Horas)

1 (PC) 4 1075316

17 (Cluacutester) 68 122727

1

2

3

4 5

Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester (Fuente Elaboracioacuten propia)

90

452 Diccionario Meacutetodo empleado para romper la seguridad de los sistemas basados en

contrasentildeas (password) en la que el atacante intenta dar con la clave adecuada probando todas (o

casi todas) las palabras posibles ingresadas previamente en un diccionario idiomaacutetico

Generalmente se emplean programas especiales que se encargan de ello

Este meacutetodo suele ser maacutes eficiente que el meacutetodo de fuerza bruta debido a que muchas

usuarios casi siempre suelen utilizar contrasentildeas con una o varias palabras existentes en su lengua

para que la contrasentildea no sea olvidada faacutecilmente y sea sencilla de recordar esto no es una praacutectica

recomendable (Alegsa 2018)

Para realizar este meacutetodo se utilizoacute un diccionario descargado de internet el cual contiene

10000000 de posibles contrasentildeas (g0tmi1k 2018)

Ademaacutes se ejecutoacute un programa creado en lenguaje C (Anexo 1) a traveacutes de la

implementacioacuten de las libreriacuteas MPI y open MPI propias de la arquitectura de cluacutester de

computadoras Este programa fue ejecutado en los mismos equipos descritos anteriormente para

obtener todos los nuacutemeros primos encontrados dentro de un intervalo dado En este caso el

intervalo dado fue de 10000000 con los siguientes resultados mostrados en la Tabla 43

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos (Fuente Elaboracioacuten

propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Segs)

1 (PC) 4 5078

17 (Cluacutester) 68 00013

91

453 Analizar los resultados Posterior a realizar el criptoanaacutelisis y descifrar con eacutexito

una cantidad suficiente de hashes se analizan los resultados en busca de pistas o patrones Este

anaacutelisis puede ayudar a tener eacutexito en cualquier hash restante

454 Personalizar ataques Tomando como base el anaacutelisis de resultados realizado

previamente se disentildearaacuten diversas estrategias personalizadas que aprovechen las vulnerabilidades

conocidas o patrones Los ejemplos seriacutean ataques de maacutescara personalizados o reglas para

adaptarse al comportamiento o las preferencias del usuario objetivo

92

Conclusioacuten

El trabajo de investigacioacuten presentado parte de la necesidad de buscar alternativas para

explotar al maacuteximo la capacidad de procesamiento del equipo de coacutemputo que existe actualmente

dentro del inventario del Instituto Tecnoloacutegico de Acapulco asiacute como proveer una plataforma que

coadyuve a la investigacioacuten dentro del Instituto a traveacutes de implementar un cluacutester de coacutemputo

con capacidad para realizar proyectos en el aacuterea de ingenieriacutea y matemaacuteticas con el fin de optimizar

el tiempo de ejecucioacuten lo cual en un futuro se veraacute reflejado en ventajas para el desarrollo de la

regioacuten

La revisioacuten y anaacutelisis de informacioacuten en relacioacuten a cluacutesters es muy interesante pero a la

vez es compleja dado que involucra diferentes aspectos durante su evolucioacuten asiacute como diversas

metodologiacuteas para su formacioacuten e implementacioacuten Se considera de suma importancia para este

trabajo las revisiones efectuadas ya que son la base para la propuesta entregada

De acuerdo a las especificaciones teacutecnicas de los equipos informaacuteticos existentes dentro

del laboratorio de la Maestriacutea en Sistemas Computacionales y una vez que se realizoacute el anaacutelisis

de varios casos de eacutexito se propuso la metodologiacutea para implementacioacuten de un cluacutester homogeacuteneo

tipo Beowolf Este meacutetodo estaacute basado en otros que ya se han implementado bajo realidades

acadeacutemicas similares rescatando las etapas maacutes importantes de cada uno y complementaacutendolo con

los aportes personales se consideroacute que fue el oacuteptimo debido a que se implementoacute con hardware

convencional y herramientas de uso libre

93

El hecho de haber seleccionado un meacutetodo adecuado permitioacute superar gran parte los

problemas que presentaban las metodologiacuteas que fueron analizadas simplificoacute la implementacioacuten

del cluacutester y permitioacute el poder alcanzar una mayor estabilidad en su desempentildeo desde su etapa

inicial fue importante conocer el resultado en cada una de las etapas de implementacioacuten para

asegurar su desenvolvimiento en el futuro

Para integrar los equipos independientes a la arquitectura cluacutester se realizoacute el disentildeo de

una topologiacutea de red Gigabit Ethernet tipo estrella con un direccionamiento IP estaacutetico la

configuracioacuten de protocolos de comunicacioacuten remota sin autenticacioacuten la comparticioacuten de

archivos en red y la utilizacioacuten de aplicaciones de licencia GPL que permiten obtener el

funcionamiento similar a la de una supercomputadora

Haciendo uso de libreriacuteas de paso de mensajes (MPI) y el software John the Ripper para el

descifrado de contrasentildeas la arquitectura cluacutester implementada alcanzoacute una eficiencia de 885

de rendimiento en comparacioacuten con los recursos computacionales de un solo equipo con las

caracteriacutesticas de un nodo Ademaacutes otros de los proyectos ejecutados en la arquitectura cluacutester

para probar el rendimiento fue la ejecucioacuten de un programa para la deteccioacuten de nuacutemeros primos

dentro de un archivo de 10000000 de nuacutemeros obteniendo una eficiencia de maacutes de 99 gracias

a la distribucioacuten de tareas que proporcionan las libreriacuteas de paso de mensajes (MPI) dentro de la

arquitectura cluacutester

Con la implementacioacuten de la arquitectura cluacutester el laboratorio de la Maestriacutea en Sistemas

Computacionales podraacute dar soluciones potentes eficientes y econoacutemicas en los entornos de

94

investigacioacuten mejorando la capacidad de procesamiento en aplicaciones como evaluacioacuten de

algoritmos compresioacuten de archivos renderizacioacuten de imaacutegenes anaacutelisis de datos (big data) en un

tiempo relativamente bajo ideal para las necesidades educativas

La experiencia obtenida al realizar esta investigacioacuten y propuesta ha sido enriquecedora

tanto por la obtencioacuten de conocimiento en base a la historia evolucioacuten y arquitectura de cluacutesters

asiacute como la programacioacuten paralela y sus ventajas en diferentes proyectos desarrollados en todo el

mundo Igualmente la comparacioacuten entre cada uno de los modelos y meacutetodos resulta interesante

dado que existe un sinnuacutemero de ejemplos con caracteriacutesticas diferentes pero baacutesicamente con un

mismo objetivo final

Trabajo Futuro

El cluacutester implementado en el Laboratorio de la Maestriacutea en Sistemas computacionales del

Instituto Tecnoloacutegico de Acapulco puede ser utilizado en gran cantidad de aplicaciones dentro de

las diferentes aacutereas de investigacioacuten del Instituto asiacute como estar disponible para el Departamento

de Posgrado e Investigacioacuten como apoyo durante la realizacioacuten de tareas y proyectos dentro de las

aacutereas de Desarrollo de Sistemas Inteligentes asiacute como de Tecnologiacuteas Web

Propuesta de Trabajo a Futuro

Durante la realizacioacuten de este proyecto se observoacute la necesidad que existe dentro del

departamento de Investigacioacuten y Posgrado de equipos de alta capacidad de procesamiento para

realizar de una manera maacutes eficiente las investigaciones que se estaacuten llevando a cabo Una de ellas

es el ldquoSistema de apoyo al diagnoacutestico oportuno de Retinopatiacutea Diabeacuteticardquo en la cual a traveacutes del

entrenamiento de una red neuronal se clasificaraacuten y evaluaraacuten un nuacutemero de 3000 imaacutegenes para

95

demostrar la presencia de dicha enfermedad en pacientes del Instituto Estatal de Oftalmologiacutea

Actualmente se ha realizado una prueba de entrenamiento de dicha red neuronal con 70 imaacutegenes

obteniendo como resultado un tiempo clasificacioacuten y evaluacioacuten de 301532 horas en un equipo

con un procesador Core I7 con 8 GB en memoria RAM

96

Bibliografiacutea

Alegsa (01 de 01 de 2018) Alegsa Diccionario Informaacutetico Recuperado el 07 de 2019 de

Alegsa httpwwwalegsacomarDicataque_por_diccionariophp

Avecto (2017) Avecto Limited Recuperado el 10 de 08 de 2018 de AVECTO a Bomgar

Company wwwavectocom

Borghello C (2009) Seguridad de la Informacioacuten Recuperado el 11 de 2018 de Criptografiacutea de

la A-Z httpswwwsegu-infocomarproyectosp1_hashhtm

Branch Bedoya J amp Mesa Muacutenera A (Diciembre de 2008) Implementacioacuten de un cluster

homogeacuteneo para la resolucioacuten de problemas de alta complejidad computacional Avances

en Sistemas e Informaacutetica 5(3)

ByteBleeder (02 de 06 de 2017) Practical guide to NTLM Relaying in 2017 Obtenido de Github

httpsbyt3bl33d3rgithubiopractical-guide-to-ntlm-relaying-in-2017-aka-getting-a-

foothold-in-under-5-minuteshtml

Caballero A (26 de 06 de 2018) Hacking Eacutetico Recuperado el 03 de 2019 de John The Ripper

httpwwwreydescomdq=Recuperar_la_Contrasena_del_Administrador_utilizando_s

amdump2_y_John_The_Ripper

Carretero Peacuterez J de Miguel Anasagasti P Garciacutea Carballeira F amp Peacuterez Costoya F (2001)

Sistemas Operativos Una visioacuten aplicada (C F Madrid Ed) Madrid Espantildea

McGRAW-HillInteramericana

Castelloacute Gimeno A (30 de 07 de 2014) Universitat Jaume Recuperado el 10 de 2019 de

Evaluacioacuten de prestaciones mediante laaplicacioacuten HPL de clusters utilizandorCUDA

97

httprepositoriujiesxmluibitstreamhandle10234115082TFM_2014_CastelloGimen

oApdfsequence=1ampisAllowed=y

Chaacutevez J Echeverriacutea C Correa M Vaacutezquez E Suaacuterez M Maacutermol X Diacuteaz G (07 de

1999) Centro de Caacutelculo Cientiacutefico Recuperado el 01 de 05 de 2018 de Universidad de

Los Andes httpwwwcecalculavedocumentaciontutorialesbeowulfinformehtml

Chirinov R (2003) Nfinite9000 SL Recuperado el 26 de 04 de 2018 de Noticias 3D

httpswwwnoticias3dcomarticuloaspidarticulo=248amppag=4

Coffin J (23 de 07 de 2015) Quora Recuperado el 15 de 08 de 2019 de

httpswwwquoracomWhat-does-it-mean-when-a-hashing-algorithm-has-been-broken

Dongarra J (2010) Top500 Super computer sites Recuperado el 07 de 2019 de http

wwwtop500org

Educba (01 de 01 de 2019) Recuperado el 10 de 2019 de Educbaorg

httpswwweducbacomidea-algorithm

europa press (04 de 06 de 2013) Portal Tic Recuperado el 18 de 11 de 2018 de Europa Press

httpswwweuropapressesportalticgadgetsnoticia-cuarta-generacion-intel-core-mayor-

salto-cuanto-ahorro-energetico-20130604174722html

g0tmi1k (2018) github Recuperado el 05 de 2019 de github

httpsgithubcomdanielmiesslerSecListsblobmasterPasswordsCommon-

Credentials10-million-password-list-top-1000000txt

Gonzaacutelez Agudelo D (2014) El riesgo y la falta de politicas de seguridad informaacutetica una

amenaza en las empresas certificadas basc Recuperado el 20 de 05 de 2018 de

Universidad Militar Nueva Granada

httpsrepositoryunimilitareducobitstream10654122511ENSAYO20FINALpdf

98

Gonzaacutelez Ramiacuterez E amp Rodriacuteguez Saacutenchez A (2008) Disentildeo e implementacioacuten de un cluster

tipo BEOWULF para el desarrollo de coacutemputo cientiacutefico avanzado CdMx Mexico

Hernandez M (2013) Forensics Mexico Recuperado el 07 de 2018 de La importancia del

registro de Windows parte 1 httpforensicsmexicoblogspotcom201309la-

importancia-del-registro-de-windowshtml

Kowalczyk C (01 de 2015) Crypto-IT Recuperado el 11 de 2018 de Crypto-IT

httpwwwcrypto-itnetengasymmetricindexhtml

Labaca Castro R (13 de 06 de 2014) We live security Recuperado el 2019 de 08 de 07 de

Welivesecuritybyeset httpswwwwelivesecuritycomla-es20140613matematica-

claves-numerica-alfanumerica

Lizaacuterraga C (2002) Departamento de Fiacutesica Recuperado el 12 de 03 de 2018 de Universidad

de Sonora httpclustersfisicausonmx

Llorens E amp Pentildea M (2002) Recuperado el 04 de 2018 de Departament dArquitectura de

Computadors httppersonalsacupceduenricPFCBeowulfbeowulfhtml

Meneacutendez-Barzanallana R (07 de 08 de 17) Universidad de Murcia Recuperado el 11 de 2018

de Informaacutetica Aplicada a las Ciencias Sociales

httpswwwumesdocenciabarzanaIACCSSCriptografiahtml

Merkle R amp Damgaringrd I (sf) Numerenturorg Recuperado el 06 de 2019 de Para computar -

numerenturorg httpnumerenturorgfuncion-merkle-damgard

Microsoft Inc (02 de 05 de 2019) wwwmicrosoftcom Obtenido de Password must meet

complexity requirements httpsdocsmicrosoftcomes-eswindowssecuritythreat-

protectionsecurity-policy-settingspassword-must-meet-complexity-requirements

99

Mifsud E (26 de 03 de 2012) Introduccioacuten a la seguridad informaacutetica Recuperado el 07 de 05

de 2018 de Ministerio de educacioacuten cultura y deportes Gobierno de Espantildea

httprecursosticeducacionesobservatoriowebessoftwaresoftware-general1040-

introduccion-a-la-seguridad-informaticashowall=1

Murugesan S (01 de 02 de 2008) Researchgate doi101109MITP200810

Nahar K amp Abu Abbas O (01 de 2010) Researchgate Recuperado el 07 de 2019 de

Researchgate

httpswwwresearchgatenetpublication315492522_Hybrid_Cipher_System

Nievas F Pino O amp Arroyo R (sf) Los clusters como Plataforma de Procesamiento Paralelo

Recuperado el 25 de 04 de 2018 de

httpusuarioslycoseslacaraocultadescargasClusters_definitivo pdf

Pawar S (2016) A computer science portal for geeks Recuperado el 10 de 2018 de

Geeksforgeeks httpswwwgeeksforgeeksorgrc5-encryption-algorithm

Peleus (2019) NETSEC Recuperado el 08 de 2019 de httpsnetsecwsp=314

Peacuterez Tavera I (2014) Obtenido de Universidad Autonoma del Estado de Hidalgo

httpswwwuaehedumxscigeboletinprepa4n2e4html

Peacuterez M (2001) Recuperado el 15 de 04 de 2018 de

httpwwwdragonesorgBibliotecaArticulosArquitecturaParalela2pdf

Petitet A Whaley R C Dongarra J amp Cleary A (2008) HPL - A Portable Implementation of

the High-Performance Linpack Benchmark for Distributed-Memory Computers

Recuperado el 07 de 2019 de httpwwwnetliborgbenchmarkhpl

Picolet J (2017) Hash Crack Password Cracking Manual (Vol 2) Createspace Independent

Pub

100

Preukschat A (23 de 02 de 2015) Oro y Finanzas Recuperado el 07 de 2019 de

httpswwworoyfinanzascom201502que-es-colision-criptografia-bitcoin

Robbins D (2008) OpenMosix Recuperado el 22 de 04 de 2018 de the openMosix Project

httpopenmosixsourceforgenetintroduction_to_openmosixhtml

Rocha Quezada J d Botello Rionda S Vargas Feacutelix J M amp Munguiacutea Torres I A (Sep-Dic

de 2011) Disentildeo e implementacioacuten de un cluacutester de coacutemputo de alto rendimiento Acta

Universitaria 21(3) 24-33 Recuperado el 1 de 12 de 2018

Rocksclusters (01 de 01 de 2010) httpwwwrocksclustersorg Recuperado el 01 de 06 de 2018

de httpwwwrocksclustersorg httpwwwrocksclustersorg

Sanjoy K (01 de 01 de 2015) DZone Recuperado el 15 de 06 de 2019 de DZone

httpsdzonecomarticlessecurity-algorithms-des-algorithm

Security Degree Hub (01 de 2017) Security Degree Hub Recuperado el 13 de 02 de 2019 de

Security Degree Hub httpswwwsecuritydegreehubcomwhat-is-cryptanalysis

Simmons G (01 de 01 de 2019) Encyclopedia Britannica Recuperado el 08 de 2019 de

Encyclopedia Britannica httpswwwbritannicacomtopicRSA-encryption

statista (09 de 2017) Statista Obtenido de Statista Co httpsesstatistacom

Turner D (2004) Recuperado el 12 de 02 de 2018 de Ames Lab

httpwwwsclameslabgovProjectsparrallel_computingpara_intohtml

United States Government Department of Defense (1983) Trusted Computer System Evaluation

Criteria Rainbow Series

Universidad Internacional de Valencia (09 de Septiembre de 2016) Nuestros

expertosTecnologiacutea Recuperado el 27 de Abril de 2018 de Universidad Internacional de

Valencia httpswwwuniversidadviuesla-seguridad-informatica-puede-ayudarme

101

Wallen J (19 de 01 de 2019) Lifewire Recuperado el 13 de 06 de 2019 de Lifewire

httpswwwlifewirecomgnome-3-desktop-4175640

Yang H (01 de 02 de 2019) Herong Yang Recuperado el 15 de 06 de 2019 de Cryptography

Tutorials httpwwwherongyangcomCryptographyDSA-Introduction-What-Is-DSA-

Digital-Signature-Algorithmhtml

102

Anexo 1

Programa en Lenguaje C para la obtencioacuten de nuacutemeros primos utilizando libreriacuteas mpi

include ltcstdlibgt

include ltiostreamgt

include ltiomanipgt

include ltcmathgt

include ltctimegt

include mpih

using namespace std

int main ( int argc char argv[] )

int prime_number ( int n int id int p )

void timestamp ( )

int main ( int argc char argv[] )

int i

int id

int master = 0

int n

int n_factor

int n_hi

int n_lo

int p

int primes

int primes_part

double wtime

n_lo = 1

n_hi = 10000000

n_factor = 2

MPIInit ( argc argv )

p = MPICOMM_WORLDGet_size ( )

id = MPICOMM_WORLDGet_rank ( )

if ( id == master )

cout ltlt n

cout ltlt Cuenta primosn

cout ltlt C++MPI versionn

cout ltlt n

cout ltlt Programa para contar cantidad de primos para un N dadon

cout ltlt Corriendo en ltlt p ltlt procesosn

cout ltlt n

103

cout ltlt N S Tiempon

cout ltlt n

n = n_lo

while ( n lt= n_hi )

if ( id == master )

wtime = MPIWtime ( )

MPICOMM_WORLDBcast ( ampn 1 MPIINT master )

primes_part = prime_number ( n id p )

MPICOMM_WORLDReduce ( ampprimes_part ampprimes 1 MPIINT

MPISUM

master )

if ( id == master )

wtime = MPIWtime ( ) - wtime

cout ltlt ltlt setw(8) ltlt n

ltlt ltlt setw(8) ltlt primes

ltlt ltlt setw(14) ltlt wtime ltlt n

n = n n_factor

MPIFinalize ( )

if ( id == master )

cout ltlt n

cout ltlt PRIME_MPI - Procesos maestron

cout ltlt Finalizacion del calculo normaln

return 0

int prime_number ( int n int id int p )

int i

int j

int prime

int total

104

total = 0

for ( i = 2 + id i lt= n i = i + p )

prime = 1

for ( j = 2 j lt i j++ )

if ( ( i j ) == 0 )

prime = 0

break

total = total + prime

return total

void timestamp ( )

define TIME_SIZE 40

static char time_buffer[TIME_SIZE]

const struct tm tm

size_t len

time_t now

now = time ( NULL )

tm = localtime ( ampnow )

len = strftime ( time_buffer TIME_SIZE d B Y IMS p tm )

cout ltlt time_buffer ltlt n

return

undef TIME_SIZE

Page 5: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios

iv

Agradecimientos

Agradezco primero y ante todo a Dios todo se lo debo a Eacutel por derramar sus

bendiciones sobre miacute por acompantildearme en cada paso que doy y haber fortalecido mi corazoacuten e

iluminado mi mente Gracias Padre

A mi familia que ha estado ahiacute siempre a mi lado en los momentos maacutes oscuros y

difiacuteciles creyendo en miacute impulsaacutendome para alcanzar mis metas

Al Consejo Nacional de Ciencia y Tecnologiacutea por haberme apoyado econoacutemicamente

para la realizacioacuten de este proyecto

A mi director de tesis el Dr Eduardo de la Cruz Gaacutemez por su tiempo por su paciencia

por los valiosos aportes criacuteticas comentarios y sugerencias que realizoacute durante este proyecto

Al Departamento de Posgrado e Investigacioacuten del Instituto Tecnoloacutegico de Acapulco asiacute

como a toda la plantilla docente de la cual me llevo conocimiento y experiencias

enriquecedoras que sin lugar a dudas marcaron mi vida profesional

A la segunda generacioacuten muchas gracias Abejorros sin el apoyo mutuo durante el

tiempo que pasamos en las aulas y durante el desarrollo de los proyectos tal vez no lo

hubieacuteramos logrado

v

Resumen

El presente trabajo inicia con una breve introduccioacuten sobre la importancia que tiene la

seguridad en cualquier aspecto de la vida y sobre todo en el aacuterea laboral especiacuteficamente en el

aacuterea informaacutetica Posteriormente resalta coacutemo la criptografiacutea ha estado presente en momentos

importantes de la vida del ser humano sobre todo dentro del aacutembito militar en la cual ha sido

fundamental para permitir comunicaciones seguras Actualmente la criptografiacutea estaacute dentro de

nuestro diario vivir cuando realizamos transacciones en internet de manera segura Como parte de

la investigacioacuten en este trabajo se describen los tipos de criptografiacutea y criptoanaacutelisis tambieacuten se

analizan los niveles de seguridad de sistemas operativos asiacute como los meacutetodos de agrupamiento

de computadoras para implementar con la ayuda de esta herramienta de una manera maacutes raacutepida

criptoanaacutelisis a un sistema operativo con un nivel de seguridad C1

Palabras clave cluacutester seguridad criptoanaacutelisis

vi

Abstract

This work begins with a review of the importance of security in any aspect of life and

especially in the workplace specifically in the computer area Later this work speaks briefly about

how cryptography has been present at important moments in the life of the human being especially

in the military field in which it has been fundamental to allow secure communications Currently

cryptography is inside our daily life when we conduct transactions on the internet in a secure

manner As part of the research in this work the types of cryptography and cryptanalysis are

described as well as the security levels of operating systems and above all the main methods of

computers clustering to implement a system with a faster method of cryptanalysis in an operative

system with a security level C1

Keywords cluster security cryptanalysis

vii

Iacutendice de Contenido

Descargo de Responsabilidad Institucional ii

Dedicatoria iii

Agradecimientos iv

Resumen v

Abstract vi

Iacutendice de Contenido vii

Iacutendice de Figuras x

Iacutendice de Tablas xi

Capiacutetulo 1 Introduccioacuten 1 11 Antecedentes del problema 1

12 Planteamiento del Problema 4

13 Objetivos 6

131 Objetivo General 6

132 Objetivos Especiacuteficos 6

14 Justificacioacuten 7

15 Hipoacutetesis 7

16 Alcances y Limitaciones 8

17 Impacto Social Tecnoloacutegico Econoacutemico y Ambiental 8

171 Impacto social 8

172 Impacto ambiental 9

173 Impacto econoacutemico 10

18 Metodologiacutea a Utilizar 10

181 Anaacutelisis 10

182 Disentildeo 10

1821 Economiacutea 10

1822 Instalaciones 10

1823 Escalabilidad 11

1824 Red 11

1825 Software 11

1826 Almacenamiento 12

183 Implementacioacuten 12

1831 Software 12

1832 Hardware 13

1833 Recursos totales del cluacutester 13

19 Aseguramiento Teacutecnico ndash Material 13

191 Hardware 14

viii

1911 Equipo de coacutemputo 14

Capiacutetulo 2 Estado del Arte 16

Marco Teoacuterico 27 21 Seguridad de la Informacioacuten 27

211 Objetivo de la seguridad de la informacioacuten 27

212 Principios de la seguridad informaacutetica 28

213 Caracteriacutesticas de seguridad informaacutetica 28

214 Formas de Autenticacioacuten 29

215 Ciber-seguridad 29

22 Criptografiacutea 30

221 Tipos de Criptografiacuteas 30

2211 Tablas Hash 30

2212 Tipos de algoritmos Hash 31

22121 SHA - 1 (Secure Hash Algorithm) 31

22122 MD5 (Message Digest Algorithm) 31

22123 RIPEMD ndash 160 32

22124 Funcioacuten Merkle-Damgaringrd 32

2213 Cifrado simeacutetrico 32

22131 RC5 (Cifrado de Rivest) 33

22132 IDEA (International Data Encryption Algorithm) 33

22133 DES (Data Encryption Standard) 34

2214 Cifrado asimeacutetrico 35

22141 DSA (Digital Signature Algorithm - Algoritmo de Firma digital) 36

22142 RSA 37

2215 Cifrado hiacutebrido 38

23 Criptoanaacutelisis 38

24 Niveles de seguridad 39

241 Nivel D1 40

242 Nivel C1 40

243 Nivel C2 41

244 Nivel B1 42

245 Nivel B2 43

246 Nivel B3 44

247 Nivel A1 45

25 Sistemas Operativos 46

251 Windows 47

252 Registro de Windows 48

253 Administrador de cuentas de seguridad 49

2531 Identificador de Seguridad (SID Security Identifier) 50

254 Autenticacioacuten NTML 51

26 LINUX (ROCKS) 52

261 Escritorio 53

262 Paquete de Oficina 53

263 Organizador de archivos 54

27 Agrupamiento (Cluacutester) de Computadoras 55

271 Beowulf 56

ix

272 Mosix 56

273 OpenMosix 57

Capiacutetulo 3 Implementacioacuten de Cluacutester 59 31 Requisitos previos 59

311 Conexioacuten de los equipos y acceso a la red 59

312 Configuracioacuten de la BIOS 60

3121 ATAIDE Mode 60

3122 PXE 62

32 Instalacioacuten de Sistema Operativo Rocks 63

321 Configuracioacuten del teclado 70

33 Instalacioacuten de los nodos 70

331 Administracioacuten de nodos 72

332 Creacioacuten de cuentas de usuario 73

333 Configuracioacuten del directorio compartido 73

34 Operaciones baacutesicas de Rocks 74

Capiacutetulo 4 Metodologiacutea y Resultados 77 41 Obtener Archivo hash 77

42 Dar Formato al Hash 80

43 Evaluar la fuerza del Hash 80

44 Calcular la capacidad del equipo 82

45 Establecer Estrategia 87

451 Fuerza Bruta 87

4511 Cantidad de combinaciones posibles 88

452 Diccionario 90

453 Analizar los resultados 91

454 Personalizar ataques 91

Conclusioacuten 92

Trabajo Futuro 94 Propuesta de Trabajo a Futuro 94

Bibliografiacutea 96

Anexo 1 102

x

Iacutendice de Figuras

Figura 31 Esquema tiacutepico de configuracioacuten de un cluacutester xi

Figura 32 Imagen del Bios del equipo en la opcioacuten ldquodrive configurationrdquo 61

Figura 33 Bios ATAIDE Legacy Mode 61

Figura 34 Bios Boot PXE 62

Figura 35 Bios Boot device prioriry 63

Figura 36 Pantalla de Inicio de instalacioacuten de Rocks 64

Figura 37 Pantalla de seleccioacuten de Rolls 65

Figura 38 Listado de opciones de rolls para instalar 65

Figura 39 Informacioacuten baacutesica del cluacutester a instalar 66

Figura 310 Configuracioacuten Ethernet de la red privada 67

Figura 311 Configuracioacuten Ethernet de la red puacuteblica 67

Figura 312 Configuracioacuten de DNS y Gateway 68

Figura 313 Ingresar contrasentildea de usuario root 68

Figura 314 Configuracioacuten horaria 69

Figura 315 Particiones del disco duro 69

Figura 316 Pantalla para ingresar nodos 71

Figura 317 Indicador de insercioacuten de nuevos nodos 71

Figura 318 Comando qstat ndashf 74

Figura 319 Enviacuteo de trabajos por medio del comando qsub 75

Figura 320 Estado de los trabajos pendientes mostrados por qstat ndashf 75

Figura 321 Visualizacioacuten de la distribucioacuten de cargas en el cluacutester usando la herramienta

Ganglia 76

Figura 41 Arranque con LiveUSB KaliLinux 79

Figura 42 Resultado de la ejecucioacuten de la herramienta samdump2 80

Figura 43 Sistema de Ecuaciones tipo 119860119909 = 119887 Fuente Propia 84 Figura 44 Distribucioacuten de cargas del cluacutester 86

Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester 89

xi

Iacutendice de Tablas

Tabla 11 Costo del Proyecto 15

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia) 86

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia) 89

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos

(Fuente Elaboracioacuten propia) 90

1

Capiacutetulo 1 Introduccioacuten

11 Antecedentes del problema

Sin lugar a duda una de las herramientas maacutes importantes producida en el siglo XX ha sido

la computadora la cual ha provocado cambios vertiginosos en la sociedad y en el progreso de la

misma En la actualidad el entorno estaacute praacutecticamente controlado por las nuevas tecnologiacuteas que

a medida que transcurre el tiempo avanzan sin liacutemites y en ocasiones son utilizadas

incorrectamente provocando dantildeos de grandes dimensiones

Los trascendentales cambios operados en el mundo moderno caracterizados por su

constante desarrollo la acelerada globalizacioacuten de la economiacutea la acentuada dependencia a

almacenar grandes voluacutemenes de informacioacuten y los sistemas que la proveen aunado a grandes

inversiones de las empresas en conocimiento actual y futuro en sistemas de informacioacuten ademaacutes

del potencial que poseen las tecnologiacuteas para cambiar draacutesticamente las organizaciones y las

praacutecticas de negocio asiacute como crear nuevas oportunidades disentildear nuevas estructuras tecnoloacutegicas

basadas en informacioacuten la convierte en un activo codiciable Tales avances hacen permanente el

riesgo en las tecnologiacuteas y nos llevan a pensar en la problemaacutetica sobre la seguridad informaacutetica

La proteccioacuten de datos documentos y control de acceso a la informacioacuten es un tema que

cada diacutea toma maacutes fuerza en las grandes compantildeiacuteas debido a las diferentes praacutecticas de

especialistas tecnoloacutegicos como los son los hackers y crackers que roban informacioacuten vital para

posteriormente sacar provecho de ella

2

ldquoDesde la aparicioacuten de los grandes sistemas aislados hasta nuestros diacuteas en los que el

trabajo en red es lo habitual los problemas derivados de la seguridad de la informacioacuten han ido

tambieacuten cambiando evolucionando pero estaacuten ahiacute y las soluciones han tenido que ir adaptaacutendose

a los nuevos requerimientos teacutecnicos Aumenta la sofisticacioacuten en el ataque y ello aumenta la

complejidad de la solucioacuten pero la esencia es la mismardquo (Mifsud 2012)

Dentro del mundo actual la informacioacuten es denominada un activo importante de una

institucioacuten la cual debe ser protegida para evitar su peacuterdida modificacioacuten o el uso inadecuado de

su contenido

El extraviacuteo o el mal uso de informacioacuten que para alguien es confidencial genera dantildeos y

repercusiones directas relacionadas a la integridad disponibilidad y confidencialidad de los

archivos y a su vez a los duentildeos de dicha informacioacuten

ldquoLa seguridad informaacutetica se distingue por tener dos propoacutesitos de seguridad la Seguridad

de la Informacioacuten y la Proteccioacuten de Datos estos se diferencian debido a que los datos son valores

numeacutericos que soportan la informacioacuten mientras que la informacioacuten es aquello que tiene un

significado para nosotrosrdquo (Gonzaacutelez Agudelo 2014)

La seguridad informaacutetica consiste en asegurar que los recursos del sistema de informacioacuten

(material informaacutetico o programas) de una organizacioacuten sean utilizados de la manera que se decidioacute

3

inicialmente y que el acceso a la informacioacuten alliacute contenida asiacute como su modificacioacuten soacutelo sea

posible a las personas que se encuentren acreditadas y dentro de los liacutemites de su autorizacioacuten

Actualmente hay mucha informacioacuten circulando en internet por ejemplo correos

electroacutenicos publicaciones en Twitter Facebook videos fotos comercio electroacutenico secretos de

estado militares o industriales Lamentablemente dicha red es puacuteblica e insegura dentro de la cual

existen usuarios bien intencionados y muchos mal intencionados Diariamente encontramos

noticias de sitios con intrusiones mal intencionadas (hackeados) clonacioacuten de tarjeta de creacutedito o

imaacutegenes adulteradas Todo lo anterior motiva la necesidad de proteger la informacioacuten a traveacutes de

mecanismos que impidan a los usuarios no autorizados acceder a dicha informacioacuten

4

12 Planteamiento del Problema

Los sistemas de informacioacuten actuales estaacuten relacionados completamente con la exposicioacuten

de su informacioacuten a entidades externas que son ajenas a la organizacioacuten o delegacioacuten a la que

pertenecen

Cuando no se conoce el alcance que tienen los sistemas informaacuteticos ni lo vulnerables que

pueden ser si son expuestos a Internet por los mismos empleados de la organizacioacuten puede darse

ldquofugardquo de informacioacuten hacia el exterior esto los hace vulnerables a eventos y amenazas que

conllevan a riesgos que pueden provocar peacuterdidas tangibles e intangibles las cuales se traducen

en peacuterdidas que en muchos de los casos por decir lo menos seraacuten monetarias

El portal espantildeol de estadiacutesticas statista muestra la cuota de mercado de los principales

sistemas operativos a nivel mundial a fecha de febrero de 2017 seguacuten el nuacutemero de instalaciones

(statista 2017) Windows 10 fue el segundo sistema operativo maacutes instalado con una cuota de

mercado de 253 Esto significa que alrededor de una de cada cuatro computadoras estaacute

gobernado por este sistema operativo Por su parte en el caso de Windows 7 el porcentaje se situacutea

por encima del 45 a pesar de que ya no se vende ninguacuten PC con este sistema operativo Hablando

de manera conjunta los sistemas operativos Windows cuentan con una cuota del mercado global

de 8857

La empresa de seguridad informaacutetica Britaacutenica Avecto informoacute en su Microsoft

Vulnerabilities Report 2017 (Avecto 2017) (reporte 2017 de vulnerabilidades de Windows) un

aumento de vulnerabilidades publicadas del 111 en los uacuteltimos 5 antildeos de las cuales 235 criacuteticas

5

fueron mitigadas removiendo permisos de administrador asiacute como otras muy importantes

enfocadas al Administrador de Cuentas de Seguridad (SAM Security Account Manager por sus

siglas en ingleacutes) la cual es una base de datos almacenada como un archivo del registro en Windows

y que almacena las contrasentildeas de los usuarios en un formato hash (Algoritmos que crean a partir

de una entrada una salida alfanumeacuterica de longitud fija)

6

13 Objetivos

131 Objetivo General A traveacutes de la implementacioacuten de un procedimiento de fuerza

bruta utilizando para ello un cluacutester de alto rendimiento asiacute como software de uso libre lograr

capacidad de procesamiento capaz de vulnerar un sistema de autenticacioacuten nivel C1

132 Objetivos Especiacuteficos

Analizar los diferentes niveles de seguridad de sistemas operativos

Analizar diferentes meacutetodos de criptoanaacutelisis para vulnerar el Administrador de

cuentas de seguridad

Estudiar las teacutecnicas de agrupamiento de computadoras (clustering) para la

obtencioacuten de mayor poder de procesamiento

Implementar un cluacutester de alto rendimiento en el Laboratorio de la Maestriacutea en

Sistemas Computacionales del Instituto Tecnoloacutegico de Acapulco para ejecutar

operaciones de coacutemputo distribuido

7

14 Justificacioacuten

Antes la seguridad de la informacioacuten se realizaba a traveacutes de medios fiacutesicos por ejemplo

una caja fuerte en la cual las personas resguardaban objetos o informacioacuten valiosa para ellos Con

la introduccioacuten de las computadoras y el uso de internet los usuarios comienzan a almacenar

informacioacuten importante dentro de sus equipos por lo que se considera indispensable el uso de

herramientas que brinden proteccioacuten a la informacioacuten que se encuentra resguardada dentro de

eacutestas Los usuarios informaacuteticos suelen enviar informacioacuten por la red en las empresas al realizar

traacutemites o enviar informes a socios jefes entre otros

El resguardo de informacioacuten siempre ha sido importante para los seres humanos con la

diferencia que anteriormente no se contaba con los avances tecnoloacutegicos que tenemos actualmente

puesto que con la introduccioacuten de internet y el uso de dispositivos electroacutenicos se tiene mayor

riesgo de la informacioacuten que en ellos se maneja

La proteccioacuten del contenido de los datos es una necesidad urgente en casi todos los aacutembitos

de la sociedad incluyendo los servicios puacuteblicos y privados por lo que la tecnologiacutea de la

seguridad de los sistemas de cifrado se encuentra de frente a verdaderos retos

15 Hipoacutetesis

A traveacutes de un de fuerza bruta como teacutecnica de criptoanaacutelisis y con la ayuda de una mayor

capacidad de procesamiento mediante la implementacioacuten de agrupamiento de computadoras

(cluacutester) de alto rendimiento seraacute posible encontrar alguna vulnerabilidad dentro del sistema de

administracioacuten de cuentas de seguridad de Windows server 2012

8

16 Alcances y Limitaciones

Esta tesis se centraraacute en el sistema operativo Windows como objeto de estudio al cual se

le realizaraacute el criptoanaacutelisis

La tesis se enfocaraacute en el meacutetodo Beowulf para realizar el agrupamiento de computadoras

asiacute como la distribucioacuten de software libre del sistema operativo Linux Rocks

El nuacutemero de equipos disponibles para poder realizar el agrupamiento es de 17

computadoras hasta lograr el poder de coacutemputo de 800 Gflops

17 Impacto Social Tecnoloacutegico Econoacutemico y Ambiental

La sostenibilidad del presente proyecto seraacute abordada a partir de los siguientes aspectos

171 Impacto social A veces se puede pensar que un cluacutester de alto rendimiento pudiera

no tener alguacuten impacto directo en el medio social pero si nos enfocamos a un punto de vista en

donde gracias a la capacidad de procesamiento de estas maacutequinas han sido parte fundamental en

el desarrollo de proyectos que inciden de manera directa en beneficio de la sociedad en la que

vivimos como lo es la medicina la fiacutesica quiacutemica

Este proyecto busca beneficiar a nuestra sociedad proveyendo su capacidad de

procesamiento en la buacutesqueda de alguna vulnerabilidad en el sistema operativo maacutes utilizado hoy

en diacutea como lo es Windows ademaacutes de que estaraacute disponible para la comunidad cientiacutefica y

9

estudiantil del Instituto Tecnoloacutegico de Acapulco para optimizar tiempo de caacutelculo en futuras

investigaciones

172 Impacto ambiental Green IT tambieacuten conocido como Green Computing o

traducido al espantildeol como Tecnologiacuteas Informaacuteticas Verdes es definido como el estudio y la

praacutectica de disentildear desarrollar usar y disponer de computadoras servidores y diferentes

perifeacutericos tales como monitores impresoras dispositivos de almacenamiento de redes y

comunicaciones eficientemente y efectivamente con un impacto miacutenimo o nulo en el medio

ambiente (Murugesan 2008)

Bajo la premisa anterior este proyecto hace uso de los equipos con los que cuenta

actualmente el laboratorio de la Maestriacutea en Sistemas Computacionales lo cual evitaraacute la

adquisicioacuten de equipo nuevo y por consecuencia desechar el equipo existente evitando desperdicio

electroacutenico Dicho equipo cuenta con un procesador Intel I3 de 4ta generacioacuten lo cual seguacuten el

portal electroacutenico Europa press

ldquoEsta nueva generacioacuten supone el mayor salto en cuanto ahorro energeacutetico de la historia

de Intel asiacute como una mejora en los graacuteficos y nuevas experiencias de usuariordquo (europa press

2013)

Teniendo como base estos dos puntos importantes como lo son la reutilizacioacuten de equipo

y utilizando procesadores de bajo consumo energeacutetico es como este proyecto busca contribuir de

manera positiva con el medio ambiente

10

173 Impacto econoacutemico Actualmente existe una gran necesidad de procesar grandes

cantidades de datos lo cual hace imprescindible disponer de maacutequinas con estas caracteriacutesticas sin

embargo su alta complejidad aunado al gran costo hace que en instituciones de caraacutecter puacuteblico

sea muy complicado conseguir recurso para este fin Sin embargo un cluacutester de alto rendimiento

reutilizaraacute equipo propio evitando asiacute gastos por concepto de adquisicioacuten de equipo siendo de

esta manera viable para instituciones de caraacutecter puacuteblico

18 Metodologiacutea a Utilizar

181 Anaacutelisis Despueacutes de analizar las diferentes metodologiacuteas de clustering se optoacute por

desarrollar e implementar un cluacutester de alto rendimiento (HPC)

182 Disentildeo

1821 Economiacutea Debido a las caracteriacutesticas del equipo con el cual cuenta el Laboratorios

de la Maestriacutea en Sistemas Computacionales los componentes utilizados para este proyecto son

considerados de uso comuacuten y de bajo costo lo cual los hace faacutecilmente reemplazables en caso de

fallo a un costo accesible El equipo es de la marca Acer Aspire modelos AXC-605-M021 lo cual

nos hace tener ventaja y respaldo del fabricante con respecto a hardware geneacuterico

1822 Instalaciones Un cluacutester requiere de un ambiente controlado Esto es una

habitacioacuten especial con sistema de enfriamiento capacidad suficiente de carga eleacutectrica control

de humedad y un ambiente libre de polvo Ademaacutes se deben considerar el peso del equipo sobre

el piso (ya sea falso o piso normal) Se recomienda colocarlo en los soacutetanos o en la plata baja de

edificios (Rocha Quezada Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

11

En el laboratorio de la Maestriacutea en Sistemas Computacionales se cuenta con espacio que

reuniacutea la mayoriacutea de las caracteriacutesticas requeridas para este proyecto

1823 Escalabilidad Un cluacutester debe ser faacutecilmente escalable y a su vez confiable Por

tal motivo se ha utilizado equipo de marca lo cual nos proporciona maacutes de confiabilidad en su

desempentildeo y a su vez facilidad de aumentar el nuacutemero de equipos si en un futuro fuese necesario

agrandar este proyecto Se armoacute un cluacutester de cinco computadoras con procesadores Intel Core I3

de 64 bits en cada nodo La memoria incluida y perifeacutericos son faacuteciles de adquirir en el mercado

1824 Red En la parte de redes se utilizoacute un switch fast Ethernet con una velocidad de 1

Gbps el cual tiene tazas de transferencia raacutepida y el costo es notablemente maacutes econoacutemico que

uno de fibra oacuteptica

El cableado seleccionado fue el estaacutendar UTP de cobre con la norma Gigabit Ethernet de

IEEE 8023ab con la categoriacutea de cableado 6e que soporta tazas de transferencia de datos de

1000Base T (1 Gbps)

1825 Software

ldquoEl sistema operativo debe constar con servicios dedicados para compartir y respaldar

archivos asiacute como capacidad de acceder a los datos de trabajo raacutepidamente El sistema operativo

debe tambieacuten proveer servicios de monitoreo y reporte de fallas en el sistemardquo (Rocha Quezada

Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

12

Existe una gran variedad de software para instalar cluacutester de alto rendimiento sin embargo

como se ha comentado con anterioridad el costo de adquisicioacuten debe ser accesible por tal motivo

se optoacute por una distribucioacuten con licencia GNU de Linux Rocks Cluster la cual es una distribucioacuten

sencilla de instalar y configurar en comparacioacuten con otras distribuciones analizadas dicha

distribucioacuten estaacute basada en CentOS que a su vez estaacute basada en la conocida distribucioacuten de Linux

Red Hat

1826 Almacenamiento Para este proyecto no se requeriraacute un gran espacio de

almacenamiento por tal motivo los equipos utilizados tanto maestro como esclavos mantuvieron

sus unidades de disco originales las cuales son de 1 TB de almacenamiento

183 Implementacioacuten La implementacioacuten del cluacutester de alto rendimiento fue realizada

dentro de las instalaciones del Laboratorio de la Maestriacutea en Sistemas Computacionales del

Instituto Tecnoloacutegico de Acapulco construido inicialmente para este proyecto de criptoanaacutelisis lo

cual requeriraacute suficiente capacidad de procesamiento para poder implementar ataques de fuerza

bruta a sistemas operativos Las caracteriacutesticas del cluacutester construido son

1831 Software El software instalado en cada uno de los nodos es el siguiente

bull Sistema operativo Rocks Cluacutester Linux 74 (64 bits)

bull Libreriacutea de manejo de mensajes Open-MPI 153

bull Software de monitoreo Ganglia

13

1832 Hardware El cluacutester estaacute compuesto de 17 equipos con las siguientes

caracteriacutesticas

bull Nodo Maestro y 16 Nodos Esclavos

- Procesador Intel Core I3 4150 (4 nuacutecleos) Memoria 6 GB Disco Duro SATA 1 TB

tarjeta de Red Gigabit Ethernet

El hardware adicional es el siguiente

bull Interconexioacuten de Red

bull Switch Cisco 26 puertos 1Gbps modelo SG200 Red interna

1833 Recursos totales del cluacutester

bull Nuacutecleos de unidades de procesamiento (cores) 68

bull Capacidad en memoria 92 GB

bull Capacidad en disco 17 TB

19 Aseguramiento Teacutecnico ndash Material

A continuacioacuten se muestra el desglose del equipo utilizado para la elaboracioacuten de un

cluacutester de alto rendimiento estos componentes consisten en Hardware y Software especializado

asiacute como los costos de produccioacuten y personal involucrados en la metodologiacutea y elaboracioacuten del

proyecto

Costos de Hardware

Costos de Software

14

191 Hardware En este punto se refleja el costo de los dispositivos y herramientas a nivel

fiacutesico las cuales sirvieron para la implementacioacuten del proyecto cluacutester de alto rendimiento Cabe

resaltar que el equipo utilizado forma parte del inventario actual del Laboratorio motivo por el

cual su utilizacioacuten no causoacute erogacioacuten alguna sin embargo la investigacioacuten de costos se realizoacute

con la finalidad que el lector pueda establecer comparativas y buscar alternativas en caso de ajuste

de presupuesto

1911 Equipo de coacutemputo El equipo de coacutemputo utilizado consta de diecisiete

computadoras las cuales serviraacuten una para Nodo Maestro y las dieciseacuteis restantes como Nodos

Esclavos

La descripcioacuten de estos equipos se muestra en la tabla a continuacioacuten mostrando los costos

de todos los equipos utilizados dentro del proyecto

15

Tabla 11 Costo del Proyecto

Modelo

Cantidad

Caracteriacutesticas

Costos

PC - Acer AXC-

605

17

Procesador Intel Core i3

Pantalla 156rdquo

Disco duro 1TB HDD

RAM 6GB

Salida HDMI

Tarjeta de graacuteficos INTEGRADA

Lector de CD

Los costos en el mercado de una PC de

escritorio con estas caracteriacutesticas tiene un

valor aproximado de $600000 pesos

(Moneda nacional Mexicana)

Switch Cisco

Gigabit Ethernet

1

Modelo SG200 de 26 puertos

Costo en el mercado alrededor de

$2000000 pesos MN

Total

12200000 pesos MN

16

Capiacutetulo 2 Estado del Arte

Tiacutetulo del Trabajo Introduccioacuten a la Criptografiacutea

Autor Gibraacuten Granados Paredes

Fecha Julio 2010

Lugar Ciudad de Meacutexico

Publicado en Coordinacioacuten de Publicaciones Digitales DGSCA-UNAM

httpwwwrevistaunammxvol7num7art55int55htm

Siacutentesis Cuando se desea tener seguridad hablando en aacutembitos informaacuteticos la

criptografiacutea es una herramienta muy uacutetil el autor lo entiende tambieacuten como un medio para

garantizar las propiedades de confidencialidad integridad y disponibilidad de los recursos de un

sistema

Con la criptografiacutea se puede garantizar las propiedades de integridad y confidencialidad

pero hay que saber coacutemo utilizarla para ello es importante tener claros los conceptos baacutesicos que

estaacuten detraacutes de los sistemas criptograacuteficos modernos Estos conceptos van desde entender queacute es

la criptografiacutea coacutemo estaacute clasificada entender el funcionamiento baacutesico de algunos sistemas de

cifrado y conocer coacutemo se forman los documentos digitales como firmas y sobres digitales

Resultados El autor realiza un viaje por un gran nuacutemero de conceptos utilizados en

criptografiacutea el inicio y la clasificacioacuten de la misma asiacute como la criptografiacutea claacutesica y moderna y

analiza de manera breve algunos meacutetodos de cifrado maacutes comunes

17

Tiacutetulo del Trabajo Criptoanaacutelisis sobre meacutetodos claacutesicos de cifrado

Autores Sebastiaacuten Goacutemez Juan David Arias Diego Agudelo

Fecha 2 de mayo 2013

Lugar Ciudad de Meacutexico

Publicado en Scientia et Technica Antildeo XVII No 50 abril de 2012

Siacutentesis Los algoritmos criptograacuteficos utilizados desde la antigua Roma hasta nuestros

diacuteas son meacutetodos que convierten un mensaje de texto plano a cifrado al proceso inverso se le

conoce como descifrar Este artiacuteculo realiza un estudio de algunas teacutecnicas de encriptacioacuten claacutesicas

del siglo pasado como lo son el cifrado de Cesar y el cifrado de Vigeneacutere asiacute como muestra

teacutecnicas baacutesicas y modernas de criptoanaacutelisis basadas en la teoriacutea de la informacioacuten y estadiacutestica

como lo son la entropiacutea y el ataque de maacutexima correlacioacuten Las teacutecnicas de criptoanaacutelisis descritas

anteriormente pueden ser usadas en otros meacutetodos de cifrado siempre y cuando esteacuten presentes las

mismas debilidades

Resultados Los autores implementaron en lenguajes de programacioacuten Python un

algoritmo para el caacutelculo de entropiacutea para diferentes longitudes de clave Para la implementacioacuten

de los algoritmos de cifrado y descifrado de Vigeneacutere y de maacutexima correlacioacuten utilizaron lenguaje

de programacioacuten C++ Se probaron los meacutetodos anteriormente descritos sobre textos planos de

diferentes longitudes logrando un resultado de 9385 de efectividad en promedio

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de dos de los

algoritmos de encriptacioacuten maacutes antiguos y baacutesicos pero sobre todo que conociendo los meacutetodos

de criptoanaacutelisis me permitiraacuten analizar debilidades y fortalezas de algoritmos

18

Tiacutetulo del Trabajo ULTRACOM Computacioacuten de Alto Rendimiento para Criptoanaacutelisis

Autor Antonio Castro Lechtaler Alejandro Repetto Martiacuten Bianchi Marcelo Cipriano

Alejandro Arroyo Arzubi Ceacutesar Cicerchia Eduardo Malvacio

Fecha octubre 2014

Lugar Buenos Aires Argentina

Publicado en XX Congreso Argentino de Ciencias de la Computacioacuten (Buenos Aires

2014)

Siacutentesis La generacioacuten de nuacutemeros primos fundamentales para la produccioacuten de claves

el anaacutelisis de secuencias pseudo-aleatorias los procesos de verificacioacuten y validacioacuten de algoritmos

de seguridad en un sentido geneacuterico requieren enormes cantidades de procesamiento Los

procesos relacionados con la matemaacutetica criptograacutefica se caracterizan por la alta necesidad de

coacutemputo El objetivo de ULTRACOM es desarrollar una computacioacuten distribuida multipropoacutesito

que permita como primera aplicacioacuten real el anaacutelisis la validacioacuten y la ejecucioacuten de pruebas de

estreacutes sobre sistemas criptograacuteficos El presente trabajo de investigacioacuten detalla el proceso de

desarrollo de ULTRACOM y muestra un ejemplo de su implementacioacuten en una versioacuten Beta Para

ello toman como entrada dos versiones del algoritmo Trivium Utilizando la misma

infraestructura y sin desarrollo extra se prueban grandes voluacutemenes de claves y vectores de

inicializacioacuten de los algoritmos en busca de secuencias deacutebiles de menor longitud que la de la

buscada

Resultados El equipo implementoacute una versioacuten beta de la plataforma ULTRACOM

comprobando la factibilidad y viabilidad teacutecnica de la generalizacioacuten de la infraestructura de

computacioacuten distribuida en grilla (malla) BOINC Este avance permite extender los horizontes de

BOINC y habilita la posibilidad de obtener la capacidad de coacutemputo de alto rendimiento a bajo

19

costo Concluyeron que ULTRACOM es un proyecto viable escalable y de alto impacto para la

evaluacioacuten y validacioacuten de algoritmos criptograacuteficos

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento y la

implementacioacuten de una arquitectura de computacioacuten distribuida y una vez siendo factible su

desarrollo utilizar su poder de coacutemputo atacando a traveacutes de un algoritmo un sistema criptograacutefico

20

Tiacutetulo del Trabajo Criptografiacutea Cuaacutentica

Autor M Baig

Fecha 2010

Lugar Barcelona Espantildea

Siacutentesis En este artiacuteculo el autor realiza una breve introduccioacuten a la criptografiacutea claacutesica y

la relacioacuten que existe con la teoriacutea de la informacioacuten de Shannon la cual asegura que el cifrado

digital simeacutetrico es secreto y perfecto siempre y cuando se cumplan los tres requisitos

1 La llave ha de ser aleatoria

2 La llave debe usarse soacutelo una vez

3 La llave ha de ser tan larga como el mensaje y de un solo uso debe de estar en posesioacuten

tanto del emisor como del receptor

El punto 3 es el maacutes complicado de cumplir debido a la forma de compartir la llave entre

el emisor y receptor

Maacutes adelante en el artiacuteculo se hace un anaacutelisis sobre otra teacutecnica de criptografiacutea que es el

cifrado digital asimeacutetrico en la que se estudia coacutemo funcionan las llaves privadas y puacuteblicas asiacute

como el meacutetodo de criptograacutefico RSA

Resultados

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento maacutes profundo de

los meacutetodos de criptografiacutea simeacutetricos y asimeacutetricos especiacuteficamente el algoritmo asimeacutetrico

RSA

21

Tiacutetulo del Trabajo La Criptografiacutea Maderista en la Revolucioacuten Mexicana (1910-1911)

Criptoanaacutelisis de una carta cifrada por Gabriel Leyva Solano

Autor Roberto Narvaacuteez

Fecha 2011

Lugar Meacutexico DF

Siacutentesis Este trabajo aborda temas relacionados con las comunicaciones secretas del

movimiento revolucionario comandado por Francisco I Madero a partir de 1910 Se compone de

dos partes la primera es una breve resentildea criacutetica de ejemplos criptograacuteficos del maderismo que

fueron generados entre 1910 y 1911 la segunda describe paso a paso el criptoanaacutelisis que aplicoacute

el autor Roberto Narvaacuteez para desencriptar una carta parcialmente cifrada de Gabriel Leyva Solano

a Francisco I Madero

Resultados El propoacutesito general uacuteltimo es contribuir al conocimiento de la criptografiacutea

mexicana en el siglo XX En lo particular se trata de poner a disposicioacuten de los estudiosos el

contenido completo de la carta de Leyva Solano por primera vez despueacutes de 100 antildeos y al mismo

tiempo someter a la criacutetica teacutecnica e histoacuterica el procedimiento criptoanaliacutetico puesto en operacioacuten

para recuperar el texto plano

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados en nuestro paiacutes sobre formas y meacutetodos de encriptacioacuten durante la Revolucioacuten

Mexicana incluso mucho antes de la 2ordf Guerra mundial momento donde se registroacute un auge

importante dentro de la criptografiacutea moderna

22

Tiacutetulo de Tesis Anaacutelisis de la programacioacuten concurrente sobre la cpu y gpu en el

desarrollo de fractal build

Autor Joseacute Vicente Anilema Guadalupe

Fecha 2012

Lugar Riobamba Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la geometriacutea euclidiana debido a que

el autor realiza una aplicacioacuten que crea paisajes fractales lo que significa crear un paisaje con una

misma figura geomeacutetrica Lo anterior se traduce en una necesidad de gran poder de coacutemputo para

realizar de una manera eficaz la tarea Dentro de la tesis el autor realiza diversos estudios

comparativos entre el procesamiento serializado realizado por una CPU (unidad central de

procesamiento) y procesamiento paralelizado realizado por una GPU (Unidad grafica de

procesamiento) a traveacutes de diversas herramientas para obtener el mejor aprovechamiento de los

recursos

Resultados El autor concluye que es necesario examinar los algoritmos a utilizar para que

estos puedan ser utilizados en coacutemputo paralelo Ademaacutes de que es necesario aprender ciertas

herramientas a utilizar para aprovechar al maacuteximo el coacutemputo distribuido y no desperdiciar el

poder de procesamiento muy superior que las GPUrsquos nos pueden brindar

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados para medir y comparar la velocidad de procesamiento de la unidad central de

procesamiento (CPU) y la unidad graacutefica de procesamiento (GPU) Asiacute como la medida en Flops

(Operaciones de punto flotante por segundo)

23

Tiacutetulo del Trabajo Arquitectura cluacutester de alto rendimiento utilizando herramientas de

software libre

Autores Leonardo Chiquiguanca Edyson Malla Freddy Ajila Rene Guamaacuten-Quincheacute

Fecha mayo 2015

Lugar Loja Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la gran cantidad de datos que tienen

que procesar las universidades puacuteblicas dentro de sus investigaciones realizadas en diferentes aacutereas

como la ingenieriacutea medicina etc y la carencia de recursos econoacutemicos para obtener

supercomputadoras que procesen dicha informacioacuten Los autores proponen dentro de su

investigacioacuten la utilizacioacuten de equipo de coacutemputo existente dentro de su universidad y por medio

de software libre realizar agrupamiento de computadoras para poder lograr el procesamiento de

grandes voluacutemenes de datos de una manera accesible

Resultados Los autores concluyen que la mejor arquitectura para el agrupamiento

(cluacutester) de computadoras en ambientes universitarios es la arquitectura Beowulf debido a que la

implementaron en hardware convencional existente dentro de su campus universitario y que

ademaacutes usaron software libre mencionando que el poder de coacutemputo logrado fue muy cercano al

de una supercomputadora

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de las teacutecnicas

utilizadas en ambientes universitarios para la realizacioacuten de agrupamiento de computadoras y

sobre todo la optimizacioacuten de costos para realizar dicha tarea y tener como finalidad el lograr

mayor capacidad de procesamiento

24

Tiacutetulo de Tesis Desarrollo de un algoritmo de cifrado simeacutetrico de resumen

Autores Jonathan Dave Orjuela Navarrete

Antildeo 2008

Lugar Bogotaacute DC

Siacutentesis Esta tesis realiza un estudio de varios meacutetodos de criptografiacutea simeacutetrica para

posteriormente utilizando diferentes foacutermulas matemaacuteticas crear un algoritmo criptograacutefico

nuevo Dentro de la tesis utiliza dos meacutetodos para realizar pruebas a su algoritmo criptoanaacutelisis

diferencial y criptoanaacutelisis basado en fallos de hardware Dentro de los cuales hace un estudio

detallado de las teacutecnicas y herramientas de criptoanaacutelisis realizado a su algoritmo

Resultados El autor concluye de manera positiva con la realizacioacuten del algoritmo y de

manera satisfactoria con la realizacioacuten de criptoanaacutelisis a su algoritmo pudiendo demostrar la

fortaleza del algoritmo a traveacutes de ejemplo de cifrado con textos claro muy parecido y su

conversioacuten a cadenas completamente diferentes

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de criptoanaacutelisis diferencial y criptoanaacutelisis basado en fallos de hardware para la

evaluacioacuten de algoritmos de cifrado simeacutetrico de textos claros

25

Tiacutetulo del Trabajo Firt step in a Pc cluster development with openMosix

Autores Javier Bilbao Gorka Garate

Antildeo 2008

Lugar Bilbao Spain

Siacutentesis En este trabajo se afirma que es posible hacer maacutequinas de alta capacidad de

caacutelculo mediante la interconexioacuten de equipos con redes de alta velocidad A este tipo de sistemas

se les llama sistemas distribuidos y hoy en diacutea es la tecnologiacutea maacutes utilizada para resolver

problemas que requieren una gran capacidad de caacutelculo La agrupacioacuten de computadoras permite

que varias computadoras trabajen juntas para resolver los problemas de informaacutetica comuacuten Este

artiacuteculo centra su estudio en uno de los diferentes meacutetodos de agrupamiento de computadoras

openMosix El trabajo tambieacuten evaluacutea el cluacutester por dos casos de estudio donde se mejora el

tiempo de ejecucioacuten de los problemas resueltos

Resultados El autor del artiacuteculo concluye con la realizacioacuten satisfactoria de agrupamiento

de computadoras bajo el meacutetodo openMosix el cual uacutenicamente permite agrupamiento de la forma

SSI (Single System Image) que se refiere a que uacutenicamente se puede realizar el agrupamiento con

todos los nodos ejecutando un mismo sistema operativo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras openMosix ventajas desventajas y dificultades para

su implementacioacuten

26

Tiacutetulo del Trabajo Disentildeo e implementacioacuten de un cluacutester tipo Beowulf para el desarrollo

de coacutemputo cientiacutefico avanzado

Autores Edgar Rubeacuten Gonzaacutelez Ramiacuterez Abimael Rodriacuteguez Saacutenchez

Antildeo 2008

Lugar Instituto Politeacutecnico Nacional Meacutexico DF

Siacutentesis Este trabajo de tesis ha desarrollado e implementado una herramienta

computacional llamada Cluster Beowulf para mejorar la programacioacuten paralela Comenzando

con la memoria compartida y distribuida el autor implemento el agrupamiento tipo Beowulf

pensando en procesamiento paralelo la optimizacioacuten de las fuentes informaacuteticas El disentildeo se

construye mediante una distribucioacuten Linux Fedora Core 6 a 64 bits utilizando todas las ventajas

que ofrece el estaacutendar Gigabyt Ethernet La programacioacuten paralela fue desarrollada en lenguaje C

tanto para MPI como para OPENMP

Resultados El autor del artiacuteculo concluye que de acuerdo con los resultados el tiempo

de procesamiento se redujo con el uso muacuteltiples nuacutecleos mejoroacute hasta ocho veces gracias al

multihilo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras Beowulf y su implementacioacuten en sistemas operativos

de uso libre Linux distribucioacuten Fedora 6

27

Marco Teoacuterico

21 Seguridad de la Informacioacuten

La Seguridad de la Informacioacuten consiste y hace referencia a la proteccioacuten de cualquier

amenaza para salvaguardar los activos fijos y en especial toda informacioacuten de la cual estaacute basada

la continuidad de las operaciones de la empresa sean estas ocasionadas dentro o fuera de la misma

con esto se logra disminuir los dantildeos y perjuicios que estas amenazas causariacutean a la organizacioacuten

y a la vez aumentar las oportunidades de servicio hacia otras empresas

La Seguridad de la informacioacuten se consigue mediante la implementacioacuten de controles

efectivos que pueden ser normas manual de funciones buenas praacutecticas procedimientos

estructuras organizativas funciones de software y hardware planes de contingencia y herramientas

que se encargan de proteger la privacidad e integridad de la informacioacuten que se almacena en un

sistema informaacutetico Estos controles necesitan continuamente ser establecidos monitoreados

revisados y mejorados en donde sea necesario para asegurar que se cumplan los objetivos

especiacuteficos de seguridad en cada aacuterea de negocio de la organizacioacuten

La seguridad informaacutetica es en realidad una rama de la seguridad de la informacioacuten aunque

de forma praacutectica algunos autores suelen utilizar de manera indistinta ambos teacuterminos

211 Objetivo de la seguridad de la informacioacuten En la seguridad de la informacioacuten

sabiendo que dichos procesos de seguridad permiten proteger el recurso maacutes importante y valioso

de una organizacioacuten partiendo como principio fundamental los procesos de aseguramiento el

28

objetivo del proceso de seguridad informaacutetica es obtener un nivel aceptable de seguridad ya que

la informacioacuten es lo maacutes valioso que tiene una institucioacuten o empresa por lo tanto esta debe ser

protegida para que no sea vulnerable y utilizada para fines maliciosos

212 Principios de la seguridad informaacutetica

Confidencialidad Los datos solo deben ser conocidos y accedidos por quienes esteacuten

autorizados durante su almacenamiento procesamiento o trasmisioacuten Verificar y certificar que solo

los usuarios con accesos autorizados puedan acceder a la informacioacuten

Integridad Los datos solo pueden ser modificados y eliminados por quienes esteacuten

autorizados para ello es decir los sistemas y aplicaciones solo deben ser operados por personal

autorizado

Disponibilidad Los sistemas que almacenan datos e informacioacuten deben garantizar su

acceso cuando asiacute se requiera por quienes tengan derecho a ello

213 Caracteriacutesticas de seguridad informaacutetica

Control Solo los usuarios autorizados deciden cuaacutendo y coacutemo permitir el acceso a la

informacioacuten

Auditoriacutea Establece las acciones cuaacutendo las implementa y quieacuten las realiza sobre el

sistema

Autenticidad Define que la informacioacuten necesaria es correcta utilizable y vaacutelida en tiempo

y forma

No Repudio Su funcioacuten es evitar que alguna entidad que envioacute o recibioacute informacioacuten

alegue que no lo hizo

29

214 Formas de Autenticacioacuten

Contrasentildea Una contrasentildea es un tipo de seguridad informaacutetica ya que es una serie de

caracteres secretos que permiten a un usuario tener acceso a un archivo equipo de coacutemputo o

programa y negar el acceso a usuarios no autorizados

Certificado digital Es un tipo de seguridad informaacutetica que permite la firma digital

electroacutenica que garantiza teacutecnica y legalmente la identidad de una persona en Internet

Autenticacioacuten HTTP Tipo de seguridad informaacutetica que delega la autenticacioacuten de

usuarios a un servidor a traveacutes de Kerberos

215 Ciber-seguridad Con los avances tecnoloacutegicos y la demanda que ha causado en ello

existe un elevado iacutendice de informacioacuten personal y empresarial que circula y se mantiene en la red

por la utilizacioacuten del internet esto permite que toda informacioacuten quede expuesta a cualquier ataque

de ciber-delincuentes los cuales buscan la manera de vulnerar cualquier sistema para espiar robar

informacioacuten o hacer dantildeo de cualquier tipo por lo que se ha visto la necesidad de tomar medidas

de seguridad para salvaguardar la informacioacuten ya que es muy importante

La ciberseguridad es la proteccioacuten de los sistemas conectados a Internet incluidos el

hardware el software y los datos de los ciberataques En un contexto informaacutetico la seguridad

comprende la ciberseguridad y la seguridad fiacutesica ambas son utilizadas por las empresas para

proteger contra el acceso no autorizado a los centros de datos y otros sistemas de coacutemputo El

objetivo de la ciberseguridad es limitar el riesgo y proteger los activos de Tecnologiacuteas de

Informacioacuten de los atacantes con intenciones maliciosas La seguridad de la informacioacuten estaacute

30

disentildeada para mantener la confidencialidad integridad y disponibilidad de los datos es un

subconjunto de la ciberseguridad

22 Criptografiacutea

La Criptografiacutea tambieacuten llamada ldquoescritura ocultardquo tradicionalmente en el aacutembito de

criptografiacutea es donde se ocupan las teacutecnicas de cifrado o codificacioacuten que permiten alterar el

contenido de cierta informacioacuten o mensajes con el fin de hacerlos ininteligibles a receptores o

personas no autorizadas (Meneacutendez-Barzanallana 17)

Actualmente la criptografiacutea se encarga de analizar algoritmos protocolos y sistemas que

son utilizados para proveer seguridad a las comunicaciones informacioacuten y a las entidades que se

comunican entre siacute

221 Tipos de Criptografiacuteas

2211 Tablas Hash Un hash o funcioacuten hash toma un grupo de caracteres (llamado clave)

y lo asigna a un valor de cierta longitud (llamado valor hash o hash) El valor hash es representativo

de la cadena de caracteres original pero normalmente es maacutes pequentildeo que el original

El hash tambieacuten es utilizado en el cifrado y descifrado de firmas digitales La funcioacuten hash

transforma la firma digital luego tanto el valor hash como la firma se enviacutean al receptor El

receptor utiliza la misma funcioacuten hash para generar el valor hash y luego lo compara con el recibido

31

en el mensaje Si los valores hash son los mismos es probable que el mensaje se haya transmitido

sin errores

Un ejemplo de una funcioacuten hash se llama plegado(folding) Esta toma un valor original lo

divide en varias partes luego agrega las partes y usa los uacuteltimos cuatro diacutegitos restantes como

valor o clave hash

2212 Tipos de algoritmos Hash

22121 SHA - 1 (Secure Hash Algorithm) Es un algoritmo criptograacutefico de Hash

publicado por el gobierno de los Estados Unidos Genera un valor Hash de 160 bits a partir de una

secuencia de longitud arbitraria Es considerado lo suficientemente seguro para aplicaciones

praacutecticas pero hay disponibles versiones maacutes robustas SHA - 256 SHA - 384 y SHA - 512 que

generan valores Hash de 256 384 y 512 bits respectivamente estas versiones reemplazaraacuten a SHA

- 1 mientras se siga trabajando sobre ellas (Borghello 2009)

22122 MD5 (Message Digest Algorithm) En criptografiacutea MD5 es una funcioacuten hash

criptograacutefica ampliamente utilizada con un valor hash de 128 bits Como estaacutendar de Internet (RFC

1321) MD5 se ha empleado en una amplia variedad de aplicaciones de seguridad y tambieacuten se

usa comuacutenmente para verificar la integridad de los archivos Un hash MD5 generalmente se

expresa como un nuacutemero hexadecimal de 32 diacutegitos

MD5 es una versioacuten reforzada de MD4 Al igual que MD4 el hash MD5 fue inventado por

el profesor Ronald Rivest del Massachusetts Institute of Technology (MIT) Ademaacutes MD5 se

32

utilizoacute como modelo para SHA-1 ya que comparten muchas caracteriacutesticas comunes MD5 y

SHA-1 son los dos algoritmos hash maacutes utilizados en la actualidad aunque el uso de MD5 ha

disminuido ya que ahora se considera roto (Borghello 2009)

22123 RIPEMD ndash 160 Es una funcioacuten hash criptograacutefica basada en la construccioacuten

Merkle-Damgaringrd (MD) Se usa en el estaacutendar de Bitcoin Es una versioacuten reforzada del algoritmo

RIPEMD que produce un resumen de hash de 128 bits mientras que el algoritmo RIPEMD-160

produce una salida de 160 bits La funcioacuten de compresioacuten consta de 80 etapas formadas por 5

bloques que se ejecutan 16 veces cada uno Este patroacuten se ejecuta dos veces con los resultados

combinados en la parte inferior utilizando la adicioacuten del moacutedulo 32 (Borghello 2009)

22124 Funcioacuten Merkle-Damgaringrd La construccioacuten MD es una metodologiacutea para crear

funciones hash resistentes a colisiones a partir de funciones de compresioacuten unidireccionales Ralph

Merkle la propuso en el antildeo de 1979 en ldquoA certified Digital Signaturerdquo posterior a este estudio

Ivan Damgaringrd demostroacute de manera independiente que la estructura era soacutelida (Merkle amp

Damgaringrd sf)

2213 Cifrado simeacutetrico Los cifrados simeacutetricos son los cifrados criptograacuteficos maacutes

antiguos y maacutes utilizados En un cifrado simeacutetrico la clave que descifra el texto cifrado es la

misma (o puede derivarse faacutecilmente) de la clave que cifra el texto claro Esta clave a menudo se

conoce como la clave secreta Los cifrados simeacutetricos maacutes utilizados son DES y AES

La problemaacutetica que surge es la seguridad de la clave

33

El emisor cifra el mensaje con una clave

Enviacutea el mensaje cifrado de tal manera que nadie puede descifrarlo sin dicha clave

El receptor obtiene la clave y entonces puede descifrar el mensaje con la misma clave

que recibioacute del emisor

Algunos algoritmos de este tipo son

22131 RC5 (Cifrado de Rivest) Es un algoritmo de cifrado de bloque de clave simeacutetrica

disentildeado por Ron Rivest en 1994 Se destaca por ser simple raacutepido (debido a que usa solo

operaciones de coacutemputo primitivas como XOR o shift) y ademaacutes por consumir menos memoria

RC5 es un cifrado de bloques y aborda dos bloques de palabras a la vez Dependiendo del

tamantildeo del bloque de texto sin formato nuacutemero de rondas y tamantildeo de clave se pueden definir

varias instancias de RC5 y cada instancia se denota como RC5-w r b donde w = tamantildeo de

palabra en bits r = nuacutemero de rondas y b = tamantildeo de la clave en bytes (Pawar 2016)

Como se ha mencionado RC5 utiliza bloques de 2 palabras el tamantildeo del bloque de texto

sin formato puede ser de 32 64 o 128 bits

22132 IDEA (International Data Encryption Algorithm) Baacutesicamente es un algoritmo

de cifrado de bloque simeacutetrico El algoritmo asimeacutetrico utiliza la misma clave para el cifrado y

descifrado Un cifrado de bloque divide el mensaje en bloques cada uno de una longitud fija y

luego cifra cada bloque de forma independiente

34

El tamantildeo de bloque tiacutepico es de 16 bytes de 128 bits Un cifrado de bloque generalmente

operaraacute en bloques o rondas donde se aplica parte de la clave a la ronda Despueacutes de un cierto

nuacutemero de rondas digamos entre 10 y 16 se termina con el texto cifrado para ese bloque

El bloque de texto cifrado tiene exactamente el mismo tamantildeo que el bloque de texto sin

formato 16 bytes Para cada ronda se trabaja en el bloque utilizando una parte de la clave de

cifrado a la que se le llama la clave redonda Muacuteltiples claves redondas se derivan de la clave de

cifrado utilizando para esto un programa de claves

La programacioacuten de claves es un algoritmo que cambia XOR multiplica y realiza otros

tipos de operaciones en la clave de cifrado original para obtener estas claves redondas Bueno si

tengo un bloque de 16 bytes y tengo una clave de 128 bits que tambieacuten es de 16 bytes (Educba

2019)

22133 DES (Data Encryption Standard) El algoritmo DES es el algoritmo de seguridad

maacutes popular Es un algoritmo simeacutetrico lo que significa que se utilizan las mismas claves para

cifrar descifrar datos confidenciales La longitud de la clave es de 8 bytes (64 bits) Entonces

para cifrar descifrar datos el algoritmo DES utiliza una clave de 8 bytes pero 1 byte (8 bits) para

la verificacioacuten de paridad Es un algoritmo de cifrado de bloque por lo tanto el tamantildeo del bloque

de datos del algoritmo DES es de 64 bits Para cifrar descifrar datos el algoritmo DES utiliza la

estructura Feistel Entonces utiliza una ronda para cifrar descifrar datos Aunque el tamantildeo del

35

bloque de datos es de 64 bits el nuacutemero de rondas seraacute de 16 rondas asiacute mismo utilizaraacute diferentes

subclaves para cada ronda por lo tanto el nuacutemero de subclaves seraacute de 16 subclaves

Como se puede observar la clave efectiva es de 56 bits por consiguiente se tiene 256

combinaciones posibles por lo que la fuerza bruta se hace casi imposible (Sanjoy 2015)

2214 Cifrado asimeacutetrico Los cifrados asimeacutetricos tambieacuten se conocen como cifrados

con claves puacuteblicas y privadas Usan dos claves una para el cifrado de mensajes y la otra durante

el descifrado

Un intruso puede encriptar cualquier mensaje usando la clave puacuteblica conocida Los

cifrados asimeacutetricos son por lo tanto vulnerables a los ataques de texto sin formato Los cifrados

con encriptacioacuten de clave puacuteblica deben proporcionar seguridad contra tales ataques Despueacutes de

encriptar dos mensajes con la misma clave puacuteblica el intruso no puede distinguir queacute texto cifrado

estaacute conectado con queacute texto plano Ademaacutes un observador que analiza dos mensajes encriptados

usando el mismo algoritmo y la misma clave puacuteblica no puede distinguir sus textos cifrados

(Kowalczyk 2015)

Los cifrados asimeacutetricos son mucho maacutes lentos que los cifrados simeacutetricos (generalmente

mil veces maacutes lentos) Es una praacutectica comuacuten usar el cifrado de clave puacuteblica solo para establecer

la conexioacuten segura y negociar la nueva clave secreta que luego se utilizaraacute para proteger la

comunicacioacuten mediante cifrado simeacutetrico Ejemplos de este cifrado son

36

22141 DSA (Digital Signature Algorithm - Algoritmo de Firma digital) Es un estaacutendar

del Gobierno Federal de los Estados Unidos para firmas digitales Fue propuesto por el Instituto

Nacional de Estaacutendares y Tecnologiacutea (NIST) en agosto de 1991 para ser usado en su Estaacutendar de

Firma Digital (DSS) en el antildeo de 1993

La primera parte del algoritmo DSA es la generacioacuten de clave puacuteblica y clave privada que

puede describirse como

Se elige un nuacutemero primo q que se llama divisor primo

Se elige otro nuacutemero primo p de modo que pndash1 mod q = 0 p seraacute llamado moacutedulo

primo

Ahora se elige un nuacutemero entero g tal que 1 ltg ltp g q mod p = 1 g = h ((p

ndash 1) q) mod p q tambieacuten se llama moacutedulo de orden multiplicativo de g moacutedulo p

Se elige un nuacutemero entero tal que 0 ltx ltq

Se calcula y como g x mod p

Se empaqueta la clave puacuteblica como p q g y

Por uacuteltimo se empaqueta la clave privada como p q g x

La segunda parte del algoritmo DSA es la generacioacuten de firma y la verificacioacuten de firma

Para generar una firma de mensaje el remitente puede seguir estos pasos

Se genera el resumen del mensaje h utilizando un algoritmo hash como SHA1

Se genera un nuacutemero aleatorio k tal que 0 ltk ltq

37

Se calcula r como (g k mod p) mod q Si r = 0 seleccione una k diferente

Ahora se calcula i de modo que k i mod q = 1 i se llama el inverso multiplicativo modular

de k moacutedulo q

Se calcula s = i (h + r x) mod q Si s = 0 se selecciona una k diferente

Por uacuteltimo se empaqueta la firma digital como r s (Yang 2019)

22142 RSA Encriptacioacuten RSA encriptacioacuten Rivest-Shamir-Adleman tipo de

criptografiacutea de clave puacuteblica ampliamente utilizada para la encriptacioacuten de datos de correo

electroacutenico y otras transacciones digitales a traveacutes de Internet RSA lleva el nombre de sus

inventores Ronald L Rivest Adi Shamir y Leonard M Adleman quienes lo crearon mientras

trabajaban en la facultad del Instituto Tecnoloacutegico de Massachusetts (Simmons 2019)

En el sistema RSA un usuario elige de manera secreta un par de nuacutemeros primos p y q tan

grandes que factorizar el producto n = pq estaacute mucho maacutes allaacute de las capacidades informaacuteticas

proyectadas para la vida uacutetil de los cifrados A partir del antildeo 2000 los estaacutendares de seguridad del

gobierno de EE UU exigen que el moacutedulo tenga un tamantildeo de 1024 bits es decir p y q deben

tener un tamantildeo de aproximadamente 155 diacutegitos decimales por lo que n es aproximadamente un

nuacutemero de 310 diacutegitos Dado que los nuacutemeros duros maacutes grandes que actualmente se pueden

factorizar son solo la mitad de este tamantildeo y dado que la dificultad de factorizar se duplica

aproximadamente por cada tres diacutegitos adicionales en el moacutedulo se cree que los moacutedulos de 310

diacutegitos estaacuten a salvo de factorizar durante varias deacutecadas

38

2215 Cifrado hiacutebrido Es una teacutecnica comuacuten que combina diferentes funciones

criptograacuteficas como el cifrado de bloque Con el cifrado hiacutebrido se pueden cifrar datos firmarlos

o agregar un MAC y enviarlos en un objeto seguro (como una cadena o archivo) a traveacutes de un

canal de comunicacioacuten inseguro (sin un acuerdo clave entre dos partes)

En el sistema de cifrado hiacutebrido el texto plano (sin formato) se divide en tokens Luego

se calcula la longitud de cada ficha Los tokens y sus longitudes se almacenan en una matriz

Posteriormente se aplica el algoritmo Ceacutesar anidado sugerido El texto producido se almacena en

una matriz n x m llamada A Luego la transposicioacuten de esta matriz At se calcula utilizando

nuestra versioacuten revisada del cifrado de transposicioacuten para resolver el problema de secuenciacioacuten

A continuacioacuten el algoritmo RSA revisado se aplica en la matriz producida En el paso final se

aplica el formato de datos textuales usando el coacutedigo ASCII para producir el texto cifrado El

proceso de descifrado se realiza de la misma manera pero en orden inverso (Nahar amp Abu Abbas

2010)

23 Criptoanaacutelisis

El criptoanaacutelisis es el proceso de estudiar sistemas criptograacuteficos para buscar debilidades

o fugas de informacioacuten En general se considera que el criptoanaacutelisis explora las debilidades de

las matemaacuteticas subyacentes de un sistema criptograacutefico pero tambieacuten incluye la buacutesqueda de

debilidades en la implementacioacuten como ataques de canal lateral o entradas de entropiacutea deacutebiles

39

Su funcioacuten es la de conseguir obtener el significado de mensajes creados por medio de

criptografiacutea El objetivo principal del criptoanaacutelisis es opuesto al de la criptografiacutea Tiene como

finalidad encontrar la debilidad de las diferentes teacutecnicas criptograacuteficas para explotarla y de esta

manera reducir o eliminar la seguridad de la teacutecnica criptograacutefica Cualquier intento de

criptoanaacutelisis puede ser llamado ataque Una vez que un atacante logra romper la seguridad que

una teacutecnica criptograacutefica aportaba al sistema se dice que dicho sistema ha sido roto y por lo tanto

dicho ataque tuvo eacutexito

El criptoanaacutelisis es la investigacioacuten de sistemas texto cifrado y cifrados para revelar el

significado oculto o los detalles del sistema mismo El objetivo de este tipo de estudio es descubrir

los aspectos ocultos incluso si la clave o el algoritmo principal no se pueden descifrar Se necesita

una combinacioacuten exitosa de persistencia matemaacuteticas intuicioacuten curiosidad y una computadora

que funcione para hacer un buen criptoanalista Este tipo de ruptura de coacutedigo es extremadamente

importante especialmente en el mundo tecnoloacutegicamente dependiente de hoy El criptoanaacutelisis es

constantemente realizado por criptoacutegrafos que intentan obtener informacioacuten valiosa y por aquellos

que intentan descifrar el coacutedigo para revelar secretos (Security Degree Hub 2017)

24 Niveles de seguridad

Los niveles de seguridad de sistemas operativos son otorgados de acuerdo con el sistema

operativo que esteacute utilizando la empresa o institucioacuten ya sea puacuteblica privada gubernamental o no

gubernamental En el manual ldquoTrusted Computer System Evaluation Criteriardquo (United States

40

Government Department of Defense 1983) el Departamento de Defensa de los Estados Unidos

define los siguientes niveles

241 Nivel D1 Este nivel es el maacutes bajo de seguridad por lo tanto la norma establece que

el sistema no es confiable Esta divisioacuten contiene solo una clase Estaacute reservado para aquellos

sistemas que han sido evaluados pero que no cumplen con los requisitos para un nivel de

evaluacioacuten superior

242 Nivel C1 Un sistema de nivel C1 cumple nominalmente los requisitos de seguridad

discrecionales al proporcionar separacioacuten de usuarios y datos Incorpora alguna forma de controles

creiacutebles capaces de imponer limitaciones de acceso de manera individual es decir aparentemente

adecuados para permitir que los usuarios puedan proteger la informacioacuten privada o del proyecto y

evitar que otros usuarios lean o destruyan accidentalmente sus datos Se espera que el entorno de

nivel C1 sea uno de los usuarios cooperantes que procesan datos con el mismo nivel de

sensibilidad Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten

de nivel C1 son

Control de acceso discrecional por ejemplo listas de control de acceso (ACL)

usuario grupo

Por lo general para usuarios que estaacuten en el mismo nivel de seguridad

Proteccioacuten de nombre de usuario y contrasentildea y base de datos de autorizaciones

seguras (ADB)

Sistema operativo protegido y modo de operaciones del sistema

Comprobacioacuten perioacutedica de integridad de TCB

41

Mecanismos de seguridad probados sin derivaciones obvias

Documentacioacuten para la seguridad del usuario

Documentacioacuten para la seguridad de la administracioacuten de sistemas

Documentacioacuten para pruebas de seguridad

Documentacioacuten de disentildeo TCB

Tiacutepicamente para usuarios en el mismo nivel de seguridad

La certificacioacuten C1 es rara Los sistemas de ejemplo son versiones anteriores de

Unix IBM RACF

243 Nivel C2 Los sistemas de esta clase imponen un control de acceso discrecional maacutes

fino que los sistemas (C1) lo que hace que los usuarios sean individualmente responsables de sus

acciones a traveacutes de procedimientos de inicio de sesioacuten auditoriacutea de eventos relevantes para la

seguridad y aislamiento de recursos Los siguientes son requisitos miacutenimos para los sistemas

asignados a una clasificacioacuten de nivel C2

La proteccioacuten de objetos puede ser para un solo usuario Por ejemplo a traveacutes de

una base de datos ACL

La autorizacioacuten de acceso solo puede ser asignada por usuarios autorizados

Proteccioacuten de reutilizacioacuten de objetos (Por ejemplo para evitar la reasignacioacuten de

objetos eliminados de manera segura)

Procedimientos obligatorios de identificacioacuten y autorizacioacuten para los usuarios (Por

ejemplo Usuario Contrasentildea)

Auditoriacutea completa de eventos de seguridad (es decir fecha hora evento usuario

eacutexito falla ID de terminal)

42

Modo de operacioacuten del sistema protegido

Proteccioacuten adicional para la autorizacioacuten y los datos de auditoriacutea

Documentacioacuten como C1 maacutes informacioacuten sobre el examen de la informacioacuten de

auditoriacutea

Esta es una de las certificaciones maacutes comunes Los sistemas operativos de ejemplo

son VMS IBM OS 400 Windows NT Novell NetWare 411 Oracle 7 DG AOS

VS II

244 Nivel B1 Los sistemas de este nivel requieren todas las caracteriacutesticas requeridas

para el nivel C2 Ademaacutes debe estar presente una declaracioacuten informal del modelo de poliacutetica de

seguridad etiquetado de datos y control de acceso obligatorio sobre sujetos y objetos nombrados

La capacidad debe existir para etiquetar con precisioacuten la informacioacuten exportada Cualquier falla

identificada por la prueba debe ser eliminada Los siguientes son requisitos miacutenimos para los

sistemas asignados a una clasificacioacuten de nivel B1

Etiquetado obligatorio de seguridad y acceso de todos los objetos (Por ejemplo

archivos procesos dispositivos)

Comprobacioacuten de integridad de etiquetas (Por ejemplo mantenimiento de etiquetas

de sensibilidad cuando se exportan datos)

Auditoriacutea de objetos etiquetados

Control de acceso obligatorio para todas las operaciones

Capacidad para especificar el nivel de seguridad impreso en salida legible para

humanos (Por ejemplo impresoras)

43

Capacidad para especificar el nivel de seguridad en cualquier salida legible por

maacutequina

Auditoriacutea mejorada

Proteccioacuten mejorada del sistema operativo

Documentacioacuten mejorada

Los sistemas operativos de ejemplo son HP-UX BLS Cray Research Trusted

Unicos 80 Digital SEVMS Harris CS SX SGI Trusted IRIX

245 Nivel B2 En los sistemas de nivel B2 el TCB se basa en un modelo de poliacutetica de

seguridad formal claramente definido y documentado que requiere que la aplicacioacuten de control de

acceso discrecional y obligatoria que se encuentra en los sistemas de nivel B1 se extienda a todos

los sujetos y objetos en el sistema Ademaacutes se abordan los canales encubiertos El TCB debe

estructurarse cuidadosamente en elementos criacuteticos para la proteccioacuten y no criacuteticos para la

proteccioacuten La interfaz TCB estaacute bien definida y el disentildeo y la implementacioacuten TCB le permiten

someterse a pruebas maacutes exhaustivas y una revisioacuten maacutes completa Se fortalecen los mecanismos

de autenticacioacuten se proporciona una gestioacuten confiable de las instalaciones en forma de soporte

para las funciones de administrador y operador del sistema y se imponen estrictos controles de

gestioacuten de la configuracioacuten El sistema es relativamente resistente a la penetracioacuten Los siguientes

son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de nivel B2

Notificacioacuten de cambios en el nivel de seguridad que afectan a los usuarios

interactivos

Etiquetas de dispositivos jeraacuterquicos

44

Acceso obligatorio a todos los objetos y dispositivos

Comunicaciones de ruta confiables entre usuario y sistema

Rastreo de canales de almacenamiento encubiertos

Modo de operaciones del sistema maacutes estricto en unidades independientes de varios

niveles

Anaacutelisis de canales encubiertos

Pruebas de seguridad mejoradas

Modelos formales de TCB

Versioacuten actualizacioacuten y anaacutelisis y revisioacuten de parches

Los sistemas de ejemplo son Honeywell Multics Cryptek VSLAN Trusted

XENIX

246 Nivel B3 El TCB debe satisfacer los requisitos del monitor de referencia para mediar

todos los accesos de los sujetos a los objetos ser a prueba de manipulaciones y ser lo

suficientemente pequentildeo como para ser sometido a anaacutelisis y pruebas Con este fin el TCB estaacute

estructurado para excluir el coacutedigo que no es esencial para la aplicacioacuten de la poliacutetica de seguridad

con una importante ingenieriacutea del sistema durante el disentildeo y la implementacioacuten del TCB dirigido

a minimizar su complejidad Se admite un administrador de seguridad los mecanismos de

auditoriacutea se ampliacutean para sentildealar eventos relevantes para la seguridad y se requieren

procedimientos de recuperacioacuten del sistema El sistema es altamente resistente a la penetracioacuten

Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de clase

(B3)

45

ACL adicionalmente basadas en grupos e identificadores

Acceso de ruta confiable y autenticacioacuten

Anaacutelisis automaacutetico de seguridad

Modelos TCB maacutes formales

Auditoriacutea de eventos de auditoriacutea de seguridad

Recuperacioacuten confiable despueacutes de la caiacuteda del sistema y documentacioacuten relevante

Cero defectos de disentildeo en TCB y defectos miacutenimos de implementacioacuten

El uacutenico sistema operativo con certificacioacuten B3 es Getronics Wang Federal XTS-

300

247 Nivel A1 Los sistemas en el nivel A1 son funcionalmente equivalentes a los del nivel

B3 en que no se agregan caracteriacutesticas arquitectoacutenicas adicionales ni requisitos de poliacuteticas La

caracteriacutestica distintiva de los sistemas en este nivel es el anaacutelisis derivado de la especificacioacuten

formal del disentildeo y las teacutecnicas de verificacioacuten y el alto grado resultante de seguridad de que el

TCB se implementa correctamente Esta garantiacutea es de naturaleza de desarrollo comenzando con

un modelo formal de la poliacutetica de seguridad y una especificacioacuten formal de alto nivel del disentildeo

Independientemente del lenguaje de especificacioacuten particular o del sistema de verificacioacuten

utilizado existen los siguientes criterios importantes para la verificacioacuten del disentildeo de nivel A1

Meacutetodos formales y prueba de integridad de TCB

Estos son los uacutenicos sistemas con certificacioacuten A1 Boeing MLS LAN Gemini

Trusted Network Processor Honeywell SCOMP (United States Government

Department of Defense 1983)

46

25 Sistemas Operativos

Un sistema operativo actuacutea como intermediario entre el usuario de una computadora y el

hardware de la computadora El propoacutesito de un sistema operativo es proporcionar un entorno en

el que un usuario pueda ejecutar programas de manera conveniente y eficiente

Un sistema operativo es un software que administra el hardware de la computadora El

hardware debe proporcionar mecanismos apropiados para garantizar el correcto funcionamiento

del sistema informaacutetico y para evitar que los programas del usuario interfieran con el correcto

funcionamiento del sistema (Carretero Peacuterez de Miguel Anasagasti Garciacutea Carballeira amp Peacuterez

Costoya 2001)

Un sistema operativo es un programa que controla la ejecucioacuten de programas de aplicacioacuten

y actuacutea como una interfaz entre el usuario de una computadora y el hardware de la computadora

Una definicioacuten maacutes comuacuten es que el sistema operativo es el uacutenico programa que se ejecuta

en todo momento en la computadora (generalmente llamado kernel) y todo lo demaacutes son

programas de aplicacioacuten

Un sistema operativo se ocupa de la asignacioacuten de recursos y servicios como memoria

procesadores dispositivos e informacioacuten El sistema operativo incluye los programas para

administrar estos recursos como un controlador de traacutefico un programador un moacutedulo de

administracioacuten de memoria programas de E S y un sistema de archivos (Pawar 2016)

47

251 Windows Sistema operativo de la empresa Microsoft es un conjunto de programas

que administra los recursos de una computadora Windows empieza a trabajar cuando se enciende

o inicializa el equipo para gestionar el hardware empezando desde los niveles maacutes baacutesicos

Es importante conocer que los sistemas operativos funcionan tanto en las computadoras

como en diferentes dispositivos electroacutenicos que usan microprocesadores En este caso Windows

su versioacuten estaacutendar funciona con computadoras Microsoft domina el mercado de los sistemas

operativos debido a su comodidad se puede decir que eacuteste sistema operativo se encuentra

instalado en el 887 de los equipos de coacutemputo que cuentan con acceso a Internet en todo el

mundo

Se pueden mencionar algunas aplicaciones principales (que eacutestas tambieacuten pueden ser

desinstaladas por los usuarios o actualizadas sin que el sistema operativo se dantildee o deje de

funcionar) se encuentran el procesador de texto WordPad el navegador Internet Explorer el

reproductor multimedia Windows Media y el editor de imaacutegenes Paint

La principal novedad que aportoacute Windows desde sus oriacutegenes fue la facilidad para usarlo

y el atractivo visual De hecho su nombre (ldquoventanasrdquo) se debe a la forma en que el sistema

presenta a los usuarios los recursos con los que cuenta su computadora lo que facilita las tareas

cotidianas Windows tambieacuten suele recibir varias criacuteticas por sus problemas de seguridad y por

otros fallos

48

252 Registro de Windows El registro es una base de datos jeraacuterquica que contiene datos

que son criacuteticos para el funcionamiento de Windows y las aplicaciones y servicios que se ejecutan

en Windows Los datos estaacuten estructurados en un formato de aacuterbol Cada nodo en el aacuterbol se llama

clave Cada clave puede contener subclaves y entradas de datos llamadas valores A veces la

presencia de una clave es el uacutenico dato que requiere una aplicacioacuten otras veces una aplicacioacuten

abre una clave y usa los valores asociados con la clave (Microsoft Inc 2019) Una clave puede

tener cualquier nuacutemero de valores y los valores pueden tener cualquier forma El registro es

utilizado por

Autenticacioacuten

Nuacutecleo (Kernel)

Controladores de dispositivos

Servicios

SAM

Las carpetas del sistema se almacenaraacuten en distintas rutas de acceso dependiendo de la

versioacuten de Windows con la que se esteacute trabajando a continuacioacuten cuatro de los cinco archivos

que maacutes interesan a esta investigacioacuten se encuentran en la siguiente ubicacioacuten SystemRoot

System32 Config dentro de las siguientes sub llaves

SAM - HKEY LOCAL MACHINE SAM

SECURITY - HKEY LOCAL MACHINE SECURITY

SOFTWARE - HKEY LOCAL MACHINE SOFTWARE

SYSTEM - HKEY LOCAL MACHINE SYSTEM

49

253 Administrador de cuentas de seguridad El administrador de cuentas de seguridad

(SAM por sus siglas en ingleacutes) es una base de datos en donde se encuentran las cuentas de

seguridad Esto es utilizado por Windows para administrar las cuentas de usuario y contrasentildeas en

el formato hash

Las contrasentildeas nunca se almacenan en formato de texto claro Se almacenan en formato

de hash para protegerlas de los ataques La base de datos SAM se implementa como un archivo de

registro y las obtiene del kernel de Windows y mantiene un bloqueo exclusivo al archivo SAM

esto quiere decir que el archivo tiene cierta medida de seguridad para el almacenamiento de las

contrasentildeas (Hernandez 2013)

No es posible copiar el archivo SAM a otra ubicacioacuten en el caso de los ataques en liacutenea

Dado que el archivo SAM estaacute bloqueado con un bloqueo exclusivo al sistema de archivos no

puede ser copiado o movido mientras se ejecuta Windows El bloqueo no iniciaraacute hasta que la

excepcioacuten de la pantalla azul haya sido inicializada o el sistema operativo haya sido apagado Sin

embargo los archivos en formato hash de contrasentildeas fuera de liacutenea estaacuten disponibles para los

ataques de fuerza bruta el contenido del archivo SAM puede ser copiado o descargado utilizando

diversas teacutecnicas

Un identificador de seguridad (SID) es un valor uacutenico de longitud variable utilizado para

identificar a un usuario Cada cuenta tiene un SID uacutenico emitido por una autoridad como un

controlador de dominio de Windows y almacenado en una base de datos de seguridad Cada vez

50

que un usuario inicia sesioacuten el sistema recupera el SID para ese usuario de la base de datos y lo

coloca en el token de acceso para ese usuario El sistema usa el SID en el token de acceso para

identificar al usuario en todas las interacciones posteriores con la seguridad de Windows Cuando

se ha usado un SID como identificador uacutenico para un usuario o grupo no se puede volver a usar

para identificar a otro usuario o grupo

La seguridad de Windows usa SID en los siguientes elementos de seguridad

En descriptores de seguridad para identificar al propietario de un objeto y grupo

primario

En las entradas de control de acceso para identificar al usuario para quien el acceso

estaacute permitido denegado o auditado

En tokens de acceso para identificar al usuario y los grupos a los que pertenece

2531 Identificador de Seguridad (SID Security Identifier)

S - 1 - 5 - 21 - 3983109318 - 554656936 - 3066752241 - 1000

S - indica que es un string de SID

1 - el nivel de revisioacuten

5 - el identificador de valor de autoridad o authority value no siempre seraacute 5 Entre otros

valores que se pueden encontrar estaacuten los siguientes

51

0 - sin autoridad

1 - autoridad global

2 - autoridad local

3 - autoridad de creador

4 - autoridad no uacutenica

5 - autoridad NT

9 - autoridad de administrador de recursos

21 - 3983109318 - 554656936 - 3066752241 - es el dominio en el que se encuentra el

sistema o el identificador local de la computadora

1000 - ID uacutenico para cada cuenta aquiacute se encuentra el RID (Relative Identifier) Nuacutemero

de longitud variable cualquier grupo o usuario que se cree de manera diferente a la predeterminada

recibiraacute un RID de 1000 o superior En el caso de que el valor sea 500 responde a que este SID

representa la cuenta de un administrador el valor de 500 siempre seraacute el mismo en cualquier cuenta

de administrador a su vez el valor 501 representa el SID de una cuenta Invitado (Guest)

(Hernandez 2013)

254 Autenticacioacuten NTML NTLM (NT LAN Manager) es un protocolo empleado por

muchos productos de Microsoft para realizar la autenticacioacuten desafiacuteorespuesta por lo tanto es el

esquema de autenticacioacuten que por defecto usa Firewall de Microsoft y tambieacuten los productos del

servidor proxy

52

Este software fue desarrollado para afrontar el problema del trabajo con Tecnologiacuteas Java

en un entorno orientado a Microsoft Puesto que no se basa en ninguna especificacioacuten oficial de

protocolo por lo tanto no hay garantiacutea de que funciona correctamente en todos los casos Tambieacuten

ha estado en algunas instalaciones de Windows donde funcionoacute con eacutexito

La Autenticacioacuten NTLM se compone de dos protocolos protocolo de autenticacioacuten NTLM

y protocolo de autenticacioacuten LM Estos protocolos utilizan una metodologiacutea de hash diferente para

almacenar contrasentildeas de los usuarios en la base de datos SAM (Hernandez 2013) (Meneacutendez-

Barzanallana 17)

26 LINUX (ROCKS)

Rocks es una distribucioacuten para cluacutester de Linux de coacutedigo abierto que permite a los usuarios

finales construir de manera maacutes amigable cluacutesteres computacionales y muros de visualizacioacuten en

mosaico Cientos de investigadores de todo el mundo han utilizado Rocks para implementar su

propio cluacutester

Desde mayo de 2000 el grupo Rocks ha abordado las dificultades de implementar cluacutesteres

manejables Encaminados hacia un objetivo crear cluacutesters de manera maacutes sencilla Por sencilla

significa faacutecil de implementar administrar actualizar y escalar Este objetivo impulsa a los

creadores de esta herramienta a ayudar a entregar el poder computacional de los cluacutesteres a una

amplia gama de usuarios cientiacuteficos Estaacute claro que poner a disposicioacuten de una amplia gama de

53

cientiacuteficos plataformas de computacioacuten paralelas estables y manejables ayudaraacute enormemente a

mejorar el estado del arte en herramientas paralelas (Rocksclusters 2010)

261 Escritorio De todos los escritorios disponibles para el sistema operativo Linux

GNOME ha logrado convertirse en el maacutes eficiente estable y confiable sin dejar de ser sencillo

de usar De hecho la mayoriacutea de los usuarios independientemente de su experiencia pueden

trabajar con GNOME casi sin esfuerzo

Los usuarios que son nuevos tanto en Linux como en GNOME hariacutean mejor en conocer

los entresijos del escritorio que hacen que Linux no solo sea faacutecil sino tambieacuten divertido

Un entorno de escritorio agrupa programas que trabajan juntos para formar un espacio de

trabajo informaacutetico cohesivo unificado transparente e interactivo para los usuarios O para

decirlo de manera maacutes simple el entorno de escritorio es la interfaz de usuario para el sistema

operativo En el caso de GNOME ese sistema operativo es Linux Sin un entorno de escritorio su

uacutenica alternativa es una sesioacuten de Shell (liacutenea de comandos) basada en texto (Wallen 2019)

262 Paquete de Oficina Una suite ofimaacutetica es una coleccioacuten de software creada por el

mismo proveedor y disentildeada para ser utilizada para tareas rutinarias dentro de una organizacioacuten

Por lo general una suite ofimaacutetica incluye aplicaciones como procesamiento de texto hojas de

caacutelculo presentacioacuten correo electroacutenico toma de notas base de datos colaboracioacuten y otros tipos

de software relacionados En la mayoriacutea de los casos cada aplicacioacuten en la suite ofimaacutetica se puede

instalar por separado y todas las aplicaciones dentro de la suite admiten la interoperabilidad entre

54

siacute Microsoft Office Suite Lotus Live Notes y LibreOffice son todas suites de oficina de uso

comuacuten

263 Organizador de archivos Es una funcioacuten avanzada disentildeada para agrupar y

renombrar archivos usando sus atributos del sistema o meta atributos

Cada archivo tiene atributos del sistema como la fecha (Acceso Creado y Modificado) el

tipo de archivo (definido por extensioacuten) y asociado con la aplicacioacuten registrada de ese tipo de

archivo Estos atributos se pueden usar para generar un nuevo nombre de archivo o carpeta (grupo)

para cada archivo con el mismo atributo Ademaacutes de los atributos del sistema algunos archivos

en su mayoriacutea medios o imaacutegenes pueden contener metacampos como el nombre del artista el

tiacutetulo el nombre del aacutelbum y otros El Organizador de archivos tambieacuten usa estos metacampos

para agrupar archivos en una carpeta con el mismo atributo Por lo tanto el organizador de archivos

opera reglas de organizacioacuten de archivos que definen la jerarquiacutea de agrupacioacuten de carpetas y las

reglas de cambio de nombre de archivos

Asiacute como el conocido ldquoexplorador de Windowsrdquo Linux integra un organizador de archivos

y carpetas llamado NAUTILUS para realizar tareas de manejo de archivos como mover copiar

renombrar crear carpetas y de esta manera administrar nuestros dispositivos de almacenamiento

55

27 Agrupamiento (Cluacutester) de Computadoras

El agrupamiento (cluacutester) de computadoras estaacute conformado por una coleccioacuten de

computadoras autoacutenomas interconectadas trabajando unidas como un solo recurso de computacioacuten

integrado El concepto de agrupamiento de computadoras nacioacute cuando los pioneros de la

supercomputacioacuten intentaban difundir diferentes procesos entre varias computadoras para luego

poder recoger los resultados que dichos procesos debiacutean producir Con un hardware maacutes barato y

faacutecil de conseguir se pudo perfilar que podriacutean conseguirse resultados muy parecidos a los

obtenidos con aquellas maacutequinas mucho maacutes costosas (Chirinov 2003)

Un agrupamiento de computadoras se puede definir como el trabajo realizado por dos o

maacutes computadoras que en conjunto se encargan de proveer una determinada solucioacuten Tiene como

finalidad agrupar el poder de coacutemputo de los nodos implicados para proporcionar una mayor

escalabilidad disponibilidad y fiabilidad (Branch Bedoya amp Mesa Muacutenera 2008)

La escalabilidad es la capacidad de un equipo para hacer frente a voluacutemenes de trabajo

cada vez mayores sin por ello dejar de prestar un nivel de rendimiento aceptable

La disponibilidad y la fiabilidad se encuentran bastante relacionadas aunque difieren

ligeramente en algunos aspectos La disponibilidad es la calidad de estar presente y listo para su

uso mientras que la fiabilidad es la probabilidad de un correcto funcionamiento

56

Entre los tipos de agrupamiento maacutes comunes se pueden encontrar de alta disponibilidad

(ambiente a prueba de fallas) coacutemputo de alto desempentildeo (los procesos o las tareas dadas se

presentan como un solo sistema virtual) y escalamiento horizontal (se utiliza para proporcionar

una sola interfaz a un conjunto de recursos que pueden aumentar o disminuir arbitrariamente su

tamantildeo en un cierto periodo de tiempo) (Gonzaacutelez Ramiacuterez amp Rodriacuteguez Saacutenchez 2008)

271 Beowulf Es una clase de computadora masivamente paralela de altas prestaciones

principalmente construida a base de agrupamiento de componentes hardware estaacutendar (Llorens amp

Pentildea 2002) Consta de un conjunto de nodos minimalistas unidos por un medio de

comunicaciones econoacutemico Esto quiere decir que tienen lo miacutenimo para ejecutar su funcioacuten de

hecho los nodos por siacute solos no son capaces de ejecutar siquiera un sistema operativo (Nievas

Pino amp Arroyo) Se puede ver como una supercomputadora paralela construida con hardware

comercial de faacutecil adquisicioacuten que posee como sistema operativo Linux Los cluacutesters Beowulf son

extremadamente poderosos pero no son para todas las personas Su principal desventaja es que

requieren software disentildeado para poder aprovechar los recursos del cluacutester (Lizaacuterraga 2002)

272 Mosix Seguacuten Peacuterez (2001) la arquitectura Mosix estaacute basada en la misma ideologiacutea

de la arquitectura Beowulf Se basa en un conjunto de parches aplicados al nuacutecleo (kernel) de Linux

y que asignan a todo el grupo de nodos un espacio de direcciones y de procesos comuacuten gracias al

cual los procesos migran de uno a otro con el fin de equilibrar favorablemente la carga del sistema

global Es una herramienta disentildeada para realizar balanceo de carga en el agrupamiento de forma

totalmente transparente de manera tal que los nodos se comportan como una sola maacutequina y asiacute

incrementar el aprovechamiento de cada uno de los nodos (Chaacutevez y otros 1999) La principal

57

ventaja de Mosix frente a Beowulf se basa precisamente en esto Mosix da mejores respuestas que

Beowulf frente a la caiacuteda o insercioacuten de nodos A parte de esto Mosix permite un cambio constante

de aplicacioacuten o incluso el correr aplicaciones independientes de forma simultaacutenea

273 OpenMosix OpenMosix es una extensioacuten del proyecto Mosix Seguacuten Chirinov

(2003) la idea de este modelo es que la distribucioacuten de tareas en el cluacutester la determina OpenMosix

de forma dinaacutemica conforme se van creando tareas Cuando un nodo estaacute demasiado cargado las

tareas que se estaacuten ejecutando pueden migrar a cualquier otro nodo del cluacutester Asiacute desde que se

ejecuta una tarea hasta que eacutesta muere podraacute migrar de un nodo a otro sin que el proceso sufra

mayores cambios

Ademaacutes OpenMosix funciona a nivel de kernel por tanto puede conseguir toda la

informacioacuten que necesite para decidir que tanto estaacute cargado un sistema y queacute pasos se deben

seguir para aumentar el rendimiento ademaacutes puede realizar maacutes funciones que cualquier

aplicacioacuten a nivel de usuario

Despueacutes de elegir el tipo de cluacutester a utilizar se procede a elegir los elementos baacutesicos que

se emplearaacuten para implementar el cluacutester capacidad de procesamiento memoria espacio del disco

de cada nodo asiacute como tambieacuten el ancho de banda de la comunicacioacuten entre los nodos Se deberaacute

decidir cuaacuteles son importantes basaacutendose en la variedad de aplicaciones que se piensen ejecutar

en el cluacutester y de la cantidad de dinero que se disponga para construirlo

58

Bajo estos mismos paraacutemetros se debe escoger tambieacuten el tipo de red que interconectaraacute

los nodos (Turner 2004)

Luego se debe escoger el sistema operativo a utilizar Esta eleccioacuten dependeraacute mucho de

la maacutequina que se escoja Linux es siempre una opcioacuten en cualquier maacutequina y es la eleccioacuten maacutes

comuacuten Muchas de las herramientas necesarias para la implementacioacuten de un cluacutester han sido

desarrolladas bajo Linux Pero existen cluacutesters corriendo bajo Windows NT UNIX Solaris y AIX

59

Capiacutetulo 3 Implementacioacuten de Cluacutester

31 Requisitos previos

Antes de iniciar la instalacioacuten del FrontEnd es necesario asegurarse que las conexiones de

red de los equipos junto con la configuracioacuten de la BIOS de cada uno sean las correctas

311 Conexioacuten de los equipos y acceso a la red

Un cluacutester de alto desempentildeo funciona como un uacutenico equipo el cuaacutel comparte los recursos

de los nodos esclavos con el nodo maestro para ello es esencial la existencia de una red interna de

alta velocidad por medio de la cual se realice la comunicacioacuten entre el nodo maestro y los nodos

esclavos como se muestra en la Figura 31 El nodo maestro necesitaraacute 2 tarjetas de red de alta

Figura 31 Esquema tiacutepico de configuracioacuten de un cluacutester (Fuente Elaboracioacuten propia)

60

velocidad una para la comunicacioacuten interna y otra para la comunicacioacuten con redes externas El

sistema operativo Rocks asigna automaacuteticamente la interface ldquoeth0rdquo a la red interna del cluacutester y

la interface ldquoeth1rdquo a la red externa En caso de que Rocks sea incapaz de determinar cuaacutel es la red

externa debido a la falta de conexioacuten a internet estas podriacutean ser asignadas de manera incorrecta

por tal motivo se sugiere asegurar el nombre de cada una de las interfaces

Dado que Rocks no permite volverlas a asignar una vez finalizada la instalacioacuten es

necesario volver a reinstalarlo para poder solucionar este inconveniente

312 Configuracioacuten de la BIOS Para evitar problemas durante la instalacioacuten conviene

configurar correctamente la Bios

3121 ATAIDE Mode Algunos sistemas operativos puede que no sean capaces de

reconocer el controlador del disco duro como es en el caso de esta distribucioacuten de Rocks usada

Para evitar complicaciones de tener que antildeadir el controlador a mano lo mejor es habilitar el modo

ldquoLegacyrdquo de controlador de disco duro

61

Para ello se accede a la Bios pulsando F2 al encender el equipo se situacutea en la pestantildea

ldquoAdvancedrdquo y se selecciona ldquoDrive Configurationrdquo como se muestra en la Figura 32

Figura 32 Imagen del Bios del equipo en la opcioacuten ldquodrive configurationrdquo (Fuente Elaboracioacuten propia)

Figura 33 Bios ATAIDE Legacy Mode (Fuente Elaboracioacuten propia)

62

Dentro del menuacute se tiene que seleccionar el Modo ldquoLegacyrdquo en la opcioacuten ldquoATAIDE

Moderdquo como se muestra en la Figura 33 y para salir se guardan los cambios con F10

3122 PXE Al momento de instalar un nodo puede ocurrir falla al arrancar y aparecer

bootsplash (Reboot and Select proper device) Para evitarlo es necesario habilitar la opcioacuten de

PXE para que tome los archivos de instalacioacuten del nodo maestro a traveacutes de la red interna

En la Bios se selecciona la pestantildea ldquoBootrdquo y dentro de ese mismo menuacute se deshabilita

ldquoSilent bootrdquo y se habilita la opcioacuten de ldquoPXE boot to lanrdquo como se muestra en la Figura 34

Finalmente hay que verificar que en la secuencia de arranque (Figura 35) como primer

dispositivo sea desde red para que de esta manera inicie desde el PXE

Figura 34 Bios Boot PXE (Fuente Elaboracioacuten propia)

63

Se guardan los cambios antes de salir

32 Instalacioacuten de Sistema Operativo Rocks

Una vez configurados los equipos se enciende el equipo que seraacute el nodo maestro

(FrontEnd) en el cuaacutel previamente se ha modificado la secuencia de inicio del boot desde la Bios

de modo que al insertar el CD de Rocks eacuteste procederaacute a iniciar la instalacioacuten con la siguiente

pantalla que se muestra a continuacioacuten

Figura 35 Bios Boot device prioriry (Fuente Elaboracioacuten propia)

64

Para iniciar la instalacioacuten uacutenicamente se selecciona la opcioacuten ldquoInstall CentOS 7rdquo como se

muestra en la Figura 36 dando asiacute comienzo al proceso de instalacioacuten Tras finalizar un proceso

de carga en memoria Rocks mostraraacute un formulario en entorno graacutefico mediante el cual

procederemos a configurar el FrontEnd

Esta primera pantalla se muestra coacutemo se desea realizar la instalacioacuten puede realizarse

por medio de la descarga del sistema operativo (se requiere internet) En este caso como se muestra

en la Figura 37 dado que previamente se descargoacute el DVD completo se seleccionoacute ldquoCDDVD

based rollsrdquo

Figura 36 Pantalla de Inicio de instalacioacuten de Rocks (Fuente Elaboracioacuten propia)

65

A continuacioacuten Figura 38 se selecciona de la lista de Rolls aquellos que se desean instalar

Figura 37 Pantalla de seleccioacuten de Rolls (Fuente Elaboracioacuten propia)

Figura 38 Listado de opciones de rolls para instalar (Fuente Elaboracioacuten propia)

66

Tras presionar el botoacuten ldquoSubmitrdquo la siguiente pantalla (Figura 39) muestra formulario en

el que hay que indicar la informacioacuten baacutesica del cluacutester entre las cuales aparecen

Fully-Qualified Host Name Nombre con el que se conoceraacute en la red externa el cluacutester

Cluster Name Nombre utilizado para ser identificado dentro de las herramientas del cluacutester

Certificate Organization Locality State and Country Organizacioacuten a la que pertenece el

cluacutester la localidad el estado y la ciudad

Contact URL and LattitudeLongitude Contacto direccioacuten web y posicioacuten GPS

Figura 39 Informacioacuten baacutesica del cluacutester a instalar (Fuente Elaboracioacuten propia)

67

Una vez que se ingresa la informacioacuten al cluacutester se presiona el botoacuten ldquoListordquo y

posteriormente se podraacute cambiar la configuracioacuten baacutesica de la red interna del cluacutester En este caso

Figura 310 se dejoacute el valor por defecto una IP de clase B (1011116)

El siguiente paso es la configuracioacuten de la red externa (para tener acceso a internet) En

este punto se introducen los datos de la red externa a la que se encuentra conectado el nodo

maestro como se muestra en la Figura 311

Figura 310 Configuracioacuten Ethernet de la red privada (Fuente Elaboracioacuten propia)

Figura 311 Configuracioacuten Ethernet de la red puacuteblica (Fuente Elaboracioacuten propia)

68

Para terminar de configurar la red externa como se muestra en la Figura 312 se ingresa la

direccioacuten IP del Gateway y los DNS (Servidor de nombre de dominio) que va a usar para el acceso

a internet

Se continuacutea con el resto del formulario donde se introduce la contrasentildea para el usuario

root tal y como se muestran en la Figura 313

Figura 312 Configuracioacuten de DNS y Gateway (Fuente Elaboracioacuten propia)

Figura 313 Ingresar contrasentildea de usuario root (Fuente Elaboracioacuten propia)

69

Paso siguiente se procede a seleccionar la zona horaria como se muestra en la Figura 314

donde se encuentra ubicado el cluacutester asiacute como un servidor de donde podraacute obtener la zona horaria

automaacuteticamente en este caso se dejoacute el valor por default

En el formulario de la Figura 315 se selecciona la forma de particionar el disco duro

(automaacutetica manual) una vez seleccionado daraacute comienzo al proceso de instalacioacuten de manera

Figura 314 Configuracioacuten horaria (Fuente Elaboracioacuten propia)

Figura 315 Particiones del disco duro (Fuente Elaboracioacuten propia)

70

desatendida Cuando ha concluido la instalacioacuten el equipo se reiniciaraacute y se requeriraacute iniciar con

el usuario root y la contrasentildea establecida previamente

321 Configuracioacuten del teclado Debido a que el teclado por defecto estaacute en idioma

ingleacutes podriacutea provocar problemas al momento de escribir la contrasentildea u otros comandos

Seguacuten las pruebas realizadas aunque se cambie la configuracioacuten del teclado desde el menuacute

de preferencias uacutenicamente se mantiene dentro de la sesioacuten desde la que se ha cambiado dicha

opcioacuten (lo cual implica que la contrasentildea de usuario hay que introducirla seguacuten la distribucioacuten

inglesa)

33 Instalacioacuten de los nodos

Previo a la instalacioacuten de los nodos esclavos cada uno de los equipos fueron configurados

desde la Bios para que arranquen desde la red (seccioacuten 3122) Para ir antildeadiendo los nodos solo

se tiene que introducir el siguiente comando desde nuestro FrontEnd

$insert-ethers

A continuacioacuten como se muestra en la Figura 316 apareceraacute una ventana en la pantalla

en la cual se seleccionaraacute la opcioacuten ldquoComputerdquo

71

Una vez realizado este paso se procede a encender los equipos que funcionaraacuten como

nodos esclavos uno a uno

Se sugiere esperar a que cada nuevo equipo encendido esteacute marcado con un asterisco antes

de proceder a encender el siguiente como se muestra en la Figura 317 De esta manera se asegura

que cada nuevo nodo antildeadido posea el nombre y numeracioacuten deseada

Figura 316 Pantalla para ingresar nodos (Fuente Elaboracioacuten propia)

Figura 317 Indicador de insercioacuten de nuevos nodos (Fuente Elaboracioacuten propia)

72

Puede darse el caso de que un nodo no sea detectado automaacuteticamente eso indica que se

ha omitido alguacuten paso o parte de la configuracioacuten realizada hasta el momento es incorrecta En ese

caso comprobar lo siguiente

Que el nodo esclavo este correctamente conectado a la red interna

Que el FrontEnd (nodo maestro) tenga correctamente configurada la red interna y externa

Que el PXE esteacute habilitado en la Bios del nodo esclavo

331 Administracioacuten de nodos Algunos de los comandos maacutes uacutetiles para para la gestioacuten

de los nodos son los siguientes

Eliminar un nodo de la lista

Reinstalar un nodo

Listar los nodos ya instalados

Acceder a un nodo

$rocks remove host nombre_nodo

$rocks remove host nombre_nodo

$rocks set host boot nombre_nodo action=install

$rocks set host boot nombre_nodo action=install

$rocks list host

$rocks list host

$ssh nombre_nodo

$ssh nombre_nodo

73

Ejecutar un comando de manera remota a un nodo

332 Creacioacuten de cuentas de usuario Para agregar a un usuario hay que realizar los

siguientes pasos

1 Creacioacuten de la cuenta

$useradd nombre_usuario

2 Asignacioacuten de una contrasentildea

$passwd nombre_usuario

3 Sincronizacioacuten de la cuenta de usuario con el resto de nodos

$rocks-user-sync

333 Configuracioacuten del directorio compartido El directorio share es compartido por el

FrontEnd y el resto de nodos se localiza dentro del FrontEnd en la carpeta exports siendo la

carpeta share un enlace simboacutelico a esta uacuteltima

Al principio es posible que no se sincronicen correctamente los archivos introducidos en el

directorio debido a que la carpeta inicialmente estaacute vaciacutea por lo que para solucionar este

inconveniente puede usarse el comando siguiente para reiniciar dicho servicio

$ssh nombre_nodo lsquocomandorsquo

$ssh nombre_nodo lsquocomandorsquo

$cd

$export fs ndashrv

service nfs restart

$cd

$export fs ndashrv

service nfs restart

74

34 Operaciones baacutesicas de Rocks

Comandos y aplicaciones esenciales para el manejo del cluacutester

Ver que rolls estaacuten instalados

$rocks list roll

Visualizar el estado del sistema Figura 318

$qstat ndashf

Probar el sistema de colas para distribuir tareas a los nodos

Para ello se prueba que el SGE del cluacutester funcione enviaacutendole una serie de trabajos

mediante el comando qsub

En primer lugar se crea un fichero (pruebapl) que tenga permisos de ejecucioacuten con el

siguiente contenido

Figura 318 Comando qstat ndashf (Fuente Elaboracioacuten propia)

75

usrbinperl

for(my $i=0$ilt30$i++) sleep(2) print okn

Y se ejecuta con el siguiente comando

$ for ((i=1ilt=10i+=1)) do qsub pruebapl done

Al ejecutarse se puede comprobar que los trabajos se han mandado Figura 319

Y al realizar de nuevo un ldquoqstat ndashfrdquo Figura 320 se observa coacutemo se van realizando

Figura 319 Enviacuteo de trabajos por medio del comando qsub (Fuente Elaboracioacuten propia)

Figura 320 Estado de los trabajos pendientes mostrados por qstat ndashf (Fuente Elaboracioacuten propia)

76

Para ver la carga de trabajo en el cluacutester de manera global y de forma graacutefica se tiene que

ingresar en un navegador web en la siguiente direccioacuten httplocalhostganglia apareceraacute la

Figura 321

Figura 321 Visualizacioacuten de la distribucioacuten de cargas en el cluacutester usando la herramienta Ganglia (Fuente Elaboracioacuten propia)

77

Capiacutetulo 4 Metodologiacutea y Resultados

Una vez finalizada la instalacioacuten y puesta en operacioacuten del equipo se analizaron diferentes

metodologiacuteas de trabajo lo que implicoacute un trabajo arduo debido a que existen complicaciones

cuando se buscan temas relacionados a vulnerar sistemas operativos La realizacioacuten de este

proyecto estaacute basado en la metodologiacutea de Joshua Picolet ldquoCracking Methodologyrdquo (Picolet

2017)

41 Obtener Archivo hash

Se pueden vulnerar contrasentildeas de Windows de diferentes maneras Una de ellas es

mediante el acceso al archivo del Administrador de cuentas de seguridad (SAM) el cual se detalla

en el apartado 253 a traveacutes de la obtencioacuten de las contrasentildeas del sistema en su forma hash por

medio de herramientas diferentes Alternativamente las contrasentildeas se pueden leer desde la

memoria lo que tiene el beneficio adicional de recuperar las contrasentildeas en texto plano y evitar el

requisito de descifrado Para comprender los formatos que se observan cuando se descarguen

hashes del sistema de Windows se requiere una breve descripcioacuten de los diferentes formatos de

almacenamiento

Originalmente las contrasentildeas de Windows de menos de 15 caracteres se almacenaban en

el formato hash de Lan Manager (LM) Algunos sistemas operativos como Windows 2000 XP y

Server 2003 continuacutean usando estos hashes a menos que esteacuten deshabilitados por el usuario

Ocasionalmente un sistema operativo como Windows Vista puede almacenar el hash LM para la

compatibilidad con otros sistemas Seguacuten analistas incluye varias vulnerabilidades como dividir

78

la contrasentildea en dos bloques y permitir que cada uno se descifre de forma independiente Mediante

el uso de tablas Rainbow es trivial descifrar una contrasentildea almacenada en un hash LM

independientemente de la complejidad Este hash se almacena con la misma contrasentildea calculada

en el formato de hash NT como el que se muestra en el siguiente ejemplo

Ejemplo de un hash NTLM con el componente LM y NT

Administrator500611D6F6E763B902934544489FCC9192BB71ED1E7F2B60ED5A2

EDD28379D45C91

Los sistemas operativos Windows maacutes recientes como el Windows 8 y 10 usan el hash NT

En teacuterminos simples no hay una debilidad significativa en este hash que lo diferencie de cualquier

otra funcioacuten hash criptograacutefica Se requieren meacutetodos de descifrado como lo es la fuerza bruta o

ataque de diccionario para recuperar la contrasentildea si uacutenicamente se almacena en el formato NT

Ejemplo de un hash NTLM uacutenicamente con el componente NT (como se ve en los sistemas

Windows mas recientes

Administrator500NOPASSWORDEC054D40119570A4663

4350291AF0F72

Es importante sentildealar que la cadena NO PASSWORD es variable seguacuten la herramienta

que se utilice Otras pueden presentar esta informacioacuten como ceros rellenos o comuacutenmente puede

79

ver la cadena ldquoAAD3B435B51404EEAAD3B435B51404EErdquo en lugar de ninguna contrasentildea

Esto significa que el hash LM estaacute vaciacuteo y no estaacute almacenado

El archivo hash se encuentran en el directorio ldquoWindows System32 configrdquo y se

necesitan ambos archivos SAM y SYSTEM Ademaacutes tambieacuten se encuentran en el archivo de

registro HKEY_LOCAL_MACHINE SAM al que no se puede acceder durante el tiempo de

ejecucioacuten Finalmente las copias de seguridad se pueden encontrar a menudo en ldquoWindows

Repairrdquo (Peleus 2019)

Para extraer el archivo hash de un sistema operativo con un nivel de seguridad C1 existen

diferentes meacutetodos en esta ocasioacuten se procederaacute a iniciar el equipo objetivo con una distribucioacuten

de Linux desde una memoria USB como se muestra en la figura 41 para de esta manera ingresar

al directorio CWINDOWSSystem32Config directorio de ubicacioacuten de los archivos SAM y

SYSTEM que son los necesarios para obtener el archivo hash (Caballero 2018)

Figura 41 Arranque con LiveUSB KaliLinux (Fuente Elaboracioacuten propia)

80

42 Dar Formato al Hash

En este punto es donde se tiene que identificar el algoritmo con el que fueron encriptados

los archivos SAM y SYSTEM que se han obtenido en el punto anterior con la finalidad de

seleccionar el tratamiento que se les daraacute El algoritmo de encriptacioacuten del archivo SAM de

Windows 10 es NTLM y ademaacutes estaacute almacenado en un formato binario (ByteBleeder 2017) por

lo que fue necesario instalar la herramienta con licencia GNU samdump2 para obtener la syskey y

de esta manera poder extraer los hash desde el archivo SAM de Windows

En la figura 42 se han obtenido los hashes del archivo SAM donde se puede observar que

los usuarios Administrador e Invitado estaacuten deshabilitados ademaacutes de que existen tres cuentas de

usuario activas las cuales son Gad prueba y usuarioprueba cada una con su contrasentildea cifrada

en formato NTLM a la derecha del nombre de usuario la cuenta usuarioprueba fue a la que se le

realizoacute el anaacutelisis que se detalla posteriormente

43 Evaluar la fuerza del Hash

En criptografiacutea se dice que un algoritmo criptograacutefico se rompe si por alguacuten meacutetodo se

consigue reducir su fortaleza es decir reducir por ejemplo su entropiacutea de los 2256 bits teoacutericos a

Figura 42 Resultado de la ejecucioacuten de la herramienta samdump2 (Fuente Elaboracioacuten propia)

81

tan soacutelo 2255 por ejemplo El hecho de que se encuentre una colisioacuten no implica necesariamente

que un algoritmo se haya roto pues podriacutea haber sido realizado mediante fuerza bruta pero puede

ser una causa

Un ataque de colisioacuten significa que encuentro dos entradas diferentes que producen el

mismo resultado de un hash particular Este es generalmente el tipo de ataque maacutes faacutecil Es el tipo

de ataque que se conoce desde hace varios antildeos contra MD5

Dado que una utilidad importante de las funciones hash estaacute en las firmas digitales

encontrar colisiones puede facilitar falsificar firmas digitales Es decir dos mensajes distintos que

tengan un mismo resumen tienen ademaacutes la misma firma y un atacante puede reemplazar un

mensaje por el otro Un ejemplo de este ataque fue demostrado en 2008 por un grupo de

investigadores en Aacutemsterdam los cuales falsificaron un certificado raiacutez mediante el uso de un

ataque de colisioacuten contra el algoritmo MD5 (Preukschat 2015)

Un ataque previo a la imagen generalmente es mucho maacutes difiacutecil es encontrar otra entrada

que produzca el mismo resultado que un hash que ya se conoce

Para tratar de aclarar la diferencia aquiacute en un ataque de colisioacuten encuentro dos entradas A

y B que producen el mismo resultado En un ataque de preimagen comienzo a partir de alguacuten

resultado conocido X y encuentro una entrada que produciraacute X como resultado (Coffin 2015)

82

Para realizar esta evaluacioacuten se tomoacute como base la tabla del apeacutendice Hash craking

benchmark (Picolet 2017) el objetivo es observar el comportamiento y velocidad del Hash

mencionado cuando fue sometido a pruebas de criptoanaacutelisis Si se trata de un Hash lento se deberaacute

ser maacutes selectivo en queacute tipos de diccionarios y meacutetodos de criptoanaacutelisis se le debe aplicar Si es

un Hash raacutepido se puede ser maacutes libre con la estrategia de criptoanaacutelisis Este estudio busca

realizar una prueba de criptoanaacutelisis mostrando las diferencias entre el poder de procesamiento de

un cluacutester de 17 nodos contra una computadora personal por lo que no necesariamente se

implementaraacute el meacutetodo oacuteptimo para la realizacioacuten del criptoanaacutelisis

44 Calcular la capacidad del equipo

Con la informacioacuten de la evaluacioacuten de la fuerza del Hash obtenida en el apartado anterior en

este apartado se tiene que establecer la capacidad de la plataforma o plataformas que realizaraacuten

el criptoanaacutelisis

Para conocer la capacidad de procesamiento del cluacutester de alto rendimiento se utilizoacute la

herramienta Linpack Benchmark HPL es una implementacioacuten portaacutetil del Benchmark de alto

rendimiento LINPACK para equipos de coacutemputo distribuido Actualmente se utiliza para obtener

varios resultados en la lista actual de Top500 de HP cluacutesters (Dongarra 2010)

El Linpack Benchmark (HPL del Ingleacutes High-Performance Linpack Bench-mark) es un

software que resuelve un sistema lineal aleatorio de doble precisioacuten aritmeacutetica (64 bits) en equipos

de memoria distribuida El rendimiento muestra el nuacutemero de operaciones de punto flotante por

segundo logradas por el sistema (Petitet Whaley Dongarra amp Cleary 2008)

83

El HPL fue desarrollado en el Argone National Laboratory por Jack Don-garra en 1976 y

es uno de los maacutes usados en sistemas cientiacuteficos y de ingenieriacutea para el caacutelculo de prestaciones

Las principales caracteriacutesticas del algoritmo utilizado por el HPL son

Distribucioacuten ciacuteclica de datos de bloques de dos dimensiones

Variante derecha de la factorizacioacuten LU con pivoteo parcial (Teacutecnica de pivoteo

Dicta que el elemento pivote que debe escogerse es el mayor absolutamente de cada

columna)

Factorizacioacuten recursiva con pivoteo y reenviacuteo de columna

Distintas topologiacuteas virtuales de reenviacuteos

Algoritmo de reduccioacuten de reenviacuteo para ancho de banda (Castelloacute Gimeno 2014)

La resolucioacuten del sistema de ecuaciones se realiza del siguiente modo

1 Se crea un sistema de ecuaciones

(1)

119860119909 = 119887

(2)

119860 isin 119877119899119909119899

(3)

119909 119887 isin 119877119899

84

HPL calcula que la solucioacuten para un sistema de ecuaciones lineales se puede generalizar

como 119860119909 = 119887 donde 119860 es una matriz 119873 119909 119873 cuyos valores se generan aleatoriamente

119909 119910 119887 son vectores de tamantildeo 119873 Como se muestra en la Figura 43

2 Primero se calcula la factorizacioacuten 119871119880 con pivoteo parcial de los coeficientes 119899 y 119899 + 1

de la matriz [119860 119887]

(4)

119875119903[119860 119887] = [[119871119880] 119910]

(5)

119875119903 119871 119880 isin 119877119899119909119899

(6)

119910 isin 119877119899

El primer paso es la factorizacioacuten de la matriz 119860 en una matriz triangular superior 119880

y una matriz triangular inferior 119871 tal que 119860 = 119871119880 La factorizacioacuten se usa para calcular

el vector solucioacuten 119909

3 Una vez el pivoteo (representado por la permutacioacuten de la matriz 119875119903) y la factorizacioacuten

inferior se aplican sobre 119887 la solucioacuten se obtiene en un paso resolviendo el sistema

superior triangular

Figura 43 Sistema de Ecuaciones tipo 119860119909 = 119887 (Fuente Elaboracioacuten propia)

85

(7)

119880119909 = 119910

La matriz triangular inferior izquierda y el conjunto de pivotes no se devuelven en el

resultado Para la estabilidad numeacuterica el algoritmo de factorizacioacuten utiliza un pivote parcial de

fila

La implementacioacuten paralela de Linpack divide la matriz 119860 119873 119909 119873 en una cuadriacutecula de

procesos 119875 119909 119876 bidimensional y luego la divide en subgrupos de mosaicos 119873119861 119909 119873119861 (Petitet

Whaley Dongarra amp Cleary 2008)

Utilizando la herramienta HPL en esta investigacioacuten se obtuvieron los siguientes

resultados

La prueba abordoacute el ajuste de 119873 y la eficiencia obtenida en comparacioacuten con el rendimiento

maacuteximo Se determinoacute un valor para 119873 = 800000 aleatoriamente para ejecutar HPL en todo el

cluacutester Sin embargo el tiempo fue excesivo por lo tanto se determinoacute que este tamantildeo del

problema fue demasiado grande para el cluacutester Al realizar otros experimentos con valores maacutes

pequentildeos de 119873 se obtuvieron mejores resultados de rendimiento La Tabla 41 muestra el

rendimiento de HPL en GFlops para 119873 = 300000 400000 y 500000 Como se puede observar

en la Tabla 41 se obtuvo el mejor resultado de rendimiento 850 GFlops para 119873 = 500000 para

valores mayores de 119873 la distribucioacuten de cargas del cluacutester empieza a sobrepasar su capacidad como

se muestra en la Figura 44 y la vez su rendimiento disminuye Esto ocurre porque la cantidad de

memoria utilizada con las memorias intermedias de comunicacioacuten MPI es mayor de lo esperado

Por lo tanto es necesario dejar maacutes del 20 de la memoria para el sistema (Petitet Whaley

86

Dongarra amp Cleary 2008) Tambieacuten se realizaron pruebas usando solo un nodo de coacutemputo y el

rendimiento fue de 34 GFlops para 119873 = 20000

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia)

Analizando la eficiencia obtenida para la ejecucioacuten de un solo nodo cuando 119873 = 20000

se obtuvo el 823 del rendimiento maacuteximo (el rendimiento maacuteximo para un solo nodo es 477

Gflops) Para todo el cluacutester el rendimiento maacuteximo seriacutea 119879119898119886119909 = 477 119909 17 =

8109 119866119891119897119900119901119904 aproximadamente

Figura 44 Distribucioacuten de cargas del cluacutester

0

500

1000

300000 400000 500000

Gflops

Gflops

87

La Figura 44 titulada ldquoDistribucioacuten de cargas del cluacutesterrdquo muestra la imagen de la

herramienta Ganglia de manera graacutefica a traveacutes de cuadros que variacutean de color dependiendo de la

carga que tenga cada uno de los nodos al momento de implementar la herramienta HPL De manera

inicial indica que el cluacutester tiene un total de 17 equipos de 4 cores cada uno eso da un total de 68

cores trabajando sin equipos inactivos Muestra tambieacuten una sobrecarga en el cluacutester y un

porcentaje promedio de 100 de uso en la uacuteltima hora

45 Establecer Estrategia

Esto significa uacutenicamente que en este apartado se realizaraacute una guiacutea baacutesica para procesar

los hashes obtenidos sin perder de vista que cada escenario a criptoanalizar es uacutenico en funcioacuten

de las circunstancias externas Como ya se ha mencionado anteriormente esta estrategia de

criptoanaacutelisis se ha planteado implementar dos meacutetodos los cuales son Fuerza Bruta y ataque de

diccionario sin importar si son o no los oacuteptimos debido a que se realizaraacute una comparativa de

capacidad de procesamiento

451 Fuerza Bruta Una vez que se han intentado varios meacutetodos y han fallado se puede

iniciar un ataque de fuerza bruta estaacutendar poniendo especial atencioacuten en la cantidad de siacutembolos

del alfabeto que puede usar el equipo a analizar Por encima de 8 caracteres esto generalmente no

tiene sentido debido a limitaciones de hardware y entropiacutea (complejidad de la contrasentildea) Una

contrasentildea de Windows seguacuten Microsoft (Microsoft Inc 2019) una contrasentildea de Windows debe

estaacute formada por

88

26 Caracteres mayuacutesculas de la ldquoArdquo a la ldquoZrdquo

26 Caracteres minuacutesculas de la ldquoardquo a la ldquozrdquo

10 Diacutegitos de base 10 (0 a 9)

32 Caracteres especiales (~$^amp_-+=|()[]ltgt)

94 Caracteres alfanumeacutericos en total

4511 Cantidad de combinaciones posibles Si se usa una clave numeacuterica (nuacutemeros del 0

al 9) existen 10 posibilidades de 4 diacutegitos de longitud que es la extensioacuten por defecto de los

teleacutefonos celulares Para 4 diacutegitos las combinaciones posibles seriacutean 10 mil 104 = 10000

(Labaca Castro 2014)

Por otro lado si tomamos un alfabeto de 26 letras mayuacutesculas y 26 minuacutesculas 10 nuacutemeros

y 10 caracteres especiales en total tenemos 72 diferentes posibilidades para un uacutenico caraacutecter Eso

significa que las combinaciones para una contrasentildea de 4 caracteres seriacutean 724 = 26873856

Baacutesicamente maacutes de 26 millones de combinaciones en una clave de 4 caracteres contra 10 mil en

una clave de 4 diacutegitos numeacutericos En este estudio se utiliza la contrasentildea de bloqueo descrita en el

apartado anterior que es de 94 combinaciones para cada caraacutecter teniendo una longitud de 7

caracteres por lo tanto seraacuten 947 = 64847759000000 de posibles combinaciones que

nuestros equipos deben explorar para obtener la contrasentildea correcta

Como se mencionoacute en el apartado 42 el usuario sobre el cual se realizoacute el criptoanaacutelisis

fue usuarioprueba el cual constaba de una contrasentildea de longitud 7 caracteres la cual despueacutes

de realizado el anaacutelisis y como se puede observar en la Figura 45

89

1 Anaacutelisis a usuario usuarioprueba

2 Nuacutemero de nodos en operacioacuten 17

3 Nuacutemero de procesos ejecutaacutendose de forma paralela 68

4 Tiempo de duracioacuten del anaacutelisis en el cluacutester 122727 horas

5 Contrasentildea criptoanalizada Pass7

Asiacute mismo en la Tabla 42 se muestra el resultado final y el tiempo de duracioacuten del

criptoanaacutelisis realizado al archivo SAM con el cluacutester y la computadora personal

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Horas)

1 (PC) 4 1075316

17 (Cluacutester) 68 122727

1

2

3

4 5

Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester (Fuente Elaboracioacuten propia)

90

452 Diccionario Meacutetodo empleado para romper la seguridad de los sistemas basados en

contrasentildeas (password) en la que el atacante intenta dar con la clave adecuada probando todas (o

casi todas) las palabras posibles ingresadas previamente en un diccionario idiomaacutetico

Generalmente se emplean programas especiales que se encargan de ello

Este meacutetodo suele ser maacutes eficiente que el meacutetodo de fuerza bruta debido a que muchas

usuarios casi siempre suelen utilizar contrasentildeas con una o varias palabras existentes en su lengua

para que la contrasentildea no sea olvidada faacutecilmente y sea sencilla de recordar esto no es una praacutectica

recomendable (Alegsa 2018)

Para realizar este meacutetodo se utilizoacute un diccionario descargado de internet el cual contiene

10000000 de posibles contrasentildeas (g0tmi1k 2018)

Ademaacutes se ejecutoacute un programa creado en lenguaje C (Anexo 1) a traveacutes de la

implementacioacuten de las libreriacuteas MPI y open MPI propias de la arquitectura de cluacutester de

computadoras Este programa fue ejecutado en los mismos equipos descritos anteriormente para

obtener todos los nuacutemeros primos encontrados dentro de un intervalo dado En este caso el

intervalo dado fue de 10000000 con los siguientes resultados mostrados en la Tabla 43

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos (Fuente Elaboracioacuten

propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Segs)

1 (PC) 4 5078

17 (Cluacutester) 68 00013

91

453 Analizar los resultados Posterior a realizar el criptoanaacutelisis y descifrar con eacutexito

una cantidad suficiente de hashes se analizan los resultados en busca de pistas o patrones Este

anaacutelisis puede ayudar a tener eacutexito en cualquier hash restante

454 Personalizar ataques Tomando como base el anaacutelisis de resultados realizado

previamente se disentildearaacuten diversas estrategias personalizadas que aprovechen las vulnerabilidades

conocidas o patrones Los ejemplos seriacutean ataques de maacutescara personalizados o reglas para

adaptarse al comportamiento o las preferencias del usuario objetivo

92

Conclusioacuten

El trabajo de investigacioacuten presentado parte de la necesidad de buscar alternativas para

explotar al maacuteximo la capacidad de procesamiento del equipo de coacutemputo que existe actualmente

dentro del inventario del Instituto Tecnoloacutegico de Acapulco asiacute como proveer una plataforma que

coadyuve a la investigacioacuten dentro del Instituto a traveacutes de implementar un cluacutester de coacutemputo

con capacidad para realizar proyectos en el aacuterea de ingenieriacutea y matemaacuteticas con el fin de optimizar

el tiempo de ejecucioacuten lo cual en un futuro se veraacute reflejado en ventajas para el desarrollo de la

regioacuten

La revisioacuten y anaacutelisis de informacioacuten en relacioacuten a cluacutesters es muy interesante pero a la

vez es compleja dado que involucra diferentes aspectos durante su evolucioacuten asiacute como diversas

metodologiacuteas para su formacioacuten e implementacioacuten Se considera de suma importancia para este

trabajo las revisiones efectuadas ya que son la base para la propuesta entregada

De acuerdo a las especificaciones teacutecnicas de los equipos informaacuteticos existentes dentro

del laboratorio de la Maestriacutea en Sistemas Computacionales y una vez que se realizoacute el anaacutelisis

de varios casos de eacutexito se propuso la metodologiacutea para implementacioacuten de un cluacutester homogeacuteneo

tipo Beowolf Este meacutetodo estaacute basado en otros que ya se han implementado bajo realidades

acadeacutemicas similares rescatando las etapas maacutes importantes de cada uno y complementaacutendolo con

los aportes personales se consideroacute que fue el oacuteptimo debido a que se implementoacute con hardware

convencional y herramientas de uso libre

93

El hecho de haber seleccionado un meacutetodo adecuado permitioacute superar gran parte los

problemas que presentaban las metodologiacuteas que fueron analizadas simplificoacute la implementacioacuten

del cluacutester y permitioacute el poder alcanzar una mayor estabilidad en su desempentildeo desde su etapa

inicial fue importante conocer el resultado en cada una de las etapas de implementacioacuten para

asegurar su desenvolvimiento en el futuro

Para integrar los equipos independientes a la arquitectura cluacutester se realizoacute el disentildeo de

una topologiacutea de red Gigabit Ethernet tipo estrella con un direccionamiento IP estaacutetico la

configuracioacuten de protocolos de comunicacioacuten remota sin autenticacioacuten la comparticioacuten de

archivos en red y la utilizacioacuten de aplicaciones de licencia GPL que permiten obtener el

funcionamiento similar a la de una supercomputadora

Haciendo uso de libreriacuteas de paso de mensajes (MPI) y el software John the Ripper para el

descifrado de contrasentildeas la arquitectura cluacutester implementada alcanzoacute una eficiencia de 885

de rendimiento en comparacioacuten con los recursos computacionales de un solo equipo con las

caracteriacutesticas de un nodo Ademaacutes otros de los proyectos ejecutados en la arquitectura cluacutester

para probar el rendimiento fue la ejecucioacuten de un programa para la deteccioacuten de nuacutemeros primos

dentro de un archivo de 10000000 de nuacutemeros obteniendo una eficiencia de maacutes de 99 gracias

a la distribucioacuten de tareas que proporcionan las libreriacuteas de paso de mensajes (MPI) dentro de la

arquitectura cluacutester

Con la implementacioacuten de la arquitectura cluacutester el laboratorio de la Maestriacutea en Sistemas

Computacionales podraacute dar soluciones potentes eficientes y econoacutemicas en los entornos de

94

investigacioacuten mejorando la capacidad de procesamiento en aplicaciones como evaluacioacuten de

algoritmos compresioacuten de archivos renderizacioacuten de imaacutegenes anaacutelisis de datos (big data) en un

tiempo relativamente bajo ideal para las necesidades educativas

La experiencia obtenida al realizar esta investigacioacuten y propuesta ha sido enriquecedora

tanto por la obtencioacuten de conocimiento en base a la historia evolucioacuten y arquitectura de cluacutesters

asiacute como la programacioacuten paralela y sus ventajas en diferentes proyectos desarrollados en todo el

mundo Igualmente la comparacioacuten entre cada uno de los modelos y meacutetodos resulta interesante

dado que existe un sinnuacutemero de ejemplos con caracteriacutesticas diferentes pero baacutesicamente con un

mismo objetivo final

Trabajo Futuro

El cluacutester implementado en el Laboratorio de la Maestriacutea en Sistemas computacionales del

Instituto Tecnoloacutegico de Acapulco puede ser utilizado en gran cantidad de aplicaciones dentro de

las diferentes aacutereas de investigacioacuten del Instituto asiacute como estar disponible para el Departamento

de Posgrado e Investigacioacuten como apoyo durante la realizacioacuten de tareas y proyectos dentro de las

aacutereas de Desarrollo de Sistemas Inteligentes asiacute como de Tecnologiacuteas Web

Propuesta de Trabajo a Futuro

Durante la realizacioacuten de este proyecto se observoacute la necesidad que existe dentro del

departamento de Investigacioacuten y Posgrado de equipos de alta capacidad de procesamiento para

realizar de una manera maacutes eficiente las investigaciones que se estaacuten llevando a cabo Una de ellas

es el ldquoSistema de apoyo al diagnoacutestico oportuno de Retinopatiacutea Diabeacuteticardquo en la cual a traveacutes del

entrenamiento de una red neuronal se clasificaraacuten y evaluaraacuten un nuacutemero de 3000 imaacutegenes para

95

demostrar la presencia de dicha enfermedad en pacientes del Instituto Estatal de Oftalmologiacutea

Actualmente se ha realizado una prueba de entrenamiento de dicha red neuronal con 70 imaacutegenes

obteniendo como resultado un tiempo clasificacioacuten y evaluacioacuten de 301532 horas en un equipo

con un procesador Core I7 con 8 GB en memoria RAM

96

Bibliografiacutea

Alegsa (01 de 01 de 2018) Alegsa Diccionario Informaacutetico Recuperado el 07 de 2019 de

Alegsa httpwwwalegsacomarDicataque_por_diccionariophp

Avecto (2017) Avecto Limited Recuperado el 10 de 08 de 2018 de AVECTO a Bomgar

Company wwwavectocom

Borghello C (2009) Seguridad de la Informacioacuten Recuperado el 11 de 2018 de Criptografiacutea de

la A-Z httpswwwsegu-infocomarproyectosp1_hashhtm

Branch Bedoya J amp Mesa Muacutenera A (Diciembre de 2008) Implementacioacuten de un cluster

homogeacuteneo para la resolucioacuten de problemas de alta complejidad computacional Avances

en Sistemas e Informaacutetica 5(3)

ByteBleeder (02 de 06 de 2017) Practical guide to NTLM Relaying in 2017 Obtenido de Github

httpsbyt3bl33d3rgithubiopractical-guide-to-ntlm-relaying-in-2017-aka-getting-a-

foothold-in-under-5-minuteshtml

Caballero A (26 de 06 de 2018) Hacking Eacutetico Recuperado el 03 de 2019 de John The Ripper

httpwwwreydescomdq=Recuperar_la_Contrasena_del_Administrador_utilizando_s

amdump2_y_John_The_Ripper

Carretero Peacuterez J de Miguel Anasagasti P Garciacutea Carballeira F amp Peacuterez Costoya F (2001)

Sistemas Operativos Una visioacuten aplicada (C F Madrid Ed) Madrid Espantildea

McGRAW-HillInteramericana

Castelloacute Gimeno A (30 de 07 de 2014) Universitat Jaume Recuperado el 10 de 2019 de

Evaluacioacuten de prestaciones mediante laaplicacioacuten HPL de clusters utilizandorCUDA

97

httprepositoriujiesxmluibitstreamhandle10234115082TFM_2014_CastelloGimen

oApdfsequence=1ampisAllowed=y

Chaacutevez J Echeverriacutea C Correa M Vaacutezquez E Suaacuterez M Maacutermol X Diacuteaz G (07 de

1999) Centro de Caacutelculo Cientiacutefico Recuperado el 01 de 05 de 2018 de Universidad de

Los Andes httpwwwcecalculavedocumentaciontutorialesbeowulfinformehtml

Chirinov R (2003) Nfinite9000 SL Recuperado el 26 de 04 de 2018 de Noticias 3D

httpswwwnoticias3dcomarticuloaspidarticulo=248amppag=4

Coffin J (23 de 07 de 2015) Quora Recuperado el 15 de 08 de 2019 de

httpswwwquoracomWhat-does-it-mean-when-a-hashing-algorithm-has-been-broken

Dongarra J (2010) Top500 Super computer sites Recuperado el 07 de 2019 de http

wwwtop500org

Educba (01 de 01 de 2019) Recuperado el 10 de 2019 de Educbaorg

httpswwweducbacomidea-algorithm

europa press (04 de 06 de 2013) Portal Tic Recuperado el 18 de 11 de 2018 de Europa Press

httpswwweuropapressesportalticgadgetsnoticia-cuarta-generacion-intel-core-mayor-

salto-cuanto-ahorro-energetico-20130604174722html

g0tmi1k (2018) github Recuperado el 05 de 2019 de github

httpsgithubcomdanielmiesslerSecListsblobmasterPasswordsCommon-

Credentials10-million-password-list-top-1000000txt

Gonzaacutelez Agudelo D (2014) El riesgo y la falta de politicas de seguridad informaacutetica una

amenaza en las empresas certificadas basc Recuperado el 20 de 05 de 2018 de

Universidad Militar Nueva Granada

httpsrepositoryunimilitareducobitstream10654122511ENSAYO20FINALpdf

98

Gonzaacutelez Ramiacuterez E amp Rodriacuteguez Saacutenchez A (2008) Disentildeo e implementacioacuten de un cluster

tipo BEOWULF para el desarrollo de coacutemputo cientiacutefico avanzado CdMx Mexico

Hernandez M (2013) Forensics Mexico Recuperado el 07 de 2018 de La importancia del

registro de Windows parte 1 httpforensicsmexicoblogspotcom201309la-

importancia-del-registro-de-windowshtml

Kowalczyk C (01 de 2015) Crypto-IT Recuperado el 11 de 2018 de Crypto-IT

httpwwwcrypto-itnetengasymmetricindexhtml

Labaca Castro R (13 de 06 de 2014) We live security Recuperado el 2019 de 08 de 07 de

Welivesecuritybyeset httpswwwwelivesecuritycomla-es20140613matematica-

claves-numerica-alfanumerica

Lizaacuterraga C (2002) Departamento de Fiacutesica Recuperado el 12 de 03 de 2018 de Universidad

de Sonora httpclustersfisicausonmx

Llorens E amp Pentildea M (2002) Recuperado el 04 de 2018 de Departament dArquitectura de

Computadors httppersonalsacupceduenricPFCBeowulfbeowulfhtml

Meneacutendez-Barzanallana R (07 de 08 de 17) Universidad de Murcia Recuperado el 11 de 2018

de Informaacutetica Aplicada a las Ciencias Sociales

httpswwwumesdocenciabarzanaIACCSSCriptografiahtml

Merkle R amp Damgaringrd I (sf) Numerenturorg Recuperado el 06 de 2019 de Para computar -

numerenturorg httpnumerenturorgfuncion-merkle-damgard

Microsoft Inc (02 de 05 de 2019) wwwmicrosoftcom Obtenido de Password must meet

complexity requirements httpsdocsmicrosoftcomes-eswindowssecuritythreat-

protectionsecurity-policy-settingspassword-must-meet-complexity-requirements

99

Mifsud E (26 de 03 de 2012) Introduccioacuten a la seguridad informaacutetica Recuperado el 07 de 05

de 2018 de Ministerio de educacioacuten cultura y deportes Gobierno de Espantildea

httprecursosticeducacionesobservatoriowebessoftwaresoftware-general1040-

introduccion-a-la-seguridad-informaticashowall=1

Murugesan S (01 de 02 de 2008) Researchgate doi101109MITP200810

Nahar K amp Abu Abbas O (01 de 2010) Researchgate Recuperado el 07 de 2019 de

Researchgate

httpswwwresearchgatenetpublication315492522_Hybrid_Cipher_System

Nievas F Pino O amp Arroyo R (sf) Los clusters como Plataforma de Procesamiento Paralelo

Recuperado el 25 de 04 de 2018 de

httpusuarioslycoseslacaraocultadescargasClusters_definitivo pdf

Pawar S (2016) A computer science portal for geeks Recuperado el 10 de 2018 de

Geeksforgeeks httpswwwgeeksforgeeksorgrc5-encryption-algorithm

Peleus (2019) NETSEC Recuperado el 08 de 2019 de httpsnetsecwsp=314

Peacuterez Tavera I (2014) Obtenido de Universidad Autonoma del Estado de Hidalgo

httpswwwuaehedumxscigeboletinprepa4n2e4html

Peacuterez M (2001) Recuperado el 15 de 04 de 2018 de

httpwwwdragonesorgBibliotecaArticulosArquitecturaParalela2pdf

Petitet A Whaley R C Dongarra J amp Cleary A (2008) HPL - A Portable Implementation of

the High-Performance Linpack Benchmark for Distributed-Memory Computers

Recuperado el 07 de 2019 de httpwwwnetliborgbenchmarkhpl

Picolet J (2017) Hash Crack Password Cracking Manual (Vol 2) Createspace Independent

Pub

100

Preukschat A (23 de 02 de 2015) Oro y Finanzas Recuperado el 07 de 2019 de

httpswwworoyfinanzascom201502que-es-colision-criptografia-bitcoin

Robbins D (2008) OpenMosix Recuperado el 22 de 04 de 2018 de the openMosix Project

httpopenmosixsourceforgenetintroduction_to_openmosixhtml

Rocha Quezada J d Botello Rionda S Vargas Feacutelix J M amp Munguiacutea Torres I A (Sep-Dic

de 2011) Disentildeo e implementacioacuten de un cluacutester de coacutemputo de alto rendimiento Acta

Universitaria 21(3) 24-33 Recuperado el 1 de 12 de 2018

Rocksclusters (01 de 01 de 2010) httpwwwrocksclustersorg Recuperado el 01 de 06 de 2018

de httpwwwrocksclustersorg httpwwwrocksclustersorg

Sanjoy K (01 de 01 de 2015) DZone Recuperado el 15 de 06 de 2019 de DZone

httpsdzonecomarticlessecurity-algorithms-des-algorithm

Security Degree Hub (01 de 2017) Security Degree Hub Recuperado el 13 de 02 de 2019 de

Security Degree Hub httpswwwsecuritydegreehubcomwhat-is-cryptanalysis

Simmons G (01 de 01 de 2019) Encyclopedia Britannica Recuperado el 08 de 2019 de

Encyclopedia Britannica httpswwwbritannicacomtopicRSA-encryption

statista (09 de 2017) Statista Obtenido de Statista Co httpsesstatistacom

Turner D (2004) Recuperado el 12 de 02 de 2018 de Ames Lab

httpwwwsclameslabgovProjectsparrallel_computingpara_intohtml

United States Government Department of Defense (1983) Trusted Computer System Evaluation

Criteria Rainbow Series

Universidad Internacional de Valencia (09 de Septiembre de 2016) Nuestros

expertosTecnologiacutea Recuperado el 27 de Abril de 2018 de Universidad Internacional de

Valencia httpswwwuniversidadviuesla-seguridad-informatica-puede-ayudarme

101

Wallen J (19 de 01 de 2019) Lifewire Recuperado el 13 de 06 de 2019 de Lifewire

httpswwwlifewirecomgnome-3-desktop-4175640

Yang H (01 de 02 de 2019) Herong Yang Recuperado el 15 de 06 de 2019 de Cryptography

Tutorials httpwwwherongyangcomCryptographyDSA-Introduction-What-Is-DSA-

Digital-Signature-Algorithmhtml

102

Anexo 1

Programa en Lenguaje C para la obtencioacuten de nuacutemeros primos utilizando libreriacuteas mpi

include ltcstdlibgt

include ltiostreamgt

include ltiomanipgt

include ltcmathgt

include ltctimegt

include mpih

using namespace std

int main ( int argc char argv[] )

int prime_number ( int n int id int p )

void timestamp ( )

int main ( int argc char argv[] )

int i

int id

int master = 0

int n

int n_factor

int n_hi

int n_lo

int p

int primes

int primes_part

double wtime

n_lo = 1

n_hi = 10000000

n_factor = 2

MPIInit ( argc argv )

p = MPICOMM_WORLDGet_size ( )

id = MPICOMM_WORLDGet_rank ( )

if ( id == master )

cout ltlt n

cout ltlt Cuenta primosn

cout ltlt C++MPI versionn

cout ltlt n

cout ltlt Programa para contar cantidad de primos para un N dadon

cout ltlt Corriendo en ltlt p ltlt procesosn

cout ltlt n

103

cout ltlt N S Tiempon

cout ltlt n

n = n_lo

while ( n lt= n_hi )

if ( id == master )

wtime = MPIWtime ( )

MPICOMM_WORLDBcast ( ampn 1 MPIINT master )

primes_part = prime_number ( n id p )

MPICOMM_WORLDReduce ( ampprimes_part ampprimes 1 MPIINT

MPISUM

master )

if ( id == master )

wtime = MPIWtime ( ) - wtime

cout ltlt ltlt setw(8) ltlt n

ltlt ltlt setw(8) ltlt primes

ltlt ltlt setw(14) ltlt wtime ltlt n

n = n n_factor

MPIFinalize ( )

if ( id == master )

cout ltlt n

cout ltlt PRIME_MPI - Procesos maestron

cout ltlt Finalizacion del calculo normaln

return 0

int prime_number ( int n int id int p )

int i

int j

int prime

int total

104

total = 0

for ( i = 2 + id i lt= n i = i + p )

prime = 1

for ( j = 2 j lt i j++ )

if ( ( i j ) == 0 )

prime = 0

break

total = total + prime

return total

void timestamp ( )

define TIME_SIZE 40

static char time_buffer[TIME_SIZE]

const struct tm tm

size_t len

time_t now

now = time ( NULL )

tm = localtime ( ampnow )

len = strftime ( time_buffer TIME_SIZE d B Y IMS p tm )

cout ltlt time_buffer ltlt n

return

undef TIME_SIZE

Page 6: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios

v

Resumen

El presente trabajo inicia con una breve introduccioacuten sobre la importancia que tiene la

seguridad en cualquier aspecto de la vida y sobre todo en el aacuterea laboral especiacuteficamente en el

aacuterea informaacutetica Posteriormente resalta coacutemo la criptografiacutea ha estado presente en momentos

importantes de la vida del ser humano sobre todo dentro del aacutembito militar en la cual ha sido

fundamental para permitir comunicaciones seguras Actualmente la criptografiacutea estaacute dentro de

nuestro diario vivir cuando realizamos transacciones en internet de manera segura Como parte de

la investigacioacuten en este trabajo se describen los tipos de criptografiacutea y criptoanaacutelisis tambieacuten se

analizan los niveles de seguridad de sistemas operativos asiacute como los meacutetodos de agrupamiento

de computadoras para implementar con la ayuda de esta herramienta de una manera maacutes raacutepida

criptoanaacutelisis a un sistema operativo con un nivel de seguridad C1

Palabras clave cluacutester seguridad criptoanaacutelisis

vi

Abstract

This work begins with a review of the importance of security in any aspect of life and

especially in the workplace specifically in the computer area Later this work speaks briefly about

how cryptography has been present at important moments in the life of the human being especially

in the military field in which it has been fundamental to allow secure communications Currently

cryptography is inside our daily life when we conduct transactions on the internet in a secure

manner As part of the research in this work the types of cryptography and cryptanalysis are

described as well as the security levels of operating systems and above all the main methods of

computers clustering to implement a system with a faster method of cryptanalysis in an operative

system with a security level C1

Keywords cluster security cryptanalysis

vii

Iacutendice de Contenido

Descargo de Responsabilidad Institucional ii

Dedicatoria iii

Agradecimientos iv

Resumen v

Abstract vi

Iacutendice de Contenido vii

Iacutendice de Figuras x

Iacutendice de Tablas xi

Capiacutetulo 1 Introduccioacuten 1 11 Antecedentes del problema 1

12 Planteamiento del Problema 4

13 Objetivos 6

131 Objetivo General 6

132 Objetivos Especiacuteficos 6

14 Justificacioacuten 7

15 Hipoacutetesis 7

16 Alcances y Limitaciones 8

17 Impacto Social Tecnoloacutegico Econoacutemico y Ambiental 8

171 Impacto social 8

172 Impacto ambiental 9

173 Impacto econoacutemico 10

18 Metodologiacutea a Utilizar 10

181 Anaacutelisis 10

182 Disentildeo 10

1821 Economiacutea 10

1822 Instalaciones 10

1823 Escalabilidad 11

1824 Red 11

1825 Software 11

1826 Almacenamiento 12

183 Implementacioacuten 12

1831 Software 12

1832 Hardware 13

1833 Recursos totales del cluacutester 13

19 Aseguramiento Teacutecnico ndash Material 13

191 Hardware 14

viii

1911 Equipo de coacutemputo 14

Capiacutetulo 2 Estado del Arte 16

Marco Teoacuterico 27 21 Seguridad de la Informacioacuten 27

211 Objetivo de la seguridad de la informacioacuten 27

212 Principios de la seguridad informaacutetica 28

213 Caracteriacutesticas de seguridad informaacutetica 28

214 Formas de Autenticacioacuten 29

215 Ciber-seguridad 29

22 Criptografiacutea 30

221 Tipos de Criptografiacuteas 30

2211 Tablas Hash 30

2212 Tipos de algoritmos Hash 31

22121 SHA - 1 (Secure Hash Algorithm) 31

22122 MD5 (Message Digest Algorithm) 31

22123 RIPEMD ndash 160 32

22124 Funcioacuten Merkle-Damgaringrd 32

2213 Cifrado simeacutetrico 32

22131 RC5 (Cifrado de Rivest) 33

22132 IDEA (International Data Encryption Algorithm) 33

22133 DES (Data Encryption Standard) 34

2214 Cifrado asimeacutetrico 35

22141 DSA (Digital Signature Algorithm - Algoritmo de Firma digital) 36

22142 RSA 37

2215 Cifrado hiacutebrido 38

23 Criptoanaacutelisis 38

24 Niveles de seguridad 39

241 Nivel D1 40

242 Nivel C1 40

243 Nivel C2 41

244 Nivel B1 42

245 Nivel B2 43

246 Nivel B3 44

247 Nivel A1 45

25 Sistemas Operativos 46

251 Windows 47

252 Registro de Windows 48

253 Administrador de cuentas de seguridad 49

2531 Identificador de Seguridad (SID Security Identifier) 50

254 Autenticacioacuten NTML 51

26 LINUX (ROCKS) 52

261 Escritorio 53

262 Paquete de Oficina 53

263 Organizador de archivos 54

27 Agrupamiento (Cluacutester) de Computadoras 55

271 Beowulf 56

ix

272 Mosix 56

273 OpenMosix 57

Capiacutetulo 3 Implementacioacuten de Cluacutester 59 31 Requisitos previos 59

311 Conexioacuten de los equipos y acceso a la red 59

312 Configuracioacuten de la BIOS 60

3121 ATAIDE Mode 60

3122 PXE 62

32 Instalacioacuten de Sistema Operativo Rocks 63

321 Configuracioacuten del teclado 70

33 Instalacioacuten de los nodos 70

331 Administracioacuten de nodos 72

332 Creacioacuten de cuentas de usuario 73

333 Configuracioacuten del directorio compartido 73

34 Operaciones baacutesicas de Rocks 74

Capiacutetulo 4 Metodologiacutea y Resultados 77 41 Obtener Archivo hash 77

42 Dar Formato al Hash 80

43 Evaluar la fuerza del Hash 80

44 Calcular la capacidad del equipo 82

45 Establecer Estrategia 87

451 Fuerza Bruta 87

4511 Cantidad de combinaciones posibles 88

452 Diccionario 90

453 Analizar los resultados 91

454 Personalizar ataques 91

Conclusioacuten 92

Trabajo Futuro 94 Propuesta de Trabajo a Futuro 94

Bibliografiacutea 96

Anexo 1 102

x

Iacutendice de Figuras

Figura 31 Esquema tiacutepico de configuracioacuten de un cluacutester xi

Figura 32 Imagen del Bios del equipo en la opcioacuten ldquodrive configurationrdquo 61

Figura 33 Bios ATAIDE Legacy Mode 61

Figura 34 Bios Boot PXE 62

Figura 35 Bios Boot device prioriry 63

Figura 36 Pantalla de Inicio de instalacioacuten de Rocks 64

Figura 37 Pantalla de seleccioacuten de Rolls 65

Figura 38 Listado de opciones de rolls para instalar 65

Figura 39 Informacioacuten baacutesica del cluacutester a instalar 66

Figura 310 Configuracioacuten Ethernet de la red privada 67

Figura 311 Configuracioacuten Ethernet de la red puacuteblica 67

Figura 312 Configuracioacuten de DNS y Gateway 68

Figura 313 Ingresar contrasentildea de usuario root 68

Figura 314 Configuracioacuten horaria 69

Figura 315 Particiones del disco duro 69

Figura 316 Pantalla para ingresar nodos 71

Figura 317 Indicador de insercioacuten de nuevos nodos 71

Figura 318 Comando qstat ndashf 74

Figura 319 Enviacuteo de trabajos por medio del comando qsub 75

Figura 320 Estado de los trabajos pendientes mostrados por qstat ndashf 75

Figura 321 Visualizacioacuten de la distribucioacuten de cargas en el cluacutester usando la herramienta

Ganglia 76

Figura 41 Arranque con LiveUSB KaliLinux 79

Figura 42 Resultado de la ejecucioacuten de la herramienta samdump2 80

Figura 43 Sistema de Ecuaciones tipo 119860119909 = 119887 Fuente Propia 84 Figura 44 Distribucioacuten de cargas del cluacutester 86

Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester 89

xi

Iacutendice de Tablas

Tabla 11 Costo del Proyecto 15

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia) 86

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia) 89

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos

(Fuente Elaboracioacuten propia) 90

1

Capiacutetulo 1 Introduccioacuten

11 Antecedentes del problema

Sin lugar a duda una de las herramientas maacutes importantes producida en el siglo XX ha sido

la computadora la cual ha provocado cambios vertiginosos en la sociedad y en el progreso de la

misma En la actualidad el entorno estaacute praacutecticamente controlado por las nuevas tecnologiacuteas que

a medida que transcurre el tiempo avanzan sin liacutemites y en ocasiones son utilizadas

incorrectamente provocando dantildeos de grandes dimensiones

Los trascendentales cambios operados en el mundo moderno caracterizados por su

constante desarrollo la acelerada globalizacioacuten de la economiacutea la acentuada dependencia a

almacenar grandes voluacutemenes de informacioacuten y los sistemas que la proveen aunado a grandes

inversiones de las empresas en conocimiento actual y futuro en sistemas de informacioacuten ademaacutes

del potencial que poseen las tecnologiacuteas para cambiar draacutesticamente las organizaciones y las

praacutecticas de negocio asiacute como crear nuevas oportunidades disentildear nuevas estructuras tecnoloacutegicas

basadas en informacioacuten la convierte en un activo codiciable Tales avances hacen permanente el

riesgo en las tecnologiacuteas y nos llevan a pensar en la problemaacutetica sobre la seguridad informaacutetica

La proteccioacuten de datos documentos y control de acceso a la informacioacuten es un tema que

cada diacutea toma maacutes fuerza en las grandes compantildeiacuteas debido a las diferentes praacutecticas de

especialistas tecnoloacutegicos como los son los hackers y crackers que roban informacioacuten vital para

posteriormente sacar provecho de ella

2

ldquoDesde la aparicioacuten de los grandes sistemas aislados hasta nuestros diacuteas en los que el

trabajo en red es lo habitual los problemas derivados de la seguridad de la informacioacuten han ido

tambieacuten cambiando evolucionando pero estaacuten ahiacute y las soluciones han tenido que ir adaptaacutendose

a los nuevos requerimientos teacutecnicos Aumenta la sofisticacioacuten en el ataque y ello aumenta la

complejidad de la solucioacuten pero la esencia es la mismardquo (Mifsud 2012)

Dentro del mundo actual la informacioacuten es denominada un activo importante de una

institucioacuten la cual debe ser protegida para evitar su peacuterdida modificacioacuten o el uso inadecuado de

su contenido

El extraviacuteo o el mal uso de informacioacuten que para alguien es confidencial genera dantildeos y

repercusiones directas relacionadas a la integridad disponibilidad y confidencialidad de los

archivos y a su vez a los duentildeos de dicha informacioacuten

ldquoLa seguridad informaacutetica se distingue por tener dos propoacutesitos de seguridad la Seguridad

de la Informacioacuten y la Proteccioacuten de Datos estos se diferencian debido a que los datos son valores

numeacutericos que soportan la informacioacuten mientras que la informacioacuten es aquello que tiene un

significado para nosotrosrdquo (Gonzaacutelez Agudelo 2014)

La seguridad informaacutetica consiste en asegurar que los recursos del sistema de informacioacuten

(material informaacutetico o programas) de una organizacioacuten sean utilizados de la manera que se decidioacute

3

inicialmente y que el acceso a la informacioacuten alliacute contenida asiacute como su modificacioacuten soacutelo sea

posible a las personas que se encuentren acreditadas y dentro de los liacutemites de su autorizacioacuten

Actualmente hay mucha informacioacuten circulando en internet por ejemplo correos

electroacutenicos publicaciones en Twitter Facebook videos fotos comercio electroacutenico secretos de

estado militares o industriales Lamentablemente dicha red es puacuteblica e insegura dentro de la cual

existen usuarios bien intencionados y muchos mal intencionados Diariamente encontramos

noticias de sitios con intrusiones mal intencionadas (hackeados) clonacioacuten de tarjeta de creacutedito o

imaacutegenes adulteradas Todo lo anterior motiva la necesidad de proteger la informacioacuten a traveacutes de

mecanismos que impidan a los usuarios no autorizados acceder a dicha informacioacuten

4

12 Planteamiento del Problema

Los sistemas de informacioacuten actuales estaacuten relacionados completamente con la exposicioacuten

de su informacioacuten a entidades externas que son ajenas a la organizacioacuten o delegacioacuten a la que

pertenecen

Cuando no se conoce el alcance que tienen los sistemas informaacuteticos ni lo vulnerables que

pueden ser si son expuestos a Internet por los mismos empleados de la organizacioacuten puede darse

ldquofugardquo de informacioacuten hacia el exterior esto los hace vulnerables a eventos y amenazas que

conllevan a riesgos que pueden provocar peacuterdidas tangibles e intangibles las cuales se traducen

en peacuterdidas que en muchos de los casos por decir lo menos seraacuten monetarias

El portal espantildeol de estadiacutesticas statista muestra la cuota de mercado de los principales

sistemas operativos a nivel mundial a fecha de febrero de 2017 seguacuten el nuacutemero de instalaciones

(statista 2017) Windows 10 fue el segundo sistema operativo maacutes instalado con una cuota de

mercado de 253 Esto significa que alrededor de una de cada cuatro computadoras estaacute

gobernado por este sistema operativo Por su parte en el caso de Windows 7 el porcentaje se situacutea

por encima del 45 a pesar de que ya no se vende ninguacuten PC con este sistema operativo Hablando

de manera conjunta los sistemas operativos Windows cuentan con una cuota del mercado global

de 8857

La empresa de seguridad informaacutetica Britaacutenica Avecto informoacute en su Microsoft

Vulnerabilities Report 2017 (Avecto 2017) (reporte 2017 de vulnerabilidades de Windows) un

aumento de vulnerabilidades publicadas del 111 en los uacuteltimos 5 antildeos de las cuales 235 criacuteticas

5

fueron mitigadas removiendo permisos de administrador asiacute como otras muy importantes

enfocadas al Administrador de Cuentas de Seguridad (SAM Security Account Manager por sus

siglas en ingleacutes) la cual es una base de datos almacenada como un archivo del registro en Windows

y que almacena las contrasentildeas de los usuarios en un formato hash (Algoritmos que crean a partir

de una entrada una salida alfanumeacuterica de longitud fija)

6

13 Objetivos

131 Objetivo General A traveacutes de la implementacioacuten de un procedimiento de fuerza

bruta utilizando para ello un cluacutester de alto rendimiento asiacute como software de uso libre lograr

capacidad de procesamiento capaz de vulnerar un sistema de autenticacioacuten nivel C1

132 Objetivos Especiacuteficos

Analizar los diferentes niveles de seguridad de sistemas operativos

Analizar diferentes meacutetodos de criptoanaacutelisis para vulnerar el Administrador de

cuentas de seguridad

Estudiar las teacutecnicas de agrupamiento de computadoras (clustering) para la

obtencioacuten de mayor poder de procesamiento

Implementar un cluacutester de alto rendimiento en el Laboratorio de la Maestriacutea en

Sistemas Computacionales del Instituto Tecnoloacutegico de Acapulco para ejecutar

operaciones de coacutemputo distribuido

7

14 Justificacioacuten

Antes la seguridad de la informacioacuten se realizaba a traveacutes de medios fiacutesicos por ejemplo

una caja fuerte en la cual las personas resguardaban objetos o informacioacuten valiosa para ellos Con

la introduccioacuten de las computadoras y el uso de internet los usuarios comienzan a almacenar

informacioacuten importante dentro de sus equipos por lo que se considera indispensable el uso de

herramientas que brinden proteccioacuten a la informacioacuten que se encuentra resguardada dentro de

eacutestas Los usuarios informaacuteticos suelen enviar informacioacuten por la red en las empresas al realizar

traacutemites o enviar informes a socios jefes entre otros

El resguardo de informacioacuten siempre ha sido importante para los seres humanos con la

diferencia que anteriormente no se contaba con los avances tecnoloacutegicos que tenemos actualmente

puesto que con la introduccioacuten de internet y el uso de dispositivos electroacutenicos se tiene mayor

riesgo de la informacioacuten que en ellos se maneja

La proteccioacuten del contenido de los datos es una necesidad urgente en casi todos los aacutembitos

de la sociedad incluyendo los servicios puacuteblicos y privados por lo que la tecnologiacutea de la

seguridad de los sistemas de cifrado se encuentra de frente a verdaderos retos

15 Hipoacutetesis

A traveacutes de un de fuerza bruta como teacutecnica de criptoanaacutelisis y con la ayuda de una mayor

capacidad de procesamiento mediante la implementacioacuten de agrupamiento de computadoras

(cluacutester) de alto rendimiento seraacute posible encontrar alguna vulnerabilidad dentro del sistema de

administracioacuten de cuentas de seguridad de Windows server 2012

8

16 Alcances y Limitaciones

Esta tesis se centraraacute en el sistema operativo Windows como objeto de estudio al cual se

le realizaraacute el criptoanaacutelisis

La tesis se enfocaraacute en el meacutetodo Beowulf para realizar el agrupamiento de computadoras

asiacute como la distribucioacuten de software libre del sistema operativo Linux Rocks

El nuacutemero de equipos disponibles para poder realizar el agrupamiento es de 17

computadoras hasta lograr el poder de coacutemputo de 800 Gflops

17 Impacto Social Tecnoloacutegico Econoacutemico y Ambiental

La sostenibilidad del presente proyecto seraacute abordada a partir de los siguientes aspectos

171 Impacto social A veces se puede pensar que un cluacutester de alto rendimiento pudiera

no tener alguacuten impacto directo en el medio social pero si nos enfocamos a un punto de vista en

donde gracias a la capacidad de procesamiento de estas maacutequinas han sido parte fundamental en

el desarrollo de proyectos que inciden de manera directa en beneficio de la sociedad en la que

vivimos como lo es la medicina la fiacutesica quiacutemica

Este proyecto busca beneficiar a nuestra sociedad proveyendo su capacidad de

procesamiento en la buacutesqueda de alguna vulnerabilidad en el sistema operativo maacutes utilizado hoy

en diacutea como lo es Windows ademaacutes de que estaraacute disponible para la comunidad cientiacutefica y

9

estudiantil del Instituto Tecnoloacutegico de Acapulco para optimizar tiempo de caacutelculo en futuras

investigaciones

172 Impacto ambiental Green IT tambieacuten conocido como Green Computing o

traducido al espantildeol como Tecnologiacuteas Informaacuteticas Verdes es definido como el estudio y la

praacutectica de disentildear desarrollar usar y disponer de computadoras servidores y diferentes

perifeacutericos tales como monitores impresoras dispositivos de almacenamiento de redes y

comunicaciones eficientemente y efectivamente con un impacto miacutenimo o nulo en el medio

ambiente (Murugesan 2008)

Bajo la premisa anterior este proyecto hace uso de los equipos con los que cuenta

actualmente el laboratorio de la Maestriacutea en Sistemas Computacionales lo cual evitaraacute la

adquisicioacuten de equipo nuevo y por consecuencia desechar el equipo existente evitando desperdicio

electroacutenico Dicho equipo cuenta con un procesador Intel I3 de 4ta generacioacuten lo cual seguacuten el

portal electroacutenico Europa press

ldquoEsta nueva generacioacuten supone el mayor salto en cuanto ahorro energeacutetico de la historia

de Intel asiacute como una mejora en los graacuteficos y nuevas experiencias de usuariordquo (europa press

2013)

Teniendo como base estos dos puntos importantes como lo son la reutilizacioacuten de equipo

y utilizando procesadores de bajo consumo energeacutetico es como este proyecto busca contribuir de

manera positiva con el medio ambiente

10

173 Impacto econoacutemico Actualmente existe una gran necesidad de procesar grandes

cantidades de datos lo cual hace imprescindible disponer de maacutequinas con estas caracteriacutesticas sin

embargo su alta complejidad aunado al gran costo hace que en instituciones de caraacutecter puacuteblico

sea muy complicado conseguir recurso para este fin Sin embargo un cluacutester de alto rendimiento

reutilizaraacute equipo propio evitando asiacute gastos por concepto de adquisicioacuten de equipo siendo de

esta manera viable para instituciones de caraacutecter puacuteblico

18 Metodologiacutea a Utilizar

181 Anaacutelisis Despueacutes de analizar las diferentes metodologiacuteas de clustering se optoacute por

desarrollar e implementar un cluacutester de alto rendimiento (HPC)

182 Disentildeo

1821 Economiacutea Debido a las caracteriacutesticas del equipo con el cual cuenta el Laboratorios

de la Maestriacutea en Sistemas Computacionales los componentes utilizados para este proyecto son

considerados de uso comuacuten y de bajo costo lo cual los hace faacutecilmente reemplazables en caso de

fallo a un costo accesible El equipo es de la marca Acer Aspire modelos AXC-605-M021 lo cual

nos hace tener ventaja y respaldo del fabricante con respecto a hardware geneacuterico

1822 Instalaciones Un cluacutester requiere de un ambiente controlado Esto es una

habitacioacuten especial con sistema de enfriamiento capacidad suficiente de carga eleacutectrica control

de humedad y un ambiente libre de polvo Ademaacutes se deben considerar el peso del equipo sobre

el piso (ya sea falso o piso normal) Se recomienda colocarlo en los soacutetanos o en la plata baja de

edificios (Rocha Quezada Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

11

En el laboratorio de la Maestriacutea en Sistemas Computacionales se cuenta con espacio que

reuniacutea la mayoriacutea de las caracteriacutesticas requeridas para este proyecto

1823 Escalabilidad Un cluacutester debe ser faacutecilmente escalable y a su vez confiable Por

tal motivo se ha utilizado equipo de marca lo cual nos proporciona maacutes de confiabilidad en su

desempentildeo y a su vez facilidad de aumentar el nuacutemero de equipos si en un futuro fuese necesario

agrandar este proyecto Se armoacute un cluacutester de cinco computadoras con procesadores Intel Core I3

de 64 bits en cada nodo La memoria incluida y perifeacutericos son faacuteciles de adquirir en el mercado

1824 Red En la parte de redes se utilizoacute un switch fast Ethernet con una velocidad de 1

Gbps el cual tiene tazas de transferencia raacutepida y el costo es notablemente maacutes econoacutemico que

uno de fibra oacuteptica

El cableado seleccionado fue el estaacutendar UTP de cobre con la norma Gigabit Ethernet de

IEEE 8023ab con la categoriacutea de cableado 6e que soporta tazas de transferencia de datos de

1000Base T (1 Gbps)

1825 Software

ldquoEl sistema operativo debe constar con servicios dedicados para compartir y respaldar

archivos asiacute como capacidad de acceder a los datos de trabajo raacutepidamente El sistema operativo

debe tambieacuten proveer servicios de monitoreo y reporte de fallas en el sistemardquo (Rocha Quezada

Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

12

Existe una gran variedad de software para instalar cluacutester de alto rendimiento sin embargo

como se ha comentado con anterioridad el costo de adquisicioacuten debe ser accesible por tal motivo

se optoacute por una distribucioacuten con licencia GNU de Linux Rocks Cluster la cual es una distribucioacuten

sencilla de instalar y configurar en comparacioacuten con otras distribuciones analizadas dicha

distribucioacuten estaacute basada en CentOS que a su vez estaacute basada en la conocida distribucioacuten de Linux

Red Hat

1826 Almacenamiento Para este proyecto no se requeriraacute un gran espacio de

almacenamiento por tal motivo los equipos utilizados tanto maestro como esclavos mantuvieron

sus unidades de disco originales las cuales son de 1 TB de almacenamiento

183 Implementacioacuten La implementacioacuten del cluacutester de alto rendimiento fue realizada

dentro de las instalaciones del Laboratorio de la Maestriacutea en Sistemas Computacionales del

Instituto Tecnoloacutegico de Acapulco construido inicialmente para este proyecto de criptoanaacutelisis lo

cual requeriraacute suficiente capacidad de procesamiento para poder implementar ataques de fuerza

bruta a sistemas operativos Las caracteriacutesticas del cluacutester construido son

1831 Software El software instalado en cada uno de los nodos es el siguiente

bull Sistema operativo Rocks Cluacutester Linux 74 (64 bits)

bull Libreriacutea de manejo de mensajes Open-MPI 153

bull Software de monitoreo Ganglia

13

1832 Hardware El cluacutester estaacute compuesto de 17 equipos con las siguientes

caracteriacutesticas

bull Nodo Maestro y 16 Nodos Esclavos

- Procesador Intel Core I3 4150 (4 nuacutecleos) Memoria 6 GB Disco Duro SATA 1 TB

tarjeta de Red Gigabit Ethernet

El hardware adicional es el siguiente

bull Interconexioacuten de Red

bull Switch Cisco 26 puertos 1Gbps modelo SG200 Red interna

1833 Recursos totales del cluacutester

bull Nuacutecleos de unidades de procesamiento (cores) 68

bull Capacidad en memoria 92 GB

bull Capacidad en disco 17 TB

19 Aseguramiento Teacutecnico ndash Material

A continuacioacuten se muestra el desglose del equipo utilizado para la elaboracioacuten de un

cluacutester de alto rendimiento estos componentes consisten en Hardware y Software especializado

asiacute como los costos de produccioacuten y personal involucrados en la metodologiacutea y elaboracioacuten del

proyecto

Costos de Hardware

Costos de Software

14

191 Hardware En este punto se refleja el costo de los dispositivos y herramientas a nivel

fiacutesico las cuales sirvieron para la implementacioacuten del proyecto cluacutester de alto rendimiento Cabe

resaltar que el equipo utilizado forma parte del inventario actual del Laboratorio motivo por el

cual su utilizacioacuten no causoacute erogacioacuten alguna sin embargo la investigacioacuten de costos se realizoacute

con la finalidad que el lector pueda establecer comparativas y buscar alternativas en caso de ajuste

de presupuesto

1911 Equipo de coacutemputo El equipo de coacutemputo utilizado consta de diecisiete

computadoras las cuales serviraacuten una para Nodo Maestro y las dieciseacuteis restantes como Nodos

Esclavos

La descripcioacuten de estos equipos se muestra en la tabla a continuacioacuten mostrando los costos

de todos los equipos utilizados dentro del proyecto

15

Tabla 11 Costo del Proyecto

Modelo

Cantidad

Caracteriacutesticas

Costos

PC - Acer AXC-

605

17

Procesador Intel Core i3

Pantalla 156rdquo

Disco duro 1TB HDD

RAM 6GB

Salida HDMI

Tarjeta de graacuteficos INTEGRADA

Lector de CD

Los costos en el mercado de una PC de

escritorio con estas caracteriacutesticas tiene un

valor aproximado de $600000 pesos

(Moneda nacional Mexicana)

Switch Cisco

Gigabit Ethernet

1

Modelo SG200 de 26 puertos

Costo en el mercado alrededor de

$2000000 pesos MN

Total

12200000 pesos MN

16

Capiacutetulo 2 Estado del Arte

Tiacutetulo del Trabajo Introduccioacuten a la Criptografiacutea

Autor Gibraacuten Granados Paredes

Fecha Julio 2010

Lugar Ciudad de Meacutexico

Publicado en Coordinacioacuten de Publicaciones Digitales DGSCA-UNAM

httpwwwrevistaunammxvol7num7art55int55htm

Siacutentesis Cuando se desea tener seguridad hablando en aacutembitos informaacuteticos la

criptografiacutea es una herramienta muy uacutetil el autor lo entiende tambieacuten como un medio para

garantizar las propiedades de confidencialidad integridad y disponibilidad de los recursos de un

sistema

Con la criptografiacutea se puede garantizar las propiedades de integridad y confidencialidad

pero hay que saber coacutemo utilizarla para ello es importante tener claros los conceptos baacutesicos que

estaacuten detraacutes de los sistemas criptograacuteficos modernos Estos conceptos van desde entender queacute es

la criptografiacutea coacutemo estaacute clasificada entender el funcionamiento baacutesico de algunos sistemas de

cifrado y conocer coacutemo se forman los documentos digitales como firmas y sobres digitales

Resultados El autor realiza un viaje por un gran nuacutemero de conceptos utilizados en

criptografiacutea el inicio y la clasificacioacuten de la misma asiacute como la criptografiacutea claacutesica y moderna y

analiza de manera breve algunos meacutetodos de cifrado maacutes comunes

17

Tiacutetulo del Trabajo Criptoanaacutelisis sobre meacutetodos claacutesicos de cifrado

Autores Sebastiaacuten Goacutemez Juan David Arias Diego Agudelo

Fecha 2 de mayo 2013

Lugar Ciudad de Meacutexico

Publicado en Scientia et Technica Antildeo XVII No 50 abril de 2012

Siacutentesis Los algoritmos criptograacuteficos utilizados desde la antigua Roma hasta nuestros

diacuteas son meacutetodos que convierten un mensaje de texto plano a cifrado al proceso inverso se le

conoce como descifrar Este artiacuteculo realiza un estudio de algunas teacutecnicas de encriptacioacuten claacutesicas

del siglo pasado como lo son el cifrado de Cesar y el cifrado de Vigeneacutere asiacute como muestra

teacutecnicas baacutesicas y modernas de criptoanaacutelisis basadas en la teoriacutea de la informacioacuten y estadiacutestica

como lo son la entropiacutea y el ataque de maacutexima correlacioacuten Las teacutecnicas de criptoanaacutelisis descritas

anteriormente pueden ser usadas en otros meacutetodos de cifrado siempre y cuando esteacuten presentes las

mismas debilidades

Resultados Los autores implementaron en lenguajes de programacioacuten Python un

algoritmo para el caacutelculo de entropiacutea para diferentes longitudes de clave Para la implementacioacuten

de los algoritmos de cifrado y descifrado de Vigeneacutere y de maacutexima correlacioacuten utilizaron lenguaje

de programacioacuten C++ Se probaron los meacutetodos anteriormente descritos sobre textos planos de

diferentes longitudes logrando un resultado de 9385 de efectividad en promedio

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de dos de los

algoritmos de encriptacioacuten maacutes antiguos y baacutesicos pero sobre todo que conociendo los meacutetodos

de criptoanaacutelisis me permitiraacuten analizar debilidades y fortalezas de algoritmos

18

Tiacutetulo del Trabajo ULTRACOM Computacioacuten de Alto Rendimiento para Criptoanaacutelisis

Autor Antonio Castro Lechtaler Alejandro Repetto Martiacuten Bianchi Marcelo Cipriano

Alejandro Arroyo Arzubi Ceacutesar Cicerchia Eduardo Malvacio

Fecha octubre 2014

Lugar Buenos Aires Argentina

Publicado en XX Congreso Argentino de Ciencias de la Computacioacuten (Buenos Aires

2014)

Siacutentesis La generacioacuten de nuacutemeros primos fundamentales para la produccioacuten de claves

el anaacutelisis de secuencias pseudo-aleatorias los procesos de verificacioacuten y validacioacuten de algoritmos

de seguridad en un sentido geneacuterico requieren enormes cantidades de procesamiento Los

procesos relacionados con la matemaacutetica criptograacutefica se caracterizan por la alta necesidad de

coacutemputo El objetivo de ULTRACOM es desarrollar una computacioacuten distribuida multipropoacutesito

que permita como primera aplicacioacuten real el anaacutelisis la validacioacuten y la ejecucioacuten de pruebas de

estreacutes sobre sistemas criptograacuteficos El presente trabajo de investigacioacuten detalla el proceso de

desarrollo de ULTRACOM y muestra un ejemplo de su implementacioacuten en una versioacuten Beta Para

ello toman como entrada dos versiones del algoritmo Trivium Utilizando la misma

infraestructura y sin desarrollo extra se prueban grandes voluacutemenes de claves y vectores de

inicializacioacuten de los algoritmos en busca de secuencias deacutebiles de menor longitud que la de la

buscada

Resultados El equipo implementoacute una versioacuten beta de la plataforma ULTRACOM

comprobando la factibilidad y viabilidad teacutecnica de la generalizacioacuten de la infraestructura de

computacioacuten distribuida en grilla (malla) BOINC Este avance permite extender los horizontes de

BOINC y habilita la posibilidad de obtener la capacidad de coacutemputo de alto rendimiento a bajo

19

costo Concluyeron que ULTRACOM es un proyecto viable escalable y de alto impacto para la

evaluacioacuten y validacioacuten de algoritmos criptograacuteficos

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento y la

implementacioacuten de una arquitectura de computacioacuten distribuida y una vez siendo factible su

desarrollo utilizar su poder de coacutemputo atacando a traveacutes de un algoritmo un sistema criptograacutefico

20

Tiacutetulo del Trabajo Criptografiacutea Cuaacutentica

Autor M Baig

Fecha 2010

Lugar Barcelona Espantildea

Siacutentesis En este artiacuteculo el autor realiza una breve introduccioacuten a la criptografiacutea claacutesica y

la relacioacuten que existe con la teoriacutea de la informacioacuten de Shannon la cual asegura que el cifrado

digital simeacutetrico es secreto y perfecto siempre y cuando se cumplan los tres requisitos

1 La llave ha de ser aleatoria

2 La llave debe usarse soacutelo una vez

3 La llave ha de ser tan larga como el mensaje y de un solo uso debe de estar en posesioacuten

tanto del emisor como del receptor

El punto 3 es el maacutes complicado de cumplir debido a la forma de compartir la llave entre

el emisor y receptor

Maacutes adelante en el artiacuteculo se hace un anaacutelisis sobre otra teacutecnica de criptografiacutea que es el

cifrado digital asimeacutetrico en la que se estudia coacutemo funcionan las llaves privadas y puacuteblicas asiacute

como el meacutetodo de criptograacutefico RSA

Resultados

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento maacutes profundo de

los meacutetodos de criptografiacutea simeacutetricos y asimeacutetricos especiacuteficamente el algoritmo asimeacutetrico

RSA

21

Tiacutetulo del Trabajo La Criptografiacutea Maderista en la Revolucioacuten Mexicana (1910-1911)

Criptoanaacutelisis de una carta cifrada por Gabriel Leyva Solano

Autor Roberto Narvaacuteez

Fecha 2011

Lugar Meacutexico DF

Siacutentesis Este trabajo aborda temas relacionados con las comunicaciones secretas del

movimiento revolucionario comandado por Francisco I Madero a partir de 1910 Se compone de

dos partes la primera es una breve resentildea criacutetica de ejemplos criptograacuteficos del maderismo que

fueron generados entre 1910 y 1911 la segunda describe paso a paso el criptoanaacutelisis que aplicoacute

el autor Roberto Narvaacuteez para desencriptar una carta parcialmente cifrada de Gabriel Leyva Solano

a Francisco I Madero

Resultados El propoacutesito general uacuteltimo es contribuir al conocimiento de la criptografiacutea

mexicana en el siglo XX En lo particular se trata de poner a disposicioacuten de los estudiosos el

contenido completo de la carta de Leyva Solano por primera vez despueacutes de 100 antildeos y al mismo

tiempo someter a la criacutetica teacutecnica e histoacuterica el procedimiento criptoanaliacutetico puesto en operacioacuten

para recuperar el texto plano

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados en nuestro paiacutes sobre formas y meacutetodos de encriptacioacuten durante la Revolucioacuten

Mexicana incluso mucho antes de la 2ordf Guerra mundial momento donde se registroacute un auge

importante dentro de la criptografiacutea moderna

22

Tiacutetulo de Tesis Anaacutelisis de la programacioacuten concurrente sobre la cpu y gpu en el

desarrollo de fractal build

Autor Joseacute Vicente Anilema Guadalupe

Fecha 2012

Lugar Riobamba Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la geometriacutea euclidiana debido a que

el autor realiza una aplicacioacuten que crea paisajes fractales lo que significa crear un paisaje con una

misma figura geomeacutetrica Lo anterior se traduce en una necesidad de gran poder de coacutemputo para

realizar de una manera eficaz la tarea Dentro de la tesis el autor realiza diversos estudios

comparativos entre el procesamiento serializado realizado por una CPU (unidad central de

procesamiento) y procesamiento paralelizado realizado por una GPU (Unidad grafica de

procesamiento) a traveacutes de diversas herramientas para obtener el mejor aprovechamiento de los

recursos

Resultados El autor concluye que es necesario examinar los algoritmos a utilizar para que

estos puedan ser utilizados en coacutemputo paralelo Ademaacutes de que es necesario aprender ciertas

herramientas a utilizar para aprovechar al maacuteximo el coacutemputo distribuido y no desperdiciar el

poder de procesamiento muy superior que las GPUrsquos nos pueden brindar

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados para medir y comparar la velocidad de procesamiento de la unidad central de

procesamiento (CPU) y la unidad graacutefica de procesamiento (GPU) Asiacute como la medida en Flops

(Operaciones de punto flotante por segundo)

23

Tiacutetulo del Trabajo Arquitectura cluacutester de alto rendimiento utilizando herramientas de

software libre

Autores Leonardo Chiquiguanca Edyson Malla Freddy Ajila Rene Guamaacuten-Quincheacute

Fecha mayo 2015

Lugar Loja Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la gran cantidad de datos que tienen

que procesar las universidades puacuteblicas dentro de sus investigaciones realizadas en diferentes aacutereas

como la ingenieriacutea medicina etc y la carencia de recursos econoacutemicos para obtener

supercomputadoras que procesen dicha informacioacuten Los autores proponen dentro de su

investigacioacuten la utilizacioacuten de equipo de coacutemputo existente dentro de su universidad y por medio

de software libre realizar agrupamiento de computadoras para poder lograr el procesamiento de

grandes voluacutemenes de datos de una manera accesible

Resultados Los autores concluyen que la mejor arquitectura para el agrupamiento

(cluacutester) de computadoras en ambientes universitarios es la arquitectura Beowulf debido a que la

implementaron en hardware convencional existente dentro de su campus universitario y que

ademaacutes usaron software libre mencionando que el poder de coacutemputo logrado fue muy cercano al

de una supercomputadora

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de las teacutecnicas

utilizadas en ambientes universitarios para la realizacioacuten de agrupamiento de computadoras y

sobre todo la optimizacioacuten de costos para realizar dicha tarea y tener como finalidad el lograr

mayor capacidad de procesamiento

24

Tiacutetulo de Tesis Desarrollo de un algoritmo de cifrado simeacutetrico de resumen

Autores Jonathan Dave Orjuela Navarrete

Antildeo 2008

Lugar Bogotaacute DC

Siacutentesis Esta tesis realiza un estudio de varios meacutetodos de criptografiacutea simeacutetrica para

posteriormente utilizando diferentes foacutermulas matemaacuteticas crear un algoritmo criptograacutefico

nuevo Dentro de la tesis utiliza dos meacutetodos para realizar pruebas a su algoritmo criptoanaacutelisis

diferencial y criptoanaacutelisis basado en fallos de hardware Dentro de los cuales hace un estudio

detallado de las teacutecnicas y herramientas de criptoanaacutelisis realizado a su algoritmo

Resultados El autor concluye de manera positiva con la realizacioacuten del algoritmo y de

manera satisfactoria con la realizacioacuten de criptoanaacutelisis a su algoritmo pudiendo demostrar la

fortaleza del algoritmo a traveacutes de ejemplo de cifrado con textos claro muy parecido y su

conversioacuten a cadenas completamente diferentes

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de criptoanaacutelisis diferencial y criptoanaacutelisis basado en fallos de hardware para la

evaluacioacuten de algoritmos de cifrado simeacutetrico de textos claros

25

Tiacutetulo del Trabajo Firt step in a Pc cluster development with openMosix

Autores Javier Bilbao Gorka Garate

Antildeo 2008

Lugar Bilbao Spain

Siacutentesis En este trabajo se afirma que es posible hacer maacutequinas de alta capacidad de

caacutelculo mediante la interconexioacuten de equipos con redes de alta velocidad A este tipo de sistemas

se les llama sistemas distribuidos y hoy en diacutea es la tecnologiacutea maacutes utilizada para resolver

problemas que requieren una gran capacidad de caacutelculo La agrupacioacuten de computadoras permite

que varias computadoras trabajen juntas para resolver los problemas de informaacutetica comuacuten Este

artiacuteculo centra su estudio en uno de los diferentes meacutetodos de agrupamiento de computadoras

openMosix El trabajo tambieacuten evaluacutea el cluacutester por dos casos de estudio donde se mejora el

tiempo de ejecucioacuten de los problemas resueltos

Resultados El autor del artiacuteculo concluye con la realizacioacuten satisfactoria de agrupamiento

de computadoras bajo el meacutetodo openMosix el cual uacutenicamente permite agrupamiento de la forma

SSI (Single System Image) que se refiere a que uacutenicamente se puede realizar el agrupamiento con

todos los nodos ejecutando un mismo sistema operativo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras openMosix ventajas desventajas y dificultades para

su implementacioacuten

26

Tiacutetulo del Trabajo Disentildeo e implementacioacuten de un cluacutester tipo Beowulf para el desarrollo

de coacutemputo cientiacutefico avanzado

Autores Edgar Rubeacuten Gonzaacutelez Ramiacuterez Abimael Rodriacuteguez Saacutenchez

Antildeo 2008

Lugar Instituto Politeacutecnico Nacional Meacutexico DF

Siacutentesis Este trabajo de tesis ha desarrollado e implementado una herramienta

computacional llamada Cluster Beowulf para mejorar la programacioacuten paralela Comenzando

con la memoria compartida y distribuida el autor implemento el agrupamiento tipo Beowulf

pensando en procesamiento paralelo la optimizacioacuten de las fuentes informaacuteticas El disentildeo se

construye mediante una distribucioacuten Linux Fedora Core 6 a 64 bits utilizando todas las ventajas

que ofrece el estaacutendar Gigabyt Ethernet La programacioacuten paralela fue desarrollada en lenguaje C

tanto para MPI como para OPENMP

Resultados El autor del artiacuteculo concluye que de acuerdo con los resultados el tiempo

de procesamiento se redujo con el uso muacuteltiples nuacutecleos mejoroacute hasta ocho veces gracias al

multihilo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras Beowulf y su implementacioacuten en sistemas operativos

de uso libre Linux distribucioacuten Fedora 6

27

Marco Teoacuterico

21 Seguridad de la Informacioacuten

La Seguridad de la Informacioacuten consiste y hace referencia a la proteccioacuten de cualquier

amenaza para salvaguardar los activos fijos y en especial toda informacioacuten de la cual estaacute basada

la continuidad de las operaciones de la empresa sean estas ocasionadas dentro o fuera de la misma

con esto se logra disminuir los dantildeos y perjuicios que estas amenazas causariacutean a la organizacioacuten

y a la vez aumentar las oportunidades de servicio hacia otras empresas

La Seguridad de la informacioacuten se consigue mediante la implementacioacuten de controles

efectivos que pueden ser normas manual de funciones buenas praacutecticas procedimientos

estructuras organizativas funciones de software y hardware planes de contingencia y herramientas

que se encargan de proteger la privacidad e integridad de la informacioacuten que se almacena en un

sistema informaacutetico Estos controles necesitan continuamente ser establecidos monitoreados

revisados y mejorados en donde sea necesario para asegurar que se cumplan los objetivos

especiacuteficos de seguridad en cada aacuterea de negocio de la organizacioacuten

La seguridad informaacutetica es en realidad una rama de la seguridad de la informacioacuten aunque

de forma praacutectica algunos autores suelen utilizar de manera indistinta ambos teacuterminos

211 Objetivo de la seguridad de la informacioacuten En la seguridad de la informacioacuten

sabiendo que dichos procesos de seguridad permiten proteger el recurso maacutes importante y valioso

de una organizacioacuten partiendo como principio fundamental los procesos de aseguramiento el

28

objetivo del proceso de seguridad informaacutetica es obtener un nivel aceptable de seguridad ya que

la informacioacuten es lo maacutes valioso que tiene una institucioacuten o empresa por lo tanto esta debe ser

protegida para que no sea vulnerable y utilizada para fines maliciosos

212 Principios de la seguridad informaacutetica

Confidencialidad Los datos solo deben ser conocidos y accedidos por quienes esteacuten

autorizados durante su almacenamiento procesamiento o trasmisioacuten Verificar y certificar que solo

los usuarios con accesos autorizados puedan acceder a la informacioacuten

Integridad Los datos solo pueden ser modificados y eliminados por quienes esteacuten

autorizados para ello es decir los sistemas y aplicaciones solo deben ser operados por personal

autorizado

Disponibilidad Los sistemas que almacenan datos e informacioacuten deben garantizar su

acceso cuando asiacute se requiera por quienes tengan derecho a ello

213 Caracteriacutesticas de seguridad informaacutetica

Control Solo los usuarios autorizados deciden cuaacutendo y coacutemo permitir el acceso a la

informacioacuten

Auditoriacutea Establece las acciones cuaacutendo las implementa y quieacuten las realiza sobre el

sistema

Autenticidad Define que la informacioacuten necesaria es correcta utilizable y vaacutelida en tiempo

y forma

No Repudio Su funcioacuten es evitar que alguna entidad que envioacute o recibioacute informacioacuten

alegue que no lo hizo

29

214 Formas de Autenticacioacuten

Contrasentildea Una contrasentildea es un tipo de seguridad informaacutetica ya que es una serie de

caracteres secretos que permiten a un usuario tener acceso a un archivo equipo de coacutemputo o

programa y negar el acceso a usuarios no autorizados

Certificado digital Es un tipo de seguridad informaacutetica que permite la firma digital

electroacutenica que garantiza teacutecnica y legalmente la identidad de una persona en Internet

Autenticacioacuten HTTP Tipo de seguridad informaacutetica que delega la autenticacioacuten de

usuarios a un servidor a traveacutes de Kerberos

215 Ciber-seguridad Con los avances tecnoloacutegicos y la demanda que ha causado en ello

existe un elevado iacutendice de informacioacuten personal y empresarial que circula y se mantiene en la red

por la utilizacioacuten del internet esto permite que toda informacioacuten quede expuesta a cualquier ataque

de ciber-delincuentes los cuales buscan la manera de vulnerar cualquier sistema para espiar robar

informacioacuten o hacer dantildeo de cualquier tipo por lo que se ha visto la necesidad de tomar medidas

de seguridad para salvaguardar la informacioacuten ya que es muy importante

La ciberseguridad es la proteccioacuten de los sistemas conectados a Internet incluidos el

hardware el software y los datos de los ciberataques En un contexto informaacutetico la seguridad

comprende la ciberseguridad y la seguridad fiacutesica ambas son utilizadas por las empresas para

proteger contra el acceso no autorizado a los centros de datos y otros sistemas de coacutemputo El

objetivo de la ciberseguridad es limitar el riesgo y proteger los activos de Tecnologiacuteas de

Informacioacuten de los atacantes con intenciones maliciosas La seguridad de la informacioacuten estaacute

30

disentildeada para mantener la confidencialidad integridad y disponibilidad de los datos es un

subconjunto de la ciberseguridad

22 Criptografiacutea

La Criptografiacutea tambieacuten llamada ldquoescritura ocultardquo tradicionalmente en el aacutembito de

criptografiacutea es donde se ocupan las teacutecnicas de cifrado o codificacioacuten que permiten alterar el

contenido de cierta informacioacuten o mensajes con el fin de hacerlos ininteligibles a receptores o

personas no autorizadas (Meneacutendez-Barzanallana 17)

Actualmente la criptografiacutea se encarga de analizar algoritmos protocolos y sistemas que

son utilizados para proveer seguridad a las comunicaciones informacioacuten y a las entidades que se

comunican entre siacute

221 Tipos de Criptografiacuteas

2211 Tablas Hash Un hash o funcioacuten hash toma un grupo de caracteres (llamado clave)

y lo asigna a un valor de cierta longitud (llamado valor hash o hash) El valor hash es representativo

de la cadena de caracteres original pero normalmente es maacutes pequentildeo que el original

El hash tambieacuten es utilizado en el cifrado y descifrado de firmas digitales La funcioacuten hash

transforma la firma digital luego tanto el valor hash como la firma se enviacutean al receptor El

receptor utiliza la misma funcioacuten hash para generar el valor hash y luego lo compara con el recibido

31

en el mensaje Si los valores hash son los mismos es probable que el mensaje se haya transmitido

sin errores

Un ejemplo de una funcioacuten hash se llama plegado(folding) Esta toma un valor original lo

divide en varias partes luego agrega las partes y usa los uacuteltimos cuatro diacutegitos restantes como

valor o clave hash

2212 Tipos de algoritmos Hash

22121 SHA - 1 (Secure Hash Algorithm) Es un algoritmo criptograacutefico de Hash

publicado por el gobierno de los Estados Unidos Genera un valor Hash de 160 bits a partir de una

secuencia de longitud arbitraria Es considerado lo suficientemente seguro para aplicaciones

praacutecticas pero hay disponibles versiones maacutes robustas SHA - 256 SHA - 384 y SHA - 512 que

generan valores Hash de 256 384 y 512 bits respectivamente estas versiones reemplazaraacuten a SHA

- 1 mientras se siga trabajando sobre ellas (Borghello 2009)

22122 MD5 (Message Digest Algorithm) En criptografiacutea MD5 es una funcioacuten hash

criptograacutefica ampliamente utilizada con un valor hash de 128 bits Como estaacutendar de Internet (RFC

1321) MD5 se ha empleado en una amplia variedad de aplicaciones de seguridad y tambieacuten se

usa comuacutenmente para verificar la integridad de los archivos Un hash MD5 generalmente se

expresa como un nuacutemero hexadecimal de 32 diacutegitos

MD5 es una versioacuten reforzada de MD4 Al igual que MD4 el hash MD5 fue inventado por

el profesor Ronald Rivest del Massachusetts Institute of Technology (MIT) Ademaacutes MD5 se

32

utilizoacute como modelo para SHA-1 ya que comparten muchas caracteriacutesticas comunes MD5 y

SHA-1 son los dos algoritmos hash maacutes utilizados en la actualidad aunque el uso de MD5 ha

disminuido ya que ahora se considera roto (Borghello 2009)

22123 RIPEMD ndash 160 Es una funcioacuten hash criptograacutefica basada en la construccioacuten

Merkle-Damgaringrd (MD) Se usa en el estaacutendar de Bitcoin Es una versioacuten reforzada del algoritmo

RIPEMD que produce un resumen de hash de 128 bits mientras que el algoritmo RIPEMD-160

produce una salida de 160 bits La funcioacuten de compresioacuten consta de 80 etapas formadas por 5

bloques que se ejecutan 16 veces cada uno Este patroacuten se ejecuta dos veces con los resultados

combinados en la parte inferior utilizando la adicioacuten del moacutedulo 32 (Borghello 2009)

22124 Funcioacuten Merkle-Damgaringrd La construccioacuten MD es una metodologiacutea para crear

funciones hash resistentes a colisiones a partir de funciones de compresioacuten unidireccionales Ralph

Merkle la propuso en el antildeo de 1979 en ldquoA certified Digital Signaturerdquo posterior a este estudio

Ivan Damgaringrd demostroacute de manera independiente que la estructura era soacutelida (Merkle amp

Damgaringrd sf)

2213 Cifrado simeacutetrico Los cifrados simeacutetricos son los cifrados criptograacuteficos maacutes

antiguos y maacutes utilizados En un cifrado simeacutetrico la clave que descifra el texto cifrado es la

misma (o puede derivarse faacutecilmente) de la clave que cifra el texto claro Esta clave a menudo se

conoce como la clave secreta Los cifrados simeacutetricos maacutes utilizados son DES y AES

La problemaacutetica que surge es la seguridad de la clave

33

El emisor cifra el mensaje con una clave

Enviacutea el mensaje cifrado de tal manera que nadie puede descifrarlo sin dicha clave

El receptor obtiene la clave y entonces puede descifrar el mensaje con la misma clave

que recibioacute del emisor

Algunos algoritmos de este tipo son

22131 RC5 (Cifrado de Rivest) Es un algoritmo de cifrado de bloque de clave simeacutetrica

disentildeado por Ron Rivest en 1994 Se destaca por ser simple raacutepido (debido a que usa solo

operaciones de coacutemputo primitivas como XOR o shift) y ademaacutes por consumir menos memoria

RC5 es un cifrado de bloques y aborda dos bloques de palabras a la vez Dependiendo del

tamantildeo del bloque de texto sin formato nuacutemero de rondas y tamantildeo de clave se pueden definir

varias instancias de RC5 y cada instancia se denota como RC5-w r b donde w = tamantildeo de

palabra en bits r = nuacutemero de rondas y b = tamantildeo de la clave en bytes (Pawar 2016)

Como se ha mencionado RC5 utiliza bloques de 2 palabras el tamantildeo del bloque de texto

sin formato puede ser de 32 64 o 128 bits

22132 IDEA (International Data Encryption Algorithm) Baacutesicamente es un algoritmo

de cifrado de bloque simeacutetrico El algoritmo asimeacutetrico utiliza la misma clave para el cifrado y

descifrado Un cifrado de bloque divide el mensaje en bloques cada uno de una longitud fija y

luego cifra cada bloque de forma independiente

34

El tamantildeo de bloque tiacutepico es de 16 bytes de 128 bits Un cifrado de bloque generalmente

operaraacute en bloques o rondas donde se aplica parte de la clave a la ronda Despueacutes de un cierto

nuacutemero de rondas digamos entre 10 y 16 se termina con el texto cifrado para ese bloque

El bloque de texto cifrado tiene exactamente el mismo tamantildeo que el bloque de texto sin

formato 16 bytes Para cada ronda se trabaja en el bloque utilizando una parte de la clave de

cifrado a la que se le llama la clave redonda Muacuteltiples claves redondas se derivan de la clave de

cifrado utilizando para esto un programa de claves

La programacioacuten de claves es un algoritmo que cambia XOR multiplica y realiza otros

tipos de operaciones en la clave de cifrado original para obtener estas claves redondas Bueno si

tengo un bloque de 16 bytes y tengo una clave de 128 bits que tambieacuten es de 16 bytes (Educba

2019)

22133 DES (Data Encryption Standard) El algoritmo DES es el algoritmo de seguridad

maacutes popular Es un algoritmo simeacutetrico lo que significa que se utilizan las mismas claves para

cifrar descifrar datos confidenciales La longitud de la clave es de 8 bytes (64 bits) Entonces

para cifrar descifrar datos el algoritmo DES utiliza una clave de 8 bytes pero 1 byte (8 bits) para

la verificacioacuten de paridad Es un algoritmo de cifrado de bloque por lo tanto el tamantildeo del bloque

de datos del algoritmo DES es de 64 bits Para cifrar descifrar datos el algoritmo DES utiliza la

estructura Feistel Entonces utiliza una ronda para cifrar descifrar datos Aunque el tamantildeo del

35

bloque de datos es de 64 bits el nuacutemero de rondas seraacute de 16 rondas asiacute mismo utilizaraacute diferentes

subclaves para cada ronda por lo tanto el nuacutemero de subclaves seraacute de 16 subclaves

Como se puede observar la clave efectiva es de 56 bits por consiguiente se tiene 256

combinaciones posibles por lo que la fuerza bruta se hace casi imposible (Sanjoy 2015)

2214 Cifrado asimeacutetrico Los cifrados asimeacutetricos tambieacuten se conocen como cifrados

con claves puacuteblicas y privadas Usan dos claves una para el cifrado de mensajes y la otra durante

el descifrado

Un intruso puede encriptar cualquier mensaje usando la clave puacuteblica conocida Los

cifrados asimeacutetricos son por lo tanto vulnerables a los ataques de texto sin formato Los cifrados

con encriptacioacuten de clave puacuteblica deben proporcionar seguridad contra tales ataques Despueacutes de

encriptar dos mensajes con la misma clave puacuteblica el intruso no puede distinguir queacute texto cifrado

estaacute conectado con queacute texto plano Ademaacutes un observador que analiza dos mensajes encriptados

usando el mismo algoritmo y la misma clave puacuteblica no puede distinguir sus textos cifrados

(Kowalczyk 2015)

Los cifrados asimeacutetricos son mucho maacutes lentos que los cifrados simeacutetricos (generalmente

mil veces maacutes lentos) Es una praacutectica comuacuten usar el cifrado de clave puacuteblica solo para establecer

la conexioacuten segura y negociar la nueva clave secreta que luego se utilizaraacute para proteger la

comunicacioacuten mediante cifrado simeacutetrico Ejemplos de este cifrado son

36

22141 DSA (Digital Signature Algorithm - Algoritmo de Firma digital) Es un estaacutendar

del Gobierno Federal de los Estados Unidos para firmas digitales Fue propuesto por el Instituto

Nacional de Estaacutendares y Tecnologiacutea (NIST) en agosto de 1991 para ser usado en su Estaacutendar de

Firma Digital (DSS) en el antildeo de 1993

La primera parte del algoritmo DSA es la generacioacuten de clave puacuteblica y clave privada que

puede describirse como

Se elige un nuacutemero primo q que se llama divisor primo

Se elige otro nuacutemero primo p de modo que pndash1 mod q = 0 p seraacute llamado moacutedulo

primo

Ahora se elige un nuacutemero entero g tal que 1 ltg ltp g q mod p = 1 g = h ((p

ndash 1) q) mod p q tambieacuten se llama moacutedulo de orden multiplicativo de g moacutedulo p

Se elige un nuacutemero entero tal que 0 ltx ltq

Se calcula y como g x mod p

Se empaqueta la clave puacuteblica como p q g y

Por uacuteltimo se empaqueta la clave privada como p q g x

La segunda parte del algoritmo DSA es la generacioacuten de firma y la verificacioacuten de firma

Para generar una firma de mensaje el remitente puede seguir estos pasos

Se genera el resumen del mensaje h utilizando un algoritmo hash como SHA1

Se genera un nuacutemero aleatorio k tal que 0 ltk ltq

37

Se calcula r como (g k mod p) mod q Si r = 0 seleccione una k diferente

Ahora se calcula i de modo que k i mod q = 1 i se llama el inverso multiplicativo modular

de k moacutedulo q

Se calcula s = i (h + r x) mod q Si s = 0 se selecciona una k diferente

Por uacuteltimo se empaqueta la firma digital como r s (Yang 2019)

22142 RSA Encriptacioacuten RSA encriptacioacuten Rivest-Shamir-Adleman tipo de

criptografiacutea de clave puacuteblica ampliamente utilizada para la encriptacioacuten de datos de correo

electroacutenico y otras transacciones digitales a traveacutes de Internet RSA lleva el nombre de sus

inventores Ronald L Rivest Adi Shamir y Leonard M Adleman quienes lo crearon mientras

trabajaban en la facultad del Instituto Tecnoloacutegico de Massachusetts (Simmons 2019)

En el sistema RSA un usuario elige de manera secreta un par de nuacutemeros primos p y q tan

grandes que factorizar el producto n = pq estaacute mucho maacutes allaacute de las capacidades informaacuteticas

proyectadas para la vida uacutetil de los cifrados A partir del antildeo 2000 los estaacutendares de seguridad del

gobierno de EE UU exigen que el moacutedulo tenga un tamantildeo de 1024 bits es decir p y q deben

tener un tamantildeo de aproximadamente 155 diacutegitos decimales por lo que n es aproximadamente un

nuacutemero de 310 diacutegitos Dado que los nuacutemeros duros maacutes grandes que actualmente se pueden

factorizar son solo la mitad de este tamantildeo y dado que la dificultad de factorizar se duplica

aproximadamente por cada tres diacutegitos adicionales en el moacutedulo se cree que los moacutedulos de 310

diacutegitos estaacuten a salvo de factorizar durante varias deacutecadas

38

2215 Cifrado hiacutebrido Es una teacutecnica comuacuten que combina diferentes funciones

criptograacuteficas como el cifrado de bloque Con el cifrado hiacutebrido se pueden cifrar datos firmarlos

o agregar un MAC y enviarlos en un objeto seguro (como una cadena o archivo) a traveacutes de un

canal de comunicacioacuten inseguro (sin un acuerdo clave entre dos partes)

En el sistema de cifrado hiacutebrido el texto plano (sin formato) se divide en tokens Luego

se calcula la longitud de cada ficha Los tokens y sus longitudes se almacenan en una matriz

Posteriormente se aplica el algoritmo Ceacutesar anidado sugerido El texto producido se almacena en

una matriz n x m llamada A Luego la transposicioacuten de esta matriz At se calcula utilizando

nuestra versioacuten revisada del cifrado de transposicioacuten para resolver el problema de secuenciacioacuten

A continuacioacuten el algoritmo RSA revisado se aplica en la matriz producida En el paso final se

aplica el formato de datos textuales usando el coacutedigo ASCII para producir el texto cifrado El

proceso de descifrado se realiza de la misma manera pero en orden inverso (Nahar amp Abu Abbas

2010)

23 Criptoanaacutelisis

El criptoanaacutelisis es el proceso de estudiar sistemas criptograacuteficos para buscar debilidades

o fugas de informacioacuten En general se considera que el criptoanaacutelisis explora las debilidades de

las matemaacuteticas subyacentes de un sistema criptograacutefico pero tambieacuten incluye la buacutesqueda de

debilidades en la implementacioacuten como ataques de canal lateral o entradas de entropiacutea deacutebiles

39

Su funcioacuten es la de conseguir obtener el significado de mensajes creados por medio de

criptografiacutea El objetivo principal del criptoanaacutelisis es opuesto al de la criptografiacutea Tiene como

finalidad encontrar la debilidad de las diferentes teacutecnicas criptograacuteficas para explotarla y de esta

manera reducir o eliminar la seguridad de la teacutecnica criptograacutefica Cualquier intento de

criptoanaacutelisis puede ser llamado ataque Una vez que un atacante logra romper la seguridad que

una teacutecnica criptograacutefica aportaba al sistema se dice que dicho sistema ha sido roto y por lo tanto

dicho ataque tuvo eacutexito

El criptoanaacutelisis es la investigacioacuten de sistemas texto cifrado y cifrados para revelar el

significado oculto o los detalles del sistema mismo El objetivo de este tipo de estudio es descubrir

los aspectos ocultos incluso si la clave o el algoritmo principal no se pueden descifrar Se necesita

una combinacioacuten exitosa de persistencia matemaacuteticas intuicioacuten curiosidad y una computadora

que funcione para hacer un buen criptoanalista Este tipo de ruptura de coacutedigo es extremadamente

importante especialmente en el mundo tecnoloacutegicamente dependiente de hoy El criptoanaacutelisis es

constantemente realizado por criptoacutegrafos que intentan obtener informacioacuten valiosa y por aquellos

que intentan descifrar el coacutedigo para revelar secretos (Security Degree Hub 2017)

24 Niveles de seguridad

Los niveles de seguridad de sistemas operativos son otorgados de acuerdo con el sistema

operativo que esteacute utilizando la empresa o institucioacuten ya sea puacuteblica privada gubernamental o no

gubernamental En el manual ldquoTrusted Computer System Evaluation Criteriardquo (United States

40

Government Department of Defense 1983) el Departamento de Defensa de los Estados Unidos

define los siguientes niveles

241 Nivel D1 Este nivel es el maacutes bajo de seguridad por lo tanto la norma establece que

el sistema no es confiable Esta divisioacuten contiene solo una clase Estaacute reservado para aquellos

sistemas que han sido evaluados pero que no cumplen con los requisitos para un nivel de

evaluacioacuten superior

242 Nivel C1 Un sistema de nivel C1 cumple nominalmente los requisitos de seguridad

discrecionales al proporcionar separacioacuten de usuarios y datos Incorpora alguna forma de controles

creiacutebles capaces de imponer limitaciones de acceso de manera individual es decir aparentemente

adecuados para permitir que los usuarios puedan proteger la informacioacuten privada o del proyecto y

evitar que otros usuarios lean o destruyan accidentalmente sus datos Se espera que el entorno de

nivel C1 sea uno de los usuarios cooperantes que procesan datos con el mismo nivel de

sensibilidad Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten

de nivel C1 son

Control de acceso discrecional por ejemplo listas de control de acceso (ACL)

usuario grupo

Por lo general para usuarios que estaacuten en el mismo nivel de seguridad

Proteccioacuten de nombre de usuario y contrasentildea y base de datos de autorizaciones

seguras (ADB)

Sistema operativo protegido y modo de operaciones del sistema

Comprobacioacuten perioacutedica de integridad de TCB

41

Mecanismos de seguridad probados sin derivaciones obvias

Documentacioacuten para la seguridad del usuario

Documentacioacuten para la seguridad de la administracioacuten de sistemas

Documentacioacuten para pruebas de seguridad

Documentacioacuten de disentildeo TCB

Tiacutepicamente para usuarios en el mismo nivel de seguridad

La certificacioacuten C1 es rara Los sistemas de ejemplo son versiones anteriores de

Unix IBM RACF

243 Nivel C2 Los sistemas de esta clase imponen un control de acceso discrecional maacutes

fino que los sistemas (C1) lo que hace que los usuarios sean individualmente responsables de sus

acciones a traveacutes de procedimientos de inicio de sesioacuten auditoriacutea de eventos relevantes para la

seguridad y aislamiento de recursos Los siguientes son requisitos miacutenimos para los sistemas

asignados a una clasificacioacuten de nivel C2

La proteccioacuten de objetos puede ser para un solo usuario Por ejemplo a traveacutes de

una base de datos ACL

La autorizacioacuten de acceso solo puede ser asignada por usuarios autorizados

Proteccioacuten de reutilizacioacuten de objetos (Por ejemplo para evitar la reasignacioacuten de

objetos eliminados de manera segura)

Procedimientos obligatorios de identificacioacuten y autorizacioacuten para los usuarios (Por

ejemplo Usuario Contrasentildea)

Auditoriacutea completa de eventos de seguridad (es decir fecha hora evento usuario

eacutexito falla ID de terminal)

42

Modo de operacioacuten del sistema protegido

Proteccioacuten adicional para la autorizacioacuten y los datos de auditoriacutea

Documentacioacuten como C1 maacutes informacioacuten sobre el examen de la informacioacuten de

auditoriacutea

Esta es una de las certificaciones maacutes comunes Los sistemas operativos de ejemplo

son VMS IBM OS 400 Windows NT Novell NetWare 411 Oracle 7 DG AOS

VS II

244 Nivel B1 Los sistemas de este nivel requieren todas las caracteriacutesticas requeridas

para el nivel C2 Ademaacutes debe estar presente una declaracioacuten informal del modelo de poliacutetica de

seguridad etiquetado de datos y control de acceso obligatorio sobre sujetos y objetos nombrados

La capacidad debe existir para etiquetar con precisioacuten la informacioacuten exportada Cualquier falla

identificada por la prueba debe ser eliminada Los siguientes son requisitos miacutenimos para los

sistemas asignados a una clasificacioacuten de nivel B1

Etiquetado obligatorio de seguridad y acceso de todos los objetos (Por ejemplo

archivos procesos dispositivos)

Comprobacioacuten de integridad de etiquetas (Por ejemplo mantenimiento de etiquetas

de sensibilidad cuando se exportan datos)

Auditoriacutea de objetos etiquetados

Control de acceso obligatorio para todas las operaciones

Capacidad para especificar el nivel de seguridad impreso en salida legible para

humanos (Por ejemplo impresoras)

43

Capacidad para especificar el nivel de seguridad en cualquier salida legible por

maacutequina

Auditoriacutea mejorada

Proteccioacuten mejorada del sistema operativo

Documentacioacuten mejorada

Los sistemas operativos de ejemplo son HP-UX BLS Cray Research Trusted

Unicos 80 Digital SEVMS Harris CS SX SGI Trusted IRIX

245 Nivel B2 En los sistemas de nivel B2 el TCB se basa en un modelo de poliacutetica de

seguridad formal claramente definido y documentado que requiere que la aplicacioacuten de control de

acceso discrecional y obligatoria que se encuentra en los sistemas de nivel B1 se extienda a todos

los sujetos y objetos en el sistema Ademaacutes se abordan los canales encubiertos El TCB debe

estructurarse cuidadosamente en elementos criacuteticos para la proteccioacuten y no criacuteticos para la

proteccioacuten La interfaz TCB estaacute bien definida y el disentildeo y la implementacioacuten TCB le permiten

someterse a pruebas maacutes exhaustivas y una revisioacuten maacutes completa Se fortalecen los mecanismos

de autenticacioacuten se proporciona una gestioacuten confiable de las instalaciones en forma de soporte

para las funciones de administrador y operador del sistema y se imponen estrictos controles de

gestioacuten de la configuracioacuten El sistema es relativamente resistente a la penetracioacuten Los siguientes

son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de nivel B2

Notificacioacuten de cambios en el nivel de seguridad que afectan a los usuarios

interactivos

Etiquetas de dispositivos jeraacuterquicos

44

Acceso obligatorio a todos los objetos y dispositivos

Comunicaciones de ruta confiables entre usuario y sistema

Rastreo de canales de almacenamiento encubiertos

Modo de operaciones del sistema maacutes estricto en unidades independientes de varios

niveles

Anaacutelisis de canales encubiertos

Pruebas de seguridad mejoradas

Modelos formales de TCB

Versioacuten actualizacioacuten y anaacutelisis y revisioacuten de parches

Los sistemas de ejemplo son Honeywell Multics Cryptek VSLAN Trusted

XENIX

246 Nivel B3 El TCB debe satisfacer los requisitos del monitor de referencia para mediar

todos los accesos de los sujetos a los objetos ser a prueba de manipulaciones y ser lo

suficientemente pequentildeo como para ser sometido a anaacutelisis y pruebas Con este fin el TCB estaacute

estructurado para excluir el coacutedigo que no es esencial para la aplicacioacuten de la poliacutetica de seguridad

con una importante ingenieriacutea del sistema durante el disentildeo y la implementacioacuten del TCB dirigido

a minimizar su complejidad Se admite un administrador de seguridad los mecanismos de

auditoriacutea se ampliacutean para sentildealar eventos relevantes para la seguridad y se requieren

procedimientos de recuperacioacuten del sistema El sistema es altamente resistente a la penetracioacuten

Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de clase

(B3)

45

ACL adicionalmente basadas en grupos e identificadores

Acceso de ruta confiable y autenticacioacuten

Anaacutelisis automaacutetico de seguridad

Modelos TCB maacutes formales

Auditoriacutea de eventos de auditoriacutea de seguridad

Recuperacioacuten confiable despueacutes de la caiacuteda del sistema y documentacioacuten relevante

Cero defectos de disentildeo en TCB y defectos miacutenimos de implementacioacuten

El uacutenico sistema operativo con certificacioacuten B3 es Getronics Wang Federal XTS-

300

247 Nivel A1 Los sistemas en el nivel A1 son funcionalmente equivalentes a los del nivel

B3 en que no se agregan caracteriacutesticas arquitectoacutenicas adicionales ni requisitos de poliacuteticas La

caracteriacutestica distintiva de los sistemas en este nivel es el anaacutelisis derivado de la especificacioacuten

formal del disentildeo y las teacutecnicas de verificacioacuten y el alto grado resultante de seguridad de que el

TCB se implementa correctamente Esta garantiacutea es de naturaleza de desarrollo comenzando con

un modelo formal de la poliacutetica de seguridad y una especificacioacuten formal de alto nivel del disentildeo

Independientemente del lenguaje de especificacioacuten particular o del sistema de verificacioacuten

utilizado existen los siguientes criterios importantes para la verificacioacuten del disentildeo de nivel A1

Meacutetodos formales y prueba de integridad de TCB

Estos son los uacutenicos sistemas con certificacioacuten A1 Boeing MLS LAN Gemini

Trusted Network Processor Honeywell SCOMP (United States Government

Department of Defense 1983)

46

25 Sistemas Operativos

Un sistema operativo actuacutea como intermediario entre el usuario de una computadora y el

hardware de la computadora El propoacutesito de un sistema operativo es proporcionar un entorno en

el que un usuario pueda ejecutar programas de manera conveniente y eficiente

Un sistema operativo es un software que administra el hardware de la computadora El

hardware debe proporcionar mecanismos apropiados para garantizar el correcto funcionamiento

del sistema informaacutetico y para evitar que los programas del usuario interfieran con el correcto

funcionamiento del sistema (Carretero Peacuterez de Miguel Anasagasti Garciacutea Carballeira amp Peacuterez

Costoya 2001)

Un sistema operativo es un programa que controla la ejecucioacuten de programas de aplicacioacuten

y actuacutea como una interfaz entre el usuario de una computadora y el hardware de la computadora

Una definicioacuten maacutes comuacuten es que el sistema operativo es el uacutenico programa que se ejecuta

en todo momento en la computadora (generalmente llamado kernel) y todo lo demaacutes son

programas de aplicacioacuten

Un sistema operativo se ocupa de la asignacioacuten de recursos y servicios como memoria

procesadores dispositivos e informacioacuten El sistema operativo incluye los programas para

administrar estos recursos como un controlador de traacutefico un programador un moacutedulo de

administracioacuten de memoria programas de E S y un sistema de archivos (Pawar 2016)

47

251 Windows Sistema operativo de la empresa Microsoft es un conjunto de programas

que administra los recursos de una computadora Windows empieza a trabajar cuando se enciende

o inicializa el equipo para gestionar el hardware empezando desde los niveles maacutes baacutesicos

Es importante conocer que los sistemas operativos funcionan tanto en las computadoras

como en diferentes dispositivos electroacutenicos que usan microprocesadores En este caso Windows

su versioacuten estaacutendar funciona con computadoras Microsoft domina el mercado de los sistemas

operativos debido a su comodidad se puede decir que eacuteste sistema operativo se encuentra

instalado en el 887 de los equipos de coacutemputo que cuentan con acceso a Internet en todo el

mundo

Se pueden mencionar algunas aplicaciones principales (que eacutestas tambieacuten pueden ser

desinstaladas por los usuarios o actualizadas sin que el sistema operativo se dantildee o deje de

funcionar) se encuentran el procesador de texto WordPad el navegador Internet Explorer el

reproductor multimedia Windows Media y el editor de imaacutegenes Paint

La principal novedad que aportoacute Windows desde sus oriacutegenes fue la facilidad para usarlo

y el atractivo visual De hecho su nombre (ldquoventanasrdquo) se debe a la forma en que el sistema

presenta a los usuarios los recursos con los que cuenta su computadora lo que facilita las tareas

cotidianas Windows tambieacuten suele recibir varias criacuteticas por sus problemas de seguridad y por

otros fallos

48

252 Registro de Windows El registro es una base de datos jeraacuterquica que contiene datos

que son criacuteticos para el funcionamiento de Windows y las aplicaciones y servicios que se ejecutan

en Windows Los datos estaacuten estructurados en un formato de aacuterbol Cada nodo en el aacuterbol se llama

clave Cada clave puede contener subclaves y entradas de datos llamadas valores A veces la

presencia de una clave es el uacutenico dato que requiere una aplicacioacuten otras veces una aplicacioacuten

abre una clave y usa los valores asociados con la clave (Microsoft Inc 2019) Una clave puede

tener cualquier nuacutemero de valores y los valores pueden tener cualquier forma El registro es

utilizado por

Autenticacioacuten

Nuacutecleo (Kernel)

Controladores de dispositivos

Servicios

SAM

Las carpetas del sistema se almacenaraacuten en distintas rutas de acceso dependiendo de la

versioacuten de Windows con la que se esteacute trabajando a continuacioacuten cuatro de los cinco archivos

que maacutes interesan a esta investigacioacuten se encuentran en la siguiente ubicacioacuten SystemRoot

System32 Config dentro de las siguientes sub llaves

SAM - HKEY LOCAL MACHINE SAM

SECURITY - HKEY LOCAL MACHINE SECURITY

SOFTWARE - HKEY LOCAL MACHINE SOFTWARE

SYSTEM - HKEY LOCAL MACHINE SYSTEM

49

253 Administrador de cuentas de seguridad El administrador de cuentas de seguridad

(SAM por sus siglas en ingleacutes) es una base de datos en donde se encuentran las cuentas de

seguridad Esto es utilizado por Windows para administrar las cuentas de usuario y contrasentildeas en

el formato hash

Las contrasentildeas nunca se almacenan en formato de texto claro Se almacenan en formato

de hash para protegerlas de los ataques La base de datos SAM se implementa como un archivo de

registro y las obtiene del kernel de Windows y mantiene un bloqueo exclusivo al archivo SAM

esto quiere decir que el archivo tiene cierta medida de seguridad para el almacenamiento de las

contrasentildeas (Hernandez 2013)

No es posible copiar el archivo SAM a otra ubicacioacuten en el caso de los ataques en liacutenea

Dado que el archivo SAM estaacute bloqueado con un bloqueo exclusivo al sistema de archivos no

puede ser copiado o movido mientras se ejecuta Windows El bloqueo no iniciaraacute hasta que la

excepcioacuten de la pantalla azul haya sido inicializada o el sistema operativo haya sido apagado Sin

embargo los archivos en formato hash de contrasentildeas fuera de liacutenea estaacuten disponibles para los

ataques de fuerza bruta el contenido del archivo SAM puede ser copiado o descargado utilizando

diversas teacutecnicas

Un identificador de seguridad (SID) es un valor uacutenico de longitud variable utilizado para

identificar a un usuario Cada cuenta tiene un SID uacutenico emitido por una autoridad como un

controlador de dominio de Windows y almacenado en una base de datos de seguridad Cada vez

50

que un usuario inicia sesioacuten el sistema recupera el SID para ese usuario de la base de datos y lo

coloca en el token de acceso para ese usuario El sistema usa el SID en el token de acceso para

identificar al usuario en todas las interacciones posteriores con la seguridad de Windows Cuando

se ha usado un SID como identificador uacutenico para un usuario o grupo no se puede volver a usar

para identificar a otro usuario o grupo

La seguridad de Windows usa SID en los siguientes elementos de seguridad

En descriptores de seguridad para identificar al propietario de un objeto y grupo

primario

En las entradas de control de acceso para identificar al usuario para quien el acceso

estaacute permitido denegado o auditado

En tokens de acceso para identificar al usuario y los grupos a los que pertenece

2531 Identificador de Seguridad (SID Security Identifier)

S - 1 - 5 - 21 - 3983109318 - 554656936 - 3066752241 - 1000

S - indica que es un string de SID

1 - el nivel de revisioacuten

5 - el identificador de valor de autoridad o authority value no siempre seraacute 5 Entre otros

valores que se pueden encontrar estaacuten los siguientes

51

0 - sin autoridad

1 - autoridad global

2 - autoridad local

3 - autoridad de creador

4 - autoridad no uacutenica

5 - autoridad NT

9 - autoridad de administrador de recursos

21 - 3983109318 - 554656936 - 3066752241 - es el dominio en el que se encuentra el

sistema o el identificador local de la computadora

1000 - ID uacutenico para cada cuenta aquiacute se encuentra el RID (Relative Identifier) Nuacutemero

de longitud variable cualquier grupo o usuario que se cree de manera diferente a la predeterminada

recibiraacute un RID de 1000 o superior En el caso de que el valor sea 500 responde a que este SID

representa la cuenta de un administrador el valor de 500 siempre seraacute el mismo en cualquier cuenta

de administrador a su vez el valor 501 representa el SID de una cuenta Invitado (Guest)

(Hernandez 2013)

254 Autenticacioacuten NTML NTLM (NT LAN Manager) es un protocolo empleado por

muchos productos de Microsoft para realizar la autenticacioacuten desafiacuteorespuesta por lo tanto es el

esquema de autenticacioacuten que por defecto usa Firewall de Microsoft y tambieacuten los productos del

servidor proxy

52

Este software fue desarrollado para afrontar el problema del trabajo con Tecnologiacuteas Java

en un entorno orientado a Microsoft Puesto que no se basa en ninguna especificacioacuten oficial de

protocolo por lo tanto no hay garantiacutea de que funciona correctamente en todos los casos Tambieacuten

ha estado en algunas instalaciones de Windows donde funcionoacute con eacutexito

La Autenticacioacuten NTLM se compone de dos protocolos protocolo de autenticacioacuten NTLM

y protocolo de autenticacioacuten LM Estos protocolos utilizan una metodologiacutea de hash diferente para

almacenar contrasentildeas de los usuarios en la base de datos SAM (Hernandez 2013) (Meneacutendez-

Barzanallana 17)

26 LINUX (ROCKS)

Rocks es una distribucioacuten para cluacutester de Linux de coacutedigo abierto que permite a los usuarios

finales construir de manera maacutes amigable cluacutesteres computacionales y muros de visualizacioacuten en

mosaico Cientos de investigadores de todo el mundo han utilizado Rocks para implementar su

propio cluacutester

Desde mayo de 2000 el grupo Rocks ha abordado las dificultades de implementar cluacutesteres

manejables Encaminados hacia un objetivo crear cluacutesters de manera maacutes sencilla Por sencilla

significa faacutecil de implementar administrar actualizar y escalar Este objetivo impulsa a los

creadores de esta herramienta a ayudar a entregar el poder computacional de los cluacutesteres a una

amplia gama de usuarios cientiacuteficos Estaacute claro que poner a disposicioacuten de una amplia gama de

53

cientiacuteficos plataformas de computacioacuten paralelas estables y manejables ayudaraacute enormemente a

mejorar el estado del arte en herramientas paralelas (Rocksclusters 2010)

261 Escritorio De todos los escritorios disponibles para el sistema operativo Linux

GNOME ha logrado convertirse en el maacutes eficiente estable y confiable sin dejar de ser sencillo

de usar De hecho la mayoriacutea de los usuarios independientemente de su experiencia pueden

trabajar con GNOME casi sin esfuerzo

Los usuarios que son nuevos tanto en Linux como en GNOME hariacutean mejor en conocer

los entresijos del escritorio que hacen que Linux no solo sea faacutecil sino tambieacuten divertido

Un entorno de escritorio agrupa programas que trabajan juntos para formar un espacio de

trabajo informaacutetico cohesivo unificado transparente e interactivo para los usuarios O para

decirlo de manera maacutes simple el entorno de escritorio es la interfaz de usuario para el sistema

operativo En el caso de GNOME ese sistema operativo es Linux Sin un entorno de escritorio su

uacutenica alternativa es una sesioacuten de Shell (liacutenea de comandos) basada en texto (Wallen 2019)

262 Paquete de Oficina Una suite ofimaacutetica es una coleccioacuten de software creada por el

mismo proveedor y disentildeada para ser utilizada para tareas rutinarias dentro de una organizacioacuten

Por lo general una suite ofimaacutetica incluye aplicaciones como procesamiento de texto hojas de

caacutelculo presentacioacuten correo electroacutenico toma de notas base de datos colaboracioacuten y otros tipos

de software relacionados En la mayoriacutea de los casos cada aplicacioacuten en la suite ofimaacutetica se puede

instalar por separado y todas las aplicaciones dentro de la suite admiten la interoperabilidad entre

54

siacute Microsoft Office Suite Lotus Live Notes y LibreOffice son todas suites de oficina de uso

comuacuten

263 Organizador de archivos Es una funcioacuten avanzada disentildeada para agrupar y

renombrar archivos usando sus atributos del sistema o meta atributos

Cada archivo tiene atributos del sistema como la fecha (Acceso Creado y Modificado) el

tipo de archivo (definido por extensioacuten) y asociado con la aplicacioacuten registrada de ese tipo de

archivo Estos atributos se pueden usar para generar un nuevo nombre de archivo o carpeta (grupo)

para cada archivo con el mismo atributo Ademaacutes de los atributos del sistema algunos archivos

en su mayoriacutea medios o imaacutegenes pueden contener metacampos como el nombre del artista el

tiacutetulo el nombre del aacutelbum y otros El Organizador de archivos tambieacuten usa estos metacampos

para agrupar archivos en una carpeta con el mismo atributo Por lo tanto el organizador de archivos

opera reglas de organizacioacuten de archivos que definen la jerarquiacutea de agrupacioacuten de carpetas y las

reglas de cambio de nombre de archivos

Asiacute como el conocido ldquoexplorador de Windowsrdquo Linux integra un organizador de archivos

y carpetas llamado NAUTILUS para realizar tareas de manejo de archivos como mover copiar

renombrar crear carpetas y de esta manera administrar nuestros dispositivos de almacenamiento

55

27 Agrupamiento (Cluacutester) de Computadoras

El agrupamiento (cluacutester) de computadoras estaacute conformado por una coleccioacuten de

computadoras autoacutenomas interconectadas trabajando unidas como un solo recurso de computacioacuten

integrado El concepto de agrupamiento de computadoras nacioacute cuando los pioneros de la

supercomputacioacuten intentaban difundir diferentes procesos entre varias computadoras para luego

poder recoger los resultados que dichos procesos debiacutean producir Con un hardware maacutes barato y

faacutecil de conseguir se pudo perfilar que podriacutean conseguirse resultados muy parecidos a los

obtenidos con aquellas maacutequinas mucho maacutes costosas (Chirinov 2003)

Un agrupamiento de computadoras se puede definir como el trabajo realizado por dos o

maacutes computadoras que en conjunto se encargan de proveer una determinada solucioacuten Tiene como

finalidad agrupar el poder de coacutemputo de los nodos implicados para proporcionar una mayor

escalabilidad disponibilidad y fiabilidad (Branch Bedoya amp Mesa Muacutenera 2008)

La escalabilidad es la capacidad de un equipo para hacer frente a voluacutemenes de trabajo

cada vez mayores sin por ello dejar de prestar un nivel de rendimiento aceptable

La disponibilidad y la fiabilidad se encuentran bastante relacionadas aunque difieren

ligeramente en algunos aspectos La disponibilidad es la calidad de estar presente y listo para su

uso mientras que la fiabilidad es la probabilidad de un correcto funcionamiento

56

Entre los tipos de agrupamiento maacutes comunes se pueden encontrar de alta disponibilidad

(ambiente a prueba de fallas) coacutemputo de alto desempentildeo (los procesos o las tareas dadas se

presentan como un solo sistema virtual) y escalamiento horizontal (se utiliza para proporcionar

una sola interfaz a un conjunto de recursos que pueden aumentar o disminuir arbitrariamente su

tamantildeo en un cierto periodo de tiempo) (Gonzaacutelez Ramiacuterez amp Rodriacuteguez Saacutenchez 2008)

271 Beowulf Es una clase de computadora masivamente paralela de altas prestaciones

principalmente construida a base de agrupamiento de componentes hardware estaacutendar (Llorens amp

Pentildea 2002) Consta de un conjunto de nodos minimalistas unidos por un medio de

comunicaciones econoacutemico Esto quiere decir que tienen lo miacutenimo para ejecutar su funcioacuten de

hecho los nodos por siacute solos no son capaces de ejecutar siquiera un sistema operativo (Nievas

Pino amp Arroyo) Se puede ver como una supercomputadora paralela construida con hardware

comercial de faacutecil adquisicioacuten que posee como sistema operativo Linux Los cluacutesters Beowulf son

extremadamente poderosos pero no son para todas las personas Su principal desventaja es que

requieren software disentildeado para poder aprovechar los recursos del cluacutester (Lizaacuterraga 2002)

272 Mosix Seguacuten Peacuterez (2001) la arquitectura Mosix estaacute basada en la misma ideologiacutea

de la arquitectura Beowulf Se basa en un conjunto de parches aplicados al nuacutecleo (kernel) de Linux

y que asignan a todo el grupo de nodos un espacio de direcciones y de procesos comuacuten gracias al

cual los procesos migran de uno a otro con el fin de equilibrar favorablemente la carga del sistema

global Es una herramienta disentildeada para realizar balanceo de carga en el agrupamiento de forma

totalmente transparente de manera tal que los nodos se comportan como una sola maacutequina y asiacute

incrementar el aprovechamiento de cada uno de los nodos (Chaacutevez y otros 1999) La principal

57

ventaja de Mosix frente a Beowulf se basa precisamente en esto Mosix da mejores respuestas que

Beowulf frente a la caiacuteda o insercioacuten de nodos A parte de esto Mosix permite un cambio constante

de aplicacioacuten o incluso el correr aplicaciones independientes de forma simultaacutenea

273 OpenMosix OpenMosix es una extensioacuten del proyecto Mosix Seguacuten Chirinov

(2003) la idea de este modelo es que la distribucioacuten de tareas en el cluacutester la determina OpenMosix

de forma dinaacutemica conforme se van creando tareas Cuando un nodo estaacute demasiado cargado las

tareas que se estaacuten ejecutando pueden migrar a cualquier otro nodo del cluacutester Asiacute desde que se

ejecuta una tarea hasta que eacutesta muere podraacute migrar de un nodo a otro sin que el proceso sufra

mayores cambios

Ademaacutes OpenMosix funciona a nivel de kernel por tanto puede conseguir toda la

informacioacuten que necesite para decidir que tanto estaacute cargado un sistema y queacute pasos se deben

seguir para aumentar el rendimiento ademaacutes puede realizar maacutes funciones que cualquier

aplicacioacuten a nivel de usuario

Despueacutes de elegir el tipo de cluacutester a utilizar se procede a elegir los elementos baacutesicos que

se emplearaacuten para implementar el cluacutester capacidad de procesamiento memoria espacio del disco

de cada nodo asiacute como tambieacuten el ancho de banda de la comunicacioacuten entre los nodos Se deberaacute

decidir cuaacuteles son importantes basaacutendose en la variedad de aplicaciones que se piensen ejecutar

en el cluacutester y de la cantidad de dinero que se disponga para construirlo

58

Bajo estos mismos paraacutemetros se debe escoger tambieacuten el tipo de red que interconectaraacute

los nodos (Turner 2004)

Luego se debe escoger el sistema operativo a utilizar Esta eleccioacuten dependeraacute mucho de

la maacutequina que se escoja Linux es siempre una opcioacuten en cualquier maacutequina y es la eleccioacuten maacutes

comuacuten Muchas de las herramientas necesarias para la implementacioacuten de un cluacutester han sido

desarrolladas bajo Linux Pero existen cluacutesters corriendo bajo Windows NT UNIX Solaris y AIX

59

Capiacutetulo 3 Implementacioacuten de Cluacutester

31 Requisitos previos

Antes de iniciar la instalacioacuten del FrontEnd es necesario asegurarse que las conexiones de

red de los equipos junto con la configuracioacuten de la BIOS de cada uno sean las correctas

311 Conexioacuten de los equipos y acceso a la red

Un cluacutester de alto desempentildeo funciona como un uacutenico equipo el cuaacutel comparte los recursos

de los nodos esclavos con el nodo maestro para ello es esencial la existencia de una red interna de

alta velocidad por medio de la cual se realice la comunicacioacuten entre el nodo maestro y los nodos

esclavos como se muestra en la Figura 31 El nodo maestro necesitaraacute 2 tarjetas de red de alta

Figura 31 Esquema tiacutepico de configuracioacuten de un cluacutester (Fuente Elaboracioacuten propia)

60

velocidad una para la comunicacioacuten interna y otra para la comunicacioacuten con redes externas El

sistema operativo Rocks asigna automaacuteticamente la interface ldquoeth0rdquo a la red interna del cluacutester y

la interface ldquoeth1rdquo a la red externa En caso de que Rocks sea incapaz de determinar cuaacutel es la red

externa debido a la falta de conexioacuten a internet estas podriacutean ser asignadas de manera incorrecta

por tal motivo se sugiere asegurar el nombre de cada una de las interfaces

Dado que Rocks no permite volverlas a asignar una vez finalizada la instalacioacuten es

necesario volver a reinstalarlo para poder solucionar este inconveniente

312 Configuracioacuten de la BIOS Para evitar problemas durante la instalacioacuten conviene

configurar correctamente la Bios

3121 ATAIDE Mode Algunos sistemas operativos puede que no sean capaces de

reconocer el controlador del disco duro como es en el caso de esta distribucioacuten de Rocks usada

Para evitar complicaciones de tener que antildeadir el controlador a mano lo mejor es habilitar el modo

ldquoLegacyrdquo de controlador de disco duro

61

Para ello se accede a la Bios pulsando F2 al encender el equipo se situacutea en la pestantildea

ldquoAdvancedrdquo y se selecciona ldquoDrive Configurationrdquo como se muestra en la Figura 32

Figura 32 Imagen del Bios del equipo en la opcioacuten ldquodrive configurationrdquo (Fuente Elaboracioacuten propia)

Figura 33 Bios ATAIDE Legacy Mode (Fuente Elaboracioacuten propia)

62

Dentro del menuacute se tiene que seleccionar el Modo ldquoLegacyrdquo en la opcioacuten ldquoATAIDE

Moderdquo como se muestra en la Figura 33 y para salir se guardan los cambios con F10

3122 PXE Al momento de instalar un nodo puede ocurrir falla al arrancar y aparecer

bootsplash (Reboot and Select proper device) Para evitarlo es necesario habilitar la opcioacuten de

PXE para que tome los archivos de instalacioacuten del nodo maestro a traveacutes de la red interna

En la Bios se selecciona la pestantildea ldquoBootrdquo y dentro de ese mismo menuacute se deshabilita

ldquoSilent bootrdquo y se habilita la opcioacuten de ldquoPXE boot to lanrdquo como se muestra en la Figura 34

Finalmente hay que verificar que en la secuencia de arranque (Figura 35) como primer

dispositivo sea desde red para que de esta manera inicie desde el PXE

Figura 34 Bios Boot PXE (Fuente Elaboracioacuten propia)

63

Se guardan los cambios antes de salir

32 Instalacioacuten de Sistema Operativo Rocks

Una vez configurados los equipos se enciende el equipo que seraacute el nodo maestro

(FrontEnd) en el cuaacutel previamente se ha modificado la secuencia de inicio del boot desde la Bios

de modo que al insertar el CD de Rocks eacuteste procederaacute a iniciar la instalacioacuten con la siguiente

pantalla que se muestra a continuacioacuten

Figura 35 Bios Boot device prioriry (Fuente Elaboracioacuten propia)

64

Para iniciar la instalacioacuten uacutenicamente se selecciona la opcioacuten ldquoInstall CentOS 7rdquo como se

muestra en la Figura 36 dando asiacute comienzo al proceso de instalacioacuten Tras finalizar un proceso

de carga en memoria Rocks mostraraacute un formulario en entorno graacutefico mediante el cual

procederemos a configurar el FrontEnd

Esta primera pantalla se muestra coacutemo se desea realizar la instalacioacuten puede realizarse

por medio de la descarga del sistema operativo (se requiere internet) En este caso como se muestra

en la Figura 37 dado que previamente se descargoacute el DVD completo se seleccionoacute ldquoCDDVD

based rollsrdquo

Figura 36 Pantalla de Inicio de instalacioacuten de Rocks (Fuente Elaboracioacuten propia)

65

A continuacioacuten Figura 38 se selecciona de la lista de Rolls aquellos que se desean instalar

Figura 37 Pantalla de seleccioacuten de Rolls (Fuente Elaboracioacuten propia)

Figura 38 Listado de opciones de rolls para instalar (Fuente Elaboracioacuten propia)

66

Tras presionar el botoacuten ldquoSubmitrdquo la siguiente pantalla (Figura 39) muestra formulario en

el que hay que indicar la informacioacuten baacutesica del cluacutester entre las cuales aparecen

Fully-Qualified Host Name Nombre con el que se conoceraacute en la red externa el cluacutester

Cluster Name Nombre utilizado para ser identificado dentro de las herramientas del cluacutester

Certificate Organization Locality State and Country Organizacioacuten a la que pertenece el

cluacutester la localidad el estado y la ciudad

Contact URL and LattitudeLongitude Contacto direccioacuten web y posicioacuten GPS

Figura 39 Informacioacuten baacutesica del cluacutester a instalar (Fuente Elaboracioacuten propia)

67

Una vez que se ingresa la informacioacuten al cluacutester se presiona el botoacuten ldquoListordquo y

posteriormente se podraacute cambiar la configuracioacuten baacutesica de la red interna del cluacutester En este caso

Figura 310 se dejoacute el valor por defecto una IP de clase B (1011116)

El siguiente paso es la configuracioacuten de la red externa (para tener acceso a internet) En

este punto se introducen los datos de la red externa a la que se encuentra conectado el nodo

maestro como se muestra en la Figura 311

Figura 310 Configuracioacuten Ethernet de la red privada (Fuente Elaboracioacuten propia)

Figura 311 Configuracioacuten Ethernet de la red puacuteblica (Fuente Elaboracioacuten propia)

68

Para terminar de configurar la red externa como se muestra en la Figura 312 se ingresa la

direccioacuten IP del Gateway y los DNS (Servidor de nombre de dominio) que va a usar para el acceso

a internet

Se continuacutea con el resto del formulario donde se introduce la contrasentildea para el usuario

root tal y como se muestran en la Figura 313

Figura 312 Configuracioacuten de DNS y Gateway (Fuente Elaboracioacuten propia)

Figura 313 Ingresar contrasentildea de usuario root (Fuente Elaboracioacuten propia)

69

Paso siguiente se procede a seleccionar la zona horaria como se muestra en la Figura 314

donde se encuentra ubicado el cluacutester asiacute como un servidor de donde podraacute obtener la zona horaria

automaacuteticamente en este caso se dejoacute el valor por default

En el formulario de la Figura 315 se selecciona la forma de particionar el disco duro

(automaacutetica manual) una vez seleccionado daraacute comienzo al proceso de instalacioacuten de manera

Figura 314 Configuracioacuten horaria (Fuente Elaboracioacuten propia)

Figura 315 Particiones del disco duro (Fuente Elaboracioacuten propia)

70

desatendida Cuando ha concluido la instalacioacuten el equipo se reiniciaraacute y se requeriraacute iniciar con

el usuario root y la contrasentildea establecida previamente

321 Configuracioacuten del teclado Debido a que el teclado por defecto estaacute en idioma

ingleacutes podriacutea provocar problemas al momento de escribir la contrasentildea u otros comandos

Seguacuten las pruebas realizadas aunque se cambie la configuracioacuten del teclado desde el menuacute

de preferencias uacutenicamente se mantiene dentro de la sesioacuten desde la que se ha cambiado dicha

opcioacuten (lo cual implica que la contrasentildea de usuario hay que introducirla seguacuten la distribucioacuten

inglesa)

33 Instalacioacuten de los nodos

Previo a la instalacioacuten de los nodos esclavos cada uno de los equipos fueron configurados

desde la Bios para que arranquen desde la red (seccioacuten 3122) Para ir antildeadiendo los nodos solo

se tiene que introducir el siguiente comando desde nuestro FrontEnd

$insert-ethers

A continuacioacuten como se muestra en la Figura 316 apareceraacute una ventana en la pantalla

en la cual se seleccionaraacute la opcioacuten ldquoComputerdquo

71

Una vez realizado este paso se procede a encender los equipos que funcionaraacuten como

nodos esclavos uno a uno

Se sugiere esperar a que cada nuevo equipo encendido esteacute marcado con un asterisco antes

de proceder a encender el siguiente como se muestra en la Figura 317 De esta manera se asegura

que cada nuevo nodo antildeadido posea el nombre y numeracioacuten deseada

Figura 316 Pantalla para ingresar nodos (Fuente Elaboracioacuten propia)

Figura 317 Indicador de insercioacuten de nuevos nodos (Fuente Elaboracioacuten propia)

72

Puede darse el caso de que un nodo no sea detectado automaacuteticamente eso indica que se

ha omitido alguacuten paso o parte de la configuracioacuten realizada hasta el momento es incorrecta En ese

caso comprobar lo siguiente

Que el nodo esclavo este correctamente conectado a la red interna

Que el FrontEnd (nodo maestro) tenga correctamente configurada la red interna y externa

Que el PXE esteacute habilitado en la Bios del nodo esclavo

331 Administracioacuten de nodos Algunos de los comandos maacutes uacutetiles para para la gestioacuten

de los nodos son los siguientes

Eliminar un nodo de la lista

Reinstalar un nodo

Listar los nodos ya instalados

Acceder a un nodo

$rocks remove host nombre_nodo

$rocks remove host nombre_nodo

$rocks set host boot nombre_nodo action=install

$rocks set host boot nombre_nodo action=install

$rocks list host

$rocks list host

$ssh nombre_nodo

$ssh nombre_nodo

73

Ejecutar un comando de manera remota a un nodo

332 Creacioacuten de cuentas de usuario Para agregar a un usuario hay que realizar los

siguientes pasos

1 Creacioacuten de la cuenta

$useradd nombre_usuario

2 Asignacioacuten de una contrasentildea

$passwd nombre_usuario

3 Sincronizacioacuten de la cuenta de usuario con el resto de nodos

$rocks-user-sync

333 Configuracioacuten del directorio compartido El directorio share es compartido por el

FrontEnd y el resto de nodos se localiza dentro del FrontEnd en la carpeta exports siendo la

carpeta share un enlace simboacutelico a esta uacuteltima

Al principio es posible que no se sincronicen correctamente los archivos introducidos en el

directorio debido a que la carpeta inicialmente estaacute vaciacutea por lo que para solucionar este

inconveniente puede usarse el comando siguiente para reiniciar dicho servicio

$ssh nombre_nodo lsquocomandorsquo

$ssh nombre_nodo lsquocomandorsquo

$cd

$export fs ndashrv

service nfs restart

$cd

$export fs ndashrv

service nfs restart

74

34 Operaciones baacutesicas de Rocks

Comandos y aplicaciones esenciales para el manejo del cluacutester

Ver que rolls estaacuten instalados

$rocks list roll

Visualizar el estado del sistema Figura 318

$qstat ndashf

Probar el sistema de colas para distribuir tareas a los nodos

Para ello se prueba que el SGE del cluacutester funcione enviaacutendole una serie de trabajos

mediante el comando qsub

En primer lugar se crea un fichero (pruebapl) que tenga permisos de ejecucioacuten con el

siguiente contenido

Figura 318 Comando qstat ndashf (Fuente Elaboracioacuten propia)

75

usrbinperl

for(my $i=0$ilt30$i++) sleep(2) print okn

Y se ejecuta con el siguiente comando

$ for ((i=1ilt=10i+=1)) do qsub pruebapl done

Al ejecutarse se puede comprobar que los trabajos se han mandado Figura 319

Y al realizar de nuevo un ldquoqstat ndashfrdquo Figura 320 se observa coacutemo se van realizando

Figura 319 Enviacuteo de trabajos por medio del comando qsub (Fuente Elaboracioacuten propia)

Figura 320 Estado de los trabajos pendientes mostrados por qstat ndashf (Fuente Elaboracioacuten propia)

76

Para ver la carga de trabajo en el cluacutester de manera global y de forma graacutefica se tiene que

ingresar en un navegador web en la siguiente direccioacuten httplocalhostganglia apareceraacute la

Figura 321

Figura 321 Visualizacioacuten de la distribucioacuten de cargas en el cluacutester usando la herramienta Ganglia (Fuente Elaboracioacuten propia)

77

Capiacutetulo 4 Metodologiacutea y Resultados

Una vez finalizada la instalacioacuten y puesta en operacioacuten del equipo se analizaron diferentes

metodologiacuteas de trabajo lo que implicoacute un trabajo arduo debido a que existen complicaciones

cuando se buscan temas relacionados a vulnerar sistemas operativos La realizacioacuten de este

proyecto estaacute basado en la metodologiacutea de Joshua Picolet ldquoCracking Methodologyrdquo (Picolet

2017)

41 Obtener Archivo hash

Se pueden vulnerar contrasentildeas de Windows de diferentes maneras Una de ellas es

mediante el acceso al archivo del Administrador de cuentas de seguridad (SAM) el cual se detalla

en el apartado 253 a traveacutes de la obtencioacuten de las contrasentildeas del sistema en su forma hash por

medio de herramientas diferentes Alternativamente las contrasentildeas se pueden leer desde la

memoria lo que tiene el beneficio adicional de recuperar las contrasentildeas en texto plano y evitar el

requisito de descifrado Para comprender los formatos que se observan cuando se descarguen

hashes del sistema de Windows se requiere una breve descripcioacuten de los diferentes formatos de

almacenamiento

Originalmente las contrasentildeas de Windows de menos de 15 caracteres se almacenaban en

el formato hash de Lan Manager (LM) Algunos sistemas operativos como Windows 2000 XP y

Server 2003 continuacutean usando estos hashes a menos que esteacuten deshabilitados por el usuario

Ocasionalmente un sistema operativo como Windows Vista puede almacenar el hash LM para la

compatibilidad con otros sistemas Seguacuten analistas incluye varias vulnerabilidades como dividir

78

la contrasentildea en dos bloques y permitir que cada uno se descifre de forma independiente Mediante

el uso de tablas Rainbow es trivial descifrar una contrasentildea almacenada en un hash LM

independientemente de la complejidad Este hash se almacena con la misma contrasentildea calculada

en el formato de hash NT como el que se muestra en el siguiente ejemplo

Ejemplo de un hash NTLM con el componente LM y NT

Administrator500611D6F6E763B902934544489FCC9192BB71ED1E7F2B60ED5A2

EDD28379D45C91

Los sistemas operativos Windows maacutes recientes como el Windows 8 y 10 usan el hash NT

En teacuterminos simples no hay una debilidad significativa en este hash que lo diferencie de cualquier

otra funcioacuten hash criptograacutefica Se requieren meacutetodos de descifrado como lo es la fuerza bruta o

ataque de diccionario para recuperar la contrasentildea si uacutenicamente se almacena en el formato NT

Ejemplo de un hash NTLM uacutenicamente con el componente NT (como se ve en los sistemas

Windows mas recientes

Administrator500NOPASSWORDEC054D40119570A4663

4350291AF0F72

Es importante sentildealar que la cadena NO PASSWORD es variable seguacuten la herramienta

que se utilice Otras pueden presentar esta informacioacuten como ceros rellenos o comuacutenmente puede

79

ver la cadena ldquoAAD3B435B51404EEAAD3B435B51404EErdquo en lugar de ninguna contrasentildea

Esto significa que el hash LM estaacute vaciacuteo y no estaacute almacenado

El archivo hash se encuentran en el directorio ldquoWindows System32 configrdquo y se

necesitan ambos archivos SAM y SYSTEM Ademaacutes tambieacuten se encuentran en el archivo de

registro HKEY_LOCAL_MACHINE SAM al que no se puede acceder durante el tiempo de

ejecucioacuten Finalmente las copias de seguridad se pueden encontrar a menudo en ldquoWindows

Repairrdquo (Peleus 2019)

Para extraer el archivo hash de un sistema operativo con un nivel de seguridad C1 existen

diferentes meacutetodos en esta ocasioacuten se procederaacute a iniciar el equipo objetivo con una distribucioacuten

de Linux desde una memoria USB como se muestra en la figura 41 para de esta manera ingresar

al directorio CWINDOWSSystem32Config directorio de ubicacioacuten de los archivos SAM y

SYSTEM que son los necesarios para obtener el archivo hash (Caballero 2018)

Figura 41 Arranque con LiveUSB KaliLinux (Fuente Elaboracioacuten propia)

80

42 Dar Formato al Hash

En este punto es donde se tiene que identificar el algoritmo con el que fueron encriptados

los archivos SAM y SYSTEM que se han obtenido en el punto anterior con la finalidad de

seleccionar el tratamiento que se les daraacute El algoritmo de encriptacioacuten del archivo SAM de

Windows 10 es NTLM y ademaacutes estaacute almacenado en un formato binario (ByteBleeder 2017) por

lo que fue necesario instalar la herramienta con licencia GNU samdump2 para obtener la syskey y

de esta manera poder extraer los hash desde el archivo SAM de Windows

En la figura 42 se han obtenido los hashes del archivo SAM donde se puede observar que

los usuarios Administrador e Invitado estaacuten deshabilitados ademaacutes de que existen tres cuentas de

usuario activas las cuales son Gad prueba y usuarioprueba cada una con su contrasentildea cifrada

en formato NTLM a la derecha del nombre de usuario la cuenta usuarioprueba fue a la que se le

realizoacute el anaacutelisis que se detalla posteriormente

43 Evaluar la fuerza del Hash

En criptografiacutea se dice que un algoritmo criptograacutefico se rompe si por alguacuten meacutetodo se

consigue reducir su fortaleza es decir reducir por ejemplo su entropiacutea de los 2256 bits teoacutericos a

Figura 42 Resultado de la ejecucioacuten de la herramienta samdump2 (Fuente Elaboracioacuten propia)

81

tan soacutelo 2255 por ejemplo El hecho de que se encuentre una colisioacuten no implica necesariamente

que un algoritmo se haya roto pues podriacutea haber sido realizado mediante fuerza bruta pero puede

ser una causa

Un ataque de colisioacuten significa que encuentro dos entradas diferentes que producen el

mismo resultado de un hash particular Este es generalmente el tipo de ataque maacutes faacutecil Es el tipo

de ataque que se conoce desde hace varios antildeos contra MD5

Dado que una utilidad importante de las funciones hash estaacute en las firmas digitales

encontrar colisiones puede facilitar falsificar firmas digitales Es decir dos mensajes distintos que

tengan un mismo resumen tienen ademaacutes la misma firma y un atacante puede reemplazar un

mensaje por el otro Un ejemplo de este ataque fue demostrado en 2008 por un grupo de

investigadores en Aacutemsterdam los cuales falsificaron un certificado raiacutez mediante el uso de un

ataque de colisioacuten contra el algoritmo MD5 (Preukschat 2015)

Un ataque previo a la imagen generalmente es mucho maacutes difiacutecil es encontrar otra entrada

que produzca el mismo resultado que un hash que ya se conoce

Para tratar de aclarar la diferencia aquiacute en un ataque de colisioacuten encuentro dos entradas A

y B que producen el mismo resultado En un ataque de preimagen comienzo a partir de alguacuten

resultado conocido X y encuentro una entrada que produciraacute X como resultado (Coffin 2015)

82

Para realizar esta evaluacioacuten se tomoacute como base la tabla del apeacutendice Hash craking

benchmark (Picolet 2017) el objetivo es observar el comportamiento y velocidad del Hash

mencionado cuando fue sometido a pruebas de criptoanaacutelisis Si se trata de un Hash lento se deberaacute

ser maacutes selectivo en queacute tipos de diccionarios y meacutetodos de criptoanaacutelisis se le debe aplicar Si es

un Hash raacutepido se puede ser maacutes libre con la estrategia de criptoanaacutelisis Este estudio busca

realizar una prueba de criptoanaacutelisis mostrando las diferencias entre el poder de procesamiento de

un cluacutester de 17 nodos contra una computadora personal por lo que no necesariamente se

implementaraacute el meacutetodo oacuteptimo para la realizacioacuten del criptoanaacutelisis

44 Calcular la capacidad del equipo

Con la informacioacuten de la evaluacioacuten de la fuerza del Hash obtenida en el apartado anterior en

este apartado se tiene que establecer la capacidad de la plataforma o plataformas que realizaraacuten

el criptoanaacutelisis

Para conocer la capacidad de procesamiento del cluacutester de alto rendimiento se utilizoacute la

herramienta Linpack Benchmark HPL es una implementacioacuten portaacutetil del Benchmark de alto

rendimiento LINPACK para equipos de coacutemputo distribuido Actualmente se utiliza para obtener

varios resultados en la lista actual de Top500 de HP cluacutesters (Dongarra 2010)

El Linpack Benchmark (HPL del Ingleacutes High-Performance Linpack Bench-mark) es un

software que resuelve un sistema lineal aleatorio de doble precisioacuten aritmeacutetica (64 bits) en equipos

de memoria distribuida El rendimiento muestra el nuacutemero de operaciones de punto flotante por

segundo logradas por el sistema (Petitet Whaley Dongarra amp Cleary 2008)

83

El HPL fue desarrollado en el Argone National Laboratory por Jack Don-garra en 1976 y

es uno de los maacutes usados en sistemas cientiacuteficos y de ingenieriacutea para el caacutelculo de prestaciones

Las principales caracteriacutesticas del algoritmo utilizado por el HPL son

Distribucioacuten ciacuteclica de datos de bloques de dos dimensiones

Variante derecha de la factorizacioacuten LU con pivoteo parcial (Teacutecnica de pivoteo

Dicta que el elemento pivote que debe escogerse es el mayor absolutamente de cada

columna)

Factorizacioacuten recursiva con pivoteo y reenviacuteo de columna

Distintas topologiacuteas virtuales de reenviacuteos

Algoritmo de reduccioacuten de reenviacuteo para ancho de banda (Castelloacute Gimeno 2014)

La resolucioacuten del sistema de ecuaciones se realiza del siguiente modo

1 Se crea un sistema de ecuaciones

(1)

119860119909 = 119887

(2)

119860 isin 119877119899119909119899

(3)

119909 119887 isin 119877119899

84

HPL calcula que la solucioacuten para un sistema de ecuaciones lineales se puede generalizar

como 119860119909 = 119887 donde 119860 es una matriz 119873 119909 119873 cuyos valores se generan aleatoriamente

119909 119910 119887 son vectores de tamantildeo 119873 Como se muestra en la Figura 43

2 Primero se calcula la factorizacioacuten 119871119880 con pivoteo parcial de los coeficientes 119899 y 119899 + 1

de la matriz [119860 119887]

(4)

119875119903[119860 119887] = [[119871119880] 119910]

(5)

119875119903 119871 119880 isin 119877119899119909119899

(6)

119910 isin 119877119899

El primer paso es la factorizacioacuten de la matriz 119860 en una matriz triangular superior 119880

y una matriz triangular inferior 119871 tal que 119860 = 119871119880 La factorizacioacuten se usa para calcular

el vector solucioacuten 119909

3 Una vez el pivoteo (representado por la permutacioacuten de la matriz 119875119903) y la factorizacioacuten

inferior se aplican sobre 119887 la solucioacuten se obtiene en un paso resolviendo el sistema

superior triangular

Figura 43 Sistema de Ecuaciones tipo 119860119909 = 119887 (Fuente Elaboracioacuten propia)

85

(7)

119880119909 = 119910

La matriz triangular inferior izquierda y el conjunto de pivotes no se devuelven en el

resultado Para la estabilidad numeacuterica el algoritmo de factorizacioacuten utiliza un pivote parcial de

fila

La implementacioacuten paralela de Linpack divide la matriz 119860 119873 119909 119873 en una cuadriacutecula de

procesos 119875 119909 119876 bidimensional y luego la divide en subgrupos de mosaicos 119873119861 119909 119873119861 (Petitet

Whaley Dongarra amp Cleary 2008)

Utilizando la herramienta HPL en esta investigacioacuten se obtuvieron los siguientes

resultados

La prueba abordoacute el ajuste de 119873 y la eficiencia obtenida en comparacioacuten con el rendimiento

maacuteximo Se determinoacute un valor para 119873 = 800000 aleatoriamente para ejecutar HPL en todo el

cluacutester Sin embargo el tiempo fue excesivo por lo tanto se determinoacute que este tamantildeo del

problema fue demasiado grande para el cluacutester Al realizar otros experimentos con valores maacutes

pequentildeos de 119873 se obtuvieron mejores resultados de rendimiento La Tabla 41 muestra el

rendimiento de HPL en GFlops para 119873 = 300000 400000 y 500000 Como se puede observar

en la Tabla 41 se obtuvo el mejor resultado de rendimiento 850 GFlops para 119873 = 500000 para

valores mayores de 119873 la distribucioacuten de cargas del cluacutester empieza a sobrepasar su capacidad como

se muestra en la Figura 44 y la vez su rendimiento disminuye Esto ocurre porque la cantidad de

memoria utilizada con las memorias intermedias de comunicacioacuten MPI es mayor de lo esperado

Por lo tanto es necesario dejar maacutes del 20 de la memoria para el sistema (Petitet Whaley

86

Dongarra amp Cleary 2008) Tambieacuten se realizaron pruebas usando solo un nodo de coacutemputo y el

rendimiento fue de 34 GFlops para 119873 = 20000

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia)

Analizando la eficiencia obtenida para la ejecucioacuten de un solo nodo cuando 119873 = 20000

se obtuvo el 823 del rendimiento maacuteximo (el rendimiento maacuteximo para un solo nodo es 477

Gflops) Para todo el cluacutester el rendimiento maacuteximo seriacutea 119879119898119886119909 = 477 119909 17 =

8109 119866119891119897119900119901119904 aproximadamente

Figura 44 Distribucioacuten de cargas del cluacutester

0

500

1000

300000 400000 500000

Gflops

Gflops

87

La Figura 44 titulada ldquoDistribucioacuten de cargas del cluacutesterrdquo muestra la imagen de la

herramienta Ganglia de manera graacutefica a traveacutes de cuadros que variacutean de color dependiendo de la

carga que tenga cada uno de los nodos al momento de implementar la herramienta HPL De manera

inicial indica que el cluacutester tiene un total de 17 equipos de 4 cores cada uno eso da un total de 68

cores trabajando sin equipos inactivos Muestra tambieacuten una sobrecarga en el cluacutester y un

porcentaje promedio de 100 de uso en la uacuteltima hora

45 Establecer Estrategia

Esto significa uacutenicamente que en este apartado se realizaraacute una guiacutea baacutesica para procesar

los hashes obtenidos sin perder de vista que cada escenario a criptoanalizar es uacutenico en funcioacuten

de las circunstancias externas Como ya se ha mencionado anteriormente esta estrategia de

criptoanaacutelisis se ha planteado implementar dos meacutetodos los cuales son Fuerza Bruta y ataque de

diccionario sin importar si son o no los oacuteptimos debido a que se realizaraacute una comparativa de

capacidad de procesamiento

451 Fuerza Bruta Una vez que se han intentado varios meacutetodos y han fallado se puede

iniciar un ataque de fuerza bruta estaacutendar poniendo especial atencioacuten en la cantidad de siacutembolos

del alfabeto que puede usar el equipo a analizar Por encima de 8 caracteres esto generalmente no

tiene sentido debido a limitaciones de hardware y entropiacutea (complejidad de la contrasentildea) Una

contrasentildea de Windows seguacuten Microsoft (Microsoft Inc 2019) una contrasentildea de Windows debe

estaacute formada por

88

26 Caracteres mayuacutesculas de la ldquoArdquo a la ldquoZrdquo

26 Caracteres minuacutesculas de la ldquoardquo a la ldquozrdquo

10 Diacutegitos de base 10 (0 a 9)

32 Caracteres especiales (~$^amp_-+=|()[]ltgt)

94 Caracteres alfanumeacutericos en total

4511 Cantidad de combinaciones posibles Si se usa una clave numeacuterica (nuacutemeros del 0

al 9) existen 10 posibilidades de 4 diacutegitos de longitud que es la extensioacuten por defecto de los

teleacutefonos celulares Para 4 diacutegitos las combinaciones posibles seriacutean 10 mil 104 = 10000

(Labaca Castro 2014)

Por otro lado si tomamos un alfabeto de 26 letras mayuacutesculas y 26 minuacutesculas 10 nuacutemeros

y 10 caracteres especiales en total tenemos 72 diferentes posibilidades para un uacutenico caraacutecter Eso

significa que las combinaciones para una contrasentildea de 4 caracteres seriacutean 724 = 26873856

Baacutesicamente maacutes de 26 millones de combinaciones en una clave de 4 caracteres contra 10 mil en

una clave de 4 diacutegitos numeacutericos En este estudio se utiliza la contrasentildea de bloqueo descrita en el

apartado anterior que es de 94 combinaciones para cada caraacutecter teniendo una longitud de 7

caracteres por lo tanto seraacuten 947 = 64847759000000 de posibles combinaciones que

nuestros equipos deben explorar para obtener la contrasentildea correcta

Como se mencionoacute en el apartado 42 el usuario sobre el cual se realizoacute el criptoanaacutelisis

fue usuarioprueba el cual constaba de una contrasentildea de longitud 7 caracteres la cual despueacutes

de realizado el anaacutelisis y como se puede observar en la Figura 45

89

1 Anaacutelisis a usuario usuarioprueba

2 Nuacutemero de nodos en operacioacuten 17

3 Nuacutemero de procesos ejecutaacutendose de forma paralela 68

4 Tiempo de duracioacuten del anaacutelisis en el cluacutester 122727 horas

5 Contrasentildea criptoanalizada Pass7

Asiacute mismo en la Tabla 42 se muestra el resultado final y el tiempo de duracioacuten del

criptoanaacutelisis realizado al archivo SAM con el cluacutester y la computadora personal

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Horas)

1 (PC) 4 1075316

17 (Cluacutester) 68 122727

1

2

3

4 5

Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester (Fuente Elaboracioacuten propia)

90

452 Diccionario Meacutetodo empleado para romper la seguridad de los sistemas basados en

contrasentildeas (password) en la que el atacante intenta dar con la clave adecuada probando todas (o

casi todas) las palabras posibles ingresadas previamente en un diccionario idiomaacutetico

Generalmente se emplean programas especiales que se encargan de ello

Este meacutetodo suele ser maacutes eficiente que el meacutetodo de fuerza bruta debido a que muchas

usuarios casi siempre suelen utilizar contrasentildeas con una o varias palabras existentes en su lengua

para que la contrasentildea no sea olvidada faacutecilmente y sea sencilla de recordar esto no es una praacutectica

recomendable (Alegsa 2018)

Para realizar este meacutetodo se utilizoacute un diccionario descargado de internet el cual contiene

10000000 de posibles contrasentildeas (g0tmi1k 2018)

Ademaacutes se ejecutoacute un programa creado en lenguaje C (Anexo 1) a traveacutes de la

implementacioacuten de las libreriacuteas MPI y open MPI propias de la arquitectura de cluacutester de

computadoras Este programa fue ejecutado en los mismos equipos descritos anteriormente para

obtener todos los nuacutemeros primos encontrados dentro de un intervalo dado En este caso el

intervalo dado fue de 10000000 con los siguientes resultados mostrados en la Tabla 43

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos (Fuente Elaboracioacuten

propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Segs)

1 (PC) 4 5078

17 (Cluacutester) 68 00013

91

453 Analizar los resultados Posterior a realizar el criptoanaacutelisis y descifrar con eacutexito

una cantidad suficiente de hashes se analizan los resultados en busca de pistas o patrones Este

anaacutelisis puede ayudar a tener eacutexito en cualquier hash restante

454 Personalizar ataques Tomando como base el anaacutelisis de resultados realizado

previamente se disentildearaacuten diversas estrategias personalizadas que aprovechen las vulnerabilidades

conocidas o patrones Los ejemplos seriacutean ataques de maacutescara personalizados o reglas para

adaptarse al comportamiento o las preferencias del usuario objetivo

92

Conclusioacuten

El trabajo de investigacioacuten presentado parte de la necesidad de buscar alternativas para

explotar al maacuteximo la capacidad de procesamiento del equipo de coacutemputo que existe actualmente

dentro del inventario del Instituto Tecnoloacutegico de Acapulco asiacute como proveer una plataforma que

coadyuve a la investigacioacuten dentro del Instituto a traveacutes de implementar un cluacutester de coacutemputo

con capacidad para realizar proyectos en el aacuterea de ingenieriacutea y matemaacuteticas con el fin de optimizar

el tiempo de ejecucioacuten lo cual en un futuro se veraacute reflejado en ventajas para el desarrollo de la

regioacuten

La revisioacuten y anaacutelisis de informacioacuten en relacioacuten a cluacutesters es muy interesante pero a la

vez es compleja dado que involucra diferentes aspectos durante su evolucioacuten asiacute como diversas

metodologiacuteas para su formacioacuten e implementacioacuten Se considera de suma importancia para este

trabajo las revisiones efectuadas ya que son la base para la propuesta entregada

De acuerdo a las especificaciones teacutecnicas de los equipos informaacuteticos existentes dentro

del laboratorio de la Maestriacutea en Sistemas Computacionales y una vez que se realizoacute el anaacutelisis

de varios casos de eacutexito se propuso la metodologiacutea para implementacioacuten de un cluacutester homogeacuteneo

tipo Beowolf Este meacutetodo estaacute basado en otros que ya se han implementado bajo realidades

acadeacutemicas similares rescatando las etapas maacutes importantes de cada uno y complementaacutendolo con

los aportes personales se consideroacute que fue el oacuteptimo debido a que se implementoacute con hardware

convencional y herramientas de uso libre

93

El hecho de haber seleccionado un meacutetodo adecuado permitioacute superar gran parte los

problemas que presentaban las metodologiacuteas que fueron analizadas simplificoacute la implementacioacuten

del cluacutester y permitioacute el poder alcanzar una mayor estabilidad en su desempentildeo desde su etapa

inicial fue importante conocer el resultado en cada una de las etapas de implementacioacuten para

asegurar su desenvolvimiento en el futuro

Para integrar los equipos independientes a la arquitectura cluacutester se realizoacute el disentildeo de

una topologiacutea de red Gigabit Ethernet tipo estrella con un direccionamiento IP estaacutetico la

configuracioacuten de protocolos de comunicacioacuten remota sin autenticacioacuten la comparticioacuten de

archivos en red y la utilizacioacuten de aplicaciones de licencia GPL que permiten obtener el

funcionamiento similar a la de una supercomputadora

Haciendo uso de libreriacuteas de paso de mensajes (MPI) y el software John the Ripper para el

descifrado de contrasentildeas la arquitectura cluacutester implementada alcanzoacute una eficiencia de 885

de rendimiento en comparacioacuten con los recursos computacionales de un solo equipo con las

caracteriacutesticas de un nodo Ademaacutes otros de los proyectos ejecutados en la arquitectura cluacutester

para probar el rendimiento fue la ejecucioacuten de un programa para la deteccioacuten de nuacutemeros primos

dentro de un archivo de 10000000 de nuacutemeros obteniendo una eficiencia de maacutes de 99 gracias

a la distribucioacuten de tareas que proporcionan las libreriacuteas de paso de mensajes (MPI) dentro de la

arquitectura cluacutester

Con la implementacioacuten de la arquitectura cluacutester el laboratorio de la Maestriacutea en Sistemas

Computacionales podraacute dar soluciones potentes eficientes y econoacutemicas en los entornos de

94

investigacioacuten mejorando la capacidad de procesamiento en aplicaciones como evaluacioacuten de

algoritmos compresioacuten de archivos renderizacioacuten de imaacutegenes anaacutelisis de datos (big data) en un

tiempo relativamente bajo ideal para las necesidades educativas

La experiencia obtenida al realizar esta investigacioacuten y propuesta ha sido enriquecedora

tanto por la obtencioacuten de conocimiento en base a la historia evolucioacuten y arquitectura de cluacutesters

asiacute como la programacioacuten paralela y sus ventajas en diferentes proyectos desarrollados en todo el

mundo Igualmente la comparacioacuten entre cada uno de los modelos y meacutetodos resulta interesante

dado que existe un sinnuacutemero de ejemplos con caracteriacutesticas diferentes pero baacutesicamente con un

mismo objetivo final

Trabajo Futuro

El cluacutester implementado en el Laboratorio de la Maestriacutea en Sistemas computacionales del

Instituto Tecnoloacutegico de Acapulco puede ser utilizado en gran cantidad de aplicaciones dentro de

las diferentes aacutereas de investigacioacuten del Instituto asiacute como estar disponible para el Departamento

de Posgrado e Investigacioacuten como apoyo durante la realizacioacuten de tareas y proyectos dentro de las

aacutereas de Desarrollo de Sistemas Inteligentes asiacute como de Tecnologiacuteas Web

Propuesta de Trabajo a Futuro

Durante la realizacioacuten de este proyecto se observoacute la necesidad que existe dentro del

departamento de Investigacioacuten y Posgrado de equipos de alta capacidad de procesamiento para

realizar de una manera maacutes eficiente las investigaciones que se estaacuten llevando a cabo Una de ellas

es el ldquoSistema de apoyo al diagnoacutestico oportuno de Retinopatiacutea Diabeacuteticardquo en la cual a traveacutes del

entrenamiento de una red neuronal se clasificaraacuten y evaluaraacuten un nuacutemero de 3000 imaacutegenes para

95

demostrar la presencia de dicha enfermedad en pacientes del Instituto Estatal de Oftalmologiacutea

Actualmente se ha realizado una prueba de entrenamiento de dicha red neuronal con 70 imaacutegenes

obteniendo como resultado un tiempo clasificacioacuten y evaluacioacuten de 301532 horas en un equipo

con un procesador Core I7 con 8 GB en memoria RAM

96

Bibliografiacutea

Alegsa (01 de 01 de 2018) Alegsa Diccionario Informaacutetico Recuperado el 07 de 2019 de

Alegsa httpwwwalegsacomarDicataque_por_diccionariophp

Avecto (2017) Avecto Limited Recuperado el 10 de 08 de 2018 de AVECTO a Bomgar

Company wwwavectocom

Borghello C (2009) Seguridad de la Informacioacuten Recuperado el 11 de 2018 de Criptografiacutea de

la A-Z httpswwwsegu-infocomarproyectosp1_hashhtm

Branch Bedoya J amp Mesa Muacutenera A (Diciembre de 2008) Implementacioacuten de un cluster

homogeacuteneo para la resolucioacuten de problemas de alta complejidad computacional Avances

en Sistemas e Informaacutetica 5(3)

ByteBleeder (02 de 06 de 2017) Practical guide to NTLM Relaying in 2017 Obtenido de Github

httpsbyt3bl33d3rgithubiopractical-guide-to-ntlm-relaying-in-2017-aka-getting-a-

foothold-in-under-5-minuteshtml

Caballero A (26 de 06 de 2018) Hacking Eacutetico Recuperado el 03 de 2019 de John The Ripper

httpwwwreydescomdq=Recuperar_la_Contrasena_del_Administrador_utilizando_s

amdump2_y_John_The_Ripper

Carretero Peacuterez J de Miguel Anasagasti P Garciacutea Carballeira F amp Peacuterez Costoya F (2001)

Sistemas Operativos Una visioacuten aplicada (C F Madrid Ed) Madrid Espantildea

McGRAW-HillInteramericana

Castelloacute Gimeno A (30 de 07 de 2014) Universitat Jaume Recuperado el 10 de 2019 de

Evaluacioacuten de prestaciones mediante laaplicacioacuten HPL de clusters utilizandorCUDA

97

httprepositoriujiesxmluibitstreamhandle10234115082TFM_2014_CastelloGimen

oApdfsequence=1ampisAllowed=y

Chaacutevez J Echeverriacutea C Correa M Vaacutezquez E Suaacuterez M Maacutermol X Diacuteaz G (07 de

1999) Centro de Caacutelculo Cientiacutefico Recuperado el 01 de 05 de 2018 de Universidad de

Los Andes httpwwwcecalculavedocumentaciontutorialesbeowulfinformehtml

Chirinov R (2003) Nfinite9000 SL Recuperado el 26 de 04 de 2018 de Noticias 3D

httpswwwnoticias3dcomarticuloaspidarticulo=248amppag=4

Coffin J (23 de 07 de 2015) Quora Recuperado el 15 de 08 de 2019 de

httpswwwquoracomWhat-does-it-mean-when-a-hashing-algorithm-has-been-broken

Dongarra J (2010) Top500 Super computer sites Recuperado el 07 de 2019 de http

wwwtop500org

Educba (01 de 01 de 2019) Recuperado el 10 de 2019 de Educbaorg

httpswwweducbacomidea-algorithm

europa press (04 de 06 de 2013) Portal Tic Recuperado el 18 de 11 de 2018 de Europa Press

httpswwweuropapressesportalticgadgetsnoticia-cuarta-generacion-intel-core-mayor-

salto-cuanto-ahorro-energetico-20130604174722html

g0tmi1k (2018) github Recuperado el 05 de 2019 de github

httpsgithubcomdanielmiesslerSecListsblobmasterPasswordsCommon-

Credentials10-million-password-list-top-1000000txt

Gonzaacutelez Agudelo D (2014) El riesgo y la falta de politicas de seguridad informaacutetica una

amenaza en las empresas certificadas basc Recuperado el 20 de 05 de 2018 de

Universidad Militar Nueva Granada

httpsrepositoryunimilitareducobitstream10654122511ENSAYO20FINALpdf

98

Gonzaacutelez Ramiacuterez E amp Rodriacuteguez Saacutenchez A (2008) Disentildeo e implementacioacuten de un cluster

tipo BEOWULF para el desarrollo de coacutemputo cientiacutefico avanzado CdMx Mexico

Hernandez M (2013) Forensics Mexico Recuperado el 07 de 2018 de La importancia del

registro de Windows parte 1 httpforensicsmexicoblogspotcom201309la-

importancia-del-registro-de-windowshtml

Kowalczyk C (01 de 2015) Crypto-IT Recuperado el 11 de 2018 de Crypto-IT

httpwwwcrypto-itnetengasymmetricindexhtml

Labaca Castro R (13 de 06 de 2014) We live security Recuperado el 2019 de 08 de 07 de

Welivesecuritybyeset httpswwwwelivesecuritycomla-es20140613matematica-

claves-numerica-alfanumerica

Lizaacuterraga C (2002) Departamento de Fiacutesica Recuperado el 12 de 03 de 2018 de Universidad

de Sonora httpclustersfisicausonmx

Llorens E amp Pentildea M (2002) Recuperado el 04 de 2018 de Departament dArquitectura de

Computadors httppersonalsacupceduenricPFCBeowulfbeowulfhtml

Meneacutendez-Barzanallana R (07 de 08 de 17) Universidad de Murcia Recuperado el 11 de 2018

de Informaacutetica Aplicada a las Ciencias Sociales

httpswwwumesdocenciabarzanaIACCSSCriptografiahtml

Merkle R amp Damgaringrd I (sf) Numerenturorg Recuperado el 06 de 2019 de Para computar -

numerenturorg httpnumerenturorgfuncion-merkle-damgard

Microsoft Inc (02 de 05 de 2019) wwwmicrosoftcom Obtenido de Password must meet

complexity requirements httpsdocsmicrosoftcomes-eswindowssecuritythreat-

protectionsecurity-policy-settingspassword-must-meet-complexity-requirements

99

Mifsud E (26 de 03 de 2012) Introduccioacuten a la seguridad informaacutetica Recuperado el 07 de 05

de 2018 de Ministerio de educacioacuten cultura y deportes Gobierno de Espantildea

httprecursosticeducacionesobservatoriowebessoftwaresoftware-general1040-

introduccion-a-la-seguridad-informaticashowall=1

Murugesan S (01 de 02 de 2008) Researchgate doi101109MITP200810

Nahar K amp Abu Abbas O (01 de 2010) Researchgate Recuperado el 07 de 2019 de

Researchgate

httpswwwresearchgatenetpublication315492522_Hybrid_Cipher_System

Nievas F Pino O amp Arroyo R (sf) Los clusters como Plataforma de Procesamiento Paralelo

Recuperado el 25 de 04 de 2018 de

httpusuarioslycoseslacaraocultadescargasClusters_definitivo pdf

Pawar S (2016) A computer science portal for geeks Recuperado el 10 de 2018 de

Geeksforgeeks httpswwwgeeksforgeeksorgrc5-encryption-algorithm

Peleus (2019) NETSEC Recuperado el 08 de 2019 de httpsnetsecwsp=314

Peacuterez Tavera I (2014) Obtenido de Universidad Autonoma del Estado de Hidalgo

httpswwwuaehedumxscigeboletinprepa4n2e4html

Peacuterez M (2001) Recuperado el 15 de 04 de 2018 de

httpwwwdragonesorgBibliotecaArticulosArquitecturaParalela2pdf

Petitet A Whaley R C Dongarra J amp Cleary A (2008) HPL - A Portable Implementation of

the High-Performance Linpack Benchmark for Distributed-Memory Computers

Recuperado el 07 de 2019 de httpwwwnetliborgbenchmarkhpl

Picolet J (2017) Hash Crack Password Cracking Manual (Vol 2) Createspace Independent

Pub

100

Preukschat A (23 de 02 de 2015) Oro y Finanzas Recuperado el 07 de 2019 de

httpswwworoyfinanzascom201502que-es-colision-criptografia-bitcoin

Robbins D (2008) OpenMosix Recuperado el 22 de 04 de 2018 de the openMosix Project

httpopenmosixsourceforgenetintroduction_to_openmosixhtml

Rocha Quezada J d Botello Rionda S Vargas Feacutelix J M amp Munguiacutea Torres I A (Sep-Dic

de 2011) Disentildeo e implementacioacuten de un cluacutester de coacutemputo de alto rendimiento Acta

Universitaria 21(3) 24-33 Recuperado el 1 de 12 de 2018

Rocksclusters (01 de 01 de 2010) httpwwwrocksclustersorg Recuperado el 01 de 06 de 2018

de httpwwwrocksclustersorg httpwwwrocksclustersorg

Sanjoy K (01 de 01 de 2015) DZone Recuperado el 15 de 06 de 2019 de DZone

httpsdzonecomarticlessecurity-algorithms-des-algorithm

Security Degree Hub (01 de 2017) Security Degree Hub Recuperado el 13 de 02 de 2019 de

Security Degree Hub httpswwwsecuritydegreehubcomwhat-is-cryptanalysis

Simmons G (01 de 01 de 2019) Encyclopedia Britannica Recuperado el 08 de 2019 de

Encyclopedia Britannica httpswwwbritannicacomtopicRSA-encryption

statista (09 de 2017) Statista Obtenido de Statista Co httpsesstatistacom

Turner D (2004) Recuperado el 12 de 02 de 2018 de Ames Lab

httpwwwsclameslabgovProjectsparrallel_computingpara_intohtml

United States Government Department of Defense (1983) Trusted Computer System Evaluation

Criteria Rainbow Series

Universidad Internacional de Valencia (09 de Septiembre de 2016) Nuestros

expertosTecnologiacutea Recuperado el 27 de Abril de 2018 de Universidad Internacional de

Valencia httpswwwuniversidadviuesla-seguridad-informatica-puede-ayudarme

101

Wallen J (19 de 01 de 2019) Lifewire Recuperado el 13 de 06 de 2019 de Lifewire

httpswwwlifewirecomgnome-3-desktop-4175640

Yang H (01 de 02 de 2019) Herong Yang Recuperado el 15 de 06 de 2019 de Cryptography

Tutorials httpwwwherongyangcomCryptographyDSA-Introduction-What-Is-DSA-

Digital-Signature-Algorithmhtml

102

Anexo 1

Programa en Lenguaje C para la obtencioacuten de nuacutemeros primos utilizando libreriacuteas mpi

include ltcstdlibgt

include ltiostreamgt

include ltiomanipgt

include ltcmathgt

include ltctimegt

include mpih

using namespace std

int main ( int argc char argv[] )

int prime_number ( int n int id int p )

void timestamp ( )

int main ( int argc char argv[] )

int i

int id

int master = 0

int n

int n_factor

int n_hi

int n_lo

int p

int primes

int primes_part

double wtime

n_lo = 1

n_hi = 10000000

n_factor = 2

MPIInit ( argc argv )

p = MPICOMM_WORLDGet_size ( )

id = MPICOMM_WORLDGet_rank ( )

if ( id == master )

cout ltlt n

cout ltlt Cuenta primosn

cout ltlt C++MPI versionn

cout ltlt n

cout ltlt Programa para contar cantidad de primos para un N dadon

cout ltlt Corriendo en ltlt p ltlt procesosn

cout ltlt n

103

cout ltlt N S Tiempon

cout ltlt n

n = n_lo

while ( n lt= n_hi )

if ( id == master )

wtime = MPIWtime ( )

MPICOMM_WORLDBcast ( ampn 1 MPIINT master )

primes_part = prime_number ( n id p )

MPICOMM_WORLDReduce ( ampprimes_part ampprimes 1 MPIINT

MPISUM

master )

if ( id == master )

wtime = MPIWtime ( ) - wtime

cout ltlt ltlt setw(8) ltlt n

ltlt ltlt setw(8) ltlt primes

ltlt ltlt setw(14) ltlt wtime ltlt n

n = n n_factor

MPIFinalize ( )

if ( id == master )

cout ltlt n

cout ltlt PRIME_MPI - Procesos maestron

cout ltlt Finalizacion del calculo normaln

return 0

int prime_number ( int n int id int p )

int i

int j

int prime

int total

104

total = 0

for ( i = 2 + id i lt= n i = i + p )

prime = 1

for ( j = 2 j lt i j++ )

if ( ( i j ) == 0 )

prime = 0

break

total = total + prime

return total

void timestamp ( )

define TIME_SIZE 40

static char time_buffer[TIME_SIZE]

const struct tm tm

size_t len

time_t now

now = time ( NULL )

tm = localtime ( ampnow )

len = strftime ( time_buffer TIME_SIZE d B Y IMS p tm )

cout ltlt time_buffer ltlt n

return

undef TIME_SIZE

Page 7: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios

vi

Abstract

This work begins with a review of the importance of security in any aspect of life and

especially in the workplace specifically in the computer area Later this work speaks briefly about

how cryptography has been present at important moments in the life of the human being especially

in the military field in which it has been fundamental to allow secure communications Currently

cryptography is inside our daily life when we conduct transactions on the internet in a secure

manner As part of the research in this work the types of cryptography and cryptanalysis are

described as well as the security levels of operating systems and above all the main methods of

computers clustering to implement a system with a faster method of cryptanalysis in an operative

system with a security level C1

Keywords cluster security cryptanalysis

vii

Iacutendice de Contenido

Descargo de Responsabilidad Institucional ii

Dedicatoria iii

Agradecimientos iv

Resumen v

Abstract vi

Iacutendice de Contenido vii

Iacutendice de Figuras x

Iacutendice de Tablas xi

Capiacutetulo 1 Introduccioacuten 1 11 Antecedentes del problema 1

12 Planteamiento del Problema 4

13 Objetivos 6

131 Objetivo General 6

132 Objetivos Especiacuteficos 6

14 Justificacioacuten 7

15 Hipoacutetesis 7

16 Alcances y Limitaciones 8

17 Impacto Social Tecnoloacutegico Econoacutemico y Ambiental 8

171 Impacto social 8

172 Impacto ambiental 9

173 Impacto econoacutemico 10

18 Metodologiacutea a Utilizar 10

181 Anaacutelisis 10

182 Disentildeo 10

1821 Economiacutea 10

1822 Instalaciones 10

1823 Escalabilidad 11

1824 Red 11

1825 Software 11

1826 Almacenamiento 12

183 Implementacioacuten 12

1831 Software 12

1832 Hardware 13

1833 Recursos totales del cluacutester 13

19 Aseguramiento Teacutecnico ndash Material 13

191 Hardware 14

viii

1911 Equipo de coacutemputo 14

Capiacutetulo 2 Estado del Arte 16

Marco Teoacuterico 27 21 Seguridad de la Informacioacuten 27

211 Objetivo de la seguridad de la informacioacuten 27

212 Principios de la seguridad informaacutetica 28

213 Caracteriacutesticas de seguridad informaacutetica 28

214 Formas de Autenticacioacuten 29

215 Ciber-seguridad 29

22 Criptografiacutea 30

221 Tipos de Criptografiacuteas 30

2211 Tablas Hash 30

2212 Tipos de algoritmos Hash 31

22121 SHA - 1 (Secure Hash Algorithm) 31

22122 MD5 (Message Digest Algorithm) 31

22123 RIPEMD ndash 160 32

22124 Funcioacuten Merkle-Damgaringrd 32

2213 Cifrado simeacutetrico 32

22131 RC5 (Cifrado de Rivest) 33

22132 IDEA (International Data Encryption Algorithm) 33

22133 DES (Data Encryption Standard) 34

2214 Cifrado asimeacutetrico 35

22141 DSA (Digital Signature Algorithm - Algoritmo de Firma digital) 36

22142 RSA 37

2215 Cifrado hiacutebrido 38

23 Criptoanaacutelisis 38

24 Niveles de seguridad 39

241 Nivel D1 40

242 Nivel C1 40

243 Nivel C2 41

244 Nivel B1 42

245 Nivel B2 43

246 Nivel B3 44

247 Nivel A1 45

25 Sistemas Operativos 46

251 Windows 47

252 Registro de Windows 48

253 Administrador de cuentas de seguridad 49

2531 Identificador de Seguridad (SID Security Identifier) 50

254 Autenticacioacuten NTML 51

26 LINUX (ROCKS) 52

261 Escritorio 53

262 Paquete de Oficina 53

263 Organizador de archivos 54

27 Agrupamiento (Cluacutester) de Computadoras 55

271 Beowulf 56

ix

272 Mosix 56

273 OpenMosix 57

Capiacutetulo 3 Implementacioacuten de Cluacutester 59 31 Requisitos previos 59

311 Conexioacuten de los equipos y acceso a la red 59

312 Configuracioacuten de la BIOS 60

3121 ATAIDE Mode 60

3122 PXE 62

32 Instalacioacuten de Sistema Operativo Rocks 63

321 Configuracioacuten del teclado 70

33 Instalacioacuten de los nodos 70

331 Administracioacuten de nodos 72

332 Creacioacuten de cuentas de usuario 73

333 Configuracioacuten del directorio compartido 73

34 Operaciones baacutesicas de Rocks 74

Capiacutetulo 4 Metodologiacutea y Resultados 77 41 Obtener Archivo hash 77

42 Dar Formato al Hash 80

43 Evaluar la fuerza del Hash 80

44 Calcular la capacidad del equipo 82

45 Establecer Estrategia 87

451 Fuerza Bruta 87

4511 Cantidad de combinaciones posibles 88

452 Diccionario 90

453 Analizar los resultados 91

454 Personalizar ataques 91

Conclusioacuten 92

Trabajo Futuro 94 Propuesta de Trabajo a Futuro 94

Bibliografiacutea 96

Anexo 1 102

x

Iacutendice de Figuras

Figura 31 Esquema tiacutepico de configuracioacuten de un cluacutester xi

Figura 32 Imagen del Bios del equipo en la opcioacuten ldquodrive configurationrdquo 61

Figura 33 Bios ATAIDE Legacy Mode 61

Figura 34 Bios Boot PXE 62

Figura 35 Bios Boot device prioriry 63

Figura 36 Pantalla de Inicio de instalacioacuten de Rocks 64

Figura 37 Pantalla de seleccioacuten de Rolls 65

Figura 38 Listado de opciones de rolls para instalar 65

Figura 39 Informacioacuten baacutesica del cluacutester a instalar 66

Figura 310 Configuracioacuten Ethernet de la red privada 67

Figura 311 Configuracioacuten Ethernet de la red puacuteblica 67

Figura 312 Configuracioacuten de DNS y Gateway 68

Figura 313 Ingresar contrasentildea de usuario root 68

Figura 314 Configuracioacuten horaria 69

Figura 315 Particiones del disco duro 69

Figura 316 Pantalla para ingresar nodos 71

Figura 317 Indicador de insercioacuten de nuevos nodos 71

Figura 318 Comando qstat ndashf 74

Figura 319 Enviacuteo de trabajos por medio del comando qsub 75

Figura 320 Estado de los trabajos pendientes mostrados por qstat ndashf 75

Figura 321 Visualizacioacuten de la distribucioacuten de cargas en el cluacutester usando la herramienta

Ganglia 76

Figura 41 Arranque con LiveUSB KaliLinux 79

Figura 42 Resultado de la ejecucioacuten de la herramienta samdump2 80

Figura 43 Sistema de Ecuaciones tipo 119860119909 = 119887 Fuente Propia 84 Figura 44 Distribucioacuten de cargas del cluacutester 86

Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester 89

xi

Iacutendice de Tablas

Tabla 11 Costo del Proyecto 15

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia) 86

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia) 89

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos

(Fuente Elaboracioacuten propia) 90

1

Capiacutetulo 1 Introduccioacuten

11 Antecedentes del problema

Sin lugar a duda una de las herramientas maacutes importantes producida en el siglo XX ha sido

la computadora la cual ha provocado cambios vertiginosos en la sociedad y en el progreso de la

misma En la actualidad el entorno estaacute praacutecticamente controlado por las nuevas tecnologiacuteas que

a medida que transcurre el tiempo avanzan sin liacutemites y en ocasiones son utilizadas

incorrectamente provocando dantildeos de grandes dimensiones

Los trascendentales cambios operados en el mundo moderno caracterizados por su

constante desarrollo la acelerada globalizacioacuten de la economiacutea la acentuada dependencia a

almacenar grandes voluacutemenes de informacioacuten y los sistemas que la proveen aunado a grandes

inversiones de las empresas en conocimiento actual y futuro en sistemas de informacioacuten ademaacutes

del potencial que poseen las tecnologiacuteas para cambiar draacutesticamente las organizaciones y las

praacutecticas de negocio asiacute como crear nuevas oportunidades disentildear nuevas estructuras tecnoloacutegicas

basadas en informacioacuten la convierte en un activo codiciable Tales avances hacen permanente el

riesgo en las tecnologiacuteas y nos llevan a pensar en la problemaacutetica sobre la seguridad informaacutetica

La proteccioacuten de datos documentos y control de acceso a la informacioacuten es un tema que

cada diacutea toma maacutes fuerza en las grandes compantildeiacuteas debido a las diferentes praacutecticas de

especialistas tecnoloacutegicos como los son los hackers y crackers que roban informacioacuten vital para

posteriormente sacar provecho de ella

2

ldquoDesde la aparicioacuten de los grandes sistemas aislados hasta nuestros diacuteas en los que el

trabajo en red es lo habitual los problemas derivados de la seguridad de la informacioacuten han ido

tambieacuten cambiando evolucionando pero estaacuten ahiacute y las soluciones han tenido que ir adaptaacutendose

a los nuevos requerimientos teacutecnicos Aumenta la sofisticacioacuten en el ataque y ello aumenta la

complejidad de la solucioacuten pero la esencia es la mismardquo (Mifsud 2012)

Dentro del mundo actual la informacioacuten es denominada un activo importante de una

institucioacuten la cual debe ser protegida para evitar su peacuterdida modificacioacuten o el uso inadecuado de

su contenido

El extraviacuteo o el mal uso de informacioacuten que para alguien es confidencial genera dantildeos y

repercusiones directas relacionadas a la integridad disponibilidad y confidencialidad de los

archivos y a su vez a los duentildeos de dicha informacioacuten

ldquoLa seguridad informaacutetica se distingue por tener dos propoacutesitos de seguridad la Seguridad

de la Informacioacuten y la Proteccioacuten de Datos estos se diferencian debido a que los datos son valores

numeacutericos que soportan la informacioacuten mientras que la informacioacuten es aquello que tiene un

significado para nosotrosrdquo (Gonzaacutelez Agudelo 2014)

La seguridad informaacutetica consiste en asegurar que los recursos del sistema de informacioacuten

(material informaacutetico o programas) de una organizacioacuten sean utilizados de la manera que se decidioacute

3

inicialmente y que el acceso a la informacioacuten alliacute contenida asiacute como su modificacioacuten soacutelo sea

posible a las personas que se encuentren acreditadas y dentro de los liacutemites de su autorizacioacuten

Actualmente hay mucha informacioacuten circulando en internet por ejemplo correos

electroacutenicos publicaciones en Twitter Facebook videos fotos comercio electroacutenico secretos de

estado militares o industriales Lamentablemente dicha red es puacuteblica e insegura dentro de la cual

existen usuarios bien intencionados y muchos mal intencionados Diariamente encontramos

noticias de sitios con intrusiones mal intencionadas (hackeados) clonacioacuten de tarjeta de creacutedito o

imaacutegenes adulteradas Todo lo anterior motiva la necesidad de proteger la informacioacuten a traveacutes de

mecanismos que impidan a los usuarios no autorizados acceder a dicha informacioacuten

4

12 Planteamiento del Problema

Los sistemas de informacioacuten actuales estaacuten relacionados completamente con la exposicioacuten

de su informacioacuten a entidades externas que son ajenas a la organizacioacuten o delegacioacuten a la que

pertenecen

Cuando no se conoce el alcance que tienen los sistemas informaacuteticos ni lo vulnerables que

pueden ser si son expuestos a Internet por los mismos empleados de la organizacioacuten puede darse

ldquofugardquo de informacioacuten hacia el exterior esto los hace vulnerables a eventos y amenazas que

conllevan a riesgos que pueden provocar peacuterdidas tangibles e intangibles las cuales se traducen

en peacuterdidas que en muchos de los casos por decir lo menos seraacuten monetarias

El portal espantildeol de estadiacutesticas statista muestra la cuota de mercado de los principales

sistemas operativos a nivel mundial a fecha de febrero de 2017 seguacuten el nuacutemero de instalaciones

(statista 2017) Windows 10 fue el segundo sistema operativo maacutes instalado con una cuota de

mercado de 253 Esto significa que alrededor de una de cada cuatro computadoras estaacute

gobernado por este sistema operativo Por su parte en el caso de Windows 7 el porcentaje se situacutea

por encima del 45 a pesar de que ya no se vende ninguacuten PC con este sistema operativo Hablando

de manera conjunta los sistemas operativos Windows cuentan con una cuota del mercado global

de 8857

La empresa de seguridad informaacutetica Britaacutenica Avecto informoacute en su Microsoft

Vulnerabilities Report 2017 (Avecto 2017) (reporte 2017 de vulnerabilidades de Windows) un

aumento de vulnerabilidades publicadas del 111 en los uacuteltimos 5 antildeos de las cuales 235 criacuteticas

5

fueron mitigadas removiendo permisos de administrador asiacute como otras muy importantes

enfocadas al Administrador de Cuentas de Seguridad (SAM Security Account Manager por sus

siglas en ingleacutes) la cual es una base de datos almacenada como un archivo del registro en Windows

y que almacena las contrasentildeas de los usuarios en un formato hash (Algoritmos que crean a partir

de una entrada una salida alfanumeacuterica de longitud fija)

6

13 Objetivos

131 Objetivo General A traveacutes de la implementacioacuten de un procedimiento de fuerza

bruta utilizando para ello un cluacutester de alto rendimiento asiacute como software de uso libre lograr

capacidad de procesamiento capaz de vulnerar un sistema de autenticacioacuten nivel C1

132 Objetivos Especiacuteficos

Analizar los diferentes niveles de seguridad de sistemas operativos

Analizar diferentes meacutetodos de criptoanaacutelisis para vulnerar el Administrador de

cuentas de seguridad

Estudiar las teacutecnicas de agrupamiento de computadoras (clustering) para la

obtencioacuten de mayor poder de procesamiento

Implementar un cluacutester de alto rendimiento en el Laboratorio de la Maestriacutea en

Sistemas Computacionales del Instituto Tecnoloacutegico de Acapulco para ejecutar

operaciones de coacutemputo distribuido

7

14 Justificacioacuten

Antes la seguridad de la informacioacuten se realizaba a traveacutes de medios fiacutesicos por ejemplo

una caja fuerte en la cual las personas resguardaban objetos o informacioacuten valiosa para ellos Con

la introduccioacuten de las computadoras y el uso de internet los usuarios comienzan a almacenar

informacioacuten importante dentro de sus equipos por lo que se considera indispensable el uso de

herramientas que brinden proteccioacuten a la informacioacuten que se encuentra resguardada dentro de

eacutestas Los usuarios informaacuteticos suelen enviar informacioacuten por la red en las empresas al realizar

traacutemites o enviar informes a socios jefes entre otros

El resguardo de informacioacuten siempre ha sido importante para los seres humanos con la

diferencia que anteriormente no se contaba con los avances tecnoloacutegicos que tenemos actualmente

puesto que con la introduccioacuten de internet y el uso de dispositivos electroacutenicos se tiene mayor

riesgo de la informacioacuten que en ellos se maneja

La proteccioacuten del contenido de los datos es una necesidad urgente en casi todos los aacutembitos

de la sociedad incluyendo los servicios puacuteblicos y privados por lo que la tecnologiacutea de la

seguridad de los sistemas de cifrado se encuentra de frente a verdaderos retos

15 Hipoacutetesis

A traveacutes de un de fuerza bruta como teacutecnica de criptoanaacutelisis y con la ayuda de una mayor

capacidad de procesamiento mediante la implementacioacuten de agrupamiento de computadoras

(cluacutester) de alto rendimiento seraacute posible encontrar alguna vulnerabilidad dentro del sistema de

administracioacuten de cuentas de seguridad de Windows server 2012

8

16 Alcances y Limitaciones

Esta tesis se centraraacute en el sistema operativo Windows como objeto de estudio al cual se

le realizaraacute el criptoanaacutelisis

La tesis se enfocaraacute en el meacutetodo Beowulf para realizar el agrupamiento de computadoras

asiacute como la distribucioacuten de software libre del sistema operativo Linux Rocks

El nuacutemero de equipos disponibles para poder realizar el agrupamiento es de 17

computadoras hasta lograr el poder de coacutemputo de 800 Gflops

17 Impacto Social Tecnoloacutegico Econoacutemico y Ambiental

La sostenibilidad del presente proyecto seraacute abordada a partir de los siguientes aspectos

171 Impacto social A veces se puede pensar que un cluacutester de alto rendimiento pudiera

no tener alguacuten impacto directo en el medio social pero si nos enfocamos a un punto de vista en

donde gracias a la capacidad de procesamiento de estas maacutequinas han sido parte fundamental en

el desarrollo de proyectos que inciden de manera directa en beneficio de la sociedad en la que

vivimos como lo es la medicina la fiacutesica quiacutemica

Este proyecto busca beneficiar a nuestra sociedad proveyendo su capacidad de

procesamiento en la buacutesqueda de alguna vulnerabilidad en el sistema operativo maacutes utilizado hoy

en diacutea como lo es Windows ademaacutes de que estaraacute disponible para la comunidad cientiacutefica y

9

estudiantil del Instituto Tecnoloacutegico de Acapulco para optimizar tiempo de caacutelculo en futuras

investigaciones

172 Impacto ambiental Green IT tambieacuten conocido como Green Computing o

traducido al espantildeol como Tecnologiacuteas Informaacuteticas Verdes es definido como el estudio y la

praacutectica de disentildear desarrollar usar y disponer de computadoras servidores y diferentes

perifeacutericos tales como monitores impresoras dispositivos de almacenamiento de redes y

comunicaciones eficientemente y efectivamente con un impacto miacutenimo o nulo en el medio

ambiente (Murugesan 2008)

Bajo la premisa anterior este proyecto hace uso de los equipos con los que cuenta

actualmente el laboratorio de la Maestriacutea en Sistemas Computacionales lo cual evitaraacute la

adquisicioacuten de equipo nuevo y por consecuencia desechar el equipo existente evitando desperdicio

electroacutenico Dicho equipo cuenta con un procesador Intel I3 de 4ta generacioacuten lo cual seguacuten el

portal electroacutenico Europa press

ldquoEsta nueva generacioacuten supone el mayor salto en cuanto ahorro energeacutetico de la historia

de Intel asiacute como una mejora en los graacuteficos y nuevas experiencias de usuariordquo (europa press

2013)

Teniendo como base estos dos puntos importantes como lo son la reutilizacioacuten de equipo

y utilizando procesadores de bajo consumo energeacutetico es como este proyecto busca contribuir de

manera positiva con el medio ambiente

10

173 Impacto econoacutemico Actualmente existe una gran necesidad de procesar grandes

cantidades de datos lo cual hace imprescindible disponer de maacutequinas con estas caracteriacutesticas sin

embargo su alta complejidad aunado al gran costo hace que en instituciones de caraacutecter puacuteblico

sea muy complicado conseguir recurso para este fin Sin embargo un cluacutester de alto rendimiento

reutilizaraacute equipo propio evitando asiacute gastos por concepto de adquisicioacuten de equipo siendo de

esta manera viable para instituciones de caraacutecter puacuteblico

18 Metodologiacutea a Utilizar

181 Anaacutelisis Despueacutes de analizar las diferentes metodologiacuteas de clustering se optoacute por

desarrollar e implementar un cluacutester de alto rendimiento (HPC)

182 Disentildeo

1821 Economiacutea Debido a las caracteriacutesticas del equipo con el cual cuenta el Laboratorios

de la Maestriacutea en Sistemas Computacionales los componentes utilizados para este proyecto son

considerados de uso comuacuten y de bajo costo lo cual los hace faacutecilmente reemplazables en caso de

fallo a un costo accesible El equipo es de la marca Acer Aspire modelos AXC-605-M021 lo cual

nos hace tener ventaja y respaldo del fabricante con respecto a hardware geneacuterico

1822 Instalaciones Un cluacutester requiere de un ambiente controlado Esto es una

habitacioacuten especial con sistema de enfriamiento capacidad suficiente de carga eleacutectrica control

de humedad y un ambiente libre de polvo Ademaacutes se deben considerar el peso del equipo sobre

el piso (ya sea falso o piso normal) Se recomienda colocarlo en los soacutetanos o en la plata baja de

edificios (Rocha Quezada Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

11

En el laboratorio de la Maestriacutea en Sistemas Computacionales se cuenta con espacio que

reuniacutea la mayoriacutea de las caracteriacutesticas requeridas para este proyecto

1823 Escalabilidad Un cluacutester debe ser faacutecilmente escalable y a su vez confiable Por

tal motivo se ha utilizado equipo de marca lo cual nos proporciona maacutes de confiabilidad en su

desempentildeo y a su vez facilidad de aumentar el nuacutemero de equipos si en un futuro fuese necesario

agrandar este proyecto Se armoacute un cluacutester de cinco computadoras con procesadores Intel Core I3

de 64 bits en cada nodo La memoria incluida y perifeacutericos son faacuteciles de adquirir en el mercado

1824 Red En la parte de redes se utilizoacute un switch fast Ethernet con una velocidad de 1

Gbps el cual tiene tazas de transferencia raacutepida y el costo es notablemente maacutes econoacutemico que

uno de fibra oacuteptica

El cableado seleccionado fue el estaacutendar UTP de cobre con la norma Gigabit Ethernet de

IEEE 8023ab con la categoriacutea de cableado 6e que soporta tazas de transferencia de datos de

1000Base T (1 Gbps)

1825 Software

ldquoEl sistema operativo debe constar con servicios dedicados para compartir y respaldar

archivos asiacute como capacidad de acceder a los datos de trabajo raacutepidamente El sistema operativo

debe tambieacuten proveer servicios de monitoreo y reporte de fallas en el sistemardquo (Rocha Quezada

Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

12

Existe una gran variedad de software para instalar cluacutester de alto rendimiento sin embargo

como se ha comentado con anterioridad el costo de adquisicioacuten debe ser accesible por tal motivo

se optoacute por una distribucioacuten con licencia GNU de Linux Rocks Cluster la cual es una distribucioacuten

sencilla de instalar y configurar en comparacioacuten con otras distribuciones analizadas dicha

distribucioacuten estaacute basada en CentOS que a su vez estaacute basada en la conocida distribucioacuten de Linux

Red Hat

1826 Almacenamiento Para este proyecto no se requeriraacute un gran espacio de

almacenamiento por tal motivo los equipos utilizados tanto maestro como esclavos mantuvieron

sus unidades de disco originales las cuales son de 1 TB de almacenamiento

183 Implementacioacuten La implementacioacuten del cluacutester de alto rendimiento fue realizada

dentro de las instalaciones del Laboratorio de la Maestriacutea en Sistemas Computacionales del

Instituto Tecnoloacutegico de Acapulco construido inicialmente para este proyecto de criptoanaacutelisis lo

cual requeriraacute suficiente capacidad de procesamiento para poder implementar ataques de fuerza

bruta a sistemas operativos Las caracteriacutesticas del cluacutester construido son

1831 Software El software instalado en cada uno de los nodos es el siguiente

bull Sistema operativo Rocks Cluacutester Linux 74 (64 bits)

bull Libreriacutea de manejo de mensajes Open-MPI 153

bull Software de monitoreo Ganglia

13

1832 Hardware El cluacutester estaacute compuesto de 17 equipos con las siguientes

caracteriacutesticas

bull Nodo Maestro y 16 Nodos Esclavos

- Procesador Intel Core I3 4150 (4 nuacutecleos) Memoria 6 GB Disco Duro SATA 1 TB

tarjeta de Red Gigabit Ethernet

El hardware adicional es el siguiente

bull Interconexioacuten de Red

bull Switch Cisco 26 puertos 1Gbps modelo SG200 Red interna

1833 Recursos totales del cluacutester

bull Nuacutecleos de unidades de procesamiento (cores) 68

bull Capacidad en memoria 92 GB

bull Capacidad en disco 17 TB

19 Aseguramiento Teacutecnico ndash Material

A continuacioacuten se muestra el desglose del equipo utilizado para la elaboracioacuten de un

cluacutester de alto rendimiento estos componentes consisten en Hardware y Software especializado

asiacute como los costos de produccioacuten y personal involucrados en la metodologiacutea y elaboracioacuten del

proyecto

Costos de Hardware

Costos de Software

14

191 Hardware En este punto se refleja el costo de los dispositivos y herramientas a nivel

fiacutesico las cuales sirvieron para la implementacioacuten del proyecto cluacutester de alto rendimiento Cabe

resaltar que el equipo utilizado forma parte del inventario actual del Laboratorio motivo por el

cual su utilizacioacuten no causoacute erogacioacuten alguna sin embargo la investigacioacuten de costos se realizoacute

con la finalidad que el lector pueda establecer comparativas y buscar alternativas en caso de ajuste

de presupuesto

1911 Equipo de coacutemputo El equipo de coacutemputo utilizado consta de diecisiete

computadoras las cuales serviraacuten una para Nodo Maestro y las dieciseacuteis restantes como Nodos

Esclavos

La descripcioacuten de estos equipos se muestra en la tabla a continuacioacuten mostrando los costos

de todos los equipos utilizados dentro del proyecto

15

Tabla 11 Costo del Proyecto

Modelo

Cantidad

Caracteriacutesticas

Costos

PC - Acer AXC-

605

17

Procesador Intel Core i3

Pantalla 156rdquo

Disco duro 1TB HDD

RAM 6GB

Salida HDMI

Tarjeta de graacuteficos INTEGRADA

Lector de CD

Los costos en el mercado de una PC de

escritorio con estas caracteriacutesticas tiene un

valor aproximado de $600000 pesos

(Moneda nacional Mexicana)

Switch Cisco

Gigabit Ethernet

1

Modelo SG200 de 26 puertos

Costo en el mercado alrededor de

$2000000 pesos MN

Total

12200000 pesos MN

16

Capiacutetulo 2 Estado del Arte

Tiacutetulo del Trabajo Introduccioacuten a la Criptografiacutea

Autor Gibraacuten Granados Paredes

Fecha Julio 2010

Lugar Ciudad de Meacutexico

Publicado en Coordinacioacuten de Publicaciones Digitales DGSCA-UNAM

httpwwwrevistaunammxvol7num7art55int55htm

Siacutentesis Cuando se desea tener seguridad hablando en aacutembitos informaacuteticos la

criptografiacutea es una herramienta muy uacutetil el autor lo entiende tambieacuten como un medio para

garantizar las propiedades de confidencialidad integridad y disponibilidad de los recursos de un

sistema

Con la criptografiacutea se puede garantizar las propiedades de integridad y confidencialidad

pero hay que saber coacutemo utilizarla para ello es importante tener claros los conceptos baacutesicos que

estaacuten detraacutes de los sistemas criptograacuteficos modernos Estos conceptos van desde entender queacute es

la criptografiacutea coacutemo estaacute clasificada entender el funcionamiento baacutesico de algunos sistemas de

cifrado y conocer coacutemo se forman los documentos digitales como firmas y sobres digitales

Resultados El autor realiza un viaje por un gran nuacutemero de conceptos utilizados en

criptografiacutea el inicio y la clasificacioacuten de la misma asiacute como la criptografiacutea claacutesica y moderna y

analiza de manera breve algunos meacutetodos de cifrado maacutes comunes

17

Tiacutetulo del Trabajo Criptoanaacutelisis sobre meacutetodos claacutesicos de cifrado

Autores Sebastiaacuten Goacutemez Juan David Arias Diego Agudelo

Fecha 2 de mayo 2013

Lugar Ciudad de Meacutexico

Publicado en Scientia et Technica Antildeo XVII No 50 abril de 2012

Siacutentesis Los algoritmos criptograacuteficos utilizados desde la antigua Roma hasta nuestros

diacuteas son meacutetodos que convierten un mensaje de texto plano a cifrado al proceso inverso se le

conoce como descifrar Este artiacuteculo realiza un estudio de algunas teacutecnicas de encriptacioacuten claacutesicas

del siglo pasado como lo son el cifrado de Cesar y el cifrado de Vigeneacutere asiacute como muestra

teacutecnicas baacutesicas y modernas de criptoanaacutelisis basadas en la teoriacutea de la informacioacuten y estadiacutestica

como lo son la entropiacutea y el ataque de maacutexima correlacioacuten Las teacutecnicas de criptoanaacutelisis descritas

anteriormente pueden ser usadas en otros meacutetodos de cifrado siempre y cuando esteacuten presentes las

mismas debilidades

Resultados Los autores implementaron en lenguajes de programacioacuten Python un

algoritmo para el caacutelculo de entropiacutea para diferentes longitudes de clave Para la implementacioacuten

de los algoritmos de cifrado y descifrado de Vigeneacutere y de maacutexima correlacioacuten utilizaron lenguaje

de programacioacuten C++ Se probaron los meacutetodos anteriormente descritos sobre textos planos de

diferentes longitudes logrando un resultado de 9385 de efectividad en promedio

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de dos de los

algoritmos de encriptacioacuten maacutes antiguos y baacutesicos pero sobre todo que conociendo los meacutetodos

de criptoanaacutelisis me permitiraacuten analizar debilidades y fortalezas de algoritmos

18

Tiacutetulo del Trabajo ULTRACOM Computacioacuten de Alto Rendimiento para Criptoanaacutelisis

Autor Antonio Castro Lechtaler Alejandro Repetto Martiacuten Bianchi Marcelo Cipriano

Alejandro Arroyo Arzubi Ceacutesar Cicerchia Eduardo Malvacio

Fecha octubre 2014

Lugar Buenos Aires Argentina

Publicado en XX Congreso Argentino de Ciencias de la Computacioacuten (Buenos Aires

2014)

Siacutentesis La generacioacuten de nuacutemeros primos fundamentales para la produccioacuten de claves

el anaacutelisis de secuencias pseudo-aleatorias los procesos de verificacioacuten y validacioacuten de algoritmos

de seguridad en un sentido geneacuterico requieren enormes cantidades de procesamiento Los

procesos relacionados con la matemaacutetica criptograacutefica se caracterizan por la alta necesidad de

coacutemputo El objetivo de ULTRACOM es desarrollar una computacioacuten distribuida multipropoacutesito

que permita como primera aplicacioacuten real el anaacutelisis la validacioacuten y la ejecucioacuten de pruebas de

estreacutes sobre sistemas criptograacuteficos El presente trabajo de investigacioacuten detalla el proceso de

desarrollo de ULTRACOM y muestra un ejemplo de su implementacioacuten en una versioacuten Beta Para

ello toman como entrada dos versiones del algoritmo Trivium Utilizando la misma

infraestructura y sin desarrollo extra se prueban grandes voluacutemenes de claves y vectores de

inicializacioacuten de los algoritmos en busca de secuencias deacutebiles de menor longitud que la de la

buscada

Resultados El equipo implementoacute una versioacuten beta de la plataforma ULTRACOM

comprobando la factibilidad y viabilidad teacutecnica de la generalizacioacuten de la infraestructura de

computacioacuten distribuida en grilla (malla) BOINC Este avance permite extender los horizontes de

BOINC y habilita la posibilidad de obtener la capacidad de coacutemputo de alto rendimiento a bajo

19

costo Concluyeron que ULTRACOM es un proyecto viable escalable y de alto impacto para la

evaluacioacuten y validacioacuten de algoritmos criptograacuteficos

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento y la

implementacioacuten de una arquitectura de computacioacuten distribuida y una vez siendo factible su

desarrollo utilizar su poder de coacutemputo atacando a traveacutes de un algoritmo un sistema criptograacutefico

20

Tiacutetulo del Trabajo Criptografiacutea Cuaacutentica

Autor M Baig

Fecha 2010

Lugar Barcelona Espantildea

Siacutentesis En este artiacuteculo el autor realiza una breve introduccioacuten a la criptografiacutea claacutesica y

la relacioacuten que existe con la teoriacutea de la informacioacuten de Shannon la cual asegura que el cifrado

digital simeacutetrico es secreto y perfecto siempre y cuando se cumplan los tres requisitos

1 La llave ha de ser aleatoria

2 La llave debe usarse soacutelo una vez

3 La llave ha de ser tan larga como el mensaje y de un solo uso debe de estar en posesioacuten

tanto del emisor como del receptor

El punto 3 es el maacutes complicado de cumplir debido a la forma de compartir la llave entre

el emisor y receptor

Maacutes adelante en el artiacuteculo se hace un anaacutelisis sobre otra teacutecnica de criptografiacutea que es el

cifrado digital asimeacutetrico en la que se estudia coacutemo funcionan las llaves privadas y puacuteblicas asiacute

como el meacutetodo de criptograacutefico RSA

Resultados

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento maacutes profundo de

los meacutetodos de criptografiacutea simeacutetricos y asimeacutetricos especiacuteficamente el algoritmo asimeacutetrico

RSA

21

Tiacutetulo del Trabajo La Criptografiacutea Maderista en la Revolucioacuten Mexicana (1910-1911)

Criptoanaacutelisis de una carta cifrada por Gabriel Leyva Solano

Autor Roberto Narvaacuteez

Fecha 2011

Lugar Meacutexico DF

Siacutentesis Este trabajo aborda temas relacionados con las comunicaciones secretas del

movimiento revolucionario comandado por Francisco I Madero a partir de 1910 Se compone de

dos partes la primera es una breve resentildea criacutetica de ejemplos criptograacuteficos del maderismo que

fueron generados entre 1910 y 1911 la segunda describe paso a paso el criptoanaacutelisis que aplicoacute

el autor Roberto Narvaacuteez para desencriptar una carta parcialmente cifrada de Gabriel Leyva Solano

a Francisco I Madero

Resultados El propoacutesito general uacuteltimo es contribuir al conocimiento de la criptografiacutea

mexicana en el siglo XX En lo particular se trata de poner a disposicioacuten de los estudiosos el

contenido completo de la carta de Leyva Solano por primera vez despueacutes de 100 antildeos y al mismo

tiempo someter a la criacutetica teacutecnica e histoacuterica el procedimiento criptoanaliacutetico puesto en operacioacuten

para recuperar el texto plano

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados en nuestro paiacutes sobre formas y meacutetodos de encriptacioacuten durante la Revolucioacuten

Mexicana incluso mucho antes de la 2ordf Guerra mundial momento donde se registroacute un auge

importante dentro de la criptografiacutea moderna

22

Tiacutetulo de Tesis Anaacutelisis de la programacioacuten concurrente sobre la cpu y gpu en el

desarrollo de fractal build

Autor Joseacute Vicente Anilema Guadalupe

Fecha 2012

Lugar Riobamba Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la geometriacutea euclidiana debido a que

el autor realiza una aplicacioacuten que crea paisajes fractales lo que significa crear un paisaje con una

misma figura geomeacutetrica Lo anterior se traduce en una necesidad de gran poder de coacutemputo para

realizar de una manera eficaz la tarea Dentro de la tesis el autor realiza diversos estudios

comparativos entre el procesamiento serializado realizado por una CPU (unidad central de

procesamiento) y procesamiento paralelizado realizado por una GPU (Unidad grafica de

procesamiento) a traveacutes de diversas herramientas para obtener el mejor aprovechamiento de los

recursos

Resultados El autor concluye que es necesario examinar los algoritmos a utilizar para que

estos puedan ser utilizados en coacutemputo paralelo Ademaacutes de que es necesario aprender ciertas

herramientas a utilizar para aprovechar al maacuteximo el coacutemputo distribuido y no desperdiciar el

poder de procesamiento muy superior que las GPUrsquos nos pueden brindar

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados para medir y comparar la velocidad de procesamiento de la unidad central de

procesamiento (CPU) y la unidad graacutefica de procesamiento (GPU) Asiacute como la medida en Flops

(Operaciones de punto flotante por segundo)

23

Tiacutetulo del Trabajo Arquitectura cluacutester de alto rendimiento utilizando herramientas de

software libre

Autores Leonardo Chiquiguanca Edyson Malla Freddy Ajila Rene Guamaacuten-Quincheacute

Fecha mayo 2015

Lugar Loja Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la gran cantidad de datos que tienen

que procesar las universidades puacuteblicas dentro de sus investigaciones realizadas en diferentes aacutereas

como la ingenieriacutea medicina etc y la carencia de recursos econoacutemicos para obtener

supercomputadoras que procesen dicha informacioacuten Los autores proponen dentro de su

investigacioacuten la utilizacioacuten de equipo de coacutemputo existente dentro de su universidad y por medio

de software libre realizar agrupamiento de computadoras para poder lograr el procesamiento de

grandes voluacutemenes de datos de una manera accesible

Resultados Los autores concluyen que la mejor arquitectura para el agrupamiento

(cluacutester) de computadoras en ambientes universitarios es la arquitectura Beowulf debido a que la

implementaron en hardware convencional existente dentro de su campus universitario y que

ademaacutes usaron software libre mencionando que el poder de coacutemputo logrado fue muy cercano al

de una supercomputadora

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de las teacutecnicas

utilizadas en ambientes universitarios para la realizacioacuten de agrupamiento de computadoras y

sobre todo la optimizacioacuten de costos para realizar dicha tarea y tener como finalidad el lograr

mayor capacidad de procesamiento

24

Tiacutetulo de Tesis Desarrollo de un algoritmo de cifrado simeacutetrico de resumen

Autores Jonathan Dave Orjuela Navarrete

Antildeo 2008

Lugar Bogotaacute DC

Siacutentesis Esta tesis realiza un estudio de varios meacutetodos de criptografiacutea simeacutetrica para

posteriormente utilizando diferentes foacutermulas matemaacuteticas crear un algoritmo criptograacutefico

nuevo Dentro de la tesis utiliza dos meacutetodos para realizar pruebas a su algoritmo criptoanaacutelisis

diferencial y criptoanaacutelisis basado en fallos de hardware Dentro de los cuales hace un estudio

detallado de las teacutecnicas y herramientas de criptoanaacutelisis realizado a su algoritmo

Resultados El autor concluye de manera positiva con la realizacioacuten del algoritmo y de

manera satisfactoria con la realizacioacuten de criptoanaacutelisis a su algoritmo pudiendo demostrar la

fortaleza del algoritmo a traveacutes de ejemplo de cifrado con textos claro muy parecido y su

conversioacuten a cadenas completamente diferentes

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de criptoanaacutelisis diferencial y criptoanaacutelisis basado en fallos de hardware para la

evaluacioacuten de algoritmos de cifrado simeacutetrico de textos claros

25

Tiacutetulo del Trabajo Firt step in a Pc cluster development with openMosix

Autores Javier Bilbao Gorka Garate

Antildeo 2008

Lugar Bilbao Spain

Siacutentesis En este trabajo se afirma que es posible hacer maacutequinas de alta capacidad de

caacutelculo mediante la interconexioacuten de equipos con redes de alta velocidad A este tipo de sistemas

se les llama sistemas distribuidos y hoy en diacutea es la tecnologiacutea maacutes utilizada para resolver

problemas que requieren una gran capacidad de caacutelculo La agrupacioacuten de computadoras permite

que varias computadoras trabajen juntas para resolver los problemas de informaacutetica comuacuten Este

artiacuteculo centra su estudio en uno de los diferentes meacutetodos de agrupamiento de computadoras

openMosix El trabajo tambieacuten evaluacutea el cluacutester por dos casos de estudio donde se mejora el

tiempo de ejecucioacuten de los problemas resueltos

Resultados El autor del artiacuteculo concluye con la realizacioacuten satisfactoria de agrupamiento

de computadoras bajo el meacutetodo openMosix el cual uacutenicamente permite agrupamiento de la forma

SSI (Single System Image) que se refiere a que uacutenicamente se puede realizar el agrupamiento con

todos los nodos ejecutando un mismo sistema operativo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras openMosix ventajas desventajas y dificultades para

su implementacioacuten

26

Tiacutetulo del Trabajo Disentildeo e implementacioacuten de un cluacutester tipo Beowulf para el desarrollo

de coacutemputo cientiacutefico avanzado

Autores Edgar Rubeacuten Gonzaacutelez Ramiacuterez Abimael Rodriacuteguez Saacutenchez

Antildeo 2008

Lugar Instituto Politeacutecnico Nacional Meacutexico DF

Siacutentesis Este trabajo de tesis ha desarrollado e implementado una herramienta

computacional llamada Cluster Beowulf para mejorar la programacioacuten paralela Comenzando

con la memoria compartida y distribuida el autor implemento el agrupamiento tipo Beowulf

pensando en procesamiento paralelo la optimizacioacuten de las fuentes informaacuteticas El disentildeo se

construye mediante una distribucioacuten Linux Fedora Core 6 a 64 bits utilizando todas las ventajas

que ofrece el estaacutendar Gigabyt Ethernet La programacioacuten paralela fue desarrollada en lenguaje C

tanto para MPI como para OPENMP

Resultados El autor del artiacuteculo concluye que de acuerdo con los resultados el tiempo

de procesamiento se redujo con el uso muacuteltiples nuacutecleos mejoroacute hasta ocho veces gracias al

multihilo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras Beowulf y su implementacioacuten en sistemas operativos

de uso libre Linux distribucioacuten Fedora 6

27

Marco Teoacuterico

21 Seguridad de la Informacioacuten

La Seguridad de la Informacioacuten consiste y hace referencia a la proteccioacuten de cualquier

amenaza para salvaguardar los activos fijos y en especial toda informacioacuten de la cual estaacute basada

la continuidad de las operaciones de la empresa sean estas ocasionadas dentro o fuera de la misma

con esto se logra disminuir los dantildeos y perjuicios que estas amenazas causariacutean a la organizacioacuten

y a la vez aumentar las oportunidades de servicio hacia otras empresas

La Seguridad de la informacioacuten se consigue mediante la implementacioacuten de controles

efectivos que pueden ser normas manual de funciones buenas praacutecticas procedimientos

estructuras organizativas funciones de software y hardware planes de contingencia y herramientas

que se encargan de proteger la privacidad e integridad de la informacioacuten que se almacena en un

sistema informaacutetico Estos controles necesitan continuamente ser establecidos monitoreados

revisados y mejorados en donde sea necesario para asegurar que se cumplan los objetivos

especiacuteficos de seguridad en cada aacuterea de negocio de la organizacioacuten

La seguridad informaacutetica es en realidad una rama de la seguridad de la informacioacuten aunque

de forma praacutectica algunos autores suelen utilizar de manera indistinta ambos teacuterminos

211 Objetivo de la seguridad de la informacioacuten En la seguridad de la informacioacuten

sabiendo que dichos procesos de seguridad permiten proteger el recurso maacutes importante y valioso

de una organizacioacuten partiendo como principio fundamental los procesos de aseguramiento el

28

objetivo del proceso de seguridad informaacutetica es obtener un nivel aceptable de seguridad ya que

la informacioacuten es lo maacutes valioso que tiene una institucioacuten o empresa por lo tanto esta debe ser

protegida para que no sea vulnerable y utilizada para fines maliciosos

212 Principios de la seguridad informaacutetica

Confidencialidad Los datos solo deben ser conocidos y accedidos por quienes esteacuten

autorizados durante su almacenamiento procesamiento o trasmisioacuten Verificar y certificar que solo

los usuarios con accesos autorizados puedan acceder a la informacioacuten

Integridad Los datos solo pueden ser modificados y eliminados por quienes esteacuten

autorizados para ello es decir los sistemas y aplicaciones solo deben ser operados por personal

autorizado

Disponibilidad Los sistemas que almacenan datos e informacioacuten deben garantizar su

acceso cuando asiacute se requiera por quienes tengan derecho a ello

213 Caracteriacutesticas de seguridad informaacutetica

Control Solo los usuarios autorizados deciden cuaacutendo y coacutemo permitir el acceso a la

informacioacuten

Auditoriacutea Establece las acciones cuaacutendo las implementa y quieacuten las realiza sobre el

sistema

Autenticidad Define que la informacioacuten necesaria es correcta utilizable y vaacutelida en tiempo

y forma

No Repudio Su funcioacuten es evitar que alguna entidad que envioacute o recibioacute informacioacuten

alegue que no lo hizo

29

214 Formas de Autenticacioacuten

Contrasentildea Una contrasentildea es un tipo de seguridad informaacutetica ya que es una serie de

caracteres secretos que permiten a un usuario tener acceso a un archivo equipo de coacutemputo o

programa y negar el acceso a usuarios no autorizados

Certificado digital Es un tipo de seguridad informaacutetica que permite la firma digital

electroacutenica que garantiza teacutecnica y legalmente la identidad de una persona en Internet

Autenticacioacuten HTTP Tipo de seguridad informaacutetica que delega la autenticacioacuten de

usuarios a un servidor a traveacutes de Kerberos

215 Ciber-seguridad Con los avances tecnoloacutegicos y la demanda que ha causado en ello

existe un elevado iacutendice de informacioacuten personal y empresarial que circula y se mantiene en la red

por la utilizacioacuten del internet esto permite que toda informacioacuten quede expuesta a cualquier ataque

de ciber-delincuentes los cuales buscan la manera de vulnerar cualquier sistema para espiar robar

informacioacuten o hacer dantildeo de cualquier tipo por lo que se ha visto la necesidad de tomar medidas

de seguridad para salvaguardar la informacioacuten ya que es muy importante

La ciberseguridad es la proteccioacuten de los sistemas conectados a Internet incluidos el

hardware el software y los datos de los ciberataques En un contexto informaacutetico la seguridad

comprende la ciberseguridad y la seguridad fiacutesica ambas son utilizadas por las empresas para

proteger contra el acceso no autorizado a los centros de datos y otros sistemas de coacutemputo El

objetivo de la ciberseguridad es limitar el riesgo y proteger los activos de Tecnologiacuteas de

Informacioacuten de los atacantes con intenciones maliciosas La seguridad de la informacioacuten estaacute

30

disentildeada para mantener la confidencialidad integridad y disponibilidad de los datos es un

subconjunto de la ciberseguridad

22 Criptografiacutea

La Criptografiacutea tambieacuten llamada ldquoescritura ocultardquo tradicionalmente en el aacutembito de

criptografiacutea es donde se ocupan las teacutecnicas de cifrado o codificacioacuten que permiten alterar el

contenido de cierta informacioacuten o mensajes con el fin de hacerlos ininteligibles a receptores o

personas no autorizadas (Meneacutendez-Barzanallana 17)

Actualmente la criptografiacutea se encarga de analizar algoritmos protocolos y sistemas que

son utilizados para proveer seguridad a las comunicaciones informacioacuten y a las entidades que se

comunican entre siacute

221 Tipos de Criptografiacuteas

2211 Tablas Hash Un hash o funcioacuten hash toma un grupo de caracteres (llamado clave)

y lo asigna a un valor de cierta longitud (llamado valor hash o hash) El valor hash es representativo

de la cadena de caracteres original pero normalmente es maacutes pequentildeo que el original

El hash tambieacuten es utilizado en el cifrado y descifrado de firmas digitales La funcioacuten hash

transforma la firma digital luego tanto el valor hash como la firma se enviacutean al receptor El

receptor utiliza la misma funcioacuten hash para generar el valor hash y luego lo compara con el recibido

31

en el mensaje Si los valores hash son los mismos es probable que el mensaje se haya transmitido

sin errores

Un ejemplo de una funcioacuten hash se llama plegado(folding) Esta toma un valor original lo

divide en varias partes luego agrega las partes y usa los uacuteltimos cuatro diacutegitos restantes como

valor o clave hash

2212 Tipos de algoritmos Hash

22121 SHA - 1 (Secure Hash Algorithm) Es un algoritmo criptograacutefico de Hash

publicado por el gobierno de los Estados Unidos Genera un valor Hash de 160 bits a partir de una

secuencia de longitud arbitraria Es considerado lo suficientemente seguro para aplicaciones

praacutecticas pero hay disponibles versiones maacutes robustas SHA - 256 SHA - 384 y SHA - 512 que

generan valores Hash de 256 384 y 512 bits respectivamente estas versiones reemplazaraacuten a SHA

- 1 mientras se siga trabajando sobre ellas (Borghello 2009)

22122 MD5 (Message Digest Algorithm) En criptografiacutea MD5 es una funcioacuten hash

criptograacutefica ampliamente utilizada con un valor hash de 128 bits Como estaacutendar de Internet (RFC

1321) MD5 se ha empleado en una amplia variedad de aplicaciones de seguridad y tambieacuten se

usa comuacutenmente para verificar la integridad de los archivos Un hash MD5 generalmente se

expresa como un nuacutemero hexadecimal de 32 diacutegitos

MD5 es una versioacuten reforzada de MD4 Al igual que MD4 el hash MD5 fue inventado por

el profesor Ronald Rivest del Massachusetts Institute of Technology (MIT) Ademaacutes MD5 se

32

utilizoacute como modelo para SHA-1 ya que comparten muchas caracteriacutesticas comunes MD5 y

SHA-1 son los dos algoritmos hash maacutes utilizados en la actualidad aunque el uso de MD5 ha

disminuido ya que ahora se considera roto (Borghello 2009)

22123 RIPEMD ndash 160 Es una funcioacuten hash criptograacutefica basada en la construccioacuten

Merkle-Damgaringrd (MD) Se usa en el estaacutendar de Bitcoin Es una versioacuten reforzada del algoritmo

RIPEMD que produce un resumen de hash de 128 bits mientras que el algoritmo RIPEMD-160

produce una salida de 160 bits La funcioacuten de compresioacuten consta de 80 etapas formadas por 5

bloques que se ejecutan 16 veces cada uno Este patroacuten se ejecuta dos veces con los resultados

combinados en la parte inferior utilizando la adicioacuten del moacutedulo 32 (Borghello 2009)

22124 Funcioacuten Merkle-Damgaringrd La construccioacuten MD es una metodologiacutea para crear

funciones hash resistentes a colisiones a partir de funciones de compresioacuten unidireccionales Ralph

Merkle la propuso en el antildeo de 1979 en ldquoA certified Digital Signaturerdquo posterior a este estudio

Ivan Damgaringrd demostroacute de manera independiente que la estructura era soacutelida (Merkle amp

Damgaringrd sf)

2213 Cifrado simeacutetrico Los cifrados simeacutetricos son los cifrados criptograacuteficos maacutes

antiguos y maacutes utilizados En un cifrado simeacutetrico la clave que descifra el texto cifrado es la

misma (o puede derivarse faacutecilmente) de la clave que cifra el texto claro Esta clave a menudo se

conoce como la clave secreta Los cifrados simeacutetricos maacutes utilizados son DES y AES

La problemaacutetica que surge es la seguridad de la clave

33

El emisor cifra el mensaje con una clave

Enviacutea el mensaje cifrado de tal manera que nadie puede descifrarlo sin dicha clave

El receptor obtiene la clave y entonces puede descifrar el mensaje con la misma clave

que recibioacute del emisor

Algunos algoritmos de este tipo son

22131 RC5 (Cifrado de Rivest) Es un algoritmo de cifrado de bloque de clave simeacutetrica

disentildeado por Ron Rivest en 1994 Se destaca por ser simple raacutepido (debido a que usa solo

operaciones de coacutemputo primitivas como XOR o shift) y ademaacutes por consumir menos memoria

RC5 es un cifrado de bloques y aborda dos bloques de palabras a la vez Dependiendo del

tamantildeo del bloque de texto sin formato nuacutemero de rondas y tamantildeo de clave se pueden definir

varias instancias de RC5 y cada instancia se denota como RC5-w r b donde w = tamantildeo de

palabra en bits r = nuacutemero de rondas y b = tamantildeo de la clave en bytes (Pawar 2016)

Como se ha mencionado RC5 utiliza bloques de 2 palabras el tamantildeo del bloque de texto

sin formato puede ser de 32 64 o 128 bits

22132 IDEA (International Data Encryption Algorithm) Baacutesicamente es un algoritmo

de cifrado de bloque simeacutetrico El algoritmo asimeacutetrico utiliza la misma clave para el cifrado y

descifrado Un cifrado de bloque divide el mensaje en bloques cada uno de una longitud fija y

luego cifra cada bloque de forma independiente

34

El tamantildeo de bloque tiacutepico es de 16 bytes de 128 bits Un cifrado de bloque generalmente

operaraacute en bloques o rondas donde se aplica parte de la clave a la ronda Despueacutes de un cierto

nuacutemero de rondas digamos entre 10 y 16 se termina con el texto cifrado para ese bloque

El bloque de texto cifrado tiene exactamente el mismo tamantildeo que el bloque de texto sin

formato 16 bytes Para cada ronda se trabaja en el bloque utilizando una parte de la clave de

cifrado a la que se le llama la clave redonda Muacuteltiples claves redondas se derivan de la clave de

cifrado utilizando para esto un programa de claves

La programacioacuten de claves es un algoritmo que cambia XOR multiplica y realiza otros

tipos de operaciones en la clave de cifrado original para obtener estas claves redondas Bueno si

tengo un bloque de 16 bytes y tengo una clave de 128 bits que tambieacuten es de 16 bytes (Educba

2019)

22133 DES (Data Encryption Standard) El algoritmo DES es el algoritmo de seguridad

maacutes popular Es un algoritmo simeacutetrico lo que significa que se utilizan las mismas claves para

cifrar descifrar datos confidenciales La longitud de la clave es de 8 bytes (64 bits) Entonces

para cifrar descifrar datos el algoritmo DES utiliza una clave de 8 bytes pero 1 byte (8 bits) para

la verificacioacuten de paridad Es un algoritmo de cifrado de bloque por lo tanto el tamantildeo del bloque

de datos del algoritmo DES es de 64 bits Para cifrar descifrar datos el algoritmo DES utiliza la

estructura Feistel Entonces utiliza una ronda para cifrar descifrar datos Aunque el tamantildeo del

35

bloque de datos es de 64 bits el nuacutemero de rondas seraacute de 16 rondas asiacute mismo utilizaraacute diferentes

subclaves para cada ronda por lo tanto el nuacutemero de subclaves seraacute de 16 subclaves

Como se puede observar la clave efectiva es de 56 bits por consiguiente se tiene 256

combinaciones posibles por lo que la fuerza bruta se hace casi imposible (Sanjoy 2015)

2214 Cifrado asimeacutetrico Los cifrados asimeacutetricos tambieacuten se conocen como cifrados

con claves puacuteblicas y privadas Usan dos claves una para el cifrado de mensajes y la otra durante

el descifrado

Un intruso puede encriptar cualquier mensaje usando la clave puacuteblica conocida Los

cifrados asimeacutetricos son por lo tanto vulnerables a los ataques de texto sin formato Los cifrados

con encriptacioacuten de clave puacuteblica deben proporcionar seguridad contra tales ataques Despueacutes de

encriptar dos mensajes con la misma clave puacuteblica el intruso no puede distinguir queacute texto cifrado

estaacute conectado con queacute texto plano Ademaacutes un observador que analiza dos mensajes encriptados

usando el mismo algoritmo y la misma clave puacuteblica no puede distinguir sus textos cifrados

(Kowalczyk 2015)

Los cifrados asimeacutetricos son mucho maacutes lentos que los cifrados simeacutetricos (generalmente

mil veces maacutes lentos) Es una praacutectica comuacuten usar el cifrado de clave puacuteblica solo para establecer

la conexioacuten segura y negociar la nueva clave secreta que luego se utilizaraacute para proteger la

comunicacioacuten mediante cifrado simeacutetrico Ejemplos de este cifrado son

36

22141 DSA (Digital Signature Algorithm - Algoritmo de Firma digital) Es un estaacutendar

del Gobierno Federal de los Estados Unidos para firmas digitales Fue propuesto por el Instituto

Nacional de Estaacutendares y Tecnologiacutea (NIST) en agosto de 1991 para ser usado en su Estaacutendar de

Firma Digital (DSS) en el antildeo de 1993

La primera parte del algoritmo DSA es la generacioacuten de clave puacuteblica y clave privada que

puede describirse como

Se elige un nuacutemero primo q que se llama divisor primo

Se elige otro nuacutemero primo p de modo que pndash1 mod q = 0 p seraacute llamado moacutedulo

primo

Ahora se elige un nuacutemero entero g tal que 1 ltg ltp g q mod p = 1 g = h ((p

ndash 1) q) mod p q tambieacuten se llama moacutedulo de orden multiplicativo de g moacutedulo p

Se elige un nuacutemero entero tal que 0 ltx ltq

Se calcula y como g x mod p

Se empaqueta la clave puacuteblica como p q g y

Por uacuteltimo se empaqueta la clave privada como p q g x

La segunda parte del algoritmo DSA es la generacioacuten de firma y la verificacioacuten de firma

Para generar una firma de mensaje el remitente puede seguir estos pasos

Se genera el resumen del mensaje h utilizando un algoritmo hash como SHA1

Se genera un nuacutemero aleatorio k tal que 0 ltk ltq

37

Se calcula r como (g k mod p) mod q Si r = 0 seleccione una k diferente

Ahora se calcula i de modo que k i mod q = 1 i se llama el inverso multiplicativo modular

de k moacutedulo q

Se calcula s = i (h + r x) mod q Si s = 0 se selecciona una k diferente

Por uacuteltimo se empaqueta la firma digital como r s (Yang 2019)

22142 RSA Encriptacioacuten RSA encriptacioacuten Rivest-Shamir-Adleman tipo de

criptografiacutea de clave puacuteblica ampliamente utilizada para la encriptacioacuten de datos de correo

electroacutenico y otras transacciones digitales a traveacutes de Internet RSA lleva el nombre de sus

inventores Ronald L Rivest Adi Shamir y Leonard M Adleman quienes lo crearon mientras

trabajaban en la facultad del Instituto Tecnoloacutegico de Massachusetts (Simmons 2019)

En el sistema RSA un usuario elige de manera secreta un par de nuacutemeros primos p y q tan

grandes que factorizar el producto n = pq estaacute mucho maacutes allaacute de las capacidades informaacuteticas

proyectadas para la vida uacutetil de los cifrados A partir del antildeo 2000 los estaacutendares de seguridad del

gobierno de EE UU exigen que el moacutedulo tenga un tamantildeo de 1024 bits es decir p y q deben

tener un tamantildeo de aproximadamente 155 diacutegitos decimales por lo que n es aproximadamente un

nuacutemero de 310 diacutegitos Dado que los nuacutemeros duros maacutes grandes que actualmente se pueden

factorizar son solo la mitad de este tamantildeo y dado que la dificultad de factorizar se duplica

aproximadamente por cada tres diacutegitos adicionales en el moacutedulo se cree que los moacutedulos de 310

diacutegitos estaacuten a salvo de factorizar durante varias deacutecadas

38

2215 Cifrado hiacutebrido Es una teacutecnica comuacuten que combina diferentes funciones

criptograacuteficas como el cifrado de bloque Con el cifrado hiacutebrido se pueden cifrar datos firmarlos

o agregar un MAC y enviarlos en un objeto seguro (como una cadena o archivo) a traveacutes de un

canal de comunicacioacuten inseguro (sin un acuerdo clave entre dos partes)

En el sistema de cifrado hiacutebrido el texto plano (sin formato) se divide en tokens Luego

se calcula la longitud de cada ficha Los tokens y sus longitudes se almacenan en una matriz

Posteriormente se aplica el algoritmo Ceacutesar anidado sugerido El texto producido se almacena en

una matriz n x m llamada A Luego la transposicioacuten de esta matriz At se calcula utilizando

nuestra versioacuten revisada del cifrado de transposicioacuten para resolver el problema de secuenciacioacuten

A continuacioacuten el algoritmo RSA revisado se aplica en la matriz producida En el paso final se

aplica el formato de datos textuales usando el coacutedigo ASCII para producir el texto cifrado El

proceso de descifrado se realiza de la misma manera pero en orden inverso (Nahar amp Abu Abbas

2010)

23 Criptoanaacutelisis

El criptoanaacutelisis es el proceso de estudiar sistemas criptograacuteficos para buscar debilidades

o fugas de informacioacuten En general se considera que el criptoanaacutelisis explora las debilidades de

las matemaacuteticas subyacentes de un sistema criptograacutefico pero tambieacuten incluye la buacutesqueda de

debilidades en la implementacioacuten como ataques de canal lateral o entradas de entropiacutea deacutebiles

39

Su funcioacuten es la de conseguir obtener el significado de mensajes creados por medio de

criptografiacutea El objetivo principal del criptoanaacutelisis es opuesto al de la criptografiacutea Tiene como

finalidad encontrar la debilidad de las diferentes teacutecnicas criptograacuteficas para explotarla y de esta

manera reducir o eliminar la seguridad de la teacutecnica criptograacutefica Cualquier intento de

criptoanaacutelisis puede ser llamado ataque Una vez que un atacante logra romper la seguridad que

una teacutecnica criptograacutefica aportaba al sistema se dice que dicho sistema ha sido roto y por lo tanto

dicho ataque tuvo eacutexito

El criptoanaacutelisis es la investigacioacuten de sistemas texto cifrado y cifrados para revelar el

significado oculto o los detalles del sistema mismo El objetivo de este tipo de estudio es descubrir

los aspectos ocultos incluso si la clave o el algoritmo principal no se pueden descifrar Se necesita

una combinacioacuten exitosa de persistencia matemaacuteticas intuicioacuten curiosidad y una computadora

que funcione para hacer un buen criptoanalista Este tipo de ruptura de coacutedigo es extremadamente

importante especialmente en el mundo tecnoloacutegicamente dependiente de hoy El criptoanaacutelisis es

constantemente realizado por criptoacutegrafos que intentan obtener informacioacuten valiosa y por aquellos

que intentan descifrar el coacutedigo para revelar secretos (Security Degree Hub 2017)

24 Niveles de seguridad

Los niveles de seguridad de sistemas operativos son otorgados de acuerdo con el sistema

operativo que esteacute utilizando la empresa o institucioacuten ya sea puacuteblica privada gubernamental o no

gubernamental En el manual ldquoTrusted Computer System Evaluation Criteriardquo (United States

40

Government Department of Defense 1983) el Departamento de Defensa de los Estados Unidos

define los siguientes niveles

241 Nivel D1 Este nivel es el maacutes bajo de seguridad por lo tanto la norma establece que

el sistema no es confiable Esta divisioacuten contiene solo una clase Estaacute reservado para aquellos

sistemas que han sido evaluados pero que no cumplen con los requisitos para un nivel de

evaluacioacuten superior

242 Nivel C1 Un sistema de nivel C1 cumple nominalmente los requisitos de seguridad

discrecionales al proporcionar separacioacuten de usuarios y datos Incorpora alguna forma de controles

creiacutebles capaces de imponer limitaciones de acceso de manera individual es decir aparentemente

adecuados para permitir que los usuarios puedan proteger la informacioacuten privada o del proyecto y

evitar que otros usuarios lean o destruyan accidentalmente sus datos Se espera que el entorno de

nivel C1 sea uno de los usuarios cooperantes que procesan datos con el mismo nivel de

sensibilidad Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten

de nivel C1 son

Control de acceso discrecional por ejemplo listas de control de acceso (ACL)

usuario grupo

Por lo general para usuarios que estaacuten en el mismo nivel de seguridad

Proteccioacuten de nombre de usuario y contrasentildea y base de datos de autorizaciones

seguras (ADB)

Sistema operativo protegido y modo de operaciones del sistema

Comprobacioacuten perioacutedica de integridad de TCB

41

Mecanismos de seguridad probados sin derivaciones obvias

Documentacioacuten para la seguridad del usuario

Documentacioacuten para la seguridad de la administracioacuten de sistemas

Documentacioacuten para pruebas de seguridad

Documentacioacuten de disentildeo TCB

Tiacutepicamente para usuarios en el mismo nivel de seguridad

La certificacioacuten C1 es rara Los sistemas de ejemplo son versiones anteriores de

Unix IBM RACF

243 Nivel C2 Los sistemas de esta clase imponen un control de acceso discrecional maacutes

fino que los sistemas (C1) lo que hace que los usuarios sean individualmente responsables de sus

acciones a traveacutes de procedimientos de inicio de sesioacuten auditoriacutea de eventos relevantes para la

seguridad y aislamiento de recursos Los siguientes son requisitos miacutenimos para los sistemas

asignados a una clasificacioacuten de nivel C2

La proteccioacuten de objetos puede ser para un solo usuario Por ejemplo a traveacutes de

una base de datos ACL

La autorizacioacuten de acceso solo puede ser asignada por usuarios autorizados

Proteccioacuten de reutilizacioacuten de objetos (Por ejemplo para evitar la reasignacioacuten de

objetos eliminados de manera segura)

Procedimientos obligatorios de identificacioacuten y autorizacioacuten para los usuarios (Por

ejemplo Usuario Contrasentildea)

Auditoriacutea completa de eventos de seguridad (es decir fecha hora evento usuario

eacutexito falla ID de terminal)

42

Modo de operacioacuten del sistema protegido

Proteccioacuten adicional para la autorizacioacuten y los datos de auditoriacutea

Documentacioacuten como C1 maacutes informacioacuten sobre el examen de la informacioacuten de

auditoriacutea

Esta es una de las certificaciones maacutes comunes Los sistemas operativos de ejemplo

son VMS IBM OS 400 Windows NT Novell NetWare 411 Oracle 7 DG AOS

VS II

244 Nivel B1 Los sistemas de este nivel requieren todas las caracteriacutesticas requeridas

para el nivel C2 Ademaacutes debe estar presente una declaracioacuten informal del modelo de poliacutetica de

seguridad etiquetado de datos y control de acceso obligatorio sobre sujetos y objetos nombrados

La capacidad debe existir para etiquetar con precisioacuten la informacioacuten exportada Cualquier falla

identificada por la prueba debe ser eliminada Los siguientes son requisitos miacutenimos para los

sistemas asignados a una clasificacioacuten de nivel B1

Etiquetado obligatorio de seguridad y acceso de todos los objetos (Por ejemplo

archivos procesos dispositivos)

Comprobacioacuten de integridad de etiquetas (Por ejemplo mantenimiento de etiquetas

de sensibilidad cuando se exportan datos)

Auditoriacutea de objetos etiquetados

Control de acceso obligatorio para todas las operaciones

Capacidad para especificar el nivel de seguridad impreso en salida legible para

humanos (Por ejemplo impresoras)

43

Capacidad para especificar el nivel de seguridad en cualquier salida legible por

maacutequina

Auditoriacutea mejorada

Proteccioacuten mejorada del sistema operativo

Documentacioacuten mejorada

Los sistemas operativos de ejemplo son HP-UX BLS Cray Research Trusted

Unicos 80 Digital SEVMS Harris CS SX SGI Trusted IRIX

245 Nivel B2 En los sistemas de nivel B2 el TCB se basa en un modelo de poliacutetica de

seguridad formal claramente definido y documentado que requiere que la aplicacioacuten de control de

acceso discrecional y obligatoria que se encuentra en los sistemas de nivel B1 se extienda a todos

los sujetos y objetos en el sistema Ademaacutes se abordan los canales encubiertos El TCB debe

estructurarse cuidadosamente en elementos criacuteticos para la proteccioacuten y no criacuteticos para la

proteccioacuten La interfaz TCB estaacute bien definida y el disentildeo y la implementacioacuten TCB le permiten

someterse a pruebas maacutes exhaustivas y una revisioacuten maacutes completa Se fortalecen los mecanismos

de autenticacioacuten se proporciona una gestioacuten confiable de las instalaciones en forma de soporte

para las funciones de administrador y operador del sistema y se imponen estrictos controles de

gestioacuten de la configuracioacuten El sistema es relativamente resistente a la penetracioacuten Los siguientes

son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de nivel B2

Notificacioacuten de cambios en el nivel de seguridad que afectan a los usuarios

interactivos

Etiquetas de dispositivos jeraacuterquicos

44

Acceso obligatorio a todos los objetos y dispositivos

Comunicaciones de ruta confiables entre usuario y sistema

Rastreo de canales de almacenamiento encubiertos

Modo de operaciones del sistema maacutes estricto en unidades independientes de varios

niveles

Anaacutelisis de canales encubiertos

Pruebas de seguridad mejoradas

Modelos formales de TCB

Versioacuten actualizacioacuten y anaacutelisis y revisioacuten de parches

Los sistemas de ejemplo son Honeywell Multics Cryptek VSLAN Trusted

XENIX

246 Nivel B3 El TCB debe satisfacer los requisitos del monitor de referencia para mediar

todos los accesos de los sujetos a los objetos ser a prueba de manipulaciones y ser lo

suficientemente pequentildeo como para ser sometido a anaacutelisis y pruebas Con este fin el TCB estaacute

estructurado para excluir el coacutedigo que no es esencial para la aplicacioacuten de la poliacutetica de seguridad

con una importante ingenieriacutea del sistema durante el disentildeo y la implementacioacuten del TCB dirigido

a minimizar su complejidad Se admite un administrador de seguridad los mecanismos de

auditoriacutea se ampliacutean para sentildealar eventos relevantes para la seguridad y se requieren

procedimientos de recuperacioacuten del sistema El sistema es altamente resistente a la penetracioacuten

Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de clase

(B3)

45

ACL adicionalmente basadas en grupos e identificadores

Acceso de ruta confiable y autenticacioacuten

Anaacutelisis automaacutetico de seguridad

Modelos TCB maacutes formales

Auditoriacutea de eventos de auditoriacutea de seguridad

Recuperacioacuten confiable despueacutes de la caiacuteda del sistema y documentacioacuten relevante

Cero defectos de disentildeo en TCB y defectos miacutenimos de implementacioacuten

El uacutenico sistema operativo con certificacioacuten B3 es Getronics Wang Federal XTS-

300

247 Nivel A1 Los sistemas en el nivel A1 son funcionalmente equivalentes a los del nivel

B3 en que no se agregan caracteriacutesticas arquitectoacutenicas adicionales ni requisitos de poliacuteticas La

caracteriacutestica distintiva de los sistemas en este nivel es el anaacutelisis derivado de la especificacioacuten

formal del disentildeo y las teacutecnicas de verificacioacuten y el alto grado resultante de seguridad de que el

TCB se implementa correctamente Esta garantiacutea es de naturaleza de desarrollo comenzando con

un modelo formal de la poliacutetica de seguridad y una especificacioacuten formal de alto nivel del disentildeo

Independientemente del lenguaje de especificacioacuten particular o del sistema de verificacioacuten

utilizado existen los siguientes criterios importantes para la verificacioacuten del disentildeo de nivel A1

Meacutetodos formales y prueba de integridad de TCB

Estos son los uacutenicos sistemas con certificacioacuten A1 Boeing MLS LAN Gemini

Trusted Network Processor Honeywell SCOMP (United States Government

Department of Defense 1983)

46

25 Sistemas Operativos

Un sistema operativo actuacutea como intermediario entre el usuario de una computadora y el

hardware de la computadora El propoacutesito de un sistema operativo es proporcionar un entorno en

el que un usuario pueda ejecutar programas de manera conveniente y eficiente

Un sistema operativo es un software que administra el hardware de la computadora El

hardware debe proporcionar mecanismos apropiados para garantizar el correcto funcionamiento

del sistema informaacutetico y para evitar que los programas del usuario interfieran con el correcto

funcionamiento del sistema (Carretero Peacuterez de Miguel Anasagasti Garciacutea Carballeira amp Peacuterez

Costoya 2001)

Un sistema operativo es un programa que controla la ejecucioacuten de programas de aplicacioacuten

y actuacutea como una interfaz entre el usuario de una computadora y el hardware de la computadora

Una definicioacuten maacutes comuacuten es que el sistema operativo es el uacutenico programa que se ejecuta

en todo momento en la computadora (generalmente llamado kernel) y todo lo demaacutes son

programas de aplicacioacuten

Un sistema operativo se ocupa de la asignacioacuten de recursos y servicios como memoria

procesadores dispositivos e informacioacuten El sistema operativo incluye los programas para

administrar estos recursos como un controlador de traacutefico un programador un moacutedulo de

administracioacuten de memoria programas de E S y un sistema de archivos (Pawar 2016)

47

251 Windows Sistema operativo de la empresa Microsoft es un conjunto de programas

que administra los recursos de una computadora Windows empieza a trabajar cuando se enciende

o inicializa el equipo para gestionar el hardware empezando desde los niveles maacutes baacutesicos

Es importante conocer que los sistemas operativos funcionan tanto en las computadoras

como en diferentes dispositivos electroacutenicos que usan microprocesadores En este caso Windows

su versioacuten estaacutendar funciona con computadoras Microsoft domina el mercado de los sistemas

operativos debido a su comodidad se puede decir que eacuteste sistema operativo se encuentra

instalado en el 887 de los equipos de coacutemputo que cuentan con acceso a Internet en todo el

mundo

Se pueden mencionar algunas aplicaciones principales (que eacutestas tambieacuten pueden ser

desinstaladas por los usuarios o actualizadas sin que el sistema operativo se dantildee o deje de

funcionar) se encuentran el procesador de texto WordPad el navegador Internet Explorer el

reproductor multimedia Windows Media y el editor de imaacutegenes Paint

La principal novedad que aportoacute Windows desde sus oriacutegenes fue la facilidad para usarlo

y el atractivo visual De hecho su nombre (ldquoventanasrdquo) se debe a la forma en que el sistema

presenta a los usuarios los recursos con los que cuenta su computadora lo que facilita las tareas

cotidianas Windows tambieacuten suele recibir varias criacuteticas por sus problemas de seguridad y por

otros fallos

48

252 Registro de Windows El registro es una base de datos jeraacuterquica que contiene datos

que son criacuteticos para el funcionamiento de Windows y las aplicaciones y servicios que se ejecutan

en Windows Los datos estaacuten estructurados en un formato de aacuterbol Cada nodo en el aacuterbol se llama

clave Cada clave puede contener subclaves y entradas de datos llamadas valores A veces la

presencia de una clave es el uacutenico dato que requiere una aplicacioacuten otras veces una aplicacioacuten

abre una clave y usa los valores asociados con la clave (Microsoft Inc 2019) Una clave puede

tener cualquier nuacutemero de valores y los valores pueden tener cualquier forma El registro es

utilizado por

Autenticacioacuten

Nuacutecleo (Kernel)

Controladores de dispositivos

Servicios

SAM

Las carpetas del sistema se almacenaraacuten en distintas rutas de acceso dependiendo de la

versioacuten de Windows con la que se esteacute trabajando a continuacioacuten cuatro de los cinco archivos

que maacutes interesan a esta investigacioacuten se encuentran en la siguiente ubicacioacuten SystemRoot

System32 Config dentro de las siguientes sub llaves

SAM - HKEY LOCAL MACHINE SAM

SECURITY - HKEY LOCAL MACHINE SECURITY

SOFTWARE - HKEY LOCAL MACHINE SOFTWARE

SYSTEM - HKEY LOCAL MACHINE SYSTEM

49

253 Administrador de cuentas de seguridad El administrador de cuentas de seguridad

(SAM por sus siglas en ingleacutes) es una base de datos en donde se encuentran las cuentas de

seguridad Esto es utilizado por Windows para administrar las cuentas de usuario y contrasentildeas en

el formato hash

Las contrasentildeas nunca se almacenan en formato de texto claro Se almacenan en formato

de hash para protegerlas de los ataques La base de datos SAM se implementa como un archivo de

registro y las obtiene del kernel de Windows y mantiene un bloqueo exclusivo al archivo SAM

esto quiere decir que el archivo tiene cierta medida de seguridad para el almacenamiento de las

contrasentildeas (Hernandez 2013)

No es posible copiar el archivo SAM a otra ubicacioacuten en el caso de los ataques en liacutenea

Dado que el archivo SAM estaacute bloqueado con un bloqueo exclusivo al sistema de archivos no

puede ser copiado o movido mientras se ejecuta Windows El bloqueo no iniciaraacute hasta que la

excepcioacuten de la pantalla azul haya sido inicializada o el sistema operativo haya sido apagado Sin

embargo los archivos en formato hash de contrasentildeas fuera de liacutenea estaacuten disponibles para los

ataques de fuerza bruta el contenido del archivo SAM puede ser copiado o descargado utilizando

diversas teacutecnicas

Un identificador de seguridad (SID) es un valor uacutenico de longitud variable utilizado para

identificar a un usuario Cada cuenta tiene un SID uacutenico emitido por una autoridad como un

controlador de dominio de Windows y almacenado en una base de datos de seguridad Cada vez

50

que un usuario inicia sesioacuten el sistema recupera el SID para ese usuario de la base de datos y lo

coloca en el token de acceso para ese usuario El sistema usa el SID en el token de acceso para

identificar al usuario en todas las interacciones posteriores con la seguridad de Windows Cuando

se ha usado un SID como identificador uacutenico para un usuario o grupo no se puede volver a usar

para identificar a otro usuario o grupo

La seguridad de Windows usa SID en los siguientes elementos de seguridad

En descriptores de seguridad para identificar al propietario de un objeto y grupo

primario

En las entradas de control de acceso para identificar al usuario para quien el acceso

estaacute permitido denegado o auditado

En tokens de acceso para identificar al usuario y los grupos a los que pertenece

2531 Identificador de Seguridad (SID Security Identifier)

S - 1 - 5 - 21 - 3983109318 - 554656936 - 3066752241 - 1000

S - indica que es un string de SID

1 - el nivel de revisioacuten

5 - el identificador de valor de autoridad o authority value no siempre seraacute 5 Entre otros

valores que se pueden encontrar estaacuten los siguientes

51

0 - sin autoridad

1 - autoridad global

2 - autoridad local

3 - autoridad de creador

4 - autoridad no uacutenica

5 - autoridad NT

9 - autoridad de administrador de recursos

21 - 3983109318 - 554656936 - 3066752241 - es el dominio en el que se encuentra el

sistema o el identificador local de la computadora

1000 - ID uacutenico para cada cuenta aquiacute se encuentra el RID (Relative Identifier) Nuacutemero

de longitud variable cualquier grupo o usuario que se cree de manera diferente a la predeterminada

recibiraacute un RID de 1000 o superior En el caso de que el valor sea 500 responde a que este SID

representa la cuenta de un administrador el valor de 500 siempre seraacute el mismo en cualquier cuenta

de administrador a su vez el valor 501 representa el SID de una cuenta Invitado (Guest)

(Hernandez 2013)

254 Autenticacioacuten NTML NTLM (NT LAN Manager) es un protocolo empleado por

muchos productos de Microsoft para realizar la autenticacioacuten desafiacuteorespuesta por lo tanto es el

esquema de autenticacioacuten que por defecto usa Firewall de Microsoft y tambieacuten los productos del

servidor proxy

52

Este software fue desarrollado para afrontar el problema del trabajo con Tecnologiacuteas Java

en un entorno orientado a Microsoft Puesto que no se basa en ninguna especificacioacuten oficial de

protocolo por lo tanto no hay garantiacutea de que funciona correctamente en todos los casos Tambieacuten

ha estado en algunas instalaciones de Windows donde funcionoacute con eacutexito

La Autenticacioacuten NTLM se compone de dos protocolos protocolo de autenticacioacuten NTLM

y protocolo de autenticacioacuten LM Estos protocolos utilizan una metodologiacutea de hash diferente para

almacenar contrasentildeas de los usuarios en la base de datos SAM (Hernandez 2013) (Meneacutendez-

Barzanallana 17)

26 LINUX (ROCKS)

Rocks es una distribucioacuten para cluacutester de Linux de coacutedigo abierto que permite a los usuarios

finales construir de manera maacutes amigable cluacutesteres computacionales y muros de visualizacioacuten en

mosaico Cientos de investigadores de todo el mundo han utilizado Rocks para implementar su

propio cluacutester

Desde mayo de 2000 el grupo Rocks ha abordado las dificultades de implementar cluacutesteres

manejables Encaminados hacia un objetivo crear cluacutesters de manera maacutes sencilla Por sencilla

significa faacutecil de implementar administrar actualizar y escalar Este objetivo impulsa a los

creadores de esta herramienta a ayudar a entregar el poder computacional de los cluacutesteres a una

amplia gama de usuarios cientiacuteficos Estaacute claro que poner a disposicioacuten de una amplia gama de

53

cientiacuteficos plataformas de computacioacuten paralelas estables y manejables ayudaraacute enormemente a

mejorar el estado del arte en herramientas paralelas (Rocksclusters 2010)

261 Escritorio De todos los escritorios disponibles para el sistema operativo Linux

GNOME ha logrado convertirse en el maacutes eficiente estable y confiable sin dejar de ser sencillo

de usar De hecho la mayoriacutea de los usuarios independientemente de su experiencia pueden

trabajar con GNOME casi sin esfuerzo

Los usuarios que son nuevos tanto en Linux como en GNOME hariacutean mejor en conocer

los entresijos del escritorio que hacen que Linux no solo sea faacutecil sino tambieacuten divertido

Un entorno de escritorio agrupa programas que trabajan juntos para formar un espacio de

trabajo informaacutetico cohesivo unificado transparente e interactivo para los usuarios O para

decirlo de manera maacutes simple el entorno de escritorio es la interfaz de usuario para el sistema

operativo En el caso de GNOME ese sistema operativo es Linux Sin un entorno de escritorio su

uacutenica alternativa es una sesioacuten de Shell (liacutenea de comandos) basada en texto (Wallen 2019)

262 Paquete de Oficina Una suite ofimaacutetica es una coleccioacuten de software creada por el

mismo proveedor y disentildeada para ser utilizada para tareas rutinarias dentro de una organizacioacuten

Por lo general una suite ofimaacutetica incluye aplicaciones como procesamiento de texto hojas de

caacutelculo presentacioacuten correo electroacutenico toma de notas base de datos colaboracioacuten y otros tipos

de software relacionados En la mayoriacutea de los casos cada aplicacioacuten en la suite ofimaacutetica se puede

instalar por separado y todas las aplicaciones dentro de la suite admiten la interoperabilidad entre

54

siacute Microsoft Office Suite Lotus Live Notes y LibreOffice son todas suites de oficina de uso

comuacuten

263 Organizador de archivos Es una funcioacuten avanzada disentildeada para agrupar y

renombrar archivos usando sus atributos del sistema o meta atributos

Cada archivo tiene atributos del sistema como la fecha (Acceso Creado y Modificado) el

tipo de archivo (definido por extensioacuten) y asociado con la aplicacioacuten registrada de ese tipo de

archivo Estos atributos se pueden usar para generar un nuevo nombre de archivo o carpeta (grupo)

para cada archivo con el mismo atributo Ademaacutes de los atributos del sistema algunos archivos

en su mayoriacutea medios o imaacutegenes pueden contener metacampos como el nombre del artista el

tiacutetulo el nombre del aacutelbum y otros El Organizador de archivos tambieacuten usa estos metacampos

para agrupar archivos en una carpeta con el mismo atributo Por lo tanto el organizador de archivos

opera reglas de organizacioacuten de archivos que definen la jerarquiacutea de agrupacioacuten de carpetas y las

reglas de cambio de nombre de archivos

Asiacute como el conocido ldquoexplorador de Windowsrdquo Linux integra un organizador de archivos

y carpetas llamado NAUTILUS para realizar tareas de manejo de archivos como mover copiar

renombrar crear carpetas y de esta manera administrar nuestros dispositivos de almacenamiento

55

27 Agrupamiento (Cluacutester) de Computadoras

El agrupamiento (cluacutester) de computadoras estaacute conformado por una coleccioacuten de

computadoras autoacutenomas interconectadas trabajando unidas como un solo recurso de computacioacuten

integrado El concepto de agrupamiento de computadoras nacioacute cuando los pioneros de la

supercomputacioacuten intentaban difundir diferentes procesos entre varias computadoras para luego

poder recoger los resultados que dichos procesos debiacutean producir Con un hardware maacutes barato y

faacutecil de conseguir se pudo perfilar que podriacutean conseguirse resultados muy parecidos a los

obtenidos con aquellas maacutequinas mucho maacutes costosas (Chirinov 2003)

Un agrupamiento de computadoras se puede definir como el trabajo realizado por dos o

maacutes computadoras que en conjunto se encargan de proveer una determinada solucioacuten Tiene como

finalidad agrupar el poder de coacutemputo de los nodos implicados para proporcionar una mayor

escalabilidad disponibilidad y fiabilidad (Branch Bedoya amp Mesa Muacutenera 2008)

La escalabilidad es la capacidad de un equipo para hacer frente a voluacutemenes de trabajo

cada vez mayores sin por ello dejar de prestar un nivel de rendimiento aceptable

La disponibilidad y la fiabilidad se encuentran bastante relacionadas aunque difieren

ligeramente en algunos aspectos La disponibilidad es la calidad de estar presente y listo para su

uso mientras que la fiabilidad es la probabilidad de un correcto funcionamiento

56

Entre los tipos de agrupamiento maacutes comunes se pueden encontrar de alta disponibilidad

(ambiente a prueba de fallas) coacutemputo de alto desempentildeo (los procesos o las tareas dadas se

presentan como un solo sistema virtual) y escalamiento horizontal (se utiliza para proporcionar

una sola interfaz a un conjunto de recursos que pueden aumentar o disminuir arbitrariamente su

tamantildeo en un cierto periodo de tiempo) (Gonzaacutelez Ramiacuterez amp Rodriacuteguez Saacutenchez 2008)

271 Beowulf Es una clase de computadora masivamente paralela de altas prestaciones

principalmente construida a base de agrupamiento de componentes hardware estaacutendar (Llorens amp

Pentildea 2002) Consta de un conjunto de nodos minimalistas unidos por un medio de

comunicaciones econoacutemico Esto quiere decir que tienen lo miacutenimo para ejecutar su funcioacuten de

hecho los nodos por siacute solos no son capaces de ejecutar siquiera un sistema operativo (Nievas

Pino amp Arroyo) Se puede ver como una supercomputadora paralela construida con hardware

comercial de faacutecil adquisicioacuten que posee como sistema operativo Linux Los cluacutesters Beowulf son

extremadamente poderosos pero no son para todas las personas Su principal desventaja es que

requieren software disentildeado para poder aprovechar los recursos del cluacutester (Lizaacuterraga 2002)

272 Mosix Seguacuten Peacuterez (2001) la arquitectura Mosix estaacute basada en la misma ideologiacutea

de la arquitectura Beowulf Se basa en un conjunto de parches aplicados al nuacutecleo (kernel) de Linux

y que asignan a todo el grupo de nodos un espacio de direcciones y de procesos comuacuten gracias al

cual los procesos migran de uno a otro con el fin de equilibrar favorablemente la carga del sistema

global Es una herramienta disentildeada para realizar balanceo de carga en el agrupamiento de forma

totalmente transparente de manera tal que los nodos se comportan como una sola maacutequina y asiacute

incrementar el aprovechamiento de cada uno de los nodos (Chaacutevez y otros 1999) La principal

57

ventaja de Mosix frente a Beowulf se basa precisamente en esto Mosix da mejores respuestas que

Beowulf frente a la caiacuteda o insercioacuten de nodos A parte de esto Mosix permite un cambio constante

de aplicacioacuten o incluso el correr aplicaciones independientes de forma simultaacutenea

273 OpenMosix OpenMosix es una extensioacuten del proyecto Mosix Seguacuten Chirinov

(2003) la idea de este modelo es que la distribucioacuten de tareas en el cluacutester la determina OpenMosix

de forma dinaacutemica conforme se van creando tareas Cuando un nodo estaacute demasiado cargado las

tareas que se estaacuten ejecutando pueden migrar a cualquier otro nodo del cluacutester Asiacute desde que se

ejecuta una tarea hasta que eacutesta muere podraacute migrar de un nodo a otro sin que el proceso sufra

mayores cambios

Ademaacutes OpenMosix funciona a nivel de kernel por tanto puede conseguir toda la

informacioacuten que necesite para decidir que tanto estaacute cargado un sistema y queacute pasos se deben

seguir para aumentar el rendimiento ademaacutes puede realizar maacutes funciones que cualquier

aplicacioacuten a nivel de usuario

Despueacutes de elegir el tipo de cluacutester a utilizar se procede a elegir los elementos baacutesicos que

se emplearaacuten para implementar el cluacutester capacidad de procesamiento memoria espacio del disco

de cada nodo asiacute como tambieacuten el ancho de banda de la comunicacioacuten entre los nodos Se deberaacute

decidir cuaacuteles son importantes basaacutendose en la variedad de aplicaciones que se piensen ejecutar

en el cluacutester y de la cantidad de dinero que se disponga para construirlo

58

Bajo estos mismos paraacutemetros se debe escoger tambieacuten el tipo de red que interconectaraacute

los nodos (Turner 2004)

Luego se debe escoger el sistema operativo a utilizar Esta eleccioacuten dependeraacute mucho de

la maacutequina que se escoja Linux es siempre una opcioacuten en cualquier maacutequina y es la eleccioacuten maacutes

comuacuten Muchas de las herramientas necesarias para la implementacioacuten de un cluacutester han sido

desarrolladas bajo Linux Pero existen cluacutesters corriendo bajo Windows NT UNIX Solaris y AIX

59

Capiacutetulo 3 Implementacioacuten de Cluacutester

31 Requisitos previos

Antes de iniciar la instalacioacuten del FrontEnd es necesario asegurarse que las conexiones de

red de los equipos junto con la configuracioacuten de la BIOS de cada uno sean las correctas

311 Conexioacuten de los equipos y acceso a la red

Un cluacutester de alto desempentildeo funciona como un uacutenico equipo el cuaacutel comparte los recursos

de los nodos esclavos con el nodo maestro para ello es esencial la existencia de una red interna de

alta velocidad por medio de la cual se realice la comunicacioacuten entre el nodo maestro y los nodos

esclavos como se muestra en la Figura 31 El nodo maestro necesitaraacute 2 tarjetas de red de alta

Figura 31 Esquema tiacutepico de configuracioacuten de un cluacutester (Fuente Elaboracioacuten propia)

60

velocidad una para la comunicacioacuten interna y otra para la comunicacioacuten con redes externas El

sistema operativo Rocks asigna automaacuteticamente la interface ldquoeth0rdquo a la red interna del cluacutester y

la interface ldquoeth1rdquo a la red externa En caso de que Rocks sea incapaz de determinar cuaacutel es la red

externa debido a la falta de conexioacuten a internet estas podriacutean ser asignadas de manera incorrecta

por tal motivo se sugiere asegurar el nombre de cada una de las interfaces

Dado que Rocks no permite volverlas a asignar una vez finalizada la instalacioacuten es

necesario volver a reinstalarlo para poder solucionar este inconveniente

312 Configuracioacuten de la BIOS Para evitar problemas durante la instalacioacuten conviene

configurar correctamente la Bios

3121 ATAIDE Mode Algunos sistemas operativos puede que no sean capaces de

reconocer el controlador del disco duro como es en el caso de esta distribucioacuten de Rocks usada

Para evitar complicaciones de tener que antildeadir el controlador a mano lo mejor es habilitar el modo

ldquoLegacyrdquo de controlador de disco duro

61

Para ello se accede a la Bios pulsando F2 al encender el equipo se situacutea en la pestantildea

ldquoAdvancedrdquo y se selecciona ldquoDrive Configurationrdquo como se muestra en la Figura 32

Figura 32 Imagen del Bios del equipo en la opcioacuten ldquodrive configurationrdquo (Fuente Elaboracioacuten propia)

Figura 33 Bios ATAIDE Legacy Mode (Fuente Elaboracioacuten propia)

62

Dentro del menuacute se tiene que seleccionar el Modo ldquoLegacyrdquo en la opcioacuten ldquoATAIDE

Moderdquo como se muestra en la Figura 33 y para salir se guardan los cambios con F10

3122 PXE Al momento de instalar un nodo puede ocurrir falla al arrancar y aparecer

bootsplash (Reboot and Select proper device) Para evitarlo es necesario habilitar la opcioacuten de

PXE para que tome los archivos de instalacioacuten del nodo maestro a traveacutes de la red interna

En la Bios se selecciona la pestantildea ldquoBootrdquo y dentro de ese mismo menuacute se deshabilita

ldquoSilent bootrdquo y se habilita la opcioacuten de ldquoPXE boot to lanrdquo como se muestra en la Figura 34

Finalmente hay que verificar que en la secuencia de arranque (Figura 35) como primer

dispositivo sea desde red para que de esta manera inicie desde el PXE

Figura 34 Bios Boot PXE (Fuente Elaboracioacuten propia)

63

Se guardan los cambios antes de salir

32 Instalacioacuten de Sistema Operativo Rocks

Una vez configurados los equipos se enciende el equipo que seraacute el nodo maestro

(FrontEnd) en el cuaacutel previamente se ha modificado la secuencia de inicio del boot desde la Bios

de modo que al insertar el CD de Rocks eacuteste procederaacute a iniciar la instalacioacuten con la siguiente

pantalla que se muestra a continuacioacuten

Figura 35 Bios Boot device prioriry (Fuente Elaboracioacuten propia)

64

Para iniciar la instalacioacuten uacutenicamente se selecciona la opcioacuten ldquoInstall CentOS 7rdquo como se

muestra en la Figura 36 dando asiacute comienzo al proceso de instalacioacuten Tras finalizar un proceso

de carga en memoria Rocks mostraraacute un formulario en entorno graacutefico mediante el cual

procederemos a configurar el FrontEnd

Esta primera pantalla se muestra coacutemo se desea realizar la instalacioacuten puede realizarse

por medio de la descarga del sistema operativo (se requiere internet) En este caso como se muestra

en la Figura 37 dado que previamente se descargoacute el DVD completo se seleccionoacute ldquoCDDVD

based rollsrdquo

Figura 36 Pantalla de Inicio de instalacioacuten de Rocks (Fuente Elaboracioacuten propia)

65

A continuacioacuten Figura 38 se selecciona de la lista de Rolls aquellos que se desean instalar

Figura 37 Pantalla de seleccioacuten de Rolls (Fuente Elaboracioacuten propia)

Figura 38 Listado de opciones de rolls para instalar (Fuente Elaboracioacuten propia)

66

Tras presionar el botoacuten ldquoSubmitrdquo la siguiente pantalla (Figura 39) muestra formulario en

el que hay que indicar la informacioacuten baacutesica del cluacutester entre las cuales aparecen

Fully-Qualified Host Name Nombre con el que se conoceraacute en la red externa el cluacutester

Cluster Name Nombre utilizado para ser identificado dentro de las herramientas del cluacutester

Certificate Organization Locality State and Country Organizacioacuten a la que pertenece el

cluacutester la localidad el estado y la ciudad

Contact URL and LattitudeLongitude Contacto direccioacuten web y posicioacuten GPS

Figura 39 Informacioacuten baacutesica del cluacutester a instalar (Fuente Elaboracioacuten propia)

67

Una vez que se ingresa la informacioacuten al cluacutester se presiona el botoacuten ldquoListordquo y

posteriormente se podraacute cambiar la configuracioacuten baacutesica de la red interna del cluacutester En este caso

Figura 310 se dejoacute el valor por defecto una IP de clase B (1011116)

El siguiente paso es la configuracioacuten de la red externa (para tener acceso a internet) En

este punto se introducen los datos de la red externa a la que se encuentra conectado el nodo

maestro como se muestra en la Figura 311

Figura 310 Configuracioacuten Ethernet de la red privada (Fuente Elaboracioacuten propia)

Figura 311 Configuracioacuten Ethernet de la red puacuteblica (Fuente Elaboracioacuten propia)

68

Para terminar de configurar la red externa como se muestra en la Figura 312 se ingresa la

direccioacuten IP del Gateway y los DNS (Servidor de nombre de dominio) que va a usar para el acceso

a internet

Se continuacutea con el resto del formulario donde se introduce la contrasentildea para el usuario

root tal y como se muestran en la Figura 313

Figura 312 Configuracioacuten de DNS y Gateway (Fuente Elaboracioacuten propia)

Figura 313 Ingresar contrasentildea de usuario root (Fuente Elaboracioacuten propia)

69

Paso siguiente se procede a seleccionar la zona horaria como se muestra en la Figura 314

donde se encuentra ubicado el cluacutester asiacute como un servidor de donde podraacute obtener la zona horaria

automaacuteticamente en este caso se dejoacute el valor por default

En el formulario de la Figura 315 se selecciona la forma de particionar el disco duro

(automaacutetica manual) una vez seleccionado daraacute comienzo al proceso de instalacioacuten de manera

Figura 314 Configuracioacuten horaria (Fuente Elaboracioacuten propia)

Figura 315 Particiones del disco duro (Fuente Elaboracioacuten propia)

70

desatendida Cuando ha concluido la instalacioacuten el equipo se reiniciaraacute y se requeriraacute iniciar con

el usuario root y la contrasentildea establecida previamente

321 Configuracioacuten del teclado Debido a que el teclado por defecto estaacute en idioma

ingleacutes podriacutea provocar problemas al momento de escribir la contrasentildea u otros comandos

Seguacuten las pruebas realizadas aunque se cambie la configuracioacuten del teclado desde el menuacute

de preferencias uacutenicamente se mantiene dentro de la sesioacuten desde la que se ha cambiado dicha

opcioacuten (lo cual implica que la contrasentildea de usuario hay que introducirla seguacuten la distribucioacuten

inglesa)

33 Instalacioacuten de los nodos

Previo a la instalacioacuten de los nodos esclavos cada uno de los equipos fueron configurados

desde la Bios para que arranquen desde la red (seccioacuten 3122) Para ir antildeadiendo los nodos solo

se tiene que introducir el siguiente comando desde nuestro FrontEnd

$insert-ethers

A continuacioacuten como se muestra en la Figura 316 apareceraacute una ventana en la pantalla

en la cual se seleccionaraacute la opcioacuten ldquoComputerdquo

71

Una vez realizado este paso se procede a encender los equipos que funcionaraacuten como

nodos esclavos uno a uno

Se sugiere esperar a que cada nuevo equipo encendido esteacute marcado con un asterisco antes

de proceder a encender el siguiente como se muestra en la Figura 317 De esta manera se asegura

que cada nuevo nodo antildeadido posea el nombre y numeracioacuten deseada

Figura 316 Pantalla para ingresar nodos (Fuente Elaboracioacuten propia)

Figura 317 Indicador de insercioacuten de nuevos nodos (Fuente Elaboracioacuten propia)

72

Puede darse el caso de que un nodo no sea detectado automaacuteticamente eso indica que se

ha omitido alguacuten paso o parte de la configuracioacuten realizada hasta el momento es incorrecta En ese

caso comprobar lo siguiente

Que el nodo esclavo este correctamente conectado a la red interna

Que el FrontEnd (nodo maestro) tenga correctamente configurada la red interna y externa

Que el PXE esteacute habilitado en la Bios del nodo esclavo

331 Administracioacuten de nodos Algunos de los comandos maacutes uacutetiles para para la gestioacuten

de los nodos son los siguientes

Eliminar un nodo de la lista

Reinstalar un nodo

Listar los nodos ya instalados

Acceder a un nodo

$rocks remove host nombre_nodo

$rocks remove host nombre_nodo

$rocks set host boot nombre_nodo action=install

$rocks set host boot nombre_nodo action=install

$rocks list host

$rocks list host

$ssh nombre_nodo

$ssh nombre_nodo

73

Ejecutar un comando de manera remota a un nodo

332 Creacioacuten de cuentas de usuario Para agregar a un usuario hay que realizar los

siguientes pasos

1 Creacioacuten de la cuenta

$useradd nombre_usuario

2 Asignacioacuten de una contrasentildea

$passwd nombre_usuario

3 Sincronizacioacuten de la cuenta de usuario con el resto de nodos

$rocks-user-sync

333 Configuracioacuten del directorio compartido El directorio share es compartido por el

FrontEnd y el resto de nodos se localiza dentro del FrontEnd en la carpeta exports siendo la

carpeta share un enlace simboacutelico a esta uacuteltima

Al principio es posible que no se sincronicen correctamente los archivos introducidos en el

directorio debido a que la carpeta inicialmente estaacute vaciacutea por lo que para solucionar este

inconveniente puede usarse el comando siguiente para reiniciar dicho servicio

$ssh nombre_nodo lsquocomandorsquo

$ssh nombre_nodo lsquocomandorsquo

$cd

$export fs ndashrv

service nfs restart

$cd

$export fs ndashrv

service nfs restart

74

34 Operaciones baacutesicas de Rocks

Comandos y aplicaciones esenciales para el manejo del cluacutester

Ver que rolls estaacuten instalados

$rocks list roll

Visualizar el estado del sistema Figura 318

$qstat ndashf

Probar el sistema de colas para distribuir tareas a los nodos

Para ello se prueba que el SGE del cluacutester funcione enviaacutendole una serie de trabajos

mediante el comando qsub

En primer lugar se crea un fichero (pruebapl) que tenga permisos de ejecucioacuten con el

siguiente contenido

Figura 318 Comando qstat ndashf (Fuente Elaboracioacuten propia)

75

usrbinperl

for(my $i=0$ilt30$i++) sleep(2) print okn

Y se ejecuta con el siguiente comando

$ for ((i=1ilt=10i+=1)) do qsub pruebapl done

Al ejecutarse se puede comprobar que los trabajos se han mandado Figura 319

Y al realizar de nuevo un ldquoqstat ndashfrdquo Figura 320 se observa coacutemo se van realizando

Figura 319 Enviacuteo de trabajos por medio del comando qsub (Fuente Elaboracioacuten propia)

Figura 320 Estado de los trabajos pendientes mostrados por qstat ndashf (Fuente Elaboracioacuten propia)

76

Para ver la carga de trabajo en el cluacutester de manera global y de forma graacutefica se tiene que

ingresar en un navegador web en la siguiente direccioacuten httplocalhostganglia apareceraacute la

Figura 321

Figura 321 Visualizacioacuten de la distribucioacuten de cargas en el cluacutester usando la herramienta Ganglia (Fuente Elaboracioacuten propia)

77

Capiacutetulo 4 Metodologiacutea y Resultados

Una vez finalizada la instalacioacuten y puesta en operacioacuten del equipo se analizaron diferentes

metodologiacuteas de trabajo lo que implicoacute un trabajo arduo debido a que existen complicaciones

cuando se buscan temas relacionados a vulnerar sistemas operativos La realizacioacuten de este

proyecto estaacute basado en la metodologiacutea de Joshua Picolet ldquoCracking Methodologyrdquo (Picolet

2017)

41 Obtener Archivo hash

Se pueden vulnerar contrasentildeas de Windows de diferentes maneras Una de ellas es

mediante el acceso al archivo del Administrador de cuentas de seguridad (SAM) el cual se detalla

en el apartado 253 a traveacutes de la obtencioacuten de las contrasentildeas del sistema en su forma hash por

medio de herramientas diferentes Alternativamente las contrasentildeas se pueden leer desde la

memoria lo que tiene el beneficio adicional de recuperar las contrasentildeas en texto plano y evitar el

requisito de descifrado Para comprender los formatos que se observan cuando se descarguen

hashes del sistema de Windows se requiere una breve descripcioacuten de los diferentes formatos de

almacenamiento

Originalmente las contrasentildeas de Windows de menos de 15 caracteres se almacenaban en

el formato hash de Lan Manager (LM) Algunos sistemas operativos como Windows 2000 XP y

Server 2003 continuacutean usando estos hashes a menos que esteacuten deshabilitados por el usuario

Ocasionalmente un sistema operativo como Windows Vista puede almacenar el hash LM para la

compatibilidad con otros sistemas Seguacuten analistas incluye varias vulnerabilidades como dividir

78

la contrasentildea en dos bloques y permitir que cada uno se descifre de forma independiente Mediante

el uso de tablas Rainbow es trivial descifrar una contrasentildea almacenada en un hash LM

independientemente de la complejidad Este hash se almacena con la misma contrasentildea calculada

en el formato de hash NT como el que se muestra en el siguiente ejemplo

Ejemplo de un hash NTLM con el componente LM y NT

Administrator500611D6F6E763B902934544489FCC9192BB71ED1E7F2B60ED5A2

EDD28379D45C91

Los sistemas operativos Windows maacutes recientes como el Windows 8 y 10 usan el hash NT

En teacuterminos simples no hay una debilidad significativa en este hash que lo diferencie de cualquier

otra funcioacuten hash criptograacutefica Se requieren meacutetodos de descifrado como lo es la fuerza bruta o

ataque de diccionario para recuperar la contrasentildea si uacutenicamente se almacena en el formato NT

Ejemplo de un hash NTLM uacutenicamente con el componente NT (como se ve en los sistemas

Windows mas recientes

Administrator500NOPASSWORDEC054D40119570A4663

4350291AF0F72

Es importante sentildealar que la cadena NO PASSWORD es variable seguacuten la herramienta

que se utilice Otras pueden presentar esta informacioacuten como ceros rellenos o comuacutenmente puede

79

ver la cadena ldquoAAD3B435B51404EEAAD3B435B51404EErdquo en lugar de ninguna contrasentildea

Esto significa que el hash LM estaacute vaciacuteo y no estaacute almacenado

El archivo hash se encuentran en el directorio ldquoWindows System32 configrdquo y se

necesitan ambos archivos SAM y SYSTEM Ademaacutes tambieacuten se encuentran en el archivo de

registro HKEY_LOCAL_MACHINE SAM al que no se puede acceder durante el tiempo de

ejecucioacuten Finalmente las copias de seguridad se pueden encontrar a menudo en ldquoWindows

Repairrdquo (Peleus 2019)

Para extraer el archivo hash de un sistema operativo con un nivel de seguridad C1 existen

diferentes meacutetodos en esta ocasioacuten se procederaacute a iniciar el equipo objetivo con una distribucioacuten

de Linux desde una memoria USB como se muestra en la figura 41 para de esta manera ingresar

al directorio CWINDOWSSystem32Config directorio de ubicacioacuten de los archivos SAM y

SYSTEM que son los necesarios para obtener el archivo hash (Caballero 2018)

Figura 41 Arranque con LiveUSB KaliLinux (Fuente Elaboracioacuten propia)

80

42 Dar Formato al Hash

En este punto es donde se tiene que identificar el algoritmo con el que fueron encriptados

los archivos SAM y SYSTEM que se han obtenido en el punto anterior con la finalidad de

seleccionar el tratamiento que se les daraacute El algoritmo de encriptacioacuten del archivo SAM de

Windows 10 es NTLM y ademaacutes estaacute almacenado en un formato binario (ByteBleeder 2017) por

lo que fue necesario instalar la herramienta con licencia GNU samdump2 para obtener la syskey y

de esta manera poder extraer los hash desde el archivo SAM de Windows

En la figura 42 se han obtenido los hashes del archivo SAM donde se puede observar que

los usuarios Administrador e Invitado estaacuten deshabilitados ademaacutes de que existen tres cuentas de

usuario activas las cuales son Gad prueba y usuarioprueba cada una con su contrasentildea cifrada

en formato NTLM a la derecha del nombre de usuario la cuenta usuarioprueba fue a la que se le

realizoacute el anaacutelisis que se detalla posteriormente

43 Evaluar la fuerza del Hash

En criptografiacutea se dice que un algoritmo criptograacutefico se rompe si por alguacuten meacutetodo se

consigue reducir su fortaleza es decir reducir por ejemplo su entropiacutea de los 2256 bits teoacutericos a

Figura 42 Resultado de la ejecucioacuten de la herramienta samdump2 (Fuente Elaboracioacuten propia)

81

tan soacutelo 2255 por ejemplo El hecho de que se encuentre una colisioacuten no implica necesariamente

que un algoritmo se haya roto pues podriacutea haber sido realizado mediante fuerza bruta pero puede

ser una causa

Un ataque de colisioacuten significa que encuentro dos entradas diferentes que producen el

mismo resultado de un hash particular Este es generalmente el tipo de ataque maacutes faacutecil Es el tipo

de ataque que se conoce desde hace varios antildeos contra MD5

Dado que una utilidad importante de las funciones hash estaacute en las firmas digitales

encontrar colisiones puede facilitar falsificar firmas digitales Es decir dos mensajes distintos que

tengan un mismo resumen tienen ademaacutes la misma firma y un atacante puede reemplazar un

mensaje por el otro Un ejemplo de este ataque fue demostrado en 2008 por un grupo de

investigadores en Aacutemsterdam los cuales falsificaron un certificado raiacutez mediante el uso de un

ataque de colisioacuten contra el algoritmo MD5 (Preukschat 2015)

Un ataque previo a la imagen generalmente es mucho maacutes difiacutecil es encontrar otra entrada

que produzca el mismo resultado que un hash que ya se conoce

Para tratar de aclarar la diferencia aquiacute en un ataque de colisioacuten encuentro dos entradas A

y B que producen el mismo resultado En un ataque de preimagen comienzo a partir de alguacuten

resultado conocido X y encuentro una entrada que produciraacute X como resultado (Coffin 2015)

82

Para realizar esta evaluacioacuten se tomoacute como base la tabla del apeacutendice Hash craking

benchmark (Picolet 2017) el objetivo es observar el comportamiento y velocidad del Hash

mencionado cuando fue sometido a pruebas de criptoanaacutelisis Si se trata de un Hash lento se deberaacute

ser maacutes selectivo en queacute tipos de diccionarios y meacutetodos de criptoanaacutelisis se le debe aplicar Si es

un Hash raacutepido se puede ser maacutes libre con la estrategia de criptoanaacutelisis Este estudio busca

realizar una prueba de criptoanaacutelisis mostrando las diferencias entre el poder de procesamiento de

un cluacutester de 17 nodos contra una computadora personal por lo que no necesariamente se

implementaraacute el meacutetodo oacuteptimo para la realizacioacuten del criptoanaacutelisis

44 Calcular la capacidad del equipo

Con la informacioacuten de la evaluacioacuten de la fuerza del Hash obtenida en el apartado anterior en

este apartado se tiene que establecer la capacidad de la plataforma o plataformas que realizaraacuten

el criptoanaacutelisis

Para conocer la capacidad de procesamiento del cluacutester de alto rendimiento se utilizoacute la

herramienta Linpack Benchmark HPL es una implementacioacuten portaacutetil del Benchmark de alto

rendimiento LINPACK para equipos de coacutemputo distribuido Actualmente se utiliza para obtener

varios resultados en la lista actual de Top500 de HP cluacutesters (Dongarra 2010)

El Linpack Benchmark (HPL del Ingleacutes High-Performance Linpack Bench-mark) es un

software que resuelve un sistema lineal aleatorio de doble precisioacuten aritmeacutetica (64 bits) en equipos

de memoria distribuida El rendimiento muestra el nuacutemero de operaciones de punto flotante por

segundo logradas por el sistema (Petitet Whaley Dongarra amp Cleary 2008)

83

El HPL fue desarrollado en el Argone National Laboratory por Jack Don-garra en 1976 y

es uno de los maacutes usados en sistemas cientiacuteficos y de ingenieriacutea para el caacutelculo de prestaciones

Las principales caracteriacutesticas del algoritmo utilizado por el HPL son

Distribucioacuten ciacuteclica de datos de bloques de dos dimensiones

Variante derecha de la factorizacioacuten LU con pivoteo parcial (Teacutecnica de pivoteo

Dicta que el elemento pivote que debe escogerse es el mayor absolutamente de cada

columna)

Factorizacioacuten recursiva con pivoteo y reenviacuteo de columna

Distintas topologiacuteas virtuales de reenviacuteos

Algoritmo de reduccioacuten de reenviacuteo para ancho de banda (Castelloacute Gimeno 2014)

La resolucioacuten del sistema de ecuaciones se realiza del siguiente modo

1 Se crea un sistema de ecuaciones

(1)

119860119909 = 119887

(2)

119860 isin 119877119899119909119899

(3)

119909 119887 isin 119877119899

84

HPL calcula que la solucioacuten para un sistema de ecuaciones lineales se puede generalizar

como 119860119909 = 119887 donde 119860 es una matriz 119873 119909 119873 cuyos valores se generan aleatoriamente

119909 119910 119887 son vectores de tamantildeo 119873 Como se muestra en la Figura 43

2 Primero se calcula la factorizacioacuten 119871119880 con pivoteo parcial de los coeficientes 119899 y 119899 + 1

de la matriz [119860 119887]

(4)

119875119903[119860 119887] = [[119871119880] 119910]

(5)

119875119903 119871 119880 isin 119877119899119909119899

(6)

119910 isin 119877119899

El primer paso es la factorizacioacuten de la matriz 119860 en una matriz triangular superior 119880

y una matriz triangular inferior 119871 tal que 119860 = 119871119880 La factorizacioacuten se usa para calcular

el vector solucioacuten 119909

3 Una vez el pivoteo (representado por la permutacioacuten de la matriz 119875119903) y la factorizacioacuten

inferior se aplican sobre 119887 la solucioacuten se obtiene en un paso resolviendo el sistema

superior triangular

Figura 43 Sistema de Ecuaciones tipo 119860119909 = 119887 (Fuente Elaboracioacuten propia)

85

(7)

119880119909 = 119910

La matriz triangular inferior izquierda y el conjunto de pivotes no se devuelven en el

resultado Para la estabilidad numeacuterica el algoritmo de factorizacioacuten utiliza un pivote parcial de

fila

La implementacioacuten paralela de Linpack divide la matriz 119860 119873 119909 119873 en una cuadriacutecula de

procesos 119875 119909 119876 bidimensional y luego la divide en subgrupos de mosaicos 119873119861 119909 119873119861 (Petitet

Whaley Dongarra amp Cleary 2008)

Utilizando la herramienta HPL en esta investigacioacuten se obtuvieron los siguientes

resultados

La prueba abordoacute el ajuste de 119873 y la eficiencia obtenida en comparacioacuten con el rendimiento

maacuteximo Se determinoacute un valor para 119873 = 800000 aleatoriamente para ejecutar HPL en todo el

cluacutester Sin embargo el tiempo fue excesivo por lo tanto se determinoacute que este tamantildeo del

problema fue demasiado grande para el cluacutester Al realizar otros experimentos con valores maacutes

pequentildeos de 119873 se obtuvieron mejores resultados de rendimiento La Tabla 41 muestra el

rendimiento de HPL en GFlops para 119873 = 300000 400000 y 500000 Como se puede observar

en la Tabla 41 se obtuvo el mejor resultado de rendimiento 850 GFlops para 119873 = 500000 para

valores mayores de 119873 la distribucioacuten de cargas del cluacutester empieza a sobrepasar su capacidad como

se muestra en la Figura 44 y la vez su rendimiento disminuye Esto ocurre porque la cantidad de

memoria utilizada con las memorias intermedias de comunicacioacuten MPI es mayor de lo esperado

Por lo tanto es necesario dejar maacutes del 20 de la memoria para el sistema (Petitet Whaley

86

Dongarra amp Cleary 2008) Tambieacuten se realizaron pruebas usando solo un nodo de coacutemputo y el

rendimiento fue de 34 GFlops para 119873 = 20000

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia)

Analizando la eficiencia obtenida para la ejecucioacuten de un solo nodo cuando 119873 = 20000

se obtuvo el 823 del rendimiento maacuteximo (el rendimiento maacuteximo para un solo nodo es 477

Gflops) Para todo el cluacutester el rendimiento maacuteximo seriacutea 119879119898119886119909 = 477 119909 17 =

8109 119866119891119897119900119901119904 aproximadamente

Figura 44 Distribucioacuten de cargas del cluacutester

0

500

1000

300000 400000 500000

Gflops

Gflops

87

La Figura 44 titulada ldquoDistribucioacuten de cargas del cluacutesterrdquo muestra la imagen de la

herramienta Ganglia de manera graacutefica a traveacutes de cuadros que variacutean de color dependiendo de la

carga que tenga cada uno de los nodos al momento de implementar la herramienta HPL De manera

inicial indica que el cluacutester tiene un total de 17 equipos de 4 cores cada uno eso da un total de 68

cores trabajando sin equipos inactivos Muestra tambieacuten una sobrecarga en el cluacutester y un

porcentaje promedio de 100 de uso en la uacuteltima hora

45 Establecer Estrategia

Esto significa uacutenicamente que en este apartado se realizaraacute una guiacutea baacutesica para procesar

los hashes obtenidos sin perder de vista que cada escenario a criptoanalizar es uacutenico en funcioacuten

de las circunstancias externas Como ya se ha mencionado anteriormente esta estrategia de

criptoanaacutelisis se ha planteado implementar dos meacutetodos los cuales son Fuerza Bruta y ataque de

diccionario sin importar si son o no los oacuteptimos debido a que se realizaraacute una comparativa de

capacidad de procesamiento

451 Fuerza Bruta Una vez que se han intentado varios meacutetodos y han fallado se puede

iniciar un ataque de fuerza bruta estaacutendar poniendo especial atencioacuten en la cantidad de siacutembolos

del alfabeto que puede usar el equipo a analizar Por encima de 8 caracteres esto generalmente no

tiene sentido debido a limitaciones de hardware y entropiacutea (complejidad de la contrasentildea) Una

contrasentildea de Windows seguacuten Microsoft (Microsoft Inc 2019) una contrasentildea de Windows debe

estaacute formada por

88

26 Caracteres mayuacutesculas de la ldquoArdquo a la ldquoZrdquo

26 Caracteres minuacutesculas de la ldquoardquo a la ldquozrdquo

10 Diacutegitos de base 10 (0 a 9)

32 Caracteres especiales (~$^amp_-+=|()[]ltgt)

94 Caracteres alfanumeacutericos en total

4511 Cantidad de combinaciones posibles Si se usa una clave numeacuterica (nuacutemeros del 0

al 9) existen 10 posibilidades de 4 diacutegitos de longitud que es la extensioacuten por defecto de los

teleacutefonos celulares Para 4 diacutegitos las combinaciones posibles seriacutean 10 mil 104 = 10000

(Labaca Castro 2014)

Por otro lado si tomamos un alfabeto de 26 letras mayuacutesculas y 26 minuacutesculas 10 nuacutemeros

y 10 caracteres especiales en total tenemos 72 diferentes posibilidades para un uacutenico caraacutecter Eso

significa que las combinaciones para una contrasentildea de 4 caracteres seriacutean 724 = 26873856

Baacutesicamente maacutes de 26 millones de combinaciones en una clave de 4 caracteres contra 10 mil en

una clave de 4 diacutegitos numeacutericos En este estudio se utiliza la contrasentildea de bloqueo descrita en el

apartado anterior que es de 94 combinaciones para cada caraacutecter teniendo una longitud de 7

caracteres por lo tanto seraacuten 947 = 64847759000000 de posibles combinaciones que

nuestros equipos deben explorar para obtener la contrasentildea correcta

Como se mencionoacute en el apartado 42 el usuario sobre el cual se realizoacute el criptoanaacutelisis

fue usuarioprueba el cual constaba de una contrasentildea de longitud 7 caracteres la cual despueacutes

de realizado el anaacutelisis y como se puede observar en la Figura 45

89

1 Anaacutelisis a usuario usuarioprueba

2 Nuacutemero de nodos en operacioacuten 17

3 Nuacutemero de procesos ejecutaacutendose de forma paralela 68

4 Tiempo de duracioacuten del anaacutelisis en el cluacutester 122727 horas

5 Contrasentildea criptoanalizada Pass7

Asiacute mismo en la Tabla 42 se muestra el resultado final y el tiempo de duracioacuten del

criptoanaacutelisis realizado al archivo SAM con el cluacutester y la computadora personal

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Horas)

1 (PC) 4 1075316

17 (Cluacutester) 68 122727

1

2

3

4 5

Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester (Fuente Elaboracioacuten propia)

90

452 Diccionario Meacutetodo empleado para romper la seguridad de los sistemas basados en

contrasentildeas (password) en la que el atacante intenta dar con la clave adecuada probando todas (o

casi todas) las palabras posibles ingresadas previamente en un diccionario idiomaacutetico

Generalmente se emplean programas especiales que se encargan de ello

Este meacutetodo suele ser maacutes eficiente que el meacutetodo de fuerza bruta debido a que muchas

usuarios casi siempre suelen utilizar contrasentildeas con una o varias palabras existentes en su lengua

para que la contrasentildea no sea olvidada faacutecilmente y sea sencilla de recordar esto no es una praacutectica

recomendable (Alegsa 2018)

Para realizar este meacutetodo se utilizoacute un diccionario descargado de internet el cual contiene

10000000 de posibles contrasentildeas (g0tmi1k 2018)

Ademaacutes se ejecutoacute un programa creado en lenguaje C (Anexo 1) a traveacutes de la

implementacioacuten de las libreriacuteas MPI y open MPI propias de la arquitectura de cluacutester de

computadoras Este programa fue ejecutado en los mismos equipos descritos anteriormente para

obtener todos los nuacutemeros primos encontrados dentro de un intervalo dado En este caso el

intervalo dado fue de 10000000 con los siguientes resultados mostrados en la Tabla 43

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos (Fuente Elaboracioacuten

propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Segs)

1 (PC) 4 5078

17 (Cluacutester) 68 00013

91

453 Analizar los resultados Posterior a realizar el criptoanaacutelisis y descifrar con eacutexito

una cantidad suficiente de hashes se analizan los resultados en busca de pistas o patrones Este

anaacutelisis puede ayudar a tener eacutexito en cualquier hash restante

454 Personalizar ataques Tomando como base el anaacutelisis de resultados realizado

previamente se disentildearaacuten diversas estrategias personalizadas que aprovechen las vulnerabilidades

conocidas o patrones Los ejemplos seriacutean ataques de maacutescara personalizados o reglas para

adaptarse al comportamiento o las preferencias del usuario objetivo

92

Conclusioacuten

El trabajo de investigacioacuten presentado parte de la necesidad de buscar alternativas para

explotar al maacuteximo la capacidad de procesamiento del equipo de coacutemputo que existe actualmente

dentro del inventario del Instituto Tecnoloacutegico de Acapulco asiacute como proveer una plataforma que

coadyuve a la investigacioacuten dentro del Instituto a traveacutes de implementar un cluacutester de coacutemputo

con capacidad para realizar proyectos en el aacuterea de ingenieriacutea y matemaacuteticas con el fin de optimizar

el tiempo de ejecucioacuten lo cual en un futuro se veraacute reflejado en ventajas para el desarrollo de la

regioacuten

La revisioacuten y anaacutelisis de informacioacuten en relacioacuten a cluacutesters es muy interesante pero a la

vez es compleja dado que involucra diferentes aspectos durante su evolucioacuten asiacute como diversas

metodologiacuteas para su formacioacuten e implementacioacuten Se considera de suma importancia para este

trabajo las revisiones efectuadas ya que son la base para la propuesta entregada

De acuerdo a las especificaciones teacutecnicas de los equipos informaacuteticos existentes dentro

del laboratorio de la Maestriacutea en Sistemas Computacionales y una vez que se realizoacute el anaacutelisis

de varios casos de eacutexito se propuso la metodologiacutea para implementacioacuten de un cluacutester homogeacuteneo

tipo Beowolf Este meacutetodo estaacute basado en otros que ya se han implementado bajo realidades

acadeacutemicas similares rescatando las etapas maacutes importantes de cada uno y complementaacutendolo con

los aportes personales se consideroacute que fue el oacuteptimo debido a que se implementoacute con hardware

convencional y herramientas de uso libre

93

El hecho de haber seleccionado un meacutetodo adecuado permitioacute superar gran parte los

problemas que presentaban las metodologiacuteas que fueron analizadas simplificoacute la implementacioacuten

del cluacutester y permitioacute el poder alcanzar una mayor estabilidad en su desempentildeo desde su etapa

inicial fue importante conocer el resultado en cada una de las etapas de implementacioacuten para

asegurar su desenvolvimiento en el futuro

Para integrar los equipos independientes a la arquitectura cluacutester se realizoacute el disentildeo de

una topologiacutea de red Gigabit Ethernet tipo estrella con un direccionamiento IP estaacutetico la

configuracioacuten de protocolos de comunicacioacuten remota sin autenticacioacuten la comparticioacuten de

archivos en red y la utilizacioacuten de aplicaciones de licencia GPL que permiten obtener el

funcionamiento similar a la de una supercomputadora

Haciendo uso de libreriacuteas de paso de mensajes (MPI) y el software John the Ripper para el

descifrado de contrasentildeas la arquitectura cluacutester implementada alcanzoacute una eficiencia de 885

de rendimiento en comparacioacuten con los recursos computacionales de un solo equipo con las

caracteriacutesticas de un nodo Ademaacutes otros de los proyectos ejecutados en la arquitectura cluacutester

para probar el rendimiento fue la ejecucioacuten de un programa para la deteccioacuten de nuacutemeros primos

dentro de un archivo de 10000000 de nuacutemeros obteniendo una eficiencia de maacutes de 99 gracias

a la distribucioacuten de tareas que proporcionan las libreriacuteas de paso de mensajes (MPI) dentro de la

arquitectura cluacutester

Con la implementacioacuten de la arquitectura cluacutester el laboratorio de la Maestriacutea en Sistemas

Computacionales podraacute dar soluciones potentes eficientes y econoacutemicas en los entornos de

94

investigacioacuten mejorando la capacidad de procesamiento en aplicaciones como evaluacioacuten de

algoritmos compresioacuten de archivos renderizacioacuten de imaacutegenes anaacutelisis de datos (big data) en un

tiempo relativamente bajo ideal para las necesidades educativas

La experiencia obtenida al realizar esta investigacioacuten y propuesta ha sido enriquecedora

tanto por la obtencioacuten de conocimiento en base a la historia evolucioacuten y arquitectura de cluacutesters

asiacute como la programacioacuten paralela y sus ventajas en diferentes proyectos desarrollados en todo el

mundo Igualmente la comparacioacuten entre cada uno de los modelos y meacutetodos resulta interesante

dado que existe un sinnuacutemero de ejemplos con caracteriacutesticas diferentes pero baacutesicamente con un

mismo objetivo final

Trabajo Futuro

El cluacutester implementado en el Laboratorio de la Maestriacutea en Sistemas computacionales del

Instituto Tecnoloacutegico de Acapulco puede ser utilizado en gran cantidad de aplicaciones dentro de

las diferentes aacutereas de investigacioacuten del Instituto asiacute como estar disponible para el Departamento

de Posgrado e Investigacioacuten como apoyo durante la realizacioacuten de tareas y proyectos dentro de las

aacutereas de Desarrollo de Sistemas Inteligentes asiacute como de Tecnologiacuteas Web

Propuesta de Trabajo a Futuro

Durante la realizacioacuten de este proyecto se observoacute la necesidad que existe dentro del

departamento de Investigacioacuten y Posgrado de equipos de alta capacidad de procesamiento para

realizar de una manera maacutes eficiente las investigaciones que se estaacuten llevando a cabo Una de ellas

es el ldquoSistema de apoyo al diagnoacutestico oportuno de Retinopatiacutea Diabeacuteticardquo en la cual a traveacutes del

entrenamiento de una red neuronal se clasificaraacuten y evaluaraacuten un nuacutemero de 3000 imaacutegenes para

95

demostrar la presencia de dicha enfermedad en pacientes del Instituto Estatal de Oftalmologiacutea

Actualmente se ha realizado una prueba de entrenamiento de dicha red neuronal con 70 imaacutegenes

obteniendo como resultado un tiempo clasificacioacuten y evaluacioacuten de 301532 horas en un equipo

con un procesador Core I7 con 8 GB en memoria RAM

96

Bibliografiacutea

Alegsa (01 de 01 de 2018) Alegsa Diccionario Informaacutetico Recuperado el 07 de 2019 de

Alegsa httpwwwalegsacomarDicataque_por_diccionariophp

Avecto (2017) Avecto Limited Recuperado el 10 de 08 de 2018 de AVECTO a Bomgar

Company wwwavectocom

Borghello C (2009) Seguridad de la Informacioacuten Recuperado el 11 de 2018 de Criptografiacutea de

la A-Z httpswwwsegu-infocomarproyectosp1_hashhtm

Branch Bedoya J amp Mesa Muacutenera A (Diciembre de 2008) Implementacioacuten de un cluster

homogeacuteneo para la resolucioacuten de problemas de alta complejidad computacional Avances

en Sistemas e Informaacutetica 5(3)

ByteBleeder (02 de 06 de 2017) Practical guide to NTLM Relaying in 2017 Obtenido de Github

httpsbyt3bl33d3rgithubiopractical-guide-to-ntlm-relaying-in-2017-aka-getting-a-

foothold-in-under-5-minuteshtml

Caballero A (26 de 06 de 2018) Hacking Eacutetico Recuperado el 03 de 2019 de John The Ripper

httpwwwreydescomdq=Recuperar_la_Contrasena_del_Administrador_utilizando_s

amdump2_y_John_The_Ripper

Carretero Peacuterez J de Miguel Anasagasti P Garciacutea Carballeira F amp Peacuterez Costoya F (2001)

Sistemas Operativos Una visioacuten aplicada (C F Madrid Ed) Madrid Espantildea

McGRAW-HillInteramericana

Castelloacute Gimeno A (30 de 07 de 2014) Universitat Jaume Recuperado el 10 de 2019 de

Evaluacioacuten de prestaciones mediante laaplicacioacuten HPL de clusters utilizandorCUDA

97

httprepositoriujiesxmluibitstreamhandle10234115082TFM_2014_CastelloGimen

oApdfsequence=1ampisAllowed=y

Chaacutevez J Echeverriacutea C Correa M Vaacutezquez E Suaacuterez M Maacutermol X Diacuteaz G (07 de

1999) Centro de Caacutelculo Cientiacutefico Recuperado el 01 de 05 de 2018 de Universidad de

Los Andes httpwwwcecalculavedocumentaciontutorialesbeowulfinformehtml

Chirinov R (2003) Nfinite9000 SL Recuperado el 26 de 04 de 2018 de Noticias 3D

httpswwwnoticias3dcomarticuloaspidarticulo=248amppag=4

Coffin J (23 de 07 de 2015) Quora Recuperado el 15 de 08 de 2019 de

httpswwwquoracomWhat-does-it-mean-when-a-hashing-algorithm-has-been-broken

Dongarra J (2010) Top500 Super computer sites Recuperado el 07 de 2019 de http

wwwtop500org

Educba (01 de 01 de 2019) Recuperado el 10 de 2019 de Educbaorg

httpswwweducbacomidea-algorithm

europa press (04 de 06 de 2013) Portal Tic Recuperado el 18 de 11 de 2018 de Europa Press

httpswwweuropapressesportalticgadgetsnoticia-cuarta-generacion-intel-core-mayor-

salto-cuanto-ahorro-energetico-20130604174722html

g0tmi1k (2018) github Recuperado el 05 de 2019 de github

httpsgithubcomdanielmiesslerSecListsblobmasterPasswordsCommon-

Credentials10-million-password-list-top-1000000txt

Gonzaacutelez Agudelo D (2014) El riesgo y la falta de politicas de seguridad informaacutetica una

amenaza en las empresas certificadas basc Recuperado el 20 de 05 de 2018 de

Universidad Militar Nueva Granada

httpsrepositoryunimilitareducobitstream10654122511ENSAYO20FINALpdf

98

Gonzaacutelez Ramiacuterez E amp Rodriacuteguez Saacutenchez A (2008) Disentildeo e implementacioacuten de un cluster

tipo BEOWULF para el desarrollo de coacutemputo cientiacutefico avanzado CdMx Mexico

Hernandez M (2013) Forensics Mexico Recuperado el 07 de 2018 de La importancia del

registro de Windows parte 1 httpforensicsmexicoblogspotcom201309la-

importancia-del-registro-de-windowshtml

Kowalczyk C (01 de 2015) Crypto-IT Recuperado el 11 de 2018 de Crypto-IT

httpwwwcrypto-itnetengasymmetricindexhtml

Labaca Castro R (13 de 06 de 2014) We live security Recuperado el 2019 de 08 de 07 de

Welivesecuritybyeset httpswwwwelivesecuritycomla-es20140613matematica-

claves-numerica-alfanumerica

Lizaacuterraga C (2002) Departamento de Fiacutesica Recuperado el 12 de 03 de 2018 de Universidad

de Sonora httpclustersfisicausonmx

Llorens E amp Pentildea M (2002) Recuperado el 04 de 2018 de Departament dArquitectura de

Computadors httppersonalsacupceduenricPFCBeowulfbeowulfhtml

Meneacutendez-Barzanallana R (07 de 08 de 17) Universidad de Murcia Recuperado el 11 de 2018

de Informaacutetica Aplicada a las Ciencias Sociales

httpswwwumesdocenciabarzanaIACCSSCriptografiahtml

Merkle R amp Damgaringrd I (sf) Numerenturorg Recuperado el 06 de 2019 de Para computar -

numerenturorg httpnumerenturorgfuncion-merkle-damgard

Microsoft Inc (02 de 05 de 2019) wwwmicrosoftcom Obtenido de Password must meet

complexity requirements httpsdocsmicrosoftcomes-eswindowssecuritythreat-

protectionsecurity-policy-settingspassword-must-meet-complexity-requirements

99

Mifsud E (26 de 03 de 2012) Introduccioacuten a la seguridad informaacutetica Recuperado el 07 de 05

de 2018 de Ministerio de educacioacuten cultura y deportes Gobierno de Espantildea

httprecursosticeducacionesobservatoriowebessoftwaresoftware-general1040-

introduccion-a-la-seguridad-informaticashowall=1

Murugesan S (01 de 02 de 2008) Researchgate doi101109MITP200810

Nahar K amp Abu Abbas O (01 de 2010) Researchgate Recuperado el 07 de 2019 de

Researchgate

httpswwwresearchgatenetpublication315492522_Hybrid_Cipher_System

Nievas F Pino O amp Arroyo R (sf) Los clusters como Plataforma de Procesamiento Paralelo

Recuperado el 25 de 04 de 2018 de

httpusuarioslycoseslacaraocultadescargasClusters_definitivo pdf

Pawar S (2016) A computer science portal for geeks Recuperado el 10 de 2018 de

Geeksforgeeks httpswwwgeeksforgeeksorgrc5-encryption-algorithm

Peleus (2019) NETSEC Recuperado el 08 de 2019 de httpsnetsecwsp=314

Peacuterez Tavera I (2014) Obtenido de Universidad Autonoma del Estado de Hidalgo

httpswwwuaehedumxscigeboletinprepa4n2e4html

Peacuterez M (2001) Recuperado el 15 de 04 de 2018 de

httpwwwdragonesorgBibliotecaArticulosArquitecturaParalela2pdf

Petitet A Whaley R C Dongarra J amp Cleary A (2008) HPL - A Portable Implementation of

the High-Performance Linpack Benchmark for Distributed-Memory Computers

Recuperado el 07 de 2019 de httpwwwnetliborgbenchmarkhpl

Picolet J (2017) Hash Crack Password Cracking Manual (Vol 2) Createspace Independent

Pub

100

Preukschat A (23 de 02 de 2015) Oro y Finanzas Recuperado el 07 de 2019 de

httpswwworoyfinanzascom201502que-es-colision-criptografia-bitcoin

Robbins D (2008) OpenMosix Recuperado el 22 de 04 de 2018 de the openMosix Project

httpopenmosixsourceforgenetintroduction_to_openmosixhtml

Rocha Quezada J d Botello Rionda S Vargas Feacutelix J M amp Munguiacutea Torres I A (Sep-Dic

de 2011) Disentildeo e implementacioacuten de un cluacutester de coacutemputo de alto rendimiento Acta

Universitaria 21(3) 24-33 Recuperado el 1 de 12 de 2018

Rocksclusters (01 de 01 de 2010) httpwwwrocksclustersorg Recuperado el 01 de 06 de 2018

de httpwwwrocksclustersorg httpwwwrocksclustersorg

Sanjoy K (01 de 01 de 2015) DZone Recuperado el 15 de 06 de 2019 de DZone

httpsdzonecomarticlessecurity-algorithms-des-algorithm

Security Degree Hub (01 de 2017) Security Degree Hub Recuperado el 13 de 02 de 2019 de

Security Degree Hub httpswwwsecuritydegreehubcomwhat-is-cryptanalysis

Simmons G (01 de 01 de 2019) Encyclopedia Britannica Recuperado el 08 de 2019 de

Encyclopedia Britannica httpswwwbritannicacomtopicRSA-encryption

statista (09 de 2017) Statista Obtenido de Statista Co httpsesstatistacom

Turner D (2004) Recuperado el 12 de 02 de 2018 de Ames Lab

httpwwwsclameslabgovProjectsparrallel_computingpara_intohtml

United States Government Department of Defense (1983) Trusted Computer System Evaluation

Criteria Rainbow Series

Universidad Internacional de Valencia (09 de Septiembre de 2016) Nuestros

expertosTecnologiacutea Recuperado el 27 de Abril de 2018 de Universidad Internacional de

Valencia httpswwwuniversidadviuesla-seguridad-informatica-puede-ayudarme

101

Wallen J (19 de 01 de 2019) Lifewire Recuperado el 13 de 06 de 2019 de Lifewire

httpswwwlifewirecomgnome-3-desktop-4175640

Yang H (01 de 02 de 2019) Herong Yang Recuperado el 15 de 06 de 2019 de Cryptography

Tutorials httpwwwherongyangcomCryptographyDSA-Introduction-What-Is-DSA-

Digital-Signature-Algorithmhtml

102

Anexo 1

Programa en Lenguaje C para la obtencioacuten de nuacutemeros primos utilizando libreriacuteas mpi

include ltcstdlibgt

include ltiostreamgt

include ltiomanipgt

include ltcmathgt

include ltctimegt

include mpih

using namespace std

int main ( int argc char argv[] )

int prime_number ( int n int id int p )

void timestamp ( )

int main ( int argc char argv[] )

int i

int id

int master = 0

int n

int n_factor

int n_hi

int n_lo

int p

int primes

int primes_part

double wtime

n_lo = 1

n_hi = 10000000

n_factor = 2

MPIInit ( argc argv )

p = MPICOMM_WORLDGet_size ( )

id = MPICOMM_WORLDGet_rank ( )

if ( id == master )

cout ltlt n

cout ltlt Cuenta primosn

cout ltlt C++MPI versionn

cout ltlt n

cout ltlt Programa para contar cantidad de primos para un N dadon

cout ltlt Corriendo en ltlt p ltlt procesosn

cout ltlt n

103

cout ltlt N S Tiempon

cout ltlt n

n = n_lo

while ( n lt= n_hi )

if ( id == master )

wtime = MPIWtime ( )

MPICOMM_WORLDBcast ( ampn 1 MPIINT master )

primes_part = prime_number ( n id p )

MPICOMM_WORLDReduce ( ampprimes_part ampprimes 1 MPIINT

MPISUM

master )

if ( id == master )

wtime = MPIWtime ( ) - wtime

cout ltlt ltlt setw(8) ltlt n

ltlt ltlt setw(8) ltlt primes

ltlt ltlt setw(14) ltlt wtime ltlt n

n = n n_factor

MPIFinalize ( )

if ( id == master )

cout ltlt n

cout ltlt PRIME_MPI - Procesos maestron

cout ltlt Finalizacion del calculo normaln

return 0

int prime_number ( int n int id int p )

int i

int j

int prime

int total

104

total = 0

for ( i = 2 + id i lt= n i = i + p )

prime = 1

for ( j = 2 j lt i j++ )

if ( ( i j ) == 0 )

prime = 0

break

total = total + prime

return total

void timestamp ( )

define TIME_SIZE 40

static char time_buffer[TIME_SIZE]

const struct tm tm

size_t len

time_t now

now = time ( NULL )

tm = localtime ( ampnow )

len = strftime ( time_buffer TIME_SIZE d B Y IMS p tm )

cout ltlt time_buffer ltlt n

return

undef TIME_SIZE

Page 8: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios

vii

Iacutendice de Contenido

Descargo de Responsabilidad Institucional ii

Dedicatoria iii

Agradecimientos iv

Resumen v

Abstract vi

Iacutendice de Contenido vii

Iacutendice de Figuras x

Iacutendice de Tablas xi

Capiacutetulo 1 Introduccioacuten 1 11 Antecedentes del problema 1

12 Planteamiento del Problema 4

13 Objetivos 6

131 Objetivo General 6

132 Objetivos Especiacuteficos 6

14 Justificacioacuten 7

15 Hipoacutetesis 7

16 Alcances y Limitaciones 8

17 Impacto Social Tecnoloacutegico Econoacutemico y Ambiental 8

171 Impacto social 8

172 Impacto ambiental 9

173 Impacto econoacutemico 10

18 Metodologiacutea a Utilizar 10

181 Anaacutelisis 10

182 Disentildeo 10

1821 Economiacutea 10

1822 Instalaciones 10

1823 Escalabilidad 11

1824 Red 11

1825 Software 11

1826 Almacenamiento 12

183 Implementacioacuten 12

1831 Software 12

1832 Hardware 13

1833 Recursos totales del cluacutester 13

19 Aseguramiento Teacutecnico ndash Material 13

191 Hardware 14

viii

1911 Equipo de coacutemputo 14

Capiacutetulo 2 Estado del Arte 16

Marco Teoacuterico 27 21 Seguridad de la Informacioacuten 27

211 Objetivo de la seguridad de la informacioacuten 27

212 Principios de la seguridad informaacutetica 28

213 Caracteriacutesticas de seguridad informaacutetica 28

214 Formas de Autenticacioacuten 29

215 Ciber-seguridad 29

22 Criptografiacutea 30

221 Tipos de Criptografiacuteas 30

2211 Tablas Hash 30

2212 Tipos de algoritmos Hash 31

22121 SHA - 1 (Secure Hash Algorithm) 31

22122 MD5 (Message Digest Algorithm) 31

22123 RIPEMD ndash 160 32

22124 Funcioacuten Merkle-Damgaringrd 32

2213 Cifrado simeacutetrico 32

22131 RC5 (Cifrado de Rivest) 33

22132 IDEA (International Data Encryption Algorithm) 33

22133 DES (Data Encryption Standard) 34

2214 Cifrado asimeacutetrico 35

22141 DSA (Digital Signature Algorithm - Algoritmo de Firma digital) 36

22142 RSA 37

2215 Cifrado hiacutebrido 38

23 Criptoanaacutelisis 38

24 Niveles de seguridad 39

241 Nivel D1 40

242 Nivel C1 40

243 Nivel C2 41

244 Nivel B1 42

245 Nivel B2 43

246 Nivel B3 44

247 Nivel A1 45

25 Sistemas Operativos 46

251 Windows 47

252 Registro de Windows 48

253 Administrador de cuentas de seguridad 49

2531 Identificador de Seguridad (SID Security Identifier) 50

254 Autenticacioacuten NTML 51

26 LINUX (ROCKS) 52

261 Escritorio 53

262 Paquete de Oficina 53

263 Organizador de archivos 54

27 Agrupamiento (Cluacutester) de Computadoras 55

271 Beowulf 56

ix

272 Mosix 56

273 OpenMosix 57

Capiacutetulo 3 Implementacioacuten de Cluacutester 59 31 Requisitos previos 59

311 Conexioacuten de los equipos y acceso a la red 59

312 Configuracioacuten de la BIOS 60

3121 ATAIDE Mode 60

3122 PXE 62

32 Instalacioacuten de Sistema Operativo Rocks 63

321 Configuracioacuten del teclado 70

33 Instalacioacuten de los nodos 70

331 Administracioacuten de nodos 72

332 Creacioacuten de cuentas de usuario 73

333 Configuracioacuten del directorio compartido 73

34 Operaciones baacutesicas de Rocks 74

Capiacutetulo 4 Metodologiacutea y Resultados 77 41 Obtener Archivo hash 77

42 Dar Formato al Hash 80

43 Evaluar la fuerza del Hash 80

44 Calcular la capacidad del equipo 82

45 Establecer Estrategia 87

451 Fuerza Bruta 87

4511 Cantidad de combinaciones posibles 88

452 Diccionario 90

453 Analizar los resultados 91

454 Personalizar ataques 91

Conclusioacuten 92

Trabajo Futuro 94 Propuesta de Trabajo a Futuro 94

Bibliografiacutea 96

Anexo 1 102

x

Iacutendice de Figuras

Figura 31 Esquema tiacutepico de configuracioacuten de un cluacutester xi

Figura 32 Imagen del Bios del equipo en la opcioacuten ldquodrive configurationrdquo 61

Figura 33 Bios ATAIDE Legacy Mode 61

Figura 34 Bios Boot PXE 62

Figura 35 Bios Boot device prioriry 63

Figura 36 Pantalla de Inicio de instalacioacuten de Rocks 64

Figura 37 Pantalla de seleccioacuten de Rolls 65

Figura 38 Listado de opciones de rolls para instalar 65

Figura 39 Informacioacuten baacutesica del cluacutester a instalar 66

Figura 310 Configuracioacuten Ethernet de la red privada 67

Figura 311 Configuracioacuten Ethernet de la red puacuteblica 67

Figura 312 Configuracioacuten de DNS y Gateway 68

Figura 313 Ingresar contrasentildea de usuario root 68

Figura 314 Configuracioacuten horaria 69

Figura 315 Particiones del disco duro 69

Figura 316 Pantalla para ingresar nodos 71

Figura 317 Indicador de insercioacuten de nuevos nodos 71

Figura 318 Comando qstat ndashf 74

Figura 319 Enviacuteo de trabajos por medio del comando qsub 75

Figura 320 Estado de los trabajos pendientes mostrados por qstat ndashf 75

Figura 321 Visualizacioacuten de la distribucioacuten de cargas en el cluacutester usando la herramienta

Ganglia 76

Figura 41 Arranque con LiveUSB KaliLinux 79

Figura 42 Resultado de la ejecucioacuten de la herramienta samdump2 80

Figura 43 Sistema de Ecuaciones tipo 119860119909 = 119887 Fuente Propia 84 Figura 44 Distribucioacuten de cargas del cluacutester 86

Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester 89

xi

Iacutendice de Tablas

Tabla 11 Costo del Proyecto 15

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia) 86

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia) 89

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos

(Fuente Elaboracioacuten propia) 90

1

Capiacutetulo 1 Introduccioacuten

11 Antecedentes del problema

Sin lugar a duda una de las herramientas maacutes importantes producida en el siglo XX ha sido

la computadora la cual ha provocado cambios vertiginosos en la sociedad y en el progreso de la

misma En la actualidad el entorno estaacute praacutecticamente controlado por las nuevas tecnologiacuteas que

a medida que transcurre el tiempo avanzan sin liacutemites y en ocasiones son utilizadas

incorrectamente provocando dantildeos de grandes dimensiones

Los trascendentales cambios operados en el mundo moderno caracterizados por su

constante desarrollo la acelerada globalizacioacuten de la economiacutea la acentuada dependencia a

almacenar grandes voluacutemenes de informacioacuten y los sistemas que la proveen aunado a grandes

inversiones de las empresas en conocimiento actual y futuro en sistemas de informacioacuten ademaacutes

del potencial que poseen las tecnologiacuteas para cambiar draacutesticamente las organizaciones y las

praacutecticas de negocio asiacute como crear nuevas oportunidades disentildear nuevas estructuras tecnoloacutegicas

basadas en informacioacuten la convierte en un activo codiciable Tales avances hacen permanente el

riesgo en las tecnologiacuteas y nos llevan a pensar en la problemaacutetica sobre la seguridad informaacutetica

La proteccioacuten de datos documentos y control de acceso a la informacioacuten es un tema que

cada diacutea toma maacutes fuerza en las grandes compantildeiacuteas debido a las diferentes praacutecticas de

especialistas tecnoloacutegicos como los son los hackers y crackers que roban informacioacuten vital para

posteriormente sacar provecho de ella

2

ldquoDesde la aparicioacuten de los grandes sistemas aislados hasta nuestros diacuteas en los que el

trabajo en red es lo habitual los problemas derivados de la seguridad de la informacioacuten han ido

tambieacuten cambiando evolucionando pero estaacuten ahiacute y las soluciones han tenido que ir adaptaacutendose

a los nuevos requerimientos teacutecnicos Aumenta la sofisticacioacuten en el ataque y ello aumenta la

complejidad de la solucioacuten pero la esencia es la mismardquo (Mifsud 2012)

Dentro del mundo actual la informacioacuten es denominada un activo importante de una

institucioacuten la cual debe ser protegida para evitar su peacuterdida modificacioacuten o el uso inadecuado de

su contenido

El extraviacuteo o el mal uso de informacioacuten que para alguien es confidencial genera dantildeos y

repercusiones directas relacionadas a la integridad disponibilidad y confidencialidad de los

archivos y a su vez a los duentildeos de dicha informacioacuten

ldquoLa seguridad informaacutetica se distingue por tener dos propoacutesitos de seguridad la Seguridad

de la Informacioacuten y la Proteccioacuten de Datos estos se diferencian debido a que los datos son valores

numeacutericos que soportan la informacioacuten mientras que la informacioacuten es aquello que tiene un

significado para nosotrosrdquo (Gonzaacutelez Agudelo 2014)

La seguridad informaacutetica consiste en asegurar que los recursos del sistema de informacioacuten

(material informaacutetico o programas) de una organizacioacuten sean utilizados de la manera que se decidioacute

3

inicialmente y que el acceso a la informacioacuten alliacute contenida asiacute como su modificacioacuten soacutelo sea

posible a las personas que se encuentren acreditadas y dentro de los liacutemites de su autorizacioacuten

Actualmente hay mucha informacioacuten circulando en internet por ejemplo correos

electroacutenicos publicaciones en Twitter Facebook videos fotos comercio electroacutenico secretos de

estado militares o industriales Lamentablemente dicha red es puacuteblica e insegura dentro de la cual

existen usuarios bien intencionados y muchos mal intencionados Diariamente encontramos

noticias de sitios con intrusiones mal intencionadas (hackeados) clonacioacuten de tarjeta de creacutedito o

imaacutegenes adulteradas Todo lo anterior motiva la necesidad de proteger la informacioacuten a traveacutes de

mecanismos que impidan a los usuarios no autorizados acceder a dicha informacioacuten

4

12 Planteamiento del Problema

Los sistemas de informacioacuten actuales estaacuten relacionados completamente con la exposicioacuten

de su informacioacuten a entidades externas que son ajenas a la organizacioacuten o delegacioacuten a la que

pertenecen

Cuando no se conoce el alcance que tienen los sistemas informaacuteticos ni lo vulnerables que

pueden ser si son expuestos a Internet por los mismos empleados de la organizacioacuten puede darse

ldquofugardquo de informacioacuten hacia el exterior esto los hace vulnerables a eventos y amenazas que

conllevan a riesgos que pueden provocar peacuterdidas tangibles e intangibles las cuales se traducen

en peacuterdidas que en muchos de los casos por decir lo menos seraacuten monetarias

El portal espantildeol de estadiacutesticas statista muestra la cuota de mercado de los principales

sistemas operativos a nivel mundial a fecha de febrero de 2017 seguacuten el nuacutemero de instalaciones

(statista 2017) Windows 10 fue el segundo sistema operativo maacutes instalado con una cuota de

mercado de 253 Esto significa que alrededor de una de cada cuatro computadoras estaacute

gobernado por este sistema operativo Por su parte en el caso de Windows 7 el porcentaje se situacutea

por encima del 45 a pesar de que ya no se vende ninguacuten PC con este sistema operativo Hablando

de manera conjunta los sistemas operativos Windows cuentan con una cuota del mercado global

de 8857

La empresa de seguridad informaacutetica Britaacutenica Avecto informoacute en su Microsoft

Vulnerabilities Report 2017 (Avecto 2017) (reporte 2017 de vulnerabilidades de Windows) un

aumento de vulnerabilidades publicadas del 111 en los uacuteltimos 5 antildeos de las cuales 235 criacuteticas

5

fueron mitigadas removiendo permisos de administrador asiacute como otras muy importantes

enfocadas al Administrador de Cuentas de Seguridad (SAM Security Account Manager por sus

siglas en ingleacutes) la cual es una base de datos almacenada como un archivo del registro en Windows

y que almacena las contrasentildeas de los usuarios en un formato hash (Algoritmos que crean a partir

de una entrada una salida alfanumeacuterica de longitud fija)

6

13 Objetivos

131 Objetivo General A traveacutes de la implementacioacuten de un procedimiento de fuerza

bruta utilizando para ello un cluacutester de alto rendimiento asiacute como software de uso libre lograr

capacidad de procesamiento capaz de vulnerar un sistema de autenticacioacuten nivel C1

132 Objetivos Especiacuteficos

Analizar los diferentes niveles de seguridad de sistemas operativos

Analizar diferentes meacutetodos de criptoanaacutelisis para vulnerar el Administrador de

cuentas de seguridad

Estudiar las teacutecnicas de agrupamiento de computadoras (clustering) para la

obtencioacuten de mayor poder de procesamiento

Implementar un cluacutester de alto rendimiento en el Laboratorio de la Maestriacutea en

Sistemas Computacionales del Instituto Tecnoloacutegico de Acapulco para ejecutar

operaciones de coacutemputo distribuido

7

14 Justificacioacuten

Antes la seguridad de la informacioacuten se realizaba a traveacutes de medios fiacutesicos por ejemplo

una caja fuerte en la cual las personas resguardaban objetos o informacioacuten valiosa para ellos Con

la introduccioacuten de las computadoras y el uso de internet los usuarios comienzan a almacenar

informacioacuten importante dentro de sus equipos por lo que se considera indispensable el uso de

herramientas que brinden proteccioacuten a la informacioacuten que se encuentra resguardada dentro de

eacutestas Los usuarios informaacuteticos suelen enviar informacioacuten por la red en las empresas al realizar

traacutemites o enviar informes a socios jefes entre otros

El resguardo de informacioacuten siempre ha sido importante para los seres humanos con la

diferencia que anteriormente no se contaba con los avances tecnoloacutegicos que tenemos actualmente

puesto que con la introduccioacuten de internet y el uso de dispositivos electroacutenicos se tiene mayor

riesgo de la informacioacuten que en ellos se maneja

La proteccioacuten del contenido de los datos es una necesidad urgente en casi todos los aacutembitos

de la sociedad incluyendo los servicios puacuteblicos y privados por lo que la tecnologiacutea de la

seguridad de los sistemas de cifrado se encuentra de frente a verdaderos retos

15 Hipoacutetesis

A traveacutes de un de fuerza bruta como teacutecnica de criptoanaacutelisis y con la ayuda de una mayor

capacidad de procesamiento mediante la implementacioacuten de agrupamiento de computadoras

(cluacutester) de alto rendimiento seraacute posible encontrar alguna vulnerabilidad dentro del sistema de

administracioacuten de cuentas de seguridad de Windows server 2012

8

16 Alcances y Limitaciones

Esta tesis se centraraacute en el sistema operativo Windows como objeto de estudio al cual se

le realizaraacute el criptoanaacutelisis

La tesis se enfocaraacute en el meacutetodo Beowulf para realizar el agrupamiento de computadoras

asiacute como la distribucioacuten de software libre del sistema operativo Linux Rocks

El nuacutemero de equipos disponibles para poder realizar el agrupamiento es de 17

computadoras hasta lograr el poder de coacutemputo de 800 Gflops

17 Impacto Social Tecnoloacutegico Econoacutemico y Ambiental

La sostenibilidad del presente proyecto seraacute abordada a partir de los siguientes aspectos

171 Impacto social A veces se puede pensar que un cluacutester de alto rendimiento pudiera

no tener alguacuten impacto directo en el medio social pero si nos enfocamos a un punto de vista en

donde gracias a la capacidad de procesamiento de estas maacutequinas han sido parte fundamental en

el desarrollo de proyectos que inciden de manera directa en beneficio de la sociedad en la que

vivimos como lo es la medicina la fiacutesica quiacutemica

Este proyecto busca beneficiar a nuestra sociedad proveyendo su capacidad de

procesamiento en la buacutesqueda de alguna vulnerabilidad en el sistema operativo maacutes utilizado hoy

en diacutea como lo es Windows ademaacutes de que estaraacute disponible para la comunidad cientiacutefica y

9

estudiantil del Instituto Tecnoloacutegico de Acapulco para optimizar tiempo de caacutelculo en futuras

investigaciones

172 Impacto ambiental Green IT tambieacuten conocido como Green Computing o

traducido al espantildeol como Tecnologiacuteas Informaacuteticas Verdes es definido como el estudio y la

praacutectica de disentildear desarrollar usar y disponer de computadoras servidores y diferentes

perifeacutericos tales como monitores impresoras dispositivos de almacenamiento de redes y

comunicaciones eficientemente y efectivamente con un impacto miacutenimo o nulo en el medio

ambiente (Murugesan 2008)

Bajo la premisa anterior este proyecto hace uso de los equipos con los que cuenta

actualmente el laboratorio de la Maestriacutea en Sistemas Computacionales lo cual evitaraacute la

adquisicioacuten de equipo nuevo y por consecuencia desechar el equipo existente evitando desperdicio

electroacutenico Dicho equipo cuenta con un procesador Intel I3 de 4ta generacioacuten lo cual seguacuten el

portal electroacutenico Europa press

ldquoEsta nueva generacioacuten supone el mayor salto en cuanto ahorro energeacutetico de la historia

de Intel asiacute como una mejora en los graacuteficos y nuevas experiencias de usuariordquo (europa press

2013)

Teniendo como base estos dos puntos importantes como lo son la reutilizacioacuten de equipo

y utilizando procesadores de bajo consumo energeacutetico es como este proyecto busca contribuir de

manera positiva con el medio ambiente

10

173 Impacto econoacutemico Actualmente existe una gran necesidad de procesar grandes

cantidades de datos lo cual hace imprescindible disponer de maacutequinas con estas caracteriacutesticas sin

embargo su alta complejidad aunado al gran costo hace que en instituciones de caraacutecter puacuteblico

sea muy complicado conseguir recurso para este fin Sin embargo un cluacutester de alto rendimiento

reutilizaraacute equipo propio evitando asiacute gastos por concepto de adquisicioacuten de equipo siendo de

esta manera viable para instituciones de caraacutecter puacuteblico

18 Metodologiacutea a Utilizar

181 Anaacutelisis Despueacutes de analizar las diferentes metodologiacuteas de clustering se optoacute por

desarrollar e implementar un cluacutester de alto rendimiento (HPC)

182 Disentildeo

1821 Economiacutea Debido a las caracteriacutesticas del equipo con el cual cuenta el Laboratorios

de la Maestriacutea en Sistemas Computacionales los componentes utilizados para este proyecto son

considerados de uso comuacuten y de bajo costo lo cual los hace faacutecilmente reemplazables en caso de

fallo a un costo accesible El equipo es de la marca Acer Aspire modelos AXC-605-M021 lo cual

nos hace tener ventaja y respaldo del fabricante con respecto a hardware geneacuterico

1822 Instalaciones Un cluacutester requiere de un ambiente controlado Esto es una

habitacioacuten especial con sistema de enfriamiento capacidad suficiente de carga eleacutectrica control

de humedad y un ambiente libre de polvo Ademaacutes se deben considerar el peso del equipo sobre

el piso (ya sea falso o piso normal) Se recomienda colocarlo en los soacutetanos o en la plata baja de

edificios (Rocha Quezada Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

11

En el laboratorio de la Maestriacutea en Sistemas Computacionales se cuenta con espacio que

reuniacutea la mayoriacutea de las caracteriacutesticas requeridas para este proyecto

1823 Escalabilidad Un cluacutester debe ser faacutecilmente escalable y a su vez confiable Por

tal motivo se ha utilizado equipo de marca lo cual nos proporciona maacutes de confiabilidad en su

desempentildeo y a su vez facilidad de aumentar el nuacutemero de equipos si en un futuro fuese necesario

agrandar este proyecto Se armoacute un cluacutester de cinco computadoras con procesadores Intel Core I3

de 64 bits en cada nodo La memoria incluida y perifeacutericos son faacuteciles de adquirir en el mercado

1824 Red En la parte de redes se utilizoacute un switch fast Ethernet con una velocidad de 1

Gbps el cual tiene tazas de transferencia raacutepida y el costo es notablemente maacutes econoacutemico que

uno de fibra oacuteptica

El cableado seleccionado fue el estaacutendar UTP de cobre con la norma Gigabit Ethernet de

IEEE 8023ab con la categoriacutea de cableado 6e que soporta tazas de transferencia de datos de

1000Base T (1 Gbps)

1825 Software

ldquoEl sistema operativo debe constar con servicios dedicados para compartir y respaldar

archivos asiacute como capacidad de acceder a los datos de trabajo raacutepidamente El sistema operativo

debe tambieacuten proveer servicios de monitoreo y reporte de fallas en el sistemardquo (Rocha Quezada

Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

12

Existe una gran variedad de software para instalar cluacutester de alto rendimiento sin embargo

como se ha comentado con anterioridad el costo de adquisicioacuten debe ser accesible por tal motivo

se optoacute por una distribucioacuten con licencia GNU de Linux Rocks Cluster la cual es una distribucioacuten

sencilla de instalar y configurar en comparacioacuten con otras distribuciones analizadas dicha

distribucioacuten estaacute basada en CentOS que a su vez estaacute basada en la conocida distribucioacuten de Linux

Red Hat

1826 Almacenamiento Para este proyecto no se requeriraacute un gran espacio de

almacenamiento por tal motivo los equipos utilizados tanto maestro como esclavos mantuvieron

sus unidades de disco originales las cuales son de 1 TB de almacenamiento

183 Implementacioacuten La implementacioacuten del cluacutester de alto rendimiento fue realizada

dentro de las instalaciones del Laboratorio de la Maestriacutea en Sistemas Computacionales del

Instituto Tecnoloacutegico de Acapulco construido inicialmente para este proyecto de criptoanaacutelisis lo

cual requeriraacute suficiente capacidad de procesamiento para poder implementar ataques de fuerza

bruta a sistemas operativos Las caracteriacutesticas del cluacutester construido son

1831 Software El software instalado en cada uno de los nodos es el siguiente

bull Sistema operativo Rocks Cluacutester Linux 74 (64 bits)

bull Libreriacutea de manejo de mensajes Open-MPI 153

bull Software de monitoreo Ganglia

13

1832 Hardware El cluacutester estaacute compuesto de 17 equipos con las siguientes

caracteriacutesticas

bull Nodo Maestro y 16 Nodos Esclavos

- Procesador Intel Core I3 4150 (4 nuacutecleos) Memoria 6 GB Disco Duro SATA 1 TB

tarjeta de Red Gigabit Ethernet

El hardware adicional es el siguiente

bull Interconexioacuten de Red

bull Switch Cisco 26 puertos 1Gbps modelo SG200 Red interna

1833 Recursos totales del cluacutester

bull Nuacutecleos de unidades de procesamiento (cores) 68

bull Capacidad en memoria 92 GB

bull Capacidad en disco 17 TB

19 Aseguramiento Teacutecnico ndash Material

A continuacioacuten se muestra el desglose del equipo utilizado para la elaboracioacuten de un

cluacutester de alto rendimiento estos componentes consisten en Hardware y Software especializado

asiacute como los costos de produccioacuten y personal involucrados en la metodologiacutea y elaboracioacuten del

proyecto

Costos de Hardware

Costos de Software

14

191 Hardware En este punto se refleja el costo de los dispositivos y herramientas a nivel

fiacutesico las cuales sirvieron para la implementacioacuten del proyecto cluacutester de alto rendimiento Cabe

resaltar que el equipo utilizado forma parte del inventario actual del Laboratorio motivo por el

cual su utilizacioacuten no causoacute erogacioacuten alguna sin embargo la investigacioacuten de costos se realizoacute

con la finalidad que el lector pueda establecer comparativas y buscar alternativas en caso de ajuste

de presupuesto

1911 Equipo de coacutemputo El equipo de coacutemputo utilizado consta de diecisiete

computadoras las cuales serviraacuten una para Nodo Maestro y las dieciseacuteis restantes como Nodos

Esclavos

La descripcioacuten de estos equipos se muestra en la tabla a continuacioacuten mostrando los costos

de todos los equipos utilizados dentro del proyecto

15

Tabla 11 Costo del Proyecto

Modelo

Cantidad

Caracteriacutesticas

Costos

PC - Acer AXC-

605

17

Procesador Intel Core i3

Pantalla 156rdquo

Disco duro 1TB HDD

RAM 6GB

Salida HDMI

Tarjeta de graacuteficos INTEGRADA

Lector de CD

Los costos en el mercado de una PC de

escritorio con estas caracteriacutesticas tiene un

valor aproximado de $600000 pesos

(Moneda nacional Mexicana)

Switch Cisco

Gigabit Ethernet

1

Modelo SG200 de 26 puertos

Costo en el mercado alrededor de

$2000000 pesos MN

Total

12200000 pesos MN

16

Capiacutetulo 2 Estado del Arte

Tiacutetulo del Trabajo Introduccioacuten a la Criptografiacutea

Autor Gibraacuten Granados Paredes

Fecha Julio 2010

Lugar Ciudad de Meacutexico

Publicado en Coordinacioacuten de Publicaciones Digitales DGSCA-UNAM

httpwwwrevistaunammxvol7num7art55int55htm

Siacutentesis Cuando se desea tener seguridad hablando en aacutembitos informaacuteticos la

criptografiacutea es una herramienta muy uacutetil el autor lo entiende tambieacuten como un medio para

garantizar las propiedades de confidencialidad integridad y disponibilidad de los recursos de un

sistema

Con la criptografiacutea se puede garantizar las propiedades de integridad y confidencialidad

pero hay que saber coacutemo utilizarla para ello es importante tener claros los conceptos baacutesicos que

estaacuten detraacutes de los sistemas criptograacuteficos modernos Estos conceptos van desde entender queacute es

la criptografiacutea coacutemo estaacute clasificada entender el funcionamiento baacutesico de algunos sistemas de

cifrado y conocer coacutemo se forman los documentos digitales como firmas y sobres digitales

Resultados El autor realiza un viaje por un gran nuacutemero de conceptos utilizados en

criptografiacutea el inicio y la clasificacioacuten de la misma asiacute como la criptografiacutea claacutesica y moderna y

analiza de manera breve algunos meacutetodos de cifrado maacutes comunes

17

Tiacutetulo del Trabajo Criptoanaacutelisis sobre meacutetodos claacutesicos de cifrado

Autores Sebastiaacuten Goacutemez Juan David Arias Diego Agudelo

Fecha 2 de mayo 2013

Lugar Ciudad de Meacutexico

Publicado en Scientia et Technica Antildeo XVII No 50 abril de 2012

Siacutentesis Los algoritmos criptograacuteficos utilizados desde la antigua Roma hasta nuestros

diacuteas son meacutetodos que convierten un mensaje de texto plano a cifrado al proceso inverso se le

conoce como descifrar Este artiacuteculo realiza un estudio de algunas teacutecnicas de encriptacioacuten claacutesicas

del siglo pasado como lo son el cifrado de Cesar y el cifrado de Vigeneacutere asiacute como muestra

teacutecnicas baacutesicas y modernas de criptoanaacutelisis basadas en la teoriacutea de la informacioacuten y estadiacutestica

como lo son la entropiacutea y el ataque de maacutexima correlacioacuten Las teacutecnicas de criptoanaacutelisis descritas

anteriormente pueden ser usadas en otros meacutetodos de cifrado siempre y cuando esteacuten presentes las

mismas debilidades

Resultados Los autores implementaron en lenguajes de programacioacuten Python un

algoritmo para el caacutelculo de entropiacutea para diferentes longitudes de clave Para la implementacioacuten

de los algoritmos de cifrado y descifrado de Vigeneacutere y de maacutexima correlacioacuten utilizaron lenguaje

de programacioacuten C++ Se probaron los meacutetodos anteriormente descritos sobre textos planos de

diferentes longitudes logrando un resultado de 9385 de efectividad en promedio

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de dos de los

algoritmos de encriptacioacuten maacutes antiguos y baacutesicos pero sobre todo que conociendo los meacutetodos

de criptoanaacutelisis me permitiraacuten analizar debilidades y fortalezas de algoritmos

18

Tiacutetulo del Trabajo ULTRACOM Computacioacuten de Alto Rendimiento para Criptoanaacutelisis

Autor Antonio Castro Lechtaler Alejandro Repetto Martiacuten Bianchi Marcelo Cipriano

Alejandro Arroyo Arzubi Ceacutesar Cicerchia Eduardo Malvacio

Fecha octubre 2014

Lugar Buenos Aires Argentina

Publicado en XX Congreso Argentino de Ciencias de la Computacioacuten (Buenos Aires

2014)

Siacutentesis La generacioacuten de nuacutemeros primos fundamentales para la produccioacuten de claves

el anaacutelisis de secuencias pseudo-aleatorias los procesos de verificacioacuten y validacioacuten de algoritmos

de seguridad en un sentido geneacuterico requieren enormes cantidades de procesamiento Los

procesos relacionados con la matemaacutetica criptograacutefica se caracterizan por la alta necesidad de

coacutemputo El objetivo de ULTRACOM es desarrollar una computacioacuten distribuida multipropoacutesito

que permita como primera aplicacioacuten real el anaacutelisis la validacioacuten y la ejecucioacuten de pruebas de

estreacutes sobre sistemas criptograacuteficos El presente trabajo de investigacioacuten detalla el proceso de

desarrollo de ULTRACOM y muestra un ejemplo de su implementacioacuten en una versioacuten Beta Para

ello toman como entrada dos versiones del algoritmo Trivium Utilizando la misma

infraestructura y sin desarrollo extra se prueban grandes voluacutemenes de claves y vectores de

inicializacioacuten de los algoritmos en busca de secuencias deacutebiles de menor longitud que la de la

buscada

Resultados El equipo implementoacute una versioacuten beta de la plataforma ULTRACOM

comprobando la factibilidad y viabilidad teacutecnica de la generalizacioacuten de la infraestructura de

computacioacuten distribuida en grilla (malla) BOINC Este avance permite extender los horizontes de

BOINC y habilita la posibilidad de obtener la capacidad de coacutemputo de alto rendimiento a bajo

19

costo Concluyeron que ULTRACOM es un proyecto viable escalable y de alto impacto para la

evaluacioacuten y validacioacuten de algoritmos criptograacuteficos

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento y la

implementacioacuten de una arquitectura de computacioacuten distribuida y una vez siendo factible su

desarrollo utilizar su poder de coacutemputo atacando a traveacutes de un algoritmo un sistema criptograacutefico

20

Tiacutetulo del Trabajo Criptografiacutea Cuaacutentica

Autor M Baig

Fecha 2010

Lugar Barcelona Espantildea

Siacutentesis En este artiacuteculo el autor realiza una breve introduccioacuten a la criptografiacutea claacutesica y

la relacioacuten que existe con la teoriacutea de la informacioacuten de Shannon la cual asegura que el cifrado

digital simeacutetrico es secreto y perfecto siempre y cuando se cumplan los tres requisitos

1 La llave ha de ser aleatoria

2 La llave debe usarse soacutelo una vez

3 La llave ha de ser tan larga como el mensaje y de un solo uso debe de estar en posesioacuten

tanto del emisor como del receptor

El punto 3 es el maacutes complicado de cumplir debido a la forma de compartir la llave entre

el emisor y receptor

Maacutes adelante en el artiacuteculo se hace un anaacutelisis sobre otra teacutecnica de criptografiacutea que es el

cifrado digital asimeacutetrico en la que se estudia coacutemo funcionan las llaves privadas y puacuteblicas asiacute

como el meacutetodo de criptograacutefico RSA

Resultados

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento maacutes profundo de

los meacutetodos de criptografiacutea simeacutetricos y asimeacutetricos especiacuteficamente el algoritmo asimeacutetrico

RSA

21

Tiacutetulo del Trabajo La Criptografiacutea Maderista en la Revolucioacuten Mexicana (1910-1911)

Criptoanaacutelisis de una carta cifrada por Gabriel Leyva Solano

Autor Roberto Narvaacuteez

Fecha 2011

Lugar Meacutexico DF

Siacutentesis Este trabajo aborda temas relacionados con las comunicaciones secretas del

movimiento revolucionario comandado por Francisco I Madero a partir de 1910 Se compone de

dos partes la primera es una breve resentildea criacutetica de ejemplos criptograacuteficos del maderismo que

fueron generados entre 1910 y 1911 la segunda describe paso a paso el criptoanaacutelisis que aplicoacute

el autor Roberto Narvaacuteez para desencriptar una carta parcialmente cifrada de Gabriel Leyva Solano

a Francisco I Madero

Resultados El propoacutesito general uacuteltimo es contribuir al conocimiento de la criptografiacutea

mexicana en el siglo XX En lo particular se trata de poner a disposicioacuten de los estudiosos el

contenido completo de la carta de Leyva Solano por primera vez despueacutes de 100 antildeos y al mismo

tiempo someter a la criacutetica teacutecnica e histoacuterica el procedimiento criptoanaliacutetico puesto en operacioacuten

para recuperar el texto plano

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados en nuestro paiacutes sobre formas y meacutetodos de encriptacioacuten durante la Revolucioacuten

Mexicana incluso mucho antes de la 2ordf Guerra mundial momento donde se registroacute un auge

importante dentro de la criptografiacutea moderna

22

Tiacutetulo de Tesis Anaacutelisis de la programacioacuten concurrente sobre la cpu y gpu en el

desarrollo de fractal build

Autor Joseacute Vicente Anilema Guadalupe

Fecha 2012

Lugar Riobamba Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la geometriacutea euclidiana debido a que

el autor realiza una aplicacioacuten que crea paisajes fractales lo que significa crear un paisaje con una

misma figura geomeacutetrica Lo anterior se traduce en una necesidad de gran poder de coacutemputo para

realizar de una manera eficaz la tarea Dentro de la tesis el autor realiza diversos estudios

comparativos entre el procesamiento serializado realizado por una CPU (unidad central de

procesamiento) y procesamiento paralelizado realizado por una GPU (Unidad grafica de

procesamiento) a traveacutes de diversas herramientas para obtener el mejor aprovechamiento de los

recursos

Resultados El autor concluye que es necesario examinar los algoritmos a utilizar para que

estos puedan ser utilizados en coacutemputo paralelo Ademaacutes de que es necesario aprender ciertas

herramientas a utilizar para aprovechar al maacuteximo el coacutemputo distribuido y no desperdiciar el

poder de procesamiento muy superior que las GPUrsquos nos pueden brindar

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados para medir y comparar la velocidad de procesamiento de la unidad central de

procesamiento (CPU) y la unidad graacutefica de procesamiento (GPU) Asiacute como la medida en Flops

(Operaciones de punto flotante por segundo)

23

Tiacutetulo del Trabajo Arquitectura cluacutester de alto rendimiento utilizando herramientas de

software libre

Autores Leonardo Chiquiguanca Edyson Malla Freddy Ajila Rene Guamaacuten-Quincheacute

Fecha mayo 2015

Lugar Loja Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la gran cantidad de datos que tienen

que procesar las universidades puacuteblicas dentro de sus investigaciones realizadas en diferentes aacutereas

como la ingenieriacutea medicina etc y la carencia de recursos econoacutemicos para obtener

supercomputadoras que procesen dicha informacioacuten Los autores proponen dentro de su

investigacioacuten la utilizacioacuten de equipo de coacutemputo existente dentro de su universidad y por medio

de software libre realizar agrupamiento de computadoras para poder lograr el procesamiento de

grandes voluacutemenes de datos de una manera accesible

Resultados Los autores concluyen que la mejor arquitectura para el agrupamiento

(cluacutester) de computadoras en ambientes universitarios es la arquitectura Beowulf debido a que la

implementaron en hardware convencional existente dentro de su campus universitario y que

ademaacutes usaron software libre mencionando que el poder de coacutemputo logrado fue muy cercano al

de una supercomputadora

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de las teacutecnicas

utilizadas en ambientes universitarios para la realizacioacuten de agrupamiento de computadoras y

sobre todo la optimizacioacuten de costos para realizar dicha tarea y tener como finalidad el lograr

mayor capacidad de procesamiento

24

Tiacutetulo de Tesis Desarrollo de un algoritmo de cifrado simeacutetrico de resumen

Autores Jonathan Dave Orjuela Navarrete

Antildeo 2008

Lugar Bogotaacute DC

Siacutentesis Esta tesis realiza un estudio de varios meacutetodos de criptografiacutea simeacutetrica para

posteriormente utilizando diferentes foacutermulas matemaacuteticas crear un algoritmo criptograacutefico

nuevo Dentro de la tesis utiliza dos meacutetodos para realizar pruebas a su algoritmo criptoanaacutelisis

diferencial y criptoanaacutelisis basado en fallos de hardware Dentro de los cuales hace un estudio

detallado de las teacutecnicas y herramientas de criptoanaacutelisis realizado a su algoritmo

Resultados El autor concluye de manera positiva con la realizacioacuten del algoritmo y de

manera satisfactoria con la realizacioacuten de criptoanaacutelisis a su algoritmo pudiendo demostrar la

fortaleza del algoritmo a traveacutes de ejemplo de cifrado con textos claro muy parecido y su

conversioacuten a cadenas completamente diferentes

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de criptoanaacutelisis diferencial y criptoanaacutelisis basado en fallos de hardware para la

evaluacioacuten de algoritmos de cifrado simeacutetrico de textos claros

25

Tiacutetulo del Trabajo Firt step in a Pc cluster development with openMosix

Autores Javier Bilbao Gorka Garate

Antildeo 2008

Lugar Bilbao Spain

Siacutentesis En este trabajo se afirma que es posible hacer maacutequinas de alta capacidad de

caacutelculo mediante la interconexioacuten de equipos con redes de alta velocidad A este tipo de sistemas

se les llama sistemas distribuidos y hoy en diacutea es la tecnologiacutea maacutes utilizada para resolver

problemas que requieren una gran capacidad de caacutelculo La agrupacioacuten de computadoras permite

que varias computadoras trabajen juntas para resolver los problemas de informaacutetica comuacuten Este

artiacuteculo centra su estudio en uno de los diferentes meacutetodos de agrupamiento de computadoras

openMosix El trabajo tambieacuten evaluacutea el cluacutester por dos casos de estudio donde se mejora el

tiempo de ejecucioacuten de los problemas resueltos

Resultados El autor del artiacuteculo concluye con la realizacioacuten satisfactoria de agrupamiento

de computadoras bajo el meacutetodo openMosix el cual uacutenicamente permite agrupamiento de la forma

SSI (Single System Image) que se refiere a que uacutenicamente se puede realizar el agrupamiento con

todos los nodos ejecutando un mismo sistema operativo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras openMosix ventajas desventajas y dificultades para

su implementacioacuten

26

Tiacutetulo del Trabajo Disentildeo e implementacioacuten de un cluacutester tipo Beowulf para el desarrollo

de coacutemputo cientiacutefico avanzado

Autores Edgar Rubeacuten Gonzaacutelez Ramiacuterez Abimael Rodriacuteguez Saacutenchez

Antildeo 2008

Lugar Instituto Politeacutecnico Nacional Meacutexico DF

Siacutentesis Este trabajo de tesis ha desarrollado e implementado una herramienta

computacional llamada Cluster Beowulf para mejorar la programacioacuten paralela Comenzando

con la memoria compartida y distribuida el autor implemento el agrupamiento tipo Beowulf

pensando en procesamiento paralelo la optimizacioacuten de las fuentes informaacuteticas El disentildeo se

construye mediante una distribucioacuten Linux Fedora Core 6 a 64 bits utilizando todas las ventajas

que ofrece el estaacutendar Gigabyt Ethernet La programacioacuten paralela fue desarrollada en lenguaje C

tanto para MPI como para OPENMP

Resultados El autor del artiacuteculo concluye que de acuerdo con los resultados el tiempo

de procesamiento se redujo con el uso muacuteltiples nuacutecleos mejoroacute hasta ocho veces gracias al

multihilo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras Beowulf y su implementacioacuten en sistemas operativos

de uso libre Linux distribucioacuten Fedora 6

27

Marco Teoacuterico

21 Seguridad de la Informacioacuten

La Seguridad de la Informacioacuten consiste y hace referencia a la proteccioacuten de cualquier

amenaza para salvaguardar los activos fijos y en especial toda informacioacuten de la cual estaacute basada

la continuidad de las operaciones de la empresa sean estas ocasionadas dentro o fuera de la misma

con esto se logra disminuir los dantildeos y perjuicios que estas amenazas causariacutean a la organizacioacuten

y a la vez aumentar las oportunidades de servicio hacia otras empresas

La Seguridad de la informacioacuten se consigue mediante la implementacioacuten de controles

efectivos que pueden ser normas manual de funciones buenas praacutecticas procedimientos

estructuras organizativas funciones de software y hardware planes de contingencia y herramientas

que se encargan de proteger la privacidad e integridad de la informacioacuten que se almacena en un

sistema informaacutetico Estos controles necesitan continuamente ser establecidos monitoreados

revisados y mejorados en donde sea necesario para asegurar que se cumplan los objetivos

especiacuteficos de seguridad en cada aacuterea de negocio de la organizacioacuten

La seguridad informaacutetica es en realidad una rama de la seguridad de la informacioacuten aunque

de forma praacutectica algunos autores suelen utilizar de manera indistinta ambos teacuterminos

211 Objetivo de la seguridad de la informacioacuten En la seguridad de la informacioacuten

sabiendo que dichos procesos de seguridad permiten proteger el recurso maacutes importante y valioso

de una organizacioacuten partiendo como principio fundamental los procesos de aseguramiento el

28

objetivo del proceso de seguridad informaacutetica es obtener un nivel aceptable de seguridad ya que

la informacioacuten es lo maacutes valioso que tiene una institucioacuten o empresa por lo tanto esta debe ser

protegida para que no sea vulnerable y utilizada para fines maliciosos

212 Principios de la seguridad informaacutetica

Confidencialidad Los datos solo deben ser conocidos y accedidos por quienes esteacuten

autorizados durante su almacenamiento procesamiento o trasmisioacuten Verificar y certificar que solo

los usuarios con accesos autorizados puedan acceder a la informacioacuten

Integridad Los datos solo pueden ser modificados y eliminados por quienes esteacuten

autorizados para ello es decir los sistemas y aplicaciones solo deben ser operados por personal

autorizado

Disponibilidad Los sistemas que almacenan datos e informacioacuten deben garantizar su

acceso cuando asiacute se requiera por quienes tengan derecho a ello

213 Caracteriacutesticas de seguridad informaacutetica

Control Solo los usuarios autorizados deciden cuaacutendo y coacutemo permitir el acceso a la

informacioacuten

Auditoriacutea Establece las acciones cuaacutendo las implementa y quieacuten las realiza sobre el

sistema

Autenticidad Define que la informacioacuten necesaria es correcta utilizable y vaacutelida en tiempo

y forma

No Repudio Su funcioacuten es evitar que alguna entidad que envioacute o recibioacute informacioacuten

alegue que no lo hizo

29

214 Formas de Autenticacioacuten

Contrasentildea Una contrasentildea es un tipo de seguridad informaacutetica ya que es una serie de

caracteres secretos que permiten a un usuario tener acceso a un archivo equipo de coacutemputo o

programa y negar el acceso a usuarios no autorizados

Certificado digital Es un tipo de seguridad informaacutetica que permite la firma digital

electroacutenica que garantiza teacutecnica y legalmente la identidad de una persona en Internet

Autenticacioacuten HTTP Tipo de seguridad informaacutetica que delega la autenticacioacuten de

usuarios a un servidor a traveacutes de Kerberos

215 Ciber-seguridad Con los avances tecnoloacutegicos y la demanda que ha causado en ello

existe un elevado iacutendice de informacioacuten personal y empresarial que circula y se mantiene en la red

por la utilizacioacuten del internet esto permite que toda informacioacuten quede expuesta a cualquier ataque

de ciber-delincuentes los cuales buscan la manera de vulnerar cualquier sistema para espiar robar

informacioacuten o hacer dantildeo de cualquier tipo por lo que se ha visto la necesidad de tomar medidas

de seguridad para salvaguardar la informacioacuten ya que es muy importante

La ciberseguridad es la proteccioacuten de los sistemas conectados a Internet incluidos el

hardware el software y los datos de los ciberataques En un contexto informaacutetico la seguridad

comprende la ciberseguridad y la seguridad fiacutesica ambas son utilizadas por las empresas para

proteger contra el acceso no autorizado a los centros de datos y otros sistemas de coacutemputo El

objetivo de la ciberseguridad es limitar el riesgo y proteger los activos de Tecnologiacuteas de

Informacioacuten de los atacantes con intenciones maliciosas La seguridad de la informacioacuten estaacute

30

disentildeada para mantener la confidencialidad integridad y disponibilidad de los datos es un

subconjunto de la ciberseguridad

22 Criptografiacutea

La Criptografiacutea tambieacuten llamada ldquoescritura ocultardquo tradicionalmente en el aacutembito de

criptografiacutea es donde se ocupan las teacutecnicas de cifrado o codificacioacuten que permiten alterar el

contenido de cierta informacioacuten o mensajes con el fin de hacerlos ininteligibles a receptores o

personas no autorizadas (Meneacutendez-Barzanallana 17)

Actualmente la criptografiacutea se encarga de analizar algoritmos protocolos y sistemas que

son utilizados para proveer seguridad a las comunicaciones informacioacuten y a las entidades que se

comunican entre siacute

221 Tipos de Criptografiacuteas

2211 Tablas Hash Un hash o funcioacuten hash toma un grupo de caracteres (llamado clave)

y lo asigna a un valor de cierta longitud (llamado valor hash o hash) El valor hash es representativo

de la cadena de caracteres original pero normalmente es maacutes pequentildeo que el original

El hash tambieacuten es utilizado en el cifrado y descifrado de firmas digitales La funcioacuten hash

transforma la firma digital luego tanto el valor hash como la firma se enviacutean al receptor El

receptor utiliza la misma funcioacuten hash para generar el valor hash y luego lo compara con el recibido

31

en el mensaje Si los valores hash son los mismos es probable que el mensaje se haya transmitido

sin errores

Un ejemplo de una funcioacuten hash se llama plegado(folding) Esta toma un valor original lo

divide en varias partes luego agrega las partes y usa los uacuteltimos cuatro diacutegitos restantes como

valor o clave hash

2212 Tipos de algoritmos Hash

22121 SHA - 1 (Secure Hash Algorithm) Es un algoritmo criptograacutefico de Hash

publicado por el gobierno de los Estados Unidos Genera un valor Hash de 160 bits a partir de una

secuencia de longitud arbitraria Es considerado lo suficientemente seguro para aplicaciones

praacutecticas pero hay disponibles versiones maacutes robustas SHA - 256 SHA - 384 y SHA - 512 que

generan valores Hash de 256 384 y 512 bits respectivamente estas versiones reemplazaraacuten a SHA

- 1 mientras se siga trabajando sobre ellas (Borghello 2009)

22122 MD5 (Message Digest Algorithm) En criptografiacutea MD5 es una funcioacuten hash

criptograacutefica ampliamente utilizada con un valor hash de 128 bits Como estaacutendar de Internet (RFC

1321) MD5 se ha empleado en una amplia variedad de aplicaciones de seguridad y tambieacuten se

usa comuacutenmente para verificar la integridad de los archivos Un hash MD5 generalmente se

expresa como un nuacutemero hexadecimal de 32 diacutegitos

MD5 es una versioacuten reforzada de MD4 Al igual que MD4 el hash MD5 fue inventado por

el profesor Ronald Rivest del Massachusetts Institute of Technology (MIT) Ademaacutes MD5 se

32

utilizoacute como modelo para SHA-1 ya que comparten muchas caracteriacutesticas comunes MD5 y

SHA-1 son los dos algoritmos hash maacutes utilizados en la actualidad aunque el uso de MD5 ha

disminuido ya que ahora se considera roto (Borghello 2009)

22123 RIPEMD ndash 160 Es una funcioacuten hash criptograacutefica basada en la construccioacuten

Merkle-Damgaringrd (MD) Se usa en el estaacutendar de Bitcoin Es una versioacuten reforzada del algoritmo

RIPEMD que produce un resumen de hash de 128 bits mientras que el algoritmo RIPEMD-160

produce una salida de 160 bits La funcioacuten de compresioacuten consta de 80 etapas formadas por 5

bloques que se ejecutan 16 veces cada uno Este patroacuten se ejecuta dos veces con los resultados

combinados en la parte inferior utilizando la adicioacuten del moacutedulo 32 (Borghello 2009)

22124 Funcioacuten Merkle-Damgaringrd La construccioacuten MD es una metodologiacutea para crear

funciones hash resistentes a colisiones a partir de funciones de compresioacuten unidireccionales Ralph

Merkle la propuso en el antildeo de 1979 en ldquoA certified Digital Signaturerdquo posterior a este estudio

Ivan Damgaringrd demostroacute de manera independiente que la estructura era soacutelida (Merkle amp

Damgaringrd sf)

2213 Cifrado simeacutetrico Los cifrados simeacutetricos son los cifrados criptograacuteficos maacutes

antiguos y maacutes utilizados En un cifrado simeacutetrico la clave que descifra el texto cifrado es la

misma (o puede derivarse faacutecilmente) de la clave que cifra el texto claro Esta clave a menudo se

conoce como la clave secreta Los cifrados simeacutetricos maacutes utilizados son DES y AES

La problemaacutetica que surge es la seguridad de la clave

33

El emisor cifra el mensaje con una clave

Enviacutea el mensaje cifrado de tal manera que nadie puede descifrarlo sin dicha clave

El receptor obtiene la clave y entonces puede descifrar el mensaje con la misma clave

que recibioacute del emisor

Algunos algoritmos de este tipo son

22131 RC5 (Cifrado de Rivest) Es un algoritmo de cifrado de bloque de clave simeacutetrica

disentildeado por Ron Rivest en 1994 Se destaca por ser simple raacutepido (debido a que usa solo

operaciones de coacutemputo primitivas como XOR o shift) y ademaacutes por consumir menos memoria

RC5 es un cifrado de bloques y aborda dos bloques de palabras a la vez Dependiendo del

tamantildeo del bloque de texto sin formato nuacutemero de rondas y tamantildeo de clave se pueden definir

varias instancias de RC5 y cada instancia se denota como RC5-w r b donde w = tamantildeo de

palabra en bits r = nuacutemero de rondas y b = tamantildeo de la clave en bytes (Pawar 2016)

Como se ha mencionado RC5 utiliza bloques de 2 palabras el tamantildeo del bloque de texto

sin formato puede ser de 32 64 o 128 bits

22132 IDEA (International Data Encryption Algorithm) Baacutesicamente es un algoritmo

de cifrado de bloque simeacutetrico El algoritmo asimeacutetrico utiliza la misma clave para el cifrado y

descifrado Un cifrado de bloque divide el mensaje en bloques cada uno de una longitud fija y

luego cifra cada bloque de forma independiente

34

El tamantildeo de bloque tiacutepico es de 16 bytes de 128 bits Un cifrado de bloque generalmente

operaraacute en bloques o rondas donde se aplica parte de la clave a la ronda Despueacutes de un cierto

nuacutemero de rondas digamos entre 10 y 16 se termina con el texto cifrado para ese bloque

El bloque de texto cifrado tiene exactamente el mismo tamantildeo que el bloque de texto sin

formato 16 bytes Para cada ronda se trabaja en el bloque utilizando una parte de la clave de

cifrado a la que se le llama la clave redonda Muacuteltiples claves redondas se derivan de la clave de

cifrado utilizando para esto un programa de claves

La programacioacuten de claves es un algoritmo que cambia XOR multiplica y realiza otros

tipos de operaciones en la clave de cifrado original para obtener estas claves redondas Bueno si

tengo un bloque de 16 bytes y tengo una clave de 128 bits que tambieacuten es de 16 bytes (Educba

2019)

22133 DES (Data Encryption Standard) El algoritmo DES es el algoritmo de seguridad

maacutes popular Es un algoritmo simeacutetrico lo que significa que se utilizan las mismas claves para

cifrar descifrar datos confidenciales La longitud de la clave es de 8 bytes (64 bits) Entonces

para cifrar descifrar datos el algoritmo DES utiliza una clave de 8 bytes pero 1 byte (8 bits) para

la verificacioacuten de paridad Es un algoritmo de cifrado de bloque por lo tanto el tamantildeo del bloque

de datos del algoritmo DES es de 64 bits Para cifrar descifrar datos el algoritmo DES utiliza la

estructura Feistel Entonces utiliza una ronda para cifrar descifrar datos Aunque el tamantildeo del

35

bloque de datos es de 64 bits el nuacutemero de rondas seraacute de 16 rondas asiacute mismo utilizaraacute diferentes

subclaves para cada ronda por lo tanto el nuacutemero de subclaves seraacute de 16 subclaves

Como se puede observar la clave efectiva es de 56 bits por consiguiente se tiene 256

combinaciones posibles por lo que la fuerza bruta se hace casi imposible (Sanjoy 2015)

2214 Cifrado asimeacutetrico Los cifrados asimeacutetricos tambieacuten se conocen como cifrados

con claves puacuteblicas y privadas Usan dos claves una para el cifrado de mensajes y la otra durante

el descifrado

Un intruso puede encriptar cualquier mensaje usando la clave puacuteblica conocida Los

cifrados asimeacutetricos son por lo tanto vulnerables a los ataques de texto sin formato Los cifrados

con encriptacioacuten de clave puacuteblica deben proporcionar seguridad contra tales ataques Despueacutes de

encriptar dos mensajes con la misma clave puacuteblica el intruso no puede distinguir queacute texto cifrado

estaacute conectado con queacute texto plano Ademaacutes un observador que analiza dos mensajes encriptados

usando el mismo algoritmo y la misma clave puacuteblica no puede distinguir sus textos cifrados

(Kowalczyk 2015)

Los cifrados asimeacutetricos son mucho maacutes lentos que los cifrados simeacutetricos (generalmente

mil veces maacutes lentos) Es una praacutectica comuacuten usar el cifrado de clave puacuteblica solo para establecer

la conexioacuten segura y negociar la nueva clave secreta que luego se utilizaraacute para proteger la

comunicacioacuten mediante cifrado simeacutetrico Ejemplos de este cifrado son

36

22141 DSA (Digital Signature Algorithm - Algoritmo de Firma digital) Es un estaacutendar

del Gobierno Federal de los Estados Unidos para firmas digitales Fue propuesto por el Instituto

Nacional de Estaacutendares y Tecnologiacutea (NIST) en agosto de 1991 para ser usado en su Estaacutendar de

Firma Digital (DSS) en el antildeo de 1993

La primera parte del algoritmo DSA es la generacioacuten de clave puacuteblica y clave privada que

puede describirse como

Se elige un nuacutemero primo q que se llama divisor primo

Se elige otro nuacutemero primo p de modo que pndash1 mod q = 0 p seraacute llamado moacutedulo

primo

Ahora se elige un nuacutemero entero g tal que 1 ltg ltp g q mod p = 1 g = h ((p

ndash 1) q) mod p q tambieacuten se llama moacutedulo de orden multiplicativo de g moacutedulo p

Se elige un nuacutemero entero tal que 0 ltx ltq

Se calcula y como g x mod p

Se empaqueta la clave puacuteblica como p q g y

Por uacuteltimo se empaqueta la clave privada como p q g x

La segunda parte del algoritmo DSA es la generacioacuten de firma y la verificacioacuten de firma

Para generar una firma de mensaje el remitente puede seguir estos pasos

Se genera el resumen del mensaje h utilizando un algoritmo hash como SHA1

Se genera un nuacutemero aleatorio k tal que 0 ltk ltq

37

Se calcula r como (g k mod p) mod q Si r = 0 seleccione una k diferente

Ahora se calcula i de modo que k i mod q = 1 i se llama el inverso multiplicativo modular

de k moacutedulo q

Se calcula s = i (h + r x) mod q Si s = 0 se selecciona una k diferente

Por uacuteltimo se empaqueta la firma digital como r s (Yang 2019)

22142 RSA Encriptacioacuten RSA encriptacioacuten Rivest-Shamir-Adleman tipo de

criptografiacutea de clave puacuteblica ampliamente utilizada para la encriptacioacuten de datos de correo

electroacutenico y otras transacciones digitales a traveacutes de Internet RSA lleva el nombre de sus

inventores Ronald L Rivest Adi Shamir y Leonard M Adleman quienes lo crearon mientras

trabajaban en la facultad del Instituto Tecnoloacutegico de Massachusetts (Simmons 2019)

En el sistema RSA un usuario elige de manera secreta un par de nuacutemeros primos p y q tan

grandes que factorizar el producto n = pq estaacute mucho maacutes allaacute de las capacidades informaacuteticas

proyectadas para la vida uacutetil de los cifrados A partir del antildeo 2000 los estaacutendares de seguridad del

gobierno de EE UU exigen que el moacutedulo tenga un tamantildeo de 1024 bits es decir p y q deben

tener un tamantildeo de aproximadamente 155 diacutegitos decimales por lo que n es aproximadamente un

nuacutemero de 310 diacutegitos Dado que los nuacutemeros duros maacutes grandes que actualmente se pueden

factorizar son solo la mitad de este tamantildeo y dado que la dificultad de factorizar se duplica

aproximadamente por cada tres diacutegitos adicionales en el moacutedulo se cree que los moacutedulos de 310

diacutegitos estaacuten a salvo de factorizar durante varias deacutecadas

38

2215 Cifrado hiacutebrido Es una teacutecnica comuacuten que combina diferentes funciones

criptograacuteficas como el cifrado de bloque Con el cifrado hiacutebrido se pueden cifrar datos firmarlos

o agregar un MAC y enviarlos en un objeto seguro (como una cadena o archivo) a traveacutes de un

canal de comunicacioacuten inseguro (sin un acuerdo clave entre dos partes)

En el sistema de cifrado hiacutebrido el texto plano (sin formato) se divide en tokens Luego

se calcula la longitud de cada ficha Los tokens y sus longitudes se almacenan en una matriz

Posteriormente se aplica el algoritmo Ceacutesar anidado sugerido El texto producido se almacena en

una matriz n x m llamada A Luego la transposicioacuten de esta matriz At se calcula utilizando

nuestra versioacuten revisada del cifrado de transposicioacuten para resolver el problema de secuenciacioacuten

A continuacioacuten el algoritmo RSA revisado se aplica en la matriz producida En el paso final se

aplica el formato de datos textuales usando el coacutedigo ASCII para producir el texto cifrado El

proceso de descifrado se realiza de la misma manera pero en orden inverso (Nahar amp Abu Abbas

2010)

23 Criptoanaacutelisis

El criptoanaacutelisis es el proceso de estudiar sistemas criptograacuteficos para buscar debilidades

o fugas de informacioacuten En general se considera que el criptoanaacutelisis explora las debilidades de

las matemaacuteticas subyacentes de un sistema criptograacutefico pero tambieacuten incluye la buacutesqueda de

debilidades en la implementacioacuten como ataques de canal lateral o entradas de entropiacutea deacutebiles

39

Su funcioacuten es la de conseguir obtener el significado de mensajes creados por medio de

criptografiacutea El objetivo principal del criptoanaacutelisis es opuesto al de la criptografiacutea Tiene como

finalidad encontrar la debilidad de las diferentes teacutecnicas criptograacuteficas para explotarla y de esta

manera reducir o eliminar la seguridad de la teacutecnica criptograacutefica Cualquier intento de

criptoanaacutelisis puede ser llamado ataque Una vez que un atacante logra romper la seguridad que

una teacutecnica criptograacutefica aportaba al sistema se dice que dicho sistema ha sido roto y por lo tanto

dicho ataque tuvo eacutexito

El criptoanaacutelisis es la investigacioacuten de sistemas texto cifrado y cifrados para revelar el

significado oculto o los detalles del sistema mismo El objetivo de este tipo de estudio es descubrir

los aspectos ocultos incluso si la clave o el algoritmo principal no se pueden descifrar Se necesita

una combinacioacuten exitosa de persistencia matemaacuteticas intuicioacuten curiosidad y una computadora

que funcione para hacer un buen criptoanalista Este tipo de ruptura de coacutedigo es extremadamente

importante especialmente en el mundo tecnoloacutegicamente dependiente de hoy El criptoanaacutelisis es

constantemente realizado por criptoacutegrafos que intentan obtener informacioacuten valiosa y por aquellos

que intentan descifrar el coacutedigo para revelar secretos (Security Degree Hub 2017)

24 Niveles de seguridad

Los niveles de seguridad de sistemas operativos son otorgados de acuerdo con el sistema

operativo que esteacute utilizando la empresa o institucioacuten ya sea puacuteblica privada gubernamental o no

gubernamental En el manual ldquoTrusted Computer System Evaluation Criteriardquo (United States

40

Government Department of Defense 1983) el Departamento de Defensa de los Estados Unidos

define los siguientes niveles

241 Nivel D1 Este nivel es el maacutes bajo de seguridad por lo tanto la norma establece que

el sistema no es confiable Esta divisioacuten contiene solo una clase Estaacute reservado para aquellos

sistemas que han sido evaluados pero que no cumplen con los requisitos para un nivel de

evaluacioacuten superior

242 Nivel C1 Un sistema de nivel C1 cumple nominalmente los requisitos de seguridad

discrecionales al proporcionar separacioacuten de usuarios y datos Incorpora alguna forma de controles

creiacutebles capaces de imponer limitaciones de acceso de manera individual es decir aparentemente

adecuados para permitir que los usuarios puedan proteger la informacioacuten privada o del proyecto y

evitar que otros usuarios lean o destruyan accidentalmente sus datos Se espera que el entorno de

nivel C1 sea uno de los usuarios cooperantes que procesan datos con el mismo nivel de

sensibilidad Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten

de nivel C1 son

Control de acceso discrecional por ejemplo listas de control de acceso (ACL)

usuario grupo

Por lo general para usuarios que estaacuten en el mismo nivel de seguridad

Proteccioacuten de nombre de usuario y contrasentildea y base de datos de autorizaciones

seguras (ADB)

Sistema operativo protegido y modo de operaciones del sistema

Comprobacioacuten perioacutedica de integridad de TCB

41

Mecanismos de seguridad probados sin derivaciones obvias

Documentacioacuten para la seguridad del usuario

Documentacioacuten para la seguridad de la administracioacuten de sistemas

Documentacioacuten para pruebas de seguridad

Documentacioacuten de disentildeo TCB

Tiacutepicamente para usuarios en el mismo nivel de seguridad

La certificacioacuten C1 es rara Los sistemas de ejemplo son versiones anteriores de

Unix IBM RACF

243 Nivel C2 Los sistemas de esta clase imponen un control de acceso discrecional maacutes

fino que los sistemas (C1) lo que hace que los usuarios sean individualmente responsables de sus

acciones a traveacutes de procedimientos de inicio de sesioacuten auditoriacutea de eventos relevantes para la

seguridad y aislamiento de recursos Los siguientes son requisitos miacutenimos para los sistemas

asignados a una clasificacioacuten de nivel C2

La proteccioacuten de objetos puede ser para un solo usuario Por ejemplo a traveacutes de

una base de datos ACL

La autorizacioacuten de acceso solo puede ser asignada por usuarios autorizados

Proteccioacuten de reutilizacioacuten de objetos (Por ejemplo para evitar la reasignacioacuten de

objetos eliminados de manera segura)

Procedimientos obligatorios de identificacioacuten y autorizacioacuten para los usuarios (Por

ejemplo Usuario Contrasentildea)

Auditoriacutea completa de eventos de seguridad (es decir fecha hora evento usuario

eacutexito falla ID de terminal)

42

Modo de operacioacuten del sistema protegido

Proteccioacuten adicional para la autorizacioacuten y los datos de auditoriacutea

Documentacioacuten como C1 maacutes informacioacuten sobre el examen de la informacioacuten de

auditoriacutea

Esta es una de las certificaciones maacutes comunes Los sistemas operativos de ejemplo

son VMS IBM OS 400 Windows NT Novell NetWare 411 Oracle 7 DG AOS

VS II

244 Nivel B1 Los sistemas de este nivel requieren todas las caracteriacutesticas requeridas

para el nivel C2 Ademaacutes debe estar presente una declaracioacuten informal del modelo de poliacutetica de

seguridad etiquetado de datos y control de acceso obligatorio sobre sujetos y objetos nombrados

La capacidad debe existir para etiquetar con precisioacuten la informacioacuten exportada Cualquier falla

identificada por la prueba debe ser eliminada Los siguientes son requisitos miacutenimos para los

sistemas asignados a una clasificacioacuten de nivel B1

Etiquetado obligatorio de seguridad y acceso de todos los objetos (Por ejemplo

archivos procesos dispositivos)

Comprobacioacuten de integridad de etiquetas (Por ejemplo mantenimiento de etiquetas

de sensibilidad cuando se exportan datos)

Auditoriacutea de objetos etiquetados

Control de acceso obligatorio para todas las operaciones

Capacidad para especificar el nivel de seguridad impreso en salida legible para

humanos (Por ejemplo impresoras)

43

Capacidad para especificar el nivel de seguridad en cualquier salida legible por

maacutequina

Auditoriacutea mejorada

Proteccioacuten mejorada del sistema operativo

Documentacioacuten mejorada

Los sistemas operativos de ejemplo son HP-UX BLS Cray Research Trusted

Unicos 80 Digital SEVMS Harris CS SX SGI Trusted IRIX

245 Nivel B2 En los sistemas de nivel B2 el TCB se basa en un modelo de poliacutetica de

seguridad formal claramente definido y documentado que requiere que la aplicacioacuten de control de

acceso discrecional y obligatoria que se encuentra en los sistemas de nivel B1 se extienda a todos

los sujetos y objetos en el sistema Ademaacutes se abordan los canales encubiertos El TCB debe

estructurarse cuidadosamente en elementos criacuteticos para la proteccioacuten y no criacuteticos para la

proteccioacuten La interfaz TCB estaacute bien definida y el disentildeo y la implementacioacuten TCB le permiten

someterse a pruebas maacutes exhaustivas y una revisioacuten maacutes completa Se fortalecen los mecanismos

de autenticacioacuten se proporciona una gestioacuten confiable de las instalaciones en forma de soporte

para las funciones de administrador y operador del sistema y se imponen estrictos controles de

gestioacuten de la configuracioacuten El sistema es relativamente resistente a la penetracioacuten Los siguientes

son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de nivel B2

Notificacioacuten de cambios en el nivel de seguridad que afectan a los usuarios

interactivos

Etiquetas de dispositivos jeraacuterquicos

44

Acceso obligatorio a todos los objetos y dispositivos

Comunicaciones de ruta confiables entre usuario y sistema

Rastreo de canales de almacenamiento encubiertos

Modo de operaciones del sistema maacutes estricto en unidades independientes de varios

niveles

Anaacutelisis de canales encubiertos

Pruebas de seguridad mejoradas

Modelos formales de TCB

Versioacuten actualizacioacuten y anaacutelisis y revisioacuten de parches

Los sistemas de ejemplo son Honeywell Multics Cryptek VSLAN Trusted

XENIX

246 Nivel B3 El TCB debe satisfacer los requisitos del monitor de referencia para mediar

todos los accesos de los sujetos a los objetos ser a prueba de manipulaciones y ser lo

suficientemente pequentildeo como para ser sometido a anaacutelisis y pruebas Con este fin el TCB estaacute

estructurado para excluir el coacutedigo que no es esencial para la aplicacioacuten de la poliacutetica de seguridad

con una importante ingenieriacutea del sistema durante el disentildeo y la implementacioacuten del TCB dirigido

a minimizar su complejidad Se admite un administrador de seguridad los mecanismos de

auditoriacutea se ampliacutean para sentildealar eventos relevantes para la seguridad y se requieren

procedimientos de recuperacioacuten del sistema El sistema es altamente resistente a la penetracioacuten

Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de clase

(B3)

45

ACL adicionalmente basadas en grupos e identificadores

Acceso de ruta confiable y autenticacioacuten

Anaacutelisis automaacutetico de seguridad

Modelos TCB maacutes formales

Auditoriacutea de eventos de auditoriacutea de seguridad

Recuperacioacuten confiable despueacutes de la caiacuteda del sistema y documentacioacuten relevante

Cero defectos de disentildeo en TCB y defectos miacutenimos de implementacioacuten

El uacutenico sistema operativo con certificacioacuten B3 es Getronics Wang Federal XTS-

300

247 Nivel A1 Los sistemas en el nivel A1 son funcionalmente equivalentes a los del nivel

B3 en que no se agregan caracteriacutesticas arquitectoacutenicas adicionales ni requisitos de poliacuteticas La

caracteriacutestica distintiva de los sistemas en este nivel es el anaacutelisis derivado de la especificacioacuten

formal del disentildeo y las teacutecnicas de verificacioacuten y el alto grado resultante de seguridad de que el

TCB se implementa correctamente Esta garantiacutea es de naturaleza de desarrollo comenzando con

un modelo formal de la poliacutetica de seguridad y una especificacioacuten formal de alto nivel del disentildeo

Independientemente del lenguaje de especificacioacuten particular o del sistema de verificacioacuten

utilizado existen los siguientes criterios importantes para la verificacioacuten del disentildeo de nivel A1

Meacutetodos formales y prueba de integridad de TCB

Estos son los uacutenicos sistemas con certificacioacuten A1 Boeing MLS LAN Gemini

Trusted Network Processor Honeywell SCOMP (United States Government

Department of Defense 1983)

46

25 Sistemas Operativos

Un sistema operativo actuacutea como intermediario entre el usuario de una computadora y el

hardware de la computadora El propoacutesito de un sistema operativo es proporcionar un entorno en

el que un usuario pueda ejecutar programas de manera conveniente y eficiente

Un sistema operativo es un software que administra el hardware de la computadora El

hardware debe proporcionar mecanismos apropiados para garantizar el correcto funcionamiento

del sistema informaacutetico y para evitar que los programas del usuario interfieran con el correcto

funcionamiento del sistema (Carretero Peacuterez de Miguel Anasagasti Garciacutea Carballeira amp Peacuterez

Costoya 2001)

Un sistema operativo es un programa que controla la ejecucioacuten de programas de aplicacioacuten

y actuacutea como una interfaz entre el usuario de una computadora y el hardware de la computadora

Una definicioacuten maacutes comuacuten es que el sistema operativo es el uacutenico programa que se ejecuta

en todo momento en la computadora (generalmente llamado kernel) y todo lo demaacutes son

programas de aplicacioacuten

Un sistema operativo se ocupa de la asignacioacuten de recursos y servicios como memoria

procesadores dispositivos e informacioacuten El sistema operativo incluye los programas para

administrar estos recursos como un controlador de traacutefico un programador un moacutedulo de

administracioacuten de memoria programas de E S y un sistema de archivos (Pawar 2016)

47

251 Windows Sistema operativo de la empresa Microsoft es un conjunto de programas

que administra los recursos de una computadora Windows empieza a trabajar cuando se enciende

o inicializa el equipo para gestionar el hardware empezando desde los niveles maacutes baacutesicos

Es importante conocer que los sistemas operativos funcionan tanto en las computadoras

como en diferentes dispositivos electroacutenicos que usan microprocesadores En este caso Windows

su versioacuten estaacutendar funciona con computadoras Microsoft domina el mercado de los sistemas

operativos debido a su comodidad se puede decir que eacuteste sistema operativo se encuentra

instalado en el 887 de los equipos de coacutemputo que cuentan con acceso a Internet en todo el

mundo

Se pueden mencionar algunas aplicaciones principales (que eacutestas tambieacuten pueden ser

desinstaladas por los usuarios o actualizadas sin que el sistema operativo se dantildee o deje de

funcionar) se encuentran el procesador de texto WordPad el navegador Internet Explorer el

reproductor multimedia Windows Media y el editor de imaacutegenes Paint

La principal novedad que aportoacute Windows desde sus oriacutegenes fue la facilidad para usarlo

y el atractivo visual De hecho su nombre (ldquoventanasrdquo) se debe a la forma en que el sistema

presenta a los usuarios los recursos con los que cuenta su computadora lo que facilita las tareas

cotidianas Windows tambieacuten suele recibir varias criacuteticas por sus problemas de seguridad y por

otros fallos

48

252 Registro de Windows El registro es una base de datos jeraacuterquica que contiene datos

que son criacuteticos para el funcionamiento de Windows y las aplicaciones y servicios que se ejecutan

en Windows Los datos estaacuten estructurados en un formato de aacuterbol Cada nodo en el aacuterbol se llama

clave Cada clave puede contener subclaves y entradas de datos llamadas valores A veces la

presencia de una clave es el uacutenico dato que requiere una aplicacioacuten otras veces una aplicacioacuten

abre una clave y usa los valores asociados con la clave (Microsoft Inc 2019) Una clave puede

tener cualquier nuacutemero de valores y los valores pueden tener cualquier forma El registro es

utilizado por

Autenticacioacuten

Nuacutecleo (Kernel)

Controladores de dispositivos

Servicios

SAM

Las carpetas del sistema se almacenaraacuten en distintas rutas de acceso dependiendo de la

versioacuten de Windows con la que se esteacute trabajando a continuacioacuten cuatro de los cinco archivos

que maacutes interesan a esta investigacioacuten se encuentran en la siguiente ubicacioacuten SystemRoot

System32 Config dentro de las siguientes sub llaves

SAM - HKEY LOCAL MACHINE SAM

SECURITY - HKEY LOCAL MACHINE SECURITY

SOFTWARE - HKEY LOCAL MACHINE SOFTWARE

SYSTEM - HKEY LOCAL MACHINE SYSTEM

49

253 Administrador de cuentas de seguridad El administrador de cuentas de seguridad

(SAM por sus siglas en ingleacutes) es una base de datos en donde se encuentran las cuentas de

seguridad Esto es utilizado por Windows para administrar las cuentas de usuario y contrasentildeas en

el formato hash

Las contrasentildeas nunca se almacenan en formato de texto claro Se almacenan en formato

de hash para protegerlas de los ataques La base de datos SAM se implementa como un archivo de

registro y las obtiene del kernel de Windows y mantiene un bloqueo exclusivo al archivo SAM

esto quiere decir que el archivo tiene cierta medida de seguridad para el almacenamiento de las

contrasentildeas (Hernandez 2013)

No es posible copiar el archivo SAM a otra ubicacioacuten en el caso de los ataques en liacutenea

Dado que el archivo SAM estaacute bloqueado con un bloqueo exclusivo al sistema de archivos no

puede ser copiado o movido mientras se ejecuta Windows El bloqueo no iniciaraacute hasta que la

excepcioacuten de la pantalla azul haya sido inicializada o el sistema operativo haya sido apagado Sin

embargo los archivos en formato hash de contrasentildeas fuera de liacutenea estaacuten disponibles para los

ataques de fuerza bruta el contenido del archivo SAM puede ser copiado o descargado utilizando

diversas teacutecnicas

Un identificador de seguridad (SID) es un valor uacutenico de longitud variable utilizado para

identificar a un usuario Cada cuenta tiene un SID uacutenico emitido por una autoridad como un

controlador de dominio de Windows y almacenado en una base de datos de seguridad Cada vez

50

que un usuario inicia sesioacuten el sistema recupera el SID para ese usuario de la base de datos y lo

coloca en el token de acceso para ese usuario El sistema usa el SID en el token de acceso para

identificar al usuario en todas las interacciones posteriores con la seguridad de Windows Cuando

se ha usado un SID como identificador uacutenico para un usuario o grupo no se puede volver a usar

para identificar a otro usuario o grupo

La seguridad de Windows usa SID en los siguientes elementos de seguridad

En descriptores de seguridad para identificar al propietario de un objeto y grupo

primario

En las entradas de control de acceso para identificar al usuario para quien el acceso

estaacute permitido denegado o auditado

En tokens de acceso para identificar al usuario y los grupos a los que pertenece

2531 Identificador de Seguridad (SID Security Identifier)

S - 1 - 5 - 21 - 3983109318 - 554656936 - 3066752241 - 1000

S - indica que es un string de SID

1 - el nivel de revisioacuten

5 - el identificador de valor de autoridad o authority value no siempre seraacute 5 Entre otros

valores que se pueden encontrar estaacuten los siguientes

51

0 - sin autoridad

1 - autoridad global

2 - autoridad local

3 - autoridad de creador

4 - autoridad no uacutenica

5 - autoridad NT

9 - autoridad de administrador de recursos

21 - 3983109318 - 554656936 - 3066752241 - es el dominio en el que se encuentra el

sistema o el identificador local de la computadora

1000 - ID uacutenico para cada cuenta aquiacute se encuentra el RID (Relative Identifier) Nuacutemero

de longitud variable cualquier grupo o usuario que se cree de manera diferente a la predeterminada

recibiraacute un RID de 1000 o superior En el caso de que el valor sea 500 responde a que este SID

representa la cuenta de un administrador el valor de 500 siempre seraacute el mismo en cualquier cuenta

de administrador a su vez el valor 501 representa el SID de una cuenta Invitado (Guest)

(Hernandez 2013)

254 Autenticacioacuten NTML NTLM (NT LAN Manager) es un protocolo empleado por

muchos productos de Microsoft para realizar la autenticacioacuten desafiacuteorespuesta por lo tanto es el

esquema de autenticacioacuten que por defecto usa Firewall de Microsoft y tambieacuten los productos del

servidor proxy

52

Este software fue desarrollado para afrontar el problema del trabajo con Tecnologiacuteas Java

en un entorno orientado a Microsoft Puesto que no se basa en ninguna especificacioacuten oficial de

protocolo por lo tanto no hay garantiacutea de que funciona correctamente en todos los casos Tambieacuten

ha estado en algunas instalaciones de Windows donde funcionoacute con eacutexito

La Autenticacioacuten NTLM se compone de dos protocolos protocolo de autenticacioacuten NTLM

y protocolo de autenticacioacuten LM Estos protocolos utilizan una metodologiacutea de hash diferente para

almacenar contrasentildeas de los usuarios en la base de datos SAM (Hernandez 2013) (Meneacutendez-

Barzanallana 17)

26 LINUX (ROCKS)

Rocks es una distribucioacuten para cluacutester de Linux de coacutedigo abierto que permite a los usuarios

finales construir de manera maacutes amigable cluacutesteres computacionales y muros de visualizacioacuten en

mosaico Cientos de investigadores de todo el mundo han utilizado Rocks para implementar su

propio cluacutester

Desde mayo de 2000 el grupo Rocks ha abordado las dificultades de implementar cluacutesteres

manejables Encaminados hacia un objetivo crear cluacutesters de manera maacutes sencilla Por sencilla

significa faacutecil de implementar administrar actualizar y escalar Este objetivo impulsa a los

creadores de esta herramienta a ayudar a entregar el poder computacional de los cluacutesteres a una

amplia gama de usuarios cientiacuteficos Estaacute claro que poner a disposicioacuten de una amplia gama de

53

cientiacuteficos plataformas de computacioacuten paralelas estables y manejables ayudaraacute enormemente a

mejorar el estado del arte en herramientas paralelas (Rocksclusters 2010)

261 Escritorio De todos los escritorios disponibles para el sistema operativo Linux

GNOME ha logrado convertirse en el maacutes eficiente estable y confiable sin dejar de ser sencillo

de usar De hecho la mayoriacutea de los usuarios independientemente de su experiencia pueden

trabajar con GNOME casi sin esfuerzo

Los usuarios que son nuevos tanto en Linux como en GNOME hariacutean mejor en conocer

los entresijos del escritorio que hacen que Linux no solo sea faacutecil sino tambieacuten divertido

Un entorno de escritorio agrupa programas que trabajan juntos para formar un espacio de

trabajo informaacutetico cohesivo unificado transparente e interactivo para los usuarios O para

decirlo de manera maacutes simple el entorno de escritorio es la interfaz de usuario para el sistema

operativo En el caso de GNOME ese sistema operativo es Linux Sin un entorno de escritorio su

uacutenica alternativa es una sesioacuten de Shell (liacutenea de comandos) basada en texto (Wallen 2019)

262 Paquete de Oficina Una suite ofimaacutetica es una coleccioacuten de software creada por el

mismo proveedor y disentildeada para ser utilizada para tareas rutinarias dentro de una organizacioacuten

Por lo general una suite ofimaacutetica incluye aplicaciones como procesamiento de texto hojas de

caacutelculo presentacioacuten correo electroacutenico toma de notas base de datos colaboracioacuten y otros tipos

de software relacionados En la mayoriacutea de los casos cada aplicacioacuten en la suite ofimaacutetica se puede

instalar por separado y todas las aplicaciones dentro de la suite admiten la interoperabilidad entre

54

siacute Microsoft Office Suite Lotus Live Notes y LibreOffice son todas suites de oficina de uso

comuacuten

263 Organizador de archivos Es una funcioacuten avanzada disentildeada para agrupar y

renombrar archivos usando sus atributos del sistema o meta atributos

Cada archivo tiene atributos del sistema como la fecha (Acceso Creado y Modificado) el

tipo de archivo (definido por extensioacuten) y asociado con la aplicacioacuten registrada de ese tipo de

archivo Estos atributos se pueden usar para generar un nuevo nombre de archivo o carpeta (grupo)

para cada archivo con el mismo atributo Ademaacutes de los atributos del sistema algunos archivos

en su mayoriacutea medios o imaacutegenes pueden contener metacampos como el nombre del artista el

tiacutetulo el nombre del aacutelbum y otros El Organizador de archivos tambieacuten usa estos metacampos

para agrupar archivos en una carpeta con el mismo atributo Por lo tanto el organizador de archivos

opera reglas de organizacioacuten de archivos que definen la jerarquiacutea de agrupacioacuten de carpetas y las

reglas de cambio de nombre de archivos

Asiacute como el conocido ldquoexplorador de Windowsrdquo Linux integra un organizador de archivos

y carpetas llamado NAUTILUS para realizar tareas de manejo de archivos como mover copiar

renombrar crear carpetas y de esta manera administrar nuestros dispositivos de almacenamiento

55

27 Agrupamiento (Cluacutester) de Computadoras

El agrupamiento (cluacutester) de computadoras estaacute conformado por una coleccioacuten de

computadoras autoacutenomas interconectadas trabajando unidas como un solo recurso de computacioacuten

integrado El concepto de agrupamiento de computadoras nacioacute cuando los pioneros de la

supercomputacioacuten intentaban difundir diferentes procesos entre varias computadoras para luego

poder recoger los resultados que dichos procesos debiacutean producir Con un hardware maacutes barato y

faacutecil de conseguir se pudo perfilar que podriacutean conseguirse resultados muy parecidos a los

obtenidos con aquellas maacutequinas mucho maacutes costosas (Chirinov 2003)

Un agrupamiento de computadoras se puede definir como el trabajo realizado por dos o

maacutes computadoras que en conjunto se encargan de proveer una determinada solucioacuten Tiene como

finalidad agrupar el poder de coacutemputo de los nodos implicados para proporcionar una mayor

escalabilidad disponibilidad y fiabilidad (Branch Bedoya amp Mesa Muacutenera 2008)

La escalabilidad es la capacidad de un equipo para hacer frente a voluacutemenes de trabajo

cada vez mayores sin por ello dejar de prestar un nivel de rendimiento aceptable

La disponibilidad y la fiabilidad se encuentran bastante relacionadas aunque difieren

ligeramente en algunos aspectos La disponibilidad es la calidad de estar presente y listo para su

uso mientras que la fiabilidad es la probabilidad de un correcto funcionamiento

56

Entre los tipos de agrupamiento maacutes comunes se pueden encontrar de alta disponibilidad

(ambiente a prueba de fallas) coacutemputo de alto desempentildeo (los procesos o las tareas dadas se

presentan como un solo sistema virtual) y escalamiento horizontal (se utiliza para proporcionar

una sola interfaz a un conjunto de recursos que pueden aumentar o disminuir arbitrariamente su

tamantildeo en un cierto periodo de tiempo) (Gonzaacutelez Ramiacuterez amp Rodriacuteguez Saacutenchez 2008)

271 Beowulf Es una clase de computadora masivamente paralela de altas prestaciones

principalmente construida a base de agrupamiento de componentes hardware estaacutendar (Llorens amp

Pentildea 2002) Consta de un conjunto de nodos minimalistas unidos por un medio de

comunicaciones econoacutemico Esto quiere decir que tienen lo miacutenimo para ejecutar su funcioacuten de

hecho los nodos por siacute solos no son capaces de ejecutar siquiera un sistema operativo (Nievas

Pino amp Arroyo) Se puede ver como una supercomputadora paralela construida con hardware

comercial de faacutecil adquisicioacuten que posee como sistema operativo Linux Los cluacutesters Beowulf son

extremadamente poderosos pero no son para todas las personas Su principal desventaja es que

requieren software disentildeado para poder aprovechar los recursos del cluacutester (Lizaacuterraga 2002)

272 Mosix Seguacuten Peacuterez (2001) la arquitectura Mosix estaacute basada en la misma ideologiacutea

de la arquitectura Beowulf Se basa en un conjunto de parches aplicados al nuacutecleo (kernel) de Linux

y que asignan a todo el grupo de nodos un espacio de direcciones y de procesos comuacuten gracias al

cual los procesos migran de uno a otro con el fin de equilibrar favorablemente la carga del sistema

global Es una herramienta disentildeada para realizar balanceo de carga en el agrupamiento de forma

totalmente transparente de manera tal que los nodos se comportan como una sola maacutequina y asiacute

incrementar el aprovechamiento de cada uno de los nodos (Chaacutevez y otros 1999) La principal

57

ventaja de Mosix frente a Beowulf se basa precisamente en esto Mosix da mejores respuestas que

Beowulf frente a la caiacuteda o insercioacuten de nodos A parte de esto Mosix permite un cambio constante

de aplicacioacuten o incluso el correr aplicaciones independientes de forma simultaacutenea

273 OpenMosix OpenMosix es una extensioacuten del proyecto Mosix Seguacuten Chirinov

(2003) la idea de este modelo es que la distribucioacuten de tareas en el cluacutester la determina OpenMosix

de forma dinaacutemica conforme se van creando tareas Cuando un nodo estaacute demasiado cargado las

tareas que se estaacuten ejecutando pueden migrar a cualquier otro nodo del cluacutester Asiacute desde que se

ejecuta una tarea hasta que eacutesta muere podraacute migrar de un nodo a otro sin que el proceso sufra

mayores cambios

Ademaacutes OpenMosix funciona a nivel de kernel por tanto puede conseguir toda la

informacioacuten que necesite para decidir que tanto estaacute cargado un sistema y queacute pasos se deben

seguir para aumentar el rendimiento ademaacutes puede realizar maacutes funciones que cualquier

aplicacioacuten a nivel de usuario

Despueacutes de elegir el tipo de cluacutester a utilizar se procede a elegir los elementos baacutesicos que

se emplearaacuten para implementar el cluacutester capacidad de procesamiento memoria espacio del disco

de cada nodo asiacute como tambieacuten el ancho de banda de la comunicacioacuten entre los nodos Se deberaacute

decidir cuaacuteles son importantes basaacutendose en la variedad de aplicaciones que se piensen ejecutar

en el cluacutester y de la cantidad de dinero que se disponga para construirlo

58

Bajo estos mismos paraacutemetros se debe escoger tambieacuten el tipo de red que interconectaraacute

los nodos (Turner 2004)

Luego se debe escoger el sistema operativo a utilizar Esta eleccioacuten dependeraacute mucho de

la maacutequina que se escoja Linux es siempre una opcioacuten en cualquier maacutequina y es la eleccioacuten maacutes

comuacuten Muchas de las herramientas necesarias para la implementacioacuten de un cluacutester han sido

desarrolladas bajo Linux Pero existen cluacutesters corriendo bajo Windows NT UNIX Solaris y AIX

59

Capiacutetulo 3 Implementacioacuten de Cluacutester

31 Requisitos previos

Antes de iniciar la instalacioacuten del FrontEnd es necesario asegurarse que las conexiones de

red de los equipos junto con la configuracioacuten de la BIOS de cada uno sean las correctas

311 Conexioacuten de los equipos y acceso a la red

Un cluacutester de alto desempentildeo funciona como un uacutenico equipo el cuaacutel comparte los recursos

de los nodos esclavos con el nodo maestro para ello es esencial la existencia de una red interna de

alta velocidad por medio de la cual se realice la comunicacioacuten entre el nodo maestro y los nodos

esclavos como se muestra en la Figura 31 El nodo maestro necesitaraacute 2 tarjetas de red de alta

Figura 31 Esquema tiacutepico de configuracioacuten de un cluacutester (Fuente Elaboracioacuten propia)

60

velocidad una para la comunicacioacuten interna y otra para la comunicacioacuten con redes externas El

sistema operativo Rocks asigna automaacuteticamente la interface ldquoeth0rdquo a la red interna del cluacutester y

la interface ldquoeth1rdquo a la red externa En caso de que Rocks sea incapaz de determinar cuaacutel es la red

externa debido a la falta de conexioacuten a internet estas podriacutean ser asignadas de manera incorrecta

por tal motivo se sugiere asegurar el nombre de cada una de las interfaces

Dado que Rocks no permite volverlas a asignar una vez finalizada la instalacioacuten es

necesario volver a reinstalarlo para poder solucionar este inconveniente

312 Configuracioacuten de la BIOS Para evitar problemas durante la instalacioacuten conviene

configurar correctamente la Bios

3121 ATAIDE Mode Algunos sistemas operativos puede que no sean capaces de

reconocer el controlador del disco duro como es en el caso de esta distribucioacuten de Rocks usada

Para evitar complicaciones de tener que antildeadir el controlador a mano lo mejor es habilitar el modo

ldquoLegacyrdquo de controlador de disco duro

61

Para ello se accede a la Bios pulsando F2 al encender el equipo se situacutea en la pestantildea

ldquoAdvancedrdquo y se selecciona ldquoDrive Configurationrdquo como se muestra en la Figura 32

Figura 32 Imagen del Bios del equipo en la opcioacuten ldquodrive configurationrdquo (Fuente Elaboracioacuten propia)

Figura 33 Bios ATAIDE Legacy Mode (Fuente Elaboracioacuten propia)

62

Dentro del menuacute se tiene que seleccionar el Modo ldquoLegacyrdquo en la opcioacuten ldquoATAIDE

Moderdquo como se muestra en la Figura 33 y para salir se guardan los cambios con F10

3122 PXE Al momento de instalar un nodo puede ocurrir falla al arrancar y aparecer

bootsplash (Reboot and Select proper device) Para evitarlo es necesario habilitar la opcioacuten de

PXE para que tome los archivos de instalacioacuten del nodo maestro a traveacutes de la red interna

En la Bios se selecciona la pestantildea ldquoBootrdquo y dentro de ese mismo menuacute se deshabilita

ldquoSilent bootrdquo y se habilita la opcioacuten de ldquoPXE boot to lanrdquo como se muestra en la Figura 34

Finalmente hay que verificar que en la secuencia de arranque (Figura 35) como primer

dispositivo sea desde red para que de esta manera inicie desde el PXE

Figura 34 Bios Boot PXE (Fuente Elaboracioacuten propia)

63

Se guardan los cambios antes de salir

32 Instalacioacuten de Sistema Operativo Rocks

Una vez configurados los equipos se enciende el equipo que seraacute el nodo maestro

(FrontEnd) en el cuaacutel previamente se ha modificado la secuencia de inicio del boot desde la Bios

de modo que al insertar el CD de Rocks eacuteste procederaacute a iniciar la instalacioacuten con la siguiente

pantalla que se muestra a continuacioacuten

Figura 35 Bios Boot device prioriry (Fuente Elaboracioacuten propia)

64

Para iniciar la instalacioacuten uacutenicamente se selecciona la opcioacuten ldquoInstall CentOS 7rdquo como se

muestra en la Figura 36 dando asiacute comienzo al proceso de instalacioacuten Tras finalizar un proceso

de carga en memoria Rocks mostraraacute un formulario en entorno graacutefico mediante el cual

procederemos a configurar el FrontEnd

Esta primera pantalla se muestra coacutemo se desea realizar la instalacioacuten puede realizarse

por medio de la descarga del sistema operativo (se requiere internet) En este caso como se muestra

en la Figura 37 dado que previamente se descargoacute el DVD completo se seleccionoacute ldquoCDDVD

based rollsrdquo

Figura 36 Pantalla de Inicio de instalacioacuten de Rocks (Fuente Elaboracioacuten propia)

65

A continuacioacuten Figura 38 se selecciona de la lista de Rolls aquellos que se desean instalar

Figura 37 Pantalla de seleccioacuten de Rolls (Fuente Elaboracioacuten propia)

Figura 38 Listado de opciones de rolls para instalar (Fuente Elaboracioacuten propia)

66

Tras presionar el botoacuten ldquoSubmitrdquo la siguiente pantalla (Figura 39) muestra formulario en

el que hay que indicar la informacioacuten baacutesica del cluacutester entre las cuales aparecen

Fully-Qualified Host Name Nombre con el que se conoceraacute en la red externa el cluacutester

Cluster Name Nombre utilizado para ser identificado dentro de las herramientas del cluacutester

Certificate Organization Locality State and Country Organizacioacuten a la que pertenece el

cluacutester la localidad el estado y la ciudad

Contact URL and LattitudeLongitude Contacto direccioacuten web y posicioacuten GPS

Figura 39 Informacioacuten baacutesica del cluacutester a instalar (Fuente Elaboracioacuten propia)

67

Una vez que se ingresa la informacioacuten al cluacutester se presiona el botoacuten ldquoListordquo y

posteriormente se podraacute cambiar la configuracioacuten baacutesica de la red interna del cluacutester En este caso

Figura 310 se dejoacute el valor por defecto una IP de clase B (1011116)

El siguiente paso es la configuracioacuten de la red externa (para tener acceso a internet) En

este punto se introducen los datos de la red externa a la que se encuentra conectado el nodo

maestro como se muestra en la Figura 311

Figura 310 Configuracioacuten Ethernet de la red privada (Fuente Elaboracioacuten propia)

Figura 311 Configuracioacuten Ethernet de la red puacuteblica (Fuente Elaboracioacuten propia)

68

Para terminar de configurar la red externa como se muestra en la Figura 312 se ingresa la

direccioacuten IP del Gateway y los DNS (Servidor de nombre de dominio) que va a usar para el acceso

a internet

Se continuacutea con el resto del formulario donde se introduce la contrasentildea para el usuario

root tal y como se muestran en la Figura 313

Figura 312 Configuracioacuten de DNS y Gateway (Fuente Elaboracioacuten propia)

Figura 313 Ingresar contrasentildea de usuario root (Fuente Elaboracioacuten propia)

69

Paso siguiente se procede a seleccionar la zona horaria como se muestra en la Figura 314

donde se encuentra ubicado el cluacutester asiacute como un servidor de donde podraacute obtener la zona horaria

automaacuteticamente en este caso se dejoacute el valor por default

En el formulario de la Figura 315 se selecciona la forma de particionar el disco duro

(automaacutetica manual) una vez seleccionado daraacute comienzo al proceso de instalacioacuten de manera

Figura 314 Configuracioacuten horaria (Fuente Elaboracioacuten propia)

Figura 315 Particiones del disco duro (Fuente Elaboracioacuten propia)

70

desatendida Cuando ha concluido la instalacioacuten el equipo se reiniciaraacute y se requeriraacute iniciar con

el usuario root y la contrasentildea establecida previamente

321 Configuracioacuten del teclado Debido a que el teclado por defecto estaacute en idioma

ingleacutes podriacutea provocar problemas al momento de escribir la contrasentildea u otros comandos

Seguacuten las pruebas realizadas aunque se cambie la configuracioacuten del teclado desde el menuacute

de preferencias uacutenicamente se mantiene dentro de la sesioacuten desde la que se ha cambiado dicha

opcioacuten (lo cual implica que la contrasentildea de usuario hay que introducirla seguacuten la distribucioacuten

inglesa)

33 Instalacioacuten de los nodos

Previo a la instalacioacuten de los nodos esclavos cada uno de los equipos fueron configurados

desde la Bios para que arranquen desde la red (seccioacuten 3122) Para ir antildeadiendo los nodos solo

se tiene que introducir el siguiente comando desde nuestro FrontEnd

$insert-ethers

A continuacioacuten como se muestra en la Figura 316 apareceraacute una ventana en la pantalla

en la cual se seleccionaraacute la opcioacuten ldquoComputerdquo

71

Una vez realizado este paso se procede a encender los equipos que funcionaraacuten como

nodos esclavos uno a uno

Se sugiere esperar a que cada nuevo equipo encendido esteacute marcado con un asterisco antes

de proceder a encender el siguiente como se muestra en la Figura 317 De esta manera se asegura

que cada nuevo nodo antildeadido posea el nombre y numeracioacuten deseada

Figura 316 Pantalla para ingresar nodos (Fuente Elaboracioacuten propia)

Figura 317 Indicador de insercioacuten de nuevos nodos (Fuente Elaboracioacuten propia)

72

Puede darse el caso de que un nodo no sea detectado automaacuteticamente eso indica que se

ha omitido alguacuten paso o parte de la configuracioacuten realizada hasta el momento es incorrecta En ese

caso comprobar lo siguiente

Que el nodo esclavo este correctamente conectado a la red interna

Que el FrontEnd (nodo maestro) tenga correctamente configurada la red interna y externa

Que el PXE esteacute habilitado en la Bios del nodo esclavo

331 Administracioacuten de nodos Algunos de los comandos maacutes uacutetiles para para la gestioacuten

de los nodos son los siguientes

Eliminar un nodo de la lista

Reinstalar un nodo

Listar los nodos ya instalados

Acceder a un nodo

$rocks remove host nombre_nodo

$rocks remove host nombre_nodo

$rocks set host boot nombre_nodo action=install

$rocks set host boot nombre_nodo action=install

$rocks list host

$rocks list host

$ssh nombre_nodo

$ssh nombre_nodo

73

Ejecutar un comando de manera remota a un nodo

332 Creacioacuten de cuentas de usuario Para agregar a un usuario hay que realizar los

siguientes pasos

1 Creacioacuten de la cuenta

$useradd nombre_usuario

2 Asignacioacuten de una contrasentildea

$passwd nombre_usuario

3 Sincronizacioacuten de la cuenta de usuario con el resto de nodos

$rocks-user-sync

333 Configuracioacuten del directorio compartido El directorio share es compartido por el

FrontEnd y el resto de nodos se localiza dentro del FrontEnd en la carpeta exports siendo la

carpeta share un enlace simboacutelico a esta uacuteltima

Al principio es posible que no se sincronicen correctamente los archivos introducidos en el

directorio debido a que la carpeta inicialmente estaacute vaciacutea por lo que para solucionar este

inconveniente puede usarse el comando siguiente para reiniciar dicho servicio

$ssh nombre_nodo lsquocomandorsquo

$ssh nombre_nodo lsquocomandorsquo

$cd

$export fs ndashrv

service nfs restart

$cd

$export fs ndashrv

service nfs restart

74

34 Operaciones baacutesicas de Rocks

Comandos y aplicaciones esenciales para el manejo del cluacutester

Ver que rolls estaacuten instalados

$rocks list roll

Visualizar el estado del sistema Figura 318

$qstat ndashf

Probar el sistema de colas para distribuir tareas a los nodos

Para ello se prueba que el SGE del cluacutester funcione enviaacutendole una serie de trabajos

mediante el comando qsub

En primer lugar se crea un fichero (pruebapl) que tenga permisos de ejecucioacuten con el

siguiente contenido

Figura 318 Comando qstat ndashf (Fuente Elaboracioacuten propia)

75

usrbinperl

for(my $i=0$ilt30$i++) sleep(2) print okn

Y se ejecuta con el siguiente comando

$ for ((i=1ilt=10i+=1)) do qsub pruebapl done

Al ejecutarse se puede comprobar que los trabajos se han mandado Figura 319

Y al realizar de nuevo un ldquoqstat ndashfrdquo Figura 320 se observa coacutemo se van realizando

Figura 319 Enviacuteo de trabajos por medio del comando qsub (Fuente Elaboracioacuten propia)

Figura 320 Estado de los trabajos pendientes mostrados por qstat ndashf (Fuente Elaboracioacuten propia)

76

Para ver la carga de trabajo en el cluacutester de manera global y de forma graacutefica se tiene que

ingresar en un navegador web en la siguiente direccioacuten httplocalhostganglia apareceraacute la

Figura 321

Figura 321 Visualizacioacuten de la distribucioacuten de cargas en el cluacutester usando la herramienta Ganglia (Fuente Elaboracioacuten propia)

77

Capiacutetulo 4 Metodologiacutea y Resultados

Una vez finalizada la instalacioacuten y puesta en operacioacuten del equipo se analizaron diferentes

metodologiacuteas de trabajo lo que implicoacute un trabajo arduo debido a que existen complicaciones

cuando se buscan temas relacionados a vulnerar sistemas operativos La realizacioacuten de este

proyecto estaacute basado en la metodologiacutea de Joshua Picolet ldquoCracking Methodologyrdquo (Picolet

2017)

41 Obtener Archivo hash

Se pueden vulnerar contrasentildeas de Windows de diferentes maneras Una de ellas es

mediante el acceso al archivo del Administrador de cuentas de seguridad (SAM) el cual se detalla

en el apartado 253 a traveacutes de la obtencioacuten de las contrasentildeas del sistema en su forma hash por

medio de herramientas diferentes Alternativamente las contrasentildeas se pueden leer desde la

memoria lo que tiene el beneficio adicional de recuperar las contrasentildeas en texto plano y evitar el

requisito de descifrado Para comprender los formatos que se observan cuando se descarguen

hashes del sistema de Windows se requiere una breve descripcioacuten de los diferentes formatos de

almacenamiento

Originalmente las contrasentildeas de Windows de menos de 15 caracteres se almacenaban en

el formato hash de Lan Manager (LM) Algunos sistemas operativos como Windows 2000 XP y

Server 2003 continuacutean usando estos hashes a menos que esteacuten deshabilitados por el usuario

Ocasionalmente un sistema operativo como Windows Vista puede almacenar el hash LM para la

compatibilidad con otros sistemas Seguacuten analistas incluye varias vulnerabilidades como dividir

78

la contrasentildea en dos bloques y permitir que cada uno se descifre de forma independiente Mediante

el uso de tablas Rainbow es trivial descifrar una contrasentildea almacenada en un hash LM

independientemente de la complejidad Este hash se almacena con la misma contrasentildea calculada

en el formato de hash NT como el que se muestra en el siguiente ejemplo

Ejemplo de un hash NTLM con el componente LM y NT

Administrator500611D6F6E763B902934544489FCC9192BB71ED1E7F2B60ED5A2

EDD28379D45C91

Los sistemas operativos Windows maacutes recientes como el Windows 8 y 10 usan el hash NT

En teacuterminos simples no hay una debilidad significativa en este hash que lo diferencie de cualquier

otra funcioacuten hash criptograacutefica Se requieren meacutetodos de descifrado como lo es la fuerza bruta o

ataque de diccionario para recuperar la contrasentildea si uacutenicamente se almacena en el formato NT

Ejemplo de un hash NTLM uacutenicamente con el componente NT (como se ve en los sistemas

Windows mas recientes

Administrator500NOPASSWORDEC054D40119570A4663

4350291AF0F72

Es importante sentildealar que la cadena NO PASSWORD es variable seguacuten la herramienta

que se utilice Otras pueden presentar esta informacioacuten como ceros rellenos o comuacutenmente puede

79

ver la cadena ldquoAAD3B435B51404EEAAD3B435B51404EErdquo en lugar de ninguna contrasentildea

Esto significa que el hash LM estaacute vaciacuteo y no estaacute almacenado

El archivo hash se encuentran en el directorio ldquoWindows System32 configrdquo y se

necesitan ambos archivos SAM y SYSTEM Ademaacutes tambieacuten se encuentran en el archivo de

registro HKEY_LOCAL_MACHINE SAM al que no se puede acceder durante el tiempo de

ejecucioacuten Finalmente las copias de seguridad se pueden encontrar a menudo en ldquoWindows

Repairrdquo (Peleus 2019)

Para extraer el archivo hash de un sistema operativo con un nivel de seguridad C1 existen

diferentes meacutetodos en esta ocasioacuten se procederaacute a iniciar el equipo objetivo con una distribucioacuten

de Linux desde una memoria USB como se muestra en la figura 41 para de esta manera ingresar

al directorio CWINDOWSSystem32Config directorio de ubicacioacuten de los archivos SAM y

SYSTEM que son los necesarios para obtener el archivo hash (Caballero 2018)

Figura 41 Arranque con LiveUSB KaliLinux (Fuente Elaboracioacuten propia)

80

42 Dar Formato al Hash

En este punto es donde se tiene que identificar el algoritmo con el que fueron encriptados

los archivos SAM y SYSTEM que se han obtenido en el punto anterior con la finalidad de

seleccionar el tratamiento que se les daraacute El algoritmo de encriptacioacuten del archivo SAM de

Windows 10 es NTLM y ademaacutes estaacute almacenado en un formato binario (ByteBleeder 2017) por

lo que fue necesario instalar la herramienta con licencia GNU samdump2 para obtener la syskey y

de esta manera poder extraer los hash desde el archivo SAM de Windows

En la figura 42 se han obtenido los hashes del archivo SAM donde se puede observar que

los usuarios Administrador e Invitado estaacuten deshabilitados ademaacutes de que existen tres cuentas de

usuario activas las cuales son Gad prueba y usuarioprueba cada una con su contrasentildea cifrada

en formato NTLM a la derecha del nombre de usuario la cuenta usuarioprueba fue a la que se le

realizoacute el anaacutelisis que se detalla posteriormente

43 Evaluar la fuerza del Hash

En criptografiacutea se dice que un algoritmo criptograacutefico se rompe si por alguacuten meacutetodo se

consigue reducir su fortaleza es decir reducir por ejemplo su entropiacutea de los 2256 bits teoacutericos a

Figura 42 Resultado de la ejecucioacuten de la herramienta samdump2 (Fuente Elaboracioacuten propia)

81

tan soacutelo 2255 por ejemplo El hecho de que se encuentre una colisioacuten no implica necesariamente

que un algoritmo se haya roto pues podriacutea haber sido realizado mediante fuerza bruta pero puede

ser una causa

Un ataque de colisioacuten significa que encuentro dos entradas diferentes que producen el

mismo resultado de un hash particular Este es generalmente el tipo de ataque maacutes faacutecil Es el tipo

de ataque que se conoce desde hace varios antildeos contra MD5

Dado que una utilidad importante de las funciones hash estaacute en las firmas digitales

encontrar colisiones puede facilitar falsificar firmas digitales Es decir dos mensajes distintos que

tengan un mismo resumen tienen ademaacutes la misma firma y un atacante puede reemplazar un

mensaje por el otro Un ejemplo de este ataque fue demostrado en 2008 por un grupo de

investigadores en Aacutemsterdam los cuales falsificaron un certificado raiacutez mediante el uso de un

ataque de colisioacuten contra el algoritmo MD5 (Preukschat 2015)

Un ataque previo a la imagen generalmente es mucho maacutes difiacutecil es encontrar otra entrada

que produzca el mismo resultado que un hash que ya se conoce

Para tratar de aclarar la diferencia aquiacute en un ataque de colisioacuten encuentro dos entradas A

y B que producen el mismo resultado En un ataque de preimagen comienzo a partir de alguacuten

resultado conocido X y encuentro una entrada que produciraacute X como resultado (Coffin 2015)

82

Para realizar esta evaluacioacuten se tomoacute como base la tabla del apeacutendice Hash craking

benchmark (Picolet 2017) el objetivo es observar el comportamiento y velocidad del Hash

mencionado cuando fue sometido a pruebas de criptoanaacutelisis Si se trata de un Hash lento se deberaacute

ser maacutes selectivo en queacute tipos de diccionarios y meacutetodos de criptoanaacutelisis se le debe aplicar Si es

un Hash raacutepido se puede ser maacutes libre con la estrategia de criptoanaacutelisis Este estudio busca

realizar una prueba de criptoanaacutelisis mostrando las diferencias entre el poder de procesamiento de

un cluacutester de 17 nodos contra una computadora personal por lo que no necesariamente se

implementaraacute el meacutetodo oacuteptimo para la realizacioacuten del criptoanaacutelisis

44 Calcular la capacidad del equipo

Con la informacioacuten de la evaluacioacuten de la fuerza del Hash obtenida en el apartado anterior en

este apartado se tiene que establecer la capacidad de la plataforma o plataformas que realizaraacuten

el criptoanaacutelisis

Para conocer la capacidad de procesamiento del cluacutester de alto rendimiento se utilizoacute la

herramienta Linpack Benchmark HPL es una implementacioacuten portaacutetil del Benchmark de alto

rendimiento LINPACK para equipos de coacutemputo distribuido Actualmente se utiliza para obtener

varios resultados en la lista actual de Top500 de HP cluacutesters (Dongarra 2010)

El Linpack Benchmark (HPL del Ingleacutes High-Performance Linpack Bench-mark) es un

software que resuelve un sistema lineal aleatorio de doble precisioacuten aritmeacutetica (64 bits) en equipos

de memoria distribuida El rendimiento muestra el nuacutemero de operaciones de punto flotante por

segundo logradas por el sistema (Petitet Whaley Dongarra amp Cleary 2008)

83

El HPL fue desarrollado en el Argone National Laboratory por Jack Don-garra en 1976 y

es uno de los maacutes usados en sistemas cientiacuteficos y de ingenieriacutea para el caacutelculo de prestaciones

Las principales caracteriacutesticas del algoritmo utilizado por el HPL son

Distribucioacuten ciacuteclica de datos de bloques de dos dimensiones

Variante derecha de la factorizacioacuten LU con pivoteo parcial (Teacutecnica de pivoteo

Dicta que el elemento pivote que debe escogerse es el mayor absolutamente de cada

columna)

Factorizacioacuten recursiva con pivoteo y reenviacuteo de columna

Distintas topologiacuteas virtuales de reenviacuteos

Algoritmo de reduccioacuten de reenviacuteo para ancho de banda (Castelloacute Gimeno 2014)

La resolucioacuten del sistema de ecuaciones se realiza del siguiente modo

1 Se crea un sistema de ecuaciones

(1)

119860119909 = 119887

(2)

119860 isin 119877119899119909119899

(3)

119909 119887 isin 119877119899

84

HPL calcula que la solucioacuten para un sistema de ecuaciones lineales se puede generalizar

como 119860119909 = 119887 donde 119860 es una matriz 119873 119909 119873 cuyos valores se generan aleatoriamente

119909 119910 119887 son vectores de tamantildeo 119873 Como se muestra en la Figura 43

2 Primero se calcula la factorizacioacuten 119871119880 con pivoteo parcial de los coeficientes 119899 y 119899 + 1

de la matriz [119860 119887]

(4)

119875119903[119860 119887] = [[119871119880] 119910]

(5)

119875119903 119871 119880 isin 119877119899119909119899

(6)

119910 isin 119877119899

El primer paso es la factorizacioacuten de la matriz 119860 en una matriz triangular superior 119880

y una matriz triangular inferior 119871 tal que 119860 = 119871119880 La factorizacioacuten se usa para calcular

el vector solucioacuten 119909

3 Una vez el pivoteo (representado por la permutacioacuten de la matriz 119875119903) y la factorizacioacuten

inferior se aplican sobre 119887 la solucioacuten se obtiene en un paso resolviendo el sistema

superior triangular

Figura 43 Sistema de Ecuaciones tipo 119860119909 = 119887 (Fuente Elaboracioacuten propia)

85

(7)

119880119909 = 119910

La matriz triangular inferior izquierda y el conjunto de pivotes no se devuelven en el

resultado Para la estabilidad numeacuterica el algoritmo de factorizacioacuten utiliza un pivote parcial de

fila

La implementacioacuten paralela de Linpack divide la matriz 119860 119873 119909 119873 en una cuadriacutecula de

procesos 119875 119909 119876 bidimensional y luego la divide en subgrupos de mosaicos 119873119861 119909 119873119861 (Petitet

Whaley Dongarra amp Cleary 2008)

Utilizando la herramienta HPL en esta investigacioacuten se obtuvieron los siguientes

resultados

La prueba abordoacute el ajuste de 119873 y la eficiencia obtenida en comparacioacuten con el rendimiento

maacuteximo Se determinoacute un valor para 119873 = 800000 aleatoriamente para ejecutar HPL en todo el

cluacutester Sin embargo el tiempo fue excesivo por lo tanto se determinoacute que este tamantildeo del

problema fue demasiado grande para el cluacutester Al realizar otros experimentos con valores maacutes

pequentildeos de 119873 se obtuvieron mejores resultados de rendimiento La Tabla 41 muestra el

rendimiento de HPL en GFlops para 119873 = 300000 400000 y 500000 Como se puede observar

en la Tabla 41 se obtuvo el mejor resultado de rendimiento 850 GFlops para 119873 = 500000 para

valores mayores de 119873 la distribucioacuten de cargas del cluacutester empieza a sobrepasar su capacidad como

se muestra en la Figura 44 y la vez su rendimiento disminuye Esto ocurre porque la cantidad de

memoria utilizada con las memorias intermedias de comunicacioacuten MPI es mayor de lo esperado

Por lo tanto es necesario dejar maacutes del 20 de la memoria para el sistema (Petitet Whaley

86

Dongarra amp Cleary 2008) Tambieacuten se realizaron pruebas usando solo un nodo de coacutemputo y el

rendimiento fue de 34 GFlops para 119873 = 20000

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia)

Analizando la eficiencia obtenida para la ejecucioacuten de un solo nodo cuando 119873 = 20000

se obtuvo el 823 del rendimiento maacuteximo (el rendimiento maacuteximo para un solo nodo es 477

Gflops) Para todo el cluacutester el rendimiento maacuteximo seriacutea 119879119898119886119909 = 477 119909 17 =

8109 119866119891119897119900119901119904 aproximadamente

Figura 44 Distribucioacuten de cargas del cluacutester

0

500

1000

300000 400000 500000

Gflops

Gflops

87

La Figura 44 titulada ldquoDistribucioacuten de cargas del cluacutesterrdquo muestra la imagen de la

herramienta Ganglia de manera graacutefica a traveacutes de cuadros que variacutean de color dependiendo de la

carga que tenga cada uno de los nodos al momento de implementar la herramienta HPL De manera

inicial indica que el cluacutester tiene un total de 17 equipos de 4 cores cada uno eso da un total de 68

cores trabajando sin equipos inactivos Muestra tambieacuten una sobrecarga en el cluacutester y un

porcentaje promedio de 100 de uso en la uacuteltima hora

45 Establecer Estrategia

Esto significa uacutenicamente que en este apartado se realizaraacute una guiacutea baacutesica para procesar

los hashes obtenidos sin perder de vista que cada escenario a criptoanalizar es uacutenico en funcioacuten

de las circunstancias externas Como ya se ha mencionado anteriormente esta estrategia de

criptoanaacutelisis se ha planteado implementar dos meacutetodos los cuales son Fuerza Bruta y ataque de

diccionario sin importar si son o no los oacuteptimos debido a que se realizaraacute una comparativa de

capacidad de procesamiento

451 Fuerza Bruta Una vez que se han intentado varios meacutetodos y han fallado se puede

iniciar un ataque de fuerza bruta estaacutendar poniendo especial atencioacuten en la cantidad de siacutembolos

del alfabeto que puede usar el equipo a analizar Por encima de 8 caracteres esto generalmente no

tiene sentido debido a limitaciones de hardware y entropiacutea (complejidad de la contrasentildea) Una

contrasentildea de Windows seguacuten Microsoft (Microsoft Inc 2019) una contrasentildea de Windows debe

estaacute formada por

88

26 Caracteres mayuacutesculas de la ldquoArdquo a la ldquoZrdquo

26 Caracteres minuacutesculas de la ldquoardquo a la ldquozrdquo

10 Diacutegitos de base 10 (0 a 9)

32 Caracteres especiales (~$^amp_-+=|()[]ltgt)

94 Caracteres alfanumeacutericos en total

4511 Cantidad de combinaciones posibles Si se usa una clave numeacuterica (nuacutemeros del 0

al 9) existen 10 posibilidades de 4 diacutegitos de longitud que es la extensioacuten por defecto de los

teleacutefonos celulares Para 4 diacutegitos las combinaciones posibles seriacutean 10 mil 104 = 10000

(Labaca Castro 2014)

Por otro lado si tomamos un alfabeto de 26 letras mayuacutesculas y 26 minuacutesculas 10 nuacutemeros

y 10 caracteres especiales en total tenemos 72 diferentes posibilidades para un uacutenico caraacutecter Eso

significa que las combinaciones para una contrasentildea de 4 caracteres seriacutean 724 = 26873856

Baacutesicamente maacutes de 26 millones de combinaciones en una clave de 4 caracteres contra 10 mil en

una clave de 4 diacutegitos numeacutericos En este estudio se utiliza la contrasentildea de bloqueo descrita en el

apartado anterior que es de 94 combinaciones para cada caraacutecter teniendo una longitud de 7

caracteres por lo tanto seraacuten 947 = 64847759000000 de posibles combinaciones que

nuestros equipos deben explorar para obtener la contrasentildea correcta

Como se mencionoacute en el apartado 42 el usuario sobre el cual se realizoacute el criptoanaacutelisis

fue usuarioprueba el cual constaba de una contrasentildea de longitud 7 caracteres la cual despueacutes

de realizado el anaacutelisis y como se puede observar en la Figura 45

89

1 Anaacutelisis a usuario usuarioprueba

2 Nuacutemero de nodos en operacioacuten 17

3 Nuacutemero de procesos ejecutaacutendose de forma paralela 68

4 Tiempo de duracioacuten del anaacutelisis en el cluacutester 122727 horas

5 Contrasentildea criptoanalizada Pass7

Asiacute mismo en la Tabla 42 se muestra el resultado final y el tiempo de duracioacuten del

criptoanaacutelisis realizado al archivo SAM con el cluacutester y la computadora personal

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Horas)

1 (PC) 4 1075316

17 (Cluacutester) 68 122727

1

2

3

4 5

Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester (Fuente Elaboracioacuten propia)

90

452 Diccionario Meacutetodo empleado para romper la seguridad de los sistemas basados en

contrasentildeas (password) en la que el atacante intenta dar con la clave adecuada probando todas (o

casi todas) las palabras posibles ingresadas previamente en un diccionario idiomaacutetico

Generalmente se emplean programas especiales que se encargan de ello

Este meacutetodo suele ser maacutes eficiente que el meacutetodo de fuerza bruta debido a que muchas

usuarios casi siempre suelen utilizar contrasentildeas con una o varias palabras existentes en su lengua

para que la contrasentildea no sea olvidada faacutecilmente y sea sencilla de recordar esto no es una praacutectica

recomendable (Alegsa 2018)

Para realizar este meacutetodo se utilizoacute un diccionario descargado de internet el cual contiene

10000000 de posibles contrasentildeas (g0tmi1k 2018)

Ademaacutes se ejecutoacute un programa creado en lenguaje C (Anexo 1) a traveacutes de la

implementacioacuten de las libreriacuteas MPI y open MPI propias de la arquitectura de cluacutester de

computadoras Este programa fue ejecutado en los mismos equipos descritos anteriormente para

obtener todos los nuacutemeros primos encontrados dentro de un intervalo dado En este caso el

intervalo dado fue de 10000000 con los siguientes resultados mostrados en la Tabla 43

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos (Fuente Elaboracioacuten

propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Segs)

1 (PC) 4 5078

17 (Cluacutester) 68 00013

91

453 Analizar los resultados Posterior a realizar el criptoanaacutelisis y descifrar con eacutexito

una cantidad suficiente de hashes se analizan los resultados en busca de pistas o patrones Este

anaacutelisis puede ayudar a tener eacutexito en cualquier hash restante

454 Personalizar ataques Tomando como base el anaacutelisis de resultados realizado

previamente se disentildearaacuten diversas estrategias personalizadas que aprovechen las vulnerabilidades

conocidas o patrones Los ejemplos seriacutean ataques de maacutescara personalizados o reglas para

adaptarse al comportamiento o las preferencias del usuario objetivo

92

Conclusioacuten

El trabajo de investigacioacuten presentado parte de la necesidad de buscar alternativas para

explotar al maacuteximo la capacidad de procesamiento del equipo de coacutemputo que existe actualmente

dentro del inventario del Instituto Tecnoloacutegico de Acapulco asiacute como proveer una plataforma que

coadyuve a la investigacioacuten dentro del Instituto a traveacutes de implementar un cluacutester de coacutemputo

con capacidad para realizar proyectos en el aacuterea de ingenieriacutea y matemaacuteticas con el fin de optimizar

el tiempo de ejecucioacuten lo cual en un futuro se veraacute reflejado en ventajas para el desarrollo de la

regioacuten

La revisioacuten y anaacutelisis de informacioacuten en relacioacuten a cluacutesters es muy interesante pero a la

vez es compleja dado que involucra diferentes aspectos durante su evolucioacuten asiacute como diversas

metodologiacuteas para su formacioacuten e implementacioacuten Se considera de suma importancia para este

trabajo las revisiones efectuadas ya que son la base para la propuesta entregada

De acuerdo a las especificaciones teacutecnicas de los equipos informaacuteticos existentes dentro

del laboratorio de la Maestriacutea en Sistemas Computacionales y una vez que se realizoacute el anaacutelisis

de varios casos de eacutexito se propuso la metodologiacutea para implementacioacuten de un cluacutester homogeacuteneo

tipo Beowolf Este meacutetodo estaacute basado en otros que ya se han implementado bajo realidades

acadeacutemicas similares rescatando las etapas maacutes importantes de cada uno y complementaacutendolo con

los aportes personales se consideroacute que fue el oacuteptimo debido a que se implementoacute con hardware

convencional y herramientas de uso libre

93

El hecho de haber seleccionado un meacutetodo adecuado permitioacute superar gran parte los

problemas que presentaban las metodologiacuteas que fueron analizadas simplificoacute la implementacioacuten

del cluacutester y permitioacute el poder alcanzar una mayor estabilidad en su desempentildeo desde su etapa

inicial fue importante conocer el resultado en cada una de las etapas de implementacioacuten para

asegurar su desenvolvimiento en el futuro

Para integrar los equipos independientes a la arquitectura cluacutester se realizoacute el disentildeo de

una topologiacutea de red Gigabit Ethernet tipo estrella con un direccionamiento IP estaacutetico la

configuracioacuten de protocolos de comunicacioacuten remota sin autenticacioacuten la comparticioacuten de

archivos en red y la utilizacioacuten de aplicaciones de licencia GPL que permiten obtener el

funcionamiento similar a la de una supercomputadora

Haciendo uso de libreriacuteas de paso de mensajes (MPI) y el software John the Ripper para el

descifrado de contrasentildeas la arquitectura cluacutester implementada alcanzoacute una eficiencia de 885

de rendimiento en comparacioacuten con los recursos computacionales de un solo equipo con las

caracteriacutesticas de un nodo Ademaacutes otros de los proyectos ejecutados en la arquitectura cluacutester

para probar el rendimiento fue la ejecucioacuten de un programa para la deteccioacuten de nuacutemeros primos

dentro de un archivo de 10000000 de nuacutemeros obteniendo una eficiencia de maacutes de 99 gracias

a la distribucioacuten de tareas que proporcionan las libreriacuteas de paso de mensajes (MPI) dentro de la

arquitectura cluacutester

Con la implementacioacuten de la arquitectura cluacutester el laboratorio de la Maestriacutea en Sistemas

Computacionales podraacute dar soluciones potentes eficientes y econoacutemicas en los entornos de

94

investigacioacuten mejorando la capacidad de procesamiento en aplicaciones como evaluacioacuten de

algoritmos compresioacuten de archivos renderizacioacuten de imaacutegenes anaacutelisis de datos (big data) en un

tiempo relativamente bajo ideal para las necesidades educativas

La experiencia obtenida al realizar esta investigacioacuten y propuesta ha sido enriquecedora

tanto por la obtencioacuten de conocimiento en base a la historia evolucioacuten y arquitectura de cluacutesters

asiacute como la programacioacuten paralela y sus ventajas en diferentes proyectos desarrollados en todo el

mundo Igualmente la comparacioacuten entre cada uno de los modelos y meacutetodos resulta interesante

dado que existe un sinnuacutemero de ejemplos con caracteriacutesticas diferentes pero baacutesicamente con un

mismo objetivo final

Trabajo Futuro

El cluacutester implementado en el Laboratorio de la Maestriacutea en Sistemas computacionales del

Instituto Tecnoloacutegico de Acapulco puede ser utilizado en gran cantidad de aplicaciones dentro de

las diferentes aacutereas de investigacioacuten del Instituto asiacute como estar disponible para el Departamento

de Posgrado e Investigacioacuten como apoyo durante la realizacioacuten de tareas y proyectos dentro de las

aacutereas de Desarrollo de Sistemas Inteligentes asiacute como de Tecnologiacuteas Web

Propuesta de Trabajo a Futuro

Durante la realizacioacuten de este proyecto se observoacute la necesidad que existe dentro del

departamento de Investigacioacuten y Posgrado de equipos de alta capacidad de procesamiento para

realizar de una manera maacutes eficiente las investigaciones que se estaacuten llevando a cabo Una de ellas

es el ldquoSistema de apoyo al diagnoacutestico oportuno de Retinopatiacutea Diabeacuteticardquo en la cual a traveacutes del

entrenamiento de una red neuronal se clasificaraacuten y evaluaraacuten un nuacutemero de 3000 imaacutegenes para

95

demostrar la presencia de dicha enfermedad en pacientes del Instituto Estatal de Oftalmologiacutea

Actualmente se ha realizado una prueba de entrenamiento de dicha red neuronal con 70 imaacutegenes

obteniendo como resultado un tiempo clasificacioacuten y evaluacioacuten de 301532 horas en un equipo

con un procesador Core I7 con 8 GB en memoria RAM

96

Bibliografiacutea

Alegsa (01 de 01 de 2018) Alegsa Diccionario Informaacutetico Recuperado el 07 de 2019 de

Alegsa httpwwwalegsacomarDicataque_por_diccionariophp

Avecto (2017) Avecto Limited Recuperado el 10 de 08 de 2018 de AVECTO a Bomgar

Company wwwavectocom

Borghello C (2009) Seguridad de la Informacioacuten Recuperado el 11 de 2018 de Criptografiacutea de

la A-Z httpswwwsegu-infocomarproyectosp1_hashhtm

Branch Bedoya J amp Mesa Muacutenera A (Diciembre de 2008) Implementacioacuten de un cluster

homogeacuteneo para la resolucioacuten de problemas de alta complejidad computacional Avances

en Sistemas e Informaacutetica 5(3)

ByteBleeder (02 de 06 de 2017) Practical guide to NTLM Relaying in 2017 Obtenido de Github

httpsbyt3bl33d3rgithubiopractical-guide-to-ntlm-relaying-in-2017-aka-getting-a-

foothold-in-under-5-minuteshtml

Caballero A (26 de 06 de 2018) Hacking Eacutetico Recuperado el 03 de 2019 de John The Ripper

httpwwwreydescomdq=Recuperar_la_Contrasena_del_Administrador_utilizando_s

amdump2_y_John_The_Ripper

Carretero Peacuterez J de Miguel Anasagasti P Garciacutea Carballeira F amp Peacuterez Costoya F (2001)

Sistemas Operativos Una visioacuten aplicada (C F Madrid Ed) Madrid Espantildea

McGRAW-HillInteramericana

Castelloacute Gimeno A (30 de 07 de 2014) Universitat Jaume Recuperado el 10 de 2019 de

Evaluacioacuten de prestaciones mediante laaplicacioacuten HPL de clusters utilizandorCUDA

97

httprepositoriujiesxmluibitstreamhandle10234115082TFM_2014_CastelloGimen

oApdfsequence=1ampisAllowed=y

Chaacutevez J Echeverriacutea C Correa M Vaacutezquez E Suaacuterez M Maacutermol X Diacuteaz G (07 de

1999) Centro de Caacutelculo Cientiacutefico Recuperado el 01 de 05 de 2018 de Universidad de

Los Andes httpwwwcecalculavedocumentaciontutorialesbeowulfinformehtml

Chirinov R (2003) Nfinite9000 SL Recuperado el 26 de 04 de 2018 de Noticias 3D

httpswwwnoticias3dcomarticuloaspidarticulo=248amppag=4

Coffin J (23 de 07 de 2015) Quora Recuperado el 15 de 08 de 2019 de

httpswwwquoracomWhat-does-it-mean-when-a-hashing-algorithm-has-been-broken

Dongarra J (2010) Top500 Super computer sites Recuperado el 07 de 2019 de http

wwwtop500org

Educba (01 de 01 de 2019) Recuperado el 10 de 2019 de Educbaorg

httpswwweducbacomidea-algorithm

europa press (04 de 06 de 2013) Portal Tic Recuperado el 18 de 11 de 2018 de Europa Press

httpswwweuropapressesportalticgadgetsnoticia-cuarta-generacion-intel-core-mayor-

salto-cuanto-ahorro-energetico-20130604174722html

g0tmi1k (2018) github Recuperado el 05 de 2019 de github

httpsgithubcomdanielmiesslerSecListsblobmasterPasswordsCommon-

Credentials10-million-password-list-top-1000000txt

Gonzaacutelez Agudelo D (2014) El riesgo y la falta de politicas de seguridad informaacutetica una

amenaza en las empresas certificadas basc Recuperado el 20 de 05 de 2018 de

Universidad Militar Nueva Granada

httpsrepositoryunimilitareducobitstream10654122511ENSAYO20FINALpdf

98

Gonzaacutelez Ramiacuterez E amp Rodriacuteguez Saacutenchez A (2008) Disentildeo e implementacioacuten de un cluster

tipo BEOWULF para el desarrollo de coacutemputo cientiacutefico avanzado CdMx Mexico

Hernandez M (2013) Forensics Mexico Recuperado el 07 de 2018 de La importancia del

registro de Windows parte 1 httpforensicsmexicoblogspotcom201309la-

importancia-del-registro-de-windowshtml

Kowalczyk C (01 de 2015) Crypto-IT Recuperado el 11 de 2018 de Crypto-IT

httpwwwcrypto-itnetengasymmetricindexhtml

Labaca Castro R (13 de 06 de 2014) We live security Recuperado el 2019 de 08 de 07 de

Welivesecuritybyeset httpswwwwelivesecuritycomla-es20140613matematica-

claves-numerica-alfanumerica

Lizaacuterraga C (2002) Departamento de Fiacutesica Recuperado el 12 de 03 de 2018 de Universidad

de Sonora httpclustersfisicausonmx

Llorens E amp Pentildea M (2002) Recuperado el 04 de 2018 de Departament dArquitectura de

Computadors httppersonalsacupceduenricPFCBeowulfbeowulfhtml

Meneacutendez-Barzanallana R (07 de 08 de 17) Universidad de Murcia Recuperado el 11 de 2018

de Informaacutetica Aplicada a las Ciencias Sociales

httpswwwumesdocenciabarzanaIACCSSCriptografiahtml

Merkle R amp Damgaringrd I (sf) Numerenturorg Recuperado el 06 de 2019 de Para computar -

numerenturorg httpnumerenturorgfuncion-merkle-damgard

Microsoft Inc (02 de 05 de 2019) wwwmicrosoftcom Obtenido de Password must meet

complexity requirements httpsdocsmicrosoftcomes-eswindowssecuritythreat-

protectionsecurity-policy-settingspassword-must-meet-complexity-requirements

99

Mifsud E (26 de 03 de 2012) Introduccioacuten a la seguridad informaacutetica Recuperado el 07 de 05

de 2018 de Ministerio de educacioacuten cultura y deportes Gobierno de Espantildea

httprecursosticeducacionesobservatoriowebessoftwaresoftware-general1040-

introduccion-a-la-seguridad-informaticashowall=1

Murugesan S (01 de 02 de 2008) Researchgate doi101109MITP200810

Nahar K amp Abu Abbas O (01 de 2010) Researchgate Recuperado el 07 de 2019 de

Researchgate

httpswwwresearchgatenetpublication315492522_Hybrid_Cipher_System

Nievas F Pino O amp Arroyo R (sf) Los clusters como Plataforma de Procesamiento Paralelo

Recuperado el 25 de 04 de 2018 de

httpusuarioslycoseslacaraocultadescargasClusters_definitivo pdf

Pawar S (2016) A computer science portal for geeks Recuperado el 10 de 2018 de

Geeksforgeeks httpswwwgeeksforgeeksorgrc5-encryption-algorithm

Peleus (2019) NETSEC Recuperado el 08 de 2019 de httpsnetsecwsp=314

Peacuterez Tavera I (2014) Obtenido de Universidad Autonoma del Estado de Hidalgo

httpswwwuaehedumxscigeboletinprepa4n2e4html

Peacuterez M (2001) Recuperado el 15 de 04 de 2018 de

httpwwwdragonesorgBibliotecaArticulosArquitecturaParalela2pdf

Petitet A Whaley R C Dongarra J amp Cleary A (2008) HPL - A Portable Implementation of

the High-Performance Linpack Benchmark for Distributed-Memory Computers

Recuperado el 07 de 2019 de httpwwwnetliborgbenchmarkhpl

Picolet J (2017) Hash Crack Password Cracking Manual (Vol 2) Createspace Independent

Pub

100

Preukschat A (23 de 02 de 2015) Oro y Finanzas Recuperado el 07 de 2019 de

httpswwworoyfinanzascom201502que-es-colision-criptografia-bitcoin

Robbins D (2008) OpenMosix Recuperado el 22 de 04 de 2018 de the openMosix Project

httpopenmosixsourceforgenetintroduction_to_openmosixhtml

Rocha Quezada J d Botello Rionda S Vargas Feacutelix J M amp Munguiacutea Torres I A (Sep-Dic

de 2011) Disentildeo e implementacioacuten de un cluacutester de coacutemputo de alto rendimiento Acta

Universitaria 21(3) 24-33 Recuperado el 1 de 12 de 2018

Rocksclusters (01 de 01 de 2010) httpwwwrocksclustersorg Recuperado el 01 de 06 de 2018

de httpwwwrocksclustersorg httpwwwrocksclustersorg

Sanjoy K (01 de 01 de 2015) DZone Recuperado el 15 de 06 de 2019 de DZone

httpsdzonecomarticlessecurity-algorithms-des-algorithm

Security Degree Hub (01 de 2017) Security Degree Hub Recuperado el 13 de 02 de 2019 de

Security Degree Hub httpswwwsecuritydegreehubcomwhat-is-cryptanalysis

Simmons G (01 de 01 de 2019) Encyclopedia Britannica Recuperado el 08 de 2019 de

Encyclopedia Britannica httpswwwbritannicacomtopicRSA-encryption

statista (09 de 2017) Statista Obtenido de Statista Co httpsesstatistacom

Turner D (2004) Recuperado el 12 de 02 de 2018 de Ames Lab

httpwwwsclameslabgovProjectsparrallel_computingpara_intohtml

United States Government Department of Defense (1983) Trusted Computer System Evaluation

Criteria Rainbow Series

Universidad Internacional de Valencia (09 de Septiembre de 2016) Nuestros

expertosTecnologiacutea Recuperado el 27 de Abril de 2018 de Universidad Internacional de

Valencia httpswwwuniversidadviuesla-seguridad-informatica-puede-ayudarme

101

Wallen J (19 de 01 de 2019) Lifewire Recuperado el 13 de 06 de 2019 de Lifewire

httpswwwlifewirecomgnome-3-desktop-4175640

Yang H (01 de 02 de 2019) Herong Yang Recuperado el 15 de 06 de 2019 de Cryptography

Tutorials httpwwwherongyangcomCryptographyDSA-Introduction-What-Is-DSA-

Digital-Signature-Algorithmhtml

102

Anexo 1

Programa en Lenguaje C para la obtencioacuten de nuacutemeros primos utilizando libreriacuteas mpi

include ltcstdlibgt

include ltiostreamgt

include ltiomanipgt

include ltcmathgt

include ltctimegt

include mpih

using namespace std

int main ( int argc char argv[] )

int prime_number ( int n int id int p )

void timestamp ( )

int main ( int argc char argv[] )

int i

int id

int master = 0

int n

int n_factor

int n_hi

int n_lo

int p

int primes

int primes_part

double wtime

n_lo = 1

n_hi = 10000000

n_factor = 2

MPIInit ( argc argv )

p = MPICOMM_WORLDGet_size ( )

id = MPICOMM_WORLDGet_rank ( )

if ( id == master )

cout ltlt n

cout ltlt Cuenta primosn

cout ltlt C++MPI versionn

cout ltlt n

cout ltlt Programa para contar cantidad de primos para un N dadon

cout ltlt Corriendo en ltlt p ltlt procesosn

cout ltlt n

103

cout ltlt N S Tiempon

cout ltlt n

n = n_lo

while ( n lt= n_hi )

if ( id == master )

wtime = MPIWtime ( )

MPICOMM_WORLDBcast ( ampn 1 MPIINT master )

primes_part = prime_number ( n id p )

MPICOMM_WORLDReduce ( ampprimes_part ampprimes 1 MPIINT

MPISUM

master )

if ( id == master )

wtime = MPIWtime ( ) - wtime

cout ltlt ltlt setw(8) ltlt n

ltlt ltlt setw(8) ltlt primes

ltlt ltlt setw(14) ltlt wtime ltlt n

n = n n_factor

MPIFinalize ( )

if ( id == master )

cout ltlt n

cout ltlt PRIME_MPI - Procesos maestron

cout ltlt Finalizacion del calculo normaln

return 0

int prime_number ( int n int id int p )

int i

int j

int prime

int total

104

total = 0

for ( i = 2 + id i lt= n i = i + p )

prime = 1

for ( j = 2 j lt i j++ )

if ( ( i j ) == 0 )

prime = 0

break

total = total + prime

return total

void timestamp ( )

define TIME_SIZE 40

static char time_buffer[TIME_SIZE]

const struct tm tm

size_t len

time_t now

now = time ( NULL )

tm = localtime ( ampnow )

len = strftime ( time_buffer TIME_SIZE d B Y IMS p tm )

cout ltlt time_buffer ltlt n

return

undef TIME_SIZE

Page 9: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios

viii

1911 Equipo de coacutemputo 14

Capiacutetulo 2 Estado del Arte 16

Marco Teoacuterico 27 21 Seguridad de la Informacioacuten 27

211 Objetivo de la seguridad de la informacioacuten 27

212 Principios de la seguridad informaacutetica 28

213 Caracteriacutesticas de seguridad informaacutetica 28

214 Formas de Autenticacioacuten 29

215 Ciber-seguridad 29

22 Criptografiacutea 30

221 Tipos de Criptografiacuteas 30

2211 Tablas Hash 30

2212 Tipos de algoritmos Hash 31

22121 SHA - 1 (Secure Hash Algorithm) 31

22122 MD5 (Message Digest Algorithm) 31

22123 RIPEMD ndash 160 32

22124 Funcioacuten Merkle-Damgaringrd 32

2213 Cifrado simeacutetrico 32

22131 RC5 (Cifrado de Rivest) 33

22132 IDEA (International Data Encryption Algorithm) 33

22133 DES (Data Encryption Standard) 34

2214 Cifrado asimeacutetrico 35

22141 DSA (Digital Signature Algorithm - Algoritmo de Firma digital) 36

22142 RSA 37

2215 Cifrado hiacutebrido 38

23 Criptoanaacutelisis 38

24 Niveles de seguridad 39

241 Nivel D1 40

242 Nivel C1 40

243 Nivel C2 41

244 Nivel B1 42

245 Nivel B2 43

246 Nivel B3 44

247 Nivel A1 45

25 Sistemas Operativos 46

251 Windows 47

252 Registro de Windows 48

253 Administrador de cuentas de seguridad 49

2531 Identificador de Seguridad (SID Security Identifier) 50

254 Autenticacioacuten NTML 51

26 LINUX (ROCKS) 52

261 Escritorio 53

262 Paquete de Oficina 53

263 Organizador de archivos 54

27 Agrupamiento (Cluacutester) de Computadoras 55

271 Beowulf 56

ix

272 Mosix 56

273 OpenMosix 57

Capiacutetulo 3 Implementacioacuten de Cluacutester 59 31 Requisitos previos 59

311 Conexioacuten de los equipos y acceso a la red 59

312 Configuracioacuten de la BIOS 60

3121 ATAIDE Mode 60

3122 PXE 62

32 Instalacioacuten de Sistema Operativo Rocks 63

321 Configuracioacuten del teclado 70

33 Instalacioacuten de los nodos 70

331 Administracioacuten de nodos 72

332 Creacioacuten de cuentas de usuario 73

333 Configuracioacuten del directorio compartido 73

34 Operaciones baacutesicas de Rocks 74

Capiacutetulo 4 Metodologiacutea y Resultados 77 41 Obtener Archivo hash 77

42 Dar Formato al Hash 80

43 Evaluar la fuerza del Hash 80

44 Calcular la capacidad del equipo 82

45 Establecer Estrategia 87

451 Fuerza Bruta 87

4511 Cantidad de combinaciones posibles 88

452 Diccionario 90

453 Analizar los resultados 91

454 Personalizar ataques 91

Conclusioacuten 92

Trabajo Futuro 94 Propuesta de Trabajo a Futuro 94

Bibliografiacutea 96

Anexo 1 102

x

Iacutendice de Figuras

Figura 31 Esquema tiacutepico de configuracioacuten de un cluacutester xi

Figura 32 Imagen del Bios del equipo en la opcioacuten ldquodrive configurationrdquo 61

Figura 33 Bios ATAIDE Legacy Mode 61

Figura 34 Bios Boot PXE 62

Figura 35 Bios Boot device prioriry 63

Figura 36 Pantalla de Inicio de instalacioacuten de Rocks 64

Figura 37 Pantalla de seleccioacuten de Rolls 65

Figura 38 Listado de opciones de rolls para instalar 65

Figura 39 Informacioacuten baacutesica del cluacutester a instalar 66

Figura 310 Configuracioacuten Ethernet de la red privada 67

Figura 311 Configuracioacuten Ethernet de la red puacuteblica 67

Figura 312 Configuracioacuten de DNS y Gateway 68

Figura 313 Ingresar contrasentildea de usuario root 68

Figura 314 Configuracioacuten horaria 69

Figura 315 Particiones del disco duro 69

Figura 316 Pantalla para ingresar nodos 71

Figura 317 Indicador de insercioacuten de nuevos nodos 71

Figura 318 Comando qstat ndashf 74

Figura 319 Enviacuteo de trabajos por medio del comando qsub 75

Figura 320 Estado de los trabajos pendientes mostrados por qstat ndashf 75

Figura 321 Visualizacioacuten de la distribucioacuten de cargas en el cluacutester usando la herramienta

Ganglia 76

Figura 41 Arranque con LiveUSB KaliLinux 79

Figura 42 Resultado de la ejecucioacuten de la herramienta samdump2 80

Figura 43 Sistema de Ecuaciones tipo 119860119909 = 119887 Fuente Propia 84 Figura 44 Distribucioacuten de cargas del cluacutester 86

Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester 89

xi

Iacutendice de Tablas

Tabla 11 Costo del Proyecto 15

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia) 86

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia) 89

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos

(Fuente Elaboracioacuten propia) 90

1

Capiacutetulo 1 Introduccioacuten

11 Antecedentes del problema

Sin lugar a duda una de las herramientas maacutes importantes producida en el siglo XX ha sido

la computadora la cual ha provocado cambios vertiginosos en la sociedad y en el progreso de la

misma En la actualidad el entorno estaacute praacutecticamente controlado por las nuevas tecnologiacuteas que

a medida que transcurre el tiempo avanzan sin liacutemites y en ocasiones son utilizadas

incorrectamente provocando dantildeos de grandes dimensiones

Los trascendentales cambios operados en el mundo moderno caracterizados por su

constante desarrollo la acelerada globalizacioacuten de la economiacutea la acentuada dependencia a

almacenar grandes voluacutemenes de informacioacuten y los sistemas que la proveen aunado a grandes

inversiones de las empresas en conocimiento actual y futuro en sistemas de informacioacuten ademaacutes

del potencial que poseen las tecnologiacuteas para cambiar draacutesticamente las organizaciones y las

praacutecticas de negocio asiacute como crear nuevas oportunidades disentildear nuevas estructuras tecnoloacutegicas

basadas en informacioacuten la convierte en un activo codiciable Tales avances hacen permanente el

riesgo en las tecnologiacuteas y nos llevan a pensar en la problemaacutetica sobre la seguridad informaacutetica

La proteccioacuten de datos documentos y control de acceso a la informacioacuten es un tema que

cada diacutea toma maacutes fuerza en las grandes compantildeiacuteas debido a las diferentes praacutecticas de

especialistas tecnoloacutegicos como los son los hackers y crackers que roban informacioacuten vital para

posteriormente sacar provecho de ella

2

ldquoDesde la aparicioacuten de los grandes sistemas aislados hasta nuestros diacuteas en los que el

trabajo en red es lo habitual los problemas derivados de la seguridad de la informacioacuten han ido

tambieacuten cambiando evolucionando pero estaacuten ahiacute y las soluciones han tenido que ir adaptaacutendose

a los nuevos requerimientos teacutecnicos Aumenta la sofisticacioacuten en el ataque y ello aumenta la

complejidad de la solucioacuten pero la esencia es la mismardquo (Mifsud 2012)

Dentro del mundo actual la informacioacuten es denominada un activo importante de una

institucioacuten la cual debe ser protegida para evitar su peacuterdida modificacioacuten o el uso inadecuado de

su contenido

El extraviacuteo o el mal uso de informacioacuten que para alguien es confidencial genera dantildeos y

repercusiones directas relacionadas a la integridad disponibilidad y confidencialidad de los

archivos y a su vez a los duentildeos de dicha informacioacuten

ldquoLa seguridad informaacutetica se distingue por tener dos propoacutesitos de seguridad la Seguridad

de la Informacioacuten y la Proteccioacuten de Datos estos se diferencian debido a que los datos son valores

numeacutericos que soportan la informacioacuten mientras que la informacioacuten es aquello que tiene un

significado para nosotrosrdquo (Gonzaacutelez Agudelo 2014)

La seguridad informaacutetica consiste en asegurar que los recursos del sistema de informacioacuten

(material informaacutetico o programas) de una organizacioacuten sean utilizados de la manera que se decidioacute

3

inicialmente y que el acceso a la informacioacuten alliacute contenida asiacute como su modificacioacuten soacutelo sea

posible a las personas que se encuentren acreditadas y dentro de los liacutemites de su autorizacioacuten

Actualmente hay mucha informacioacuten circulando en internet por ejemplo correos

electroacutenicos publicaciones en Twitter Facebook videos fotos comercio electroacutenico secretos de

estado militares o industriales Lamentablemente dicha red es puacuteblica e insegura dentro de la cual

existen usuarios bien intencionados y muchos mal intencionados Diariamente encontramos

noticias de sitios con intrusiones mal intencionadas (hackeados) clonacioacuten de tarjeta de creacutedito o

imaacutegenes adulteradas Todo lo anterior motiva la necesidad de proteger la informacioacuten a traveacutes de

mecanismos que impidan a los usuarios no autorizados acceder a dicha informacioacuten

4

12 Planteamiento del Problema

Los sistemas de informacioacuten actuales estaacuten relacionados completamente con la exposicioacuten

de su informacioacuten a entidades externas que son ajenas a la organizacioacuten o delegacioacuten a la que

pertenecen

Cuando no se conoce el alcance que tienen los sistemas informaacuteticos ni lo vulnerables que

pueden ser si son expuestos a Internet por los mismos empleados de la organizacioacuten puede darse

ldquofugardquo de informacioacuten hacia el exterior esto los hace vulnerables a eventos y amenazas que

conllevan a riesgos que pueden provocar peacuterdidas tangibles e intangibles las cuales se traducen

en peacuterdidas que en muchos de los casos por decir lo menos seraacuten monetarias

El portal espantildeol de estadiacutesticas statista muestra la cuota de mercado de los principales

sistemas operativos a nivel mundial a fecha de febrero de 2017 seguacuten el nuacutemero de instalaciones

(statista 2017) Windows 10 fue el segundo sistema operativo maacutes instalado con una cuota de

mercado de 253 Esto significa que alrededor de una de cada cuatro computadoras estaacute

gobernado por este sistema operativo Por su parte en el caso de Windows 7 el porcentaje se situacutea

por encima del 45 a pesar de que ya no se vende ninguacuten PC con este sistema operativo Hablando

de manera conjunta los sistemas operativos Windows cuentan con una cuota del mercado global

de 8857

La empresa de seguridad informaacutetica Britaacutenica Avecto informoacute en su Microsoft

Vulnerabilities Report 2017 (Avecto 2017) (reporte 2017 de vulnerabilidades de Windows) un

aumento de vulnerabilidades publicadas del 111 en los uacuteltimos 5 antildeos de las cuales 235 criacuteticas

5

fueron mitigadas removiendo permisos de administrador asiacute como otras muy importantes

enfocadas al Administrador de Cuentas de Seguridad (SAM Security Account Manager por sus

siglas en ingleacutes) la cual es una base de datos almacenada como un archivo del registro en Windows

y que almacena las contrasentildeas de los usuarios en un formato hash (Algoritmos que crean a partir

de una entrada una salida alfanumeacuterica de longitud fija)

6

13 Objetivos

131 Objetivo General A traveacutes de la implementacioacuten de un procedimiento de fuerza

bruta utilizando para ello un cluacutester de alto rendimiento asiacute como software de uso libre lograr

capacidad de procesamiento capaz de vulnerar un sistema de autenticacioacuten nivel C1

132 Objetivos Especiacuteficos

Analizar los diferentes niveles de seguridad de sistemas operativos

Analizar diferentes meacutetodos de criptoanaacutelisis para vulnerar el Administrador de

cuentas de seguridad

Estudiar las teacutecnicas de agrupamiento de computadoras (clustering) para la

obtencioacuten de mayor poder de procesamiento

Implementar un cluacutester de alto rendimiento en el Laboratorio de la Maestriacutea en

Sistemas Computacionales del Instituto Tecnoloacutegico de Acapulco para ejecutar

operaciones de coacutemputo distribuido

7

14 Justificacioacuten

Antes la seguridad de la informacioacuten se realizaba a traveacutes de medios fiacutesicos por ejemplo

una caja fuerte en la cual las personas resguardaban objetos o informacioacuten valiosa para ellos Con

la introduccioacuten de las computadoras y el uso de internet los usuarios comienzan a almacenar

informacioacuten importante dentro de sus equipos por lo que se considera indispensable el uso de

herramientas que brinden proteccioacuten a la informacioacuten que se encuentra resguardada dentro de

eacutestas Los usuarios informaacuteticos suelen enviar informacioacuten por la red en las empresas al realizar

traacutemites o enviar informes a socios jefes entre otros

El resguardo de informacioacuten siempre ha sido importante para los seres humanos con la

diferencia que anteriormente no se contaba con los avances tecnoloacutegicos que tenemos actualmente

puesto que con la introduccioacuten de internet y el uso de dispositivos electroacutenicos se tiene mayor

riesgo de la informacioacuten que en ellos se maneja

La proteccioacuten del contenido de los datos es una necesidad urgente en casi todos los aacutembitos

de la sociedad incluyendo los servicios puacuteblicos y privados por lo que la tecnologiacutea de la

seguridad de los sistemas de cifrado se encuentra de frente a verdaderos retos

15 Hipoacutetesis

A traveacutes de un de fuerza bruta como teacutecnica de criptoanaacutelisis y con la ayuda de una mayor

capacidad de procesamiento mediante la implementacioacuten de agrupamiento de computadoras

(cluacutester) de alto rendimiento seraacute posible encontrar alguna vulnerabilidad dentro del sistema de

administracioacuten de cuentas de seguridad de Windows server 2012

8

16 Alcances y Limitaciones

Esta tesis se centraraacute en el sistema operativo Windows como objeto de estudio al cual se

le realizaraacute el criptoanaacutelisis

La tesis se enfocaraacute en el meacutetodo Beowulf para realizar el agrupamiento de computadoras

asiacute como la distribucioacuten de software libre del sistema operativo Linux Rocks

El nuacutemero de equipos disponibles para poder realizar el agrupamiento es de 17

computadoras hasta lograr el poder de coacutemputo de 800 Gflops

17 Impacto Social Tecnoloacutegico Econoacutemico y Ambiental

La sostenibilidad del presente proyecto seraacute abordada a partir de los siguientes aspectos

171 Impacto social A veces se puede pensar que un cluacutester de alto rendimiento pudiera

no tener alguacuten impacto directo en el medio social pero si nos enfocamos a un punto de vista en

donde gracias a la capacidad de procesamiento de estas maacutequinas han sido parte fundamental en

el desarrollo de proyectos que inciden de manera directa en beneficio de la sociedad en la que

vivimos como lo es la medicina la fiacutesica quiacutemica

Este proyecto busca beneficiar a nuestra sociedad proveyendo su capacidad de

procesamiento en la buacutesqueda de alguna vulnerabilidad en el sistema operativo maacutes utilizado hoy

en diacutea como lo es Windows ademaacutes de que estaraacute disponible para la comunidad cientiacutefica y

9

estudiantil del Instituto Tecnoloacutegico de Acapulco para optimizar tiempo de caacutelculo en futuras

investigaciones

172 Impacto ambiental Green IT tambieacuten conocido como Green Computing o

traducido al espantildeol como Tecnologiacuteas Informaacuteticas Verdes es definido como el estudio y la

praacutectica de disentildear desarrollar usar y disponer de computadoras servidores y diferentes

perifeacutericos tales como monitores impresoras dispositivos de almacenamiento de redes y

comunicaciones eficientemente y efectivamente con un impacto miacutenimo o nulo en el medio

ambiente (Murugesan 2008)

Bajo la premisa anterior este proyecto hace uso de los equipos con los que cuenta

actualmente el laboratorio de la Maestriacutea en Sistemas Computacionales lo cual evitaraacute la

adquisicioacuten de equipo nuevo y por consecuencia desechar el equipo existente evitando desperdicio

electroacutenico Dicho equipo cuenta con un procesador Intel I3 de 4ta generacioacuten lo cual seguacuten el

portal electroacutenico Europa press

ldquoEsta nueva generacioacuten supone el mayor salto en cuanto ahorro energeacutetico de la historia

de Intel asiacute como una mejora en los graacuteficos y nuevas experiencias de usuariordquo (europa press

2013)

Teniendo como base estos dos puntos importantes como lo son la reutilizacioacuten de equipo

y utilizando procesadores de bajo consumo energeacutetico es como este proyecto busca contribuir de

manera positiva con el medio ambiente

10

173 Impacto econoacutemico Actualmente existe una gran necesidad de procesar grandes

cantidades de datos lo cual hace imprescindible disponer de maacutequinas con estas caracteriacutesticas sin

embargo su alta complejidad aunado al gran costo hace que en instituciones de caraacutecter puacuteblico

sea muy complicado conseguir recurso para este fin Sin embargo un cluacutester de alto rendimiento

reutilizaraacute equipo propio evitando asiacute gastos por concepto de adquisicioacuten de equipo siendo de

esta manera viable para instituciones de caraacutecter puacuteblico

18 Metodologiacutea a Utilizar

181 Anaacutelisis Despueacutes de analizar las diferentes metodologiacuteas de clustering se optoacute por

desarrollar e implementar un cluacutester de alto rendimiento (HPC)

182 Disentildeo

1821 Economiacutea Debido a las caracteriacutesticas del equipo con el cual cuenta el Laboratorios

de la Maestriacutea en Sistemas Computacionales los componentes utilizados para este proyecto son

considerados de uso comuacuten y de bajo costo lo cual los hace faacutecilmente reemplazables en caso de

fallo a un costo accesible El equipo es de la marca Acer Aspire modelos AXC-605-M021 lo cual

nos hace tener ventaja y respaldo del fabricante con respecto a hardware geneacuterico

1822 Instalaciones Un cluacutester requiere de un ambiente controlado Esto es una

habitacioacuten especial con sistema de enfriamiento capacidad suficiente de carga eleacutectrica control

de humedad y un ambiente libre de polvo Ademaacutes se deben considerar el peso del equipo sobre

el piso (ya sea falso o piso normal) Se recomienda colocarlo en los soacutetanos o en la plata baja de

edificios (Rocha Quezada Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

11

En el laboratorio de la Maestriacutea en Sistemas Computacionales se cuenta con espacio que

reuniacutea la mayoriacutea de las caracteriacutesticas requeridas para este proyecto

1823 Escalabilidad Un cluacutester debe ser faacutecilmente escalable y a su vez confiable Por

tal motivo se ha utilizado equipo de marca lo cual nos proporciona maacutes de confiabilidad en su

desempentildeo y a su vez facilidad de aumentar el nuacutemero de equipos si en un futuro fuese necesario

agrandar este proyecto Se armoacute un cluacutester de cinco computadoras con procesadores Intel Core I3

de 64 bits en cada nodo La memoria incluida y perifeacutericos son faacuteciles de adquirir en el mercado

1824 Red En la parte de redes se utilizoacute un switch fast Ethernet con una velocidad de 1

Gbps el cual tiene tazas de transferencia raacutepida y el costo es notablemente maacutes econoacutemico que

uno de fibra oacuteptica

El cableado seleccionado fue el estaacutendar UTP de cobre con la norma Gigabit Ethernet de

IEEE 8023ab con la categoriacutea de cableado 6e que soporta tazas de transferencia de datos de

1000Base T (1 Gbps)

1825 Software

ldquoEl sistema operativo debe constar con servicios dedicados para compartir y respaldar

archivos asiacute como capacidad de acceder a los datos de trabajo raacutepidamente El sistema operativo

debe tambieacuten proveer servicios de monitoreo y reporte de fallas en el sistemardquo (Rocha Quezada

Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

12

Existe una gran variedad de software para instalar cluacutester de alto rendimiento sin embargo

como se ha comentado con anterioridad el costo de adquisicioacuten debe ser accesible por tal motivo

se optoacute por una distribucioacuten con licencia GNU de Linux Rocks Cluster la cual es una distribucioacuten

sencilla de instalar y configurar en comparacioacuten con otras distribuciones analizadas dicha

distribucioacuten estaacute basada en CentOS que a su vez estaacute basada en la conocida distribucioacuten de Linux

Red Hat

1826 Almacenamiento Para este proyecto no se requeriraacute un gran espacio de

almacenamiento por tal motivo los equipos utilizados tanto maestro como esclavos mantuvieron

sus unidades de disco originales las cuales son de 1 TB de almacenamiento

183 Implementacioacuten La implementacioacuten del cluacutester de alto rendimiento fue realizada

dentro de las instalaciones del Laboratorio de la Maestriacutea en Sistemas Computacionales del

Instituto Tecnoloacutegico de Acapulco construido inicialmente para este proyecto de criptoanaacutelisis lo

cual requeriraacute suficiente capacidad de procesamiento para poder implementar ataques de fuerza

bruta a sistemas operativos Las caracteriacutesticas del cluacutester construido son

1831 Software El software instalado en cada uno de los nodos es el siguiente

bull Sistema operativo Rocks Cluacutester Linux 74 (64 bits)

bull Libreriacutea de manejo de mensajes Open-MPI 153

bull Software de monitoreo Ganglia

13

1832 Hardware El cluacutester estaacute compuesto de 17 equipos con las siguientes

caracteriacutesticas

bull Nodo Maestro y 16 Nodos Esclavos

- Procesador Intel Core I3 4150 (4 nuacutecleos) Memoria 6 GB Disco Duro SATA 1 TB

tarjeta de Red Gigabit Ethernet

El hardware adicional es el siguiente

bull Interconexioacuten de Red

bull Switch Cisco 26 puertos 1Gbps modelo SG200 Red interna

1833 Recursos totales del cluacutester

bull Nuacutecleos de unidades de procesamiento (cores) 68

bull Capacidad en memoria 92 GB

bull Capacidad en disco 17 TB

19 Aseguramiento Teacutecnico ndash Material

A continuacioacuten se muestra el desglose del equipo utilizado para la elaboracioacuten de un

cluacutester de alto rendimiento estos componentes consisten en Hardware y Software especializado

asiacute como los costos de produccioacuten y personal involucrados en la metodologiacutea y elaboracioacuten del

proyecto

Costos de Hardware

Costos de Software

14

191 Hardware En este punto se refleja el costo de los dispositivos y herramientas a nivel

fiacutesico las cuales sirvieron para la implementacioacuten del proyecto cluacutester de alto rendimiento Cabe

resaltar que el equipo utilizado forma parte del inventario actual del Laboratorio motivo por el

cual su utilizacioacuten no causoacute erogacioacuten alguna sin embargo la investigacioacuten de costos se realizoacute

con la finalidad que el lector pueda establecer comparativas y buscar alternativas en caso de ajuste

de presupuesto

1911 Equipo de coacutemputo El equipo de coacutemputo utilizado consta de diecisiete

computadoras las cuales serviraacuten una para Nodo Maestro y las dieciseacuteis restantes como Nodos

Esclavos

La descripcioacuten de estos equipos se muestra en la tabla a continuacioacuten mostrando los costos

de todos los equipos utilizados dentro del proyecto

15

Tabla 11 Costo del Proyecto

Modelo

Cantidad

Caracteriacutesticas

Costos

PC - Acer AXC-

605

17

Procesador Intel Core i3

Pantalla 156rdquo

Disco duro 1TB HDD

RAM 6GB

Salida HDMI

Tarjeta de graacuteficos INTEGRADA

Lector de CD

Los costos en el mercado de una PC de

escritorio con estas caracteriacutesticas tiene un

valor aproximado de $600000 pesos

(Moneda nacional Mexicana)

Switch Cisco

Gigabit Ethernet

1

Modelo SG200 de 26 puertos

Costo en el mercado alrededor de

$2000000 pesos MN

Total

12200000 pesos MN

16

Capiacutetulo 2 Estado del Arte

Tiacutetulo del Trabajo Introduccioacuten a la Criptografiacutea

Autor Gibraacuten Granados Paredes

Fecha Julio 2010

Lugar Ciudad de Meacutexico

Publicado en Coordinacioacuten de Publicaciones Digitales DGSCA-UNAM

httpwwwrevistaunammxvol7num7art55int55htm

Siacutentesis Cuando se desea tener seguridad hablando en aacutembitos informaacuteticos la

criptografiacutea es una herramienta muy uacutetil el autor lo entiende tambieacuten como un medio para

garantizar las propiedades de confidencialidad integridad y disponibilidad de los recursos de un

sistema

Con la criptografiacutea se puede garantizar las propiedades de integridad y confidencialidad

pero hay que saber coacutemo utilizarla para ello es importante tener claros los conceptos baacutesicos que

estaacuten detraacutes de los sistemas criptograacuteficos modernos Estos conceptos van desde entender queacute es

la criptografiacutea coacutemo estaacute clasificada entender el funcionamiento baacutesico de algunos sistemas de

cifrado y conocer coacutemo se forman los documentos digitales como firmas y sobres digitales

Resultados El autor realiza un viaje por un gran nuacutemero de conceptos utilizados en

criptografiacutea el inicio y la clasificacioacuten de la misma asiacute como la criptografiacutea claacutesica y moderna y

analiza de manera breve algunos meacutetodos de cifrado maacutes comunes

17

Tiacutetulo del Trabajo Criptoanaacutelisis sobre meacutetodos claacutesicos de cifrado

Autores Sebastiaacuten Goacutemez Juan David Arias Diego Agudelo

Fecha 2 de mayo 2013

Lugar Ciudad de Meacutexico

Publicado en Scientia et Technica Antildeo XVII No 50 abril de 2012

Siacutentesis Los algoritmos criptograacuteficos utilizados desde la antigua Roma hasta nuestros

diacuteas son meacutetodos que convierten un mensaje de texto plano a cifrado al proceso inverso se le

conoce como descifrar Este artiacuteculo realiza un estudio de algunas teacutecnicas de encriptacioacuten claacutesicas

del siglo pasado como lo son el cifrado de Cesar y el cifrado de Vigeneacutere asiacute como muestra

teacutecnicas baacutesicas y modernas de criptoanaacutelisis basadas en la teoriacutea de la informacioacuten y estadiacutestica

como lo son la entropiacutea y el ataque de maacutexima correlacioacuten Las teacutecnicas de criptoanaacutelisis descritas

anteriormente pueden ser usadas en otros meacutetodos de cifrado siempre y cuando esteacuten presentes las

mismas debilidades

Resultados Los autores implementaron en lenguajes de programacioacuten Python un

algoritmo para el caacutelculo de entropiacutea para diferentes longitudes de clave Para la implementacioacuten

de los algoritmos de cifrado y descifrado de Vigeneacutere y de maacutexima correlacioacuten utilizaron lenguaje

de programacioacuten C++ Se probaron los meacutetodos anteriormente descritos sobre textos planos de

diferentes longitudes logrando un resultado de 9385 de efectividad en promedio

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de dos de los

algoritmos de encriptacioacuten maacutes antiguos y baacutesicos pero sobre todo que conociendo los meacutetodos

de criptoanaacutelisis me permitiraacuten analizar debilidades y fortalezas de algoritmos

18

Tiacutetulo del Trabajo ULTRACOM Computacioacuten de Alto Rendimiento para Criptoanaacutelisis

Autor Antonio Castro Lechtaler Alejandro Repetto Martiacuten Bianchi Marcelo Cipriano

Alejandro Arroyo Arzubi Ceacutesar Cicerchia Eduardo Malvacio

Fecha octubre 2014

Lugar Buenos Aires Argentina

Publicado en XX Congreso Argentino de Ciencias de la Computacioacuten (Buenos Aires

2014)

Siacutentesis La generacioacuten de nuacutemeros primos fundamentales para la produccioacuten de claves

el anaacutelisis de secuencias pseudo-aleatorias los procesos de verificacioacuten y validacioacuten de algoritmos

de seguridad en un sentido geneacuterico requieren enormes cantidades de procesamiento Los

procesos relacionados con la matemaacutetica criptograacutefica se caracterizan por la alta necesidad de

coacutemputo El objetivo de ULTRACOM es desarrollar una computacioacuten distribuida multipropoacutesito

que permita como primera aplicacioacuten real el anaacutelisis la validacioacuten y la ejecucioacuten de pruebas de

estreacutes sobre sistemas criptograacuteficos El presente trabajo de investigacioacuten detalla el proceso de

desarrollo de ULTRACOM y muestra un ejemplo de su implementacioacuten en una versioacuten Beta Para

ello toman como entrada dos versiones del algoritmo Trivium Utilizando la misma

infraestructura y sin desarrollo extra se prueban grandes voluacutemenes de claves y vectores de

inicializacioacuten de los algoritmos en busca de secuencias deacutebiles de menor longitud que la de la

buscada

Resultados El equipo implementoacute una versioacuten beta de la plataforma ULTRACOM

comprobando la factibilidad y viabilidad teacutecnica de la generalizacioacuten de la infraestructura de

computacioacuten distribuida en grilla (malla) BOINC Este avance permite extender los horizontes de

BOINC y habilita la posibilidad de obtener la capacidad de coacutemputo de alto rendimiento a bajo

19

costo Concluyeron que ULTRACOM es un proyecto viable escalable y de alto impacto para la

evaluacioacuten y validacioacuten de algoritmos criptograacuteficos

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento y la

implementacioacuten de una arquitectura de computacioacuten distribuida y una vez siendo factible su

desarrollo utilizar su poder de coacutemputo atacando a traveacutes de un algoritmo un sistema criptograacutefico

20

Tiacutetulo del Trabajo Criptografiacutea Cuaacutentica

Autor M Baig

Fecha 2010

Lugar Barcelona Espantildea

Siacutentesis En este artiacuteculo el autor realiza una breve introduccioacuten a la criptografiacutea claacutesica y

la relacioacuten que existe con la teoriacutea de la informacioacuten de Shannon la cual asegura que el cifrado

digital simeacutetrico es secreto y perfecto siempre y cuando se cumplan los tres requisitos

1 La llave ha de ser aleatoria

2 La llave debe usarse soacutelo una vez

3 La llave ha de ser tan larga como el mensaje y de un solo uso debe de estar en posesioacuten

tanto del emisor como del receptor

El punto 3 es el maacutes complicado de cumplir debido a la forma de compartir la llave entre

el emisor y receptor

Maacutes adelante en el artiacuteculo se hace un anaacutelisis sobre otra teacutecnica de criptografiacutea que es el

cifrado digital asimeacutetrico en la que se estudia coacutemo funcionan las llaves privadas y puacuteblicas asiacute

como el meacutetodo de criptograacutefico RSA

Resultados

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento maacutes profundo de

los meacutetodos de criptografiacutea simeacutetricos y asimeacutetricos especiacuteficamente el algoritmo asimeacutetrico

RSA

21

Tiacutetulo del Trabajo La Criptografiacutea Maderista en la Revolucioacuten Mexicana (1910-1911)

Criptoanaacutelisis de una carta cifrada por Gabriel Leyva Solano

Autor Roberto Narvaacuteez

Fecha 2011

Lugar Meacutexico DF

Siacutentesis Este trabajo aborda temas relacionados con las comunicaciones secretas del

movimiento revolucionario comandado por Francisco I Madero a partir de 1910 Se compone de

dos partes la primera es una breve resentildea criacutetica de ejemplos criptograacuteficos del maderismo que

fueron generados entre 1910 y 1911 la segunda describe paso a paso el criptoanaacutelisis que aplicoacute

el autor Roberto Narvaacuteez para desencriptar una carta parcialmente cifrada de Gabriel Leyva Solano

a Francisco I Madero

Resultados El propoacutesito general uacuteltimo es contribuir al conocimiento de la criptografiacutea

mexicana en el siglo XX En lo particular se trata de poner a disposicioacuten de los estudiosos el

contenido completo de la carta de Leyva Solano por primera vez despueacutes de 100 antildeos y al mismo

tiempo someter a la criacutetica teacutecnica e histoacuterica el procedimiento criptoanaliacutetico puesto en operacioacuten

para recuperar el texto plano

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados en nuestro paiacutes sobre formas y meacutetodos de encriptacioacuten durante la Revolucioacuten

Mexicana incluso mucho antes de la 2ordf Guerra mundial momento donde se registroacute un auge

importante dentro de la criptografiacutea moderna

22

Tiacutetulo de Tesis Anaacutelisis de la programacioacuten concurrente sobre la cpu y gpu en el

desarrollo de fractal build

Autor Joseacute Vicente Anilema Guadalupe

Fecha 2012

Lugar Riobamba Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la geometriacutea euclidiana debido a que

el autor realiza una aplicacioacuten que crea paisajes fractales lo que significa crear un paisaje con una

misma figura geomeacutetrica Lo anterior se traduce en una necesidad de gran poder de coacutemputo para

realizar de una manera eficaz la tarea Dentro de la tesis el autor realiza diversos estudios

comparativos entre el procesamiento serializado realizado por una CPU (unidad central de

procesamiento) y procesamiento paralelizado realizado por una GPU (Unidad grafica de

procesamiento) a traveacutes de diversas herramientas para obtener el mejor aprovechamiento de los

recursos

Resultados El autor concluye que es necesario examinar los algoritmos a utilizar para que

estos puedan ser utilizados en coacutemputo paralelo Ademaacutes de que es necesario aprender ciertas

herramientas a utilizar para aprovechar al maacuteximo el coacutemputo distribuido y no desperdiciar el

poder de procesamiento muy superior que las GPUrsquos nos pueden brindar

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados para medir y comparar la velocidad de procesamiento de la unidad central de

procesamiento (CPU) y la unidad graacutefica de procesamiento (GPU) Asiacute como la medida en Flops

(Operaciones de punto flotante por segundo)

23

Tiacutetulo del Trabajo Arquitectura cluacutester de alto rendimiento utilizando herramientas de

software libre

Autores Leonardo Chiquiguanca Edyson Malla Freddy Ajila Rene Guamaacuten-Quincheacute

Fecha mayo 2015

Lugar Loja Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la gran cantidad de datos que tienen

que procesar las universidades puacuteblicas dentro de sus investigaciones realizadas en diferentes aacutereas

como la ingenieriacutea medicina etc y la carencia de recursos econoacutemicos para obtener

supercomputadoras que procesen dicha informacioacuten Los autores proponen dentro de su

investigacioacuten la utilizacioacuten de equipo de coacutemputo existente dentro de su universidad y por medio

de software libre realizar agrupamiento de computadoras para poder lograr el procesamiento de

grandes voluacutemenes de datos de una manera accesible

Resultados Los autores concluyen que la mejor arquitectura para el agrupamiento

(cluacutester) de computadoras en ambientes universitarios es la arquitectura Beowulf debido a que la

implementaron en hardware convencional existente dentro de su campus universitario y que

ademaacutes usaron software libre mencionando que el poder de coacutemputo logrado fue muy cercano al

de una supercomputadora

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de las teacutecnicas

utilizadas en ambientes universitarios para la realizacioacuten de agrupamiento de computadoras y

sobre todo la optimizacioacuten de costos para realizar dicha tarea y tener como finalidad el lograr

mayor capacidad de procesamiento

24

Tiacutetulo de Tesis Desarrollo de un algoritmo de cifrado simeacutetrico de resumen

Autores Jonathan Dave Orjuela Navarrete

Antildeo 2008

Lugar Bogotaacute DC

Siacutentesis Esta tesis realiza un estudio de varios meacutetodos de criptografiacutea simeacutetrica para

posteriormente utilizando diferentes foacutermulas matemaacuteticas crear un algoritmo criptograacutefico

nuevo Dentro de la tesis utiliza dos meacutetodos para realizar pruebas a su algoritmo criptoanaacutelisis

diferencial y criptoanaacutelisis basado en fallos de hardware Dentro de los cuales hace un estudio

detallado de las teacutecnicas y herramientas de criptoanaacutelisis realizado a su algoritmo

Resultados El autor concluye de manera positiva con la realizacioacuten del algoritmo y de

manera satisfactoria con la realizacioacuten de criptoanaacutelisis a su algoritmo pudiendo demostrar la

fortaleza del algoritmo a traveacutes de ejemplo de cifrado con textos claro muy parecido y su

conversioacuten a cadenas completamente diferentes

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de criptoanaacutelisis diferencial y criptoanaacutelisis basado en fallos de hardware para la

evaluacioacuten de algoritmos de cifrado simeacutetrico de textos claros

25

Tiacutetulo del Trabajo Firt step in a Pc cluster development with openMosix

Autores Javier Bilbao Gorka Garate

Antildeo 2008

Lugar Bilbao Spain

Siacutentesis En este trabajo se afirma que es posible hacer maacutequinas de alta capacidad de

caacutelculo mediante la interconexioacuten de equipos con redes de alta velocidad A este tipo de sistemas

se les llama sistemas distribuidos y hoy en diacutea es la tecnologiacutea maacutes utilizada para resolver

problemas que requieren una gran capacidad de caacutelculo La agrupacioacuten de computadoras permite

que varias computadoras trabajen juntas para resolver los problemas de informaacutetica comuacuten Este

artiacuteculo centra su estudio en uno de los diferentes meacutetodos de agrupamiento de computadoras

openMosix El trabajo tambieacuten evaluacutea el cluacutester por dos casos de estudio donde se mejora el

tiempo de ejecucioacuten de los problemas resueltos

Resultados El autor del artiacuteculo concluye con la realizacioacuten satisfactoria de agrupamiento

de computadoras bajo el meacutetodo openMosix el cual uacutenicamente permite agrupamiento de la forma

SSI (Single System Image) que se refiere a que uacutenicamente se puede realizar el agrupamiento con

todos los nodos ejecutando un mismo sistema operativo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras openMosix ventajas desventajas y dificultades para

su implementacioacuten

26

Tiacutetulo del Trabajo Disentildeo e implementacioacuten de un cluacutester tipo Beowulf para el desarrollo

de coacutemputo cientiacutefico avanzado

Autores Edgar Rubeacuten Gonzaacutelez Ramiacuterez Abimael Rodriacuteguez Saacutenchez

Antildeo 2008

Lugar Instituto Politeacutecnico Nacional Meacutexico DF

Siacutentesis Este trabajo de tesis ha desarrollado e implementado una herramienta

computacional llamada Cluster Beowulf para mejorar la programacioacuten paralela Comenzando

con la memoria compartida y distribuida el autor implemento el agrupamiento tipo Beowulf

pensando en procesamiento paralelo la optimizacioacuten de las fuentes informaacuteticas El disentildeo se

construye mediante una distribucioacuten Linux Fedora Core 6 a 64 bits utilizando todas las ventajas

que ofrece el estaacutendar Gigabyt Ethernet La programacioacuten paralela fue desarrollada en lenguaje C

tanto para MPI como para OPENMP

Resultados El autor del artiacuteculo concluye que de acuerdo con los resultados el tiempo

de procesamiento se redujo con el uso muacuteltiples nuacutecleos mejoroacute hasta ocho veces gracias al

multihilo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras Beowulf y su implementacioacuten en sistemas operativos

de uso libre Linux distribucioacuten Fedora 6

27

Marco Teoacuterico

21 Seguridad de la Informacioacuten

La Seguridad de la Informacioacuten consiste y hace referencia a la proteccioacuten de cualquier

amenaza para salvaguardar los activos fijos y en especial toda informacioacuten de la cual estaacute basada

la continuidad de las operaciones de la empresa sean estas ocasionadas dentro o fuera de la misma

con esto se logra disminuir los dantildeos y perjuicios que estas amenazas causariacutean a la organizacioacuten

y a la vez aumentar las oportunidades de servicio hacia otras empresas

La Seguridad de la informacioacuten se consigue mediante la implementacioacuten de controles

efectivos que pueden ser normas manual de funciones buenas praacutecticas procedimientos

estructuras organizativas funciones de software y hardware planes de contingencia y herramientas

que se encargan de proteger la privacidad e integridad de la informacioacuten que se almacena en un

sistema informaacutetico Estos controles necesitan continuamente ser establecidos monitoreados

revisados y mejorados en donde sea necesario para asegurar que se cumplan los objetivos

especiacuteficos de seguridad en cada aacuterea de negocio de la organizacioacuten

La seguridad informaacutetica es en realidad una rama de la seguridad de la informacioacuten aunque

de forma praacutectica algunos autores suelen utilizar de manera indistinta ambos teacuterminos

211 Objetivo de la seguridad de la informacioacuten En la seguridad de la informacioacuten

sabiendo que dichos procesos de seguridad permiten proteger el recurso maacutes importante y valioso

de una organizacioacuten partiendo como principio fundamental los procesos de aseguramiento el

28

objetivo del proceso de seguridad informaacutetica es obtener un nivel aceptable de seguridad ya que

la informacioacuten es lo maacutes valioso que tiene una institucioacuten o empresa por lo tanto esta debe ser

protegida para que no sea vulnerable y utilizada para fines maliciosos

212 Principios de la seguridad informaacutetica

Confidencialidad Los datos solo deben ser conocidos y accedidos por quienes esteacuten

autorizados durante su almacenamiento procesamiento o trasmisioacuten Verificar y certificar que solo

los usuarios con accesos autorizados puedan acceder a la informacioacuten

Integridad Los datos solo pueden ser modificados y eliminados por quienes esteacuten

autorizados para ello es decir los sistemas y aplicaciones solo deben ser operados por personal

autorizado

Disponibilidad Los sistemas que almacenan datos e informacioacuten deben garantizar su

acceso cuando asiacute se requiera por quienes tengan derecho a ello

213 Caracteriacutesticas de seguridad informaacutetica

Control Solo los usuarios autorizados deciden cuaacutendo y coacutemo permitir el acceso a la

informacioacuten

Auditoriacutea Establece las acciones cuaacutendo las implementa y quieacuten las realiza sobre el

sistema

Autenticidad Define que la informacioacuten necesaria es correcta utilizable y vaacutelida en tiempo

y forma

No Repudio Su funcioacuten es evitar que alguna entidad que envioacute o recibioacute informacioacuten

alegue que no lo hizo

29

214 Formas de Autenticacioacuten

Contrasentildea Una contrasentildea es un tipo de seguridad informaacutetica ya que es una serie de

caracteres secretos que permiten a un usuario tener acceso a un archivo equipo de coacutemputo o

programa y negar el acceso a usuarios no autorizados

Certificado digital Es un tipo de seguridad informaacutetica que permite la firma digital

electroacutenica que garantiza teacutecnica y legalmente la identidad de una persona en Internet

Autenticacioacuten HTTP Tipo de seguridad informaacutetica que delega la autenticacioacuten de

usuarios a un servidor a traveacutes de Kerberos

215 Ciber-seguridad Con los avances tecnoloacutegicos y la demanda que ha causado en ello

existe un elevado iacutendice de informacioacuten personal y empresarial que circula y se mantiene en la red

por la utilizacioacuten del internet esto permite que toda informacioacuten quede expuesta a cualquier ataque

de ciber-delincuentes los cuales buscan la manera de vulnerar cualquier sistema para espiar robar

informacioacuten o hacer dantildeo de cualquier tipo por lo que se ha visto la necesidad de tomar medidas

de seguridad para salvaguardar la informacioacuten ya que es muy importante

La ciberseguridad es la proteccioacuten de los sistemas conectados a Internet incluidos el

hardware el software y los datos de los ciberataques En un contexto informaacutetico la seguridad

comprende la ciberseguridad y la seguridad fiacutesica ambas son utilizadas por las empresas para

proteger contra el acceso no autorizado a los centros de datos y otros sistemas de coacutemputo El

objetivo de la ciberseguridad es limitar el riesgo y proteger los activos de Tecnologiacuteas de

Informacioacuten de los atacantes con intenciones maliciosas La seguridad de la informacioacuten estaacute

30

disentildeada para mantener la confidencialidad integridad y disponibilidad de los datos es un

subconjunto de la ciberseguridad

22 Criptografiacutea

La Criptografiacutea tambieacuten llamada ldquoescritura ocultardquo tradicionalmente en el aacutembito de

criptografiacutea es donde se ocupan las teacutecnicas de cifrado o codificacioacuten que permiten alterar el

contenido de cierta informacioacuten o mensajes con el fin de hacerlos ininteligibles a receptores o

personas no autorizadas (Meneacutendez-Barzanallana 17)

Actualmente la criptografiacutea se encarga de analizar algoritmos protocolos y sistemas que

son utilizados para proveer seguridad a las comunicaciones informacioacuten y a las entidades que se

comunican entre siacute

221 Tipos de Criptografiacuteas

2211 Tablas Hash Un hash o funcioacuten hash toma un grupo de caracteres (llamado clave)

y lo asigna a un valor de cierta longitud (llamado valor hash o hash) El valor hash es representativo

de la cadena de caracteres original pero normalmente es maacutes pequentildeo que el original

El hash tambieacuten es utilizado en el cifrado y descifrado de firmas digitales La funcioacuten hash

transforma la firma digital luego tanto el valor hash como la firma se enviacutean al receptor El

receptor utiliza la misma funcioacuten hash para generar el valor hash y luego lo compara con el recibido

31

en el mensaje Si los valores hash son los mismos es probable que el mensaje se haya transmitido

sin errores

Un ejemplo de una funcioacuten hash se llama plegado(folding) Esta toma un valor original lo

divide en varias partes luego agrega las partes y usa los uacuteltimos cuatro diacutegitos restantes como

valor o clave hash

2212 Tipos de algoritmos Hash

22121 SHA - 1 (Secure Hash Algorithm) Es un algoritmo criptograacutefico de Hash

publicado por el gobierno de los Estados Unidos Genera un valor Hash de 160 bits a partir de una

secuencia de longitud arbitraria Es considerado lo suficientemente seguro para aplicaciones

praacutecticas pero hay disponibles versiones maacutes robustas SHA - 256 SHA - 384 y SHA - 512 que

generan valores Hash de 256 384 y 512 bits respectivamente estas versiones reemplazaraacuten a SHA

- 1 mientras se siga trabajando sobre ellas (Borghello 2009)

22122 MD5 (Message Digest Algorithm) En criptografiacutea MD5 es una funcioacuten hash

criptograacutefica ampliamente utilizada con un valor hash de 128 bits Como estaacutendar de Internet (RFC

1321) MD5 se ha empleado en una amplia variedad de aplicaciones de seguridad y tambieacuten se

usa comuacutenmente para verificar la integridad de los archivos Un hash MD5 generalmente se

expresa como un nuacutemero hexadecimal de 32 diacutegitos

MD5 es una versioacuten reforzada de MD4 Al igual que MD4 el hash MD5 fue inventado por

el profesor Ronald Rivest del Massachusetts Institute of Technology (MIT) Ademaacutes MD5 se

32

utilizoacute como modelo para SHA-1 ya que comparten muchas caracteriacutesticas comunes MD5 y

SHA-1 son los dos algoritmos hash maacutes utilizados en la actualidad aunque el uso de MD5 ha

disminuido ya que ahora se considera roto (Borghello 2009)

22123 RIPEMD ndash 160 Es una funcioacuten hash criptograacutefica basada en la construccioacuten

Merkle-Damgaringrd (MD) Se usa en el estaacutendar de Bitcoin Es una versioacuten reforzada del algoritmo

RIPEMD que produce un resumen de hash de 128 bits mientras que el algoritmo RIPEMD-160

produce una salida de 160 bits La funcioacuten de compresioacuten consta de 80 etapas formadas por 5

bloques que se ejecutan 16 veces cada uno Este patroacuten se ejecuta dos veces con los resultados

combinados en la parte inferior utilizando la adicioacuten del moacutedulo 32 (Borghello 2009)

22124 Funcioacuten Merkle-Damgaringrd La construccioacuten MD es una metodologiacutea para crear

funciones hash resistentes a colisiones a partir de funciones de compresioacuten unidireccionales Ralph

Merkle la propuso en el antildeo de 1979 en ldquoA certified Digital Signaturerdquo posterior a este estudio

Ivan Damgaringrd demostroacute de manera independiente que la estructura era soacutelida (Merkle amp

Damgaringrd sf)

2213 Cifrado simeacutetrico Los cifrados simeacutetricos son los cifrados criptograacuteficos maacutes

antiguos y maacutes utilizados En un cifrado simeacutetrico la clave que descifra el texto cifrado es la

misma (o puede derivarse faacutecilmente) de la clave que cifra el texto claro Esta clave a menudo se

conoce como la clave secreta Los cifrados simeacutetricos maacutes utilizados son DES y AES

La problemaacutetica que surge es la seguridad de la clave

33

El emisor cifra el mensaje con una clave

Enviacutea el mensaje cifrado de tal manera que nadie puede descifrarlo sin dicha clave

El receptor obtiene la clave y entonces puede descifrar el mensaje con la misma clave

que recibioacute del emisor

Algunos algoritmos de este tipo son

22131 RC5 (Cifrado de Rivest) Es un algoritmo de cifrado de bloque de clave simeacutetrica

disentildeado por Ron Rivest en 1994 Se destaca por ser simple raacutepido (debido a que usa solo

operaciones de coacutemputo primitivas como XOR o shift) y ademaacutes por consumir menos memoria

RC5 es un cifrado de bloques y aborda dos bloques de palabras a la vez Dependiendo del

tamantildeo del bloque de texto sin formato nuacutemero de rondas y tamantildeo de clave se pueden definir

varias instancias de RC5 y cada instancia se denota como RC5-w r b donde w = tamantildeo de

palabra en bits r = nuacutemero de rondas y b = tamantildeo de la clave en bytes (Pawar 2016)

Como se ha mencionado RC5 utiliza bloques de 2 palabras el tamantildeo del bloque de texto

sin formato puede ser de 32 64 o 128 bits

22132 IDEA (International Data Encryption Algorithm) Baacutesicamente es un algoritmo

de cifrado de bloque simeacutetrico El algoritmo asimeacutetrico utiliza la misma clave para el cifrado y

descifrado Un cifrado de bloque divide el mensaje en bloques cada uno de una longitud fija y

luego cifra cada bloque de forma independiente

34

El tamantildeo de bloque tiacutepico es de 16 bytes de 128 bits Un cifrado de bloque generalmente

operaraacute en bloques o rondas donde se aplica parte de la clave a la ronda Despueacutes de un cierto

nuacutemero de rondas digamos entre 10 y 16 se termina con el texto cifrado para ese bloque

El bloque de texto cifrado tiene exactamente el mismo tamantildeo que el bloque de texto sin

formato 16 bytes Para cada ronda se trabaja en el bloque utilizando una parte de la clave de

cifrado a la que se le llama la clave redonda Muacuteltiples claves redondas se derivan de la clave de

cifrado utilizando para esto un programa de claves

La programacioacuten de claves es un algoritmo que cambia XOR multiplica y realiza otros

tipos de operaciones en la clave de cifrado original para obtener estas claves redondas Bueno si

tengo un bloque de 16 bytes y tengo una clave de 128 bits que tambieacuten es de 16 bytes (Educba

2019)

22133 DES (Data Encryption Standard) El algoritmo DES es el algoritmo de seguridad

maacutes popular Es un algoritmo simeacutetrico lo que significa que se utilizan las mismas claves para

cifrar descifrar datos confidenciales La longitud de la clave es de 8 bytes (64 bits) Entonces

para cifrar descifrar datos el algoritmo DES utiliza una clave de 8 bytes pero 1 byte (8 bits) para

la verificacioacuten de paridad Es un algoritmo de cifrado de bloque por lo tanto el tamantildeo del bloque

de datos del algoritmo DES es de 64 bits Para cifrar descifrar datos el algoritmo DES utiliza la

estructura Feistel Entonces utiliza una ronda para cifrar descifrar datos Aunque el tamantildeo del

35

bloque de datos es de 64 bits el nuacutemero de rondas seraacute de 16 rondas asiacute mismo utilizaraacute diferentes

subclaves para cada ronda por lo tanto el nuacutemero de subclaves seraacute de 16 subclaves

Como se puede observar la clave efectiva es de 56 bits por consiguiente se tiene 256

combinaciones posibles por lo que la fuerza bruta se hace casi imposible (Sanjoy 2015)

2214 Cifrado asimeacutetrico Los cifrados asimeacutetricos tambieacuten se conocen como cifrados

con claves puacuteblicas y privadas Usan dos claves una para el cifrado de mensajes y la otra durante

el descifrado

Un intruso puede encriptar cualquier mensaje usando la clave puacuteblica conocida Los

cifrados asimeacutetricos son por lo tanto vulnerables a los ataques de texto sin formato Los cifrados

con encriptacioacuten de clave puacuteblica deben proporcionar seguridad contra tales ataques Despueacutes de

encriptar dos mensajes con la misma clave puacuteblica el intruso no puede distinguir queacute texto cifrado

estaacute conectado con queacute texto plano Ademaacutes un observador que analiza dos mensajes encriptados

usando el mismo algoritmo y la misma clave puacuteblica no puede distinguir sus textos cifrados

(Kowalczyk 2015)

Los cifrados asimeacutetricos son mucho maacutes lentos que los cifrados simeacutetricos (generalmente

mil veces maacutes lentos) Es una praacutectica comuacuten usar el cifrado de clave puacuteblica solo para establecer

la conexioacuten segura y negociar la nueva clave secreta que luego se utilizaraacute para proteger la

comunicacioacuten mediante cifrado simeacutetrico Ejemplos de este cifrado son

36

22141 DSA (Digital Signature Algorithm - Algoritmo de Firma digital) Es un estaacutendar

del Gobierno Federal de los Estados Unidos para firmas digitales Fue propuesto por el Instituto

Nacional de Estaacutendares y Tecnologiacutea (NIST) en agosto de 1991 para ser usado en su Estaacutendar de

Firma Digital (DSS) en el antildeo de 1993

La primera parte del algoritmo DSA es la generacioacuten de clave puacuteblica y clave privada que

puede describirse como

Se elige un nuacutemero primo q que se llama divisor primo

Se elige otro nuacutemero primo p de modo que pndash1 mod q = 0 p seraacute llamado moacutedulo

primo

Ahora se elige un nuacutemero entero g tal que 1 ltg ltp g q mod p = 1 g = h ((p

ndash 1) q) mod p q tambieacuten se llama moacutedulo de orden multiplicativo de g moacutedulo p

Se elige un nuacutemero entero tal que 0 ltx ltq

Se calcula y como g x mod p

Se empaqueta la clave puacuteblica como p q g y

Por uacuteltimo se empaqueta la clave privada como p q g x

La segunda parte del algoritmo DSA es la generacioacuten de firma y la verificacioacuten de firma

Para generar una firma de mensaje el remitente puede seguir estos pasos

Se genera el resumen del mensaje h utilizando un algoritmo hash como SHA1

Se genera un nuacutemero aleatorio k tal que 0 ltk ltq

37

Se calcula r como (g k mod p) mod q Si r = 0 seleccione una k diferente

Ahora se calcula i de modo que k i mod q = 1 i se llama el inverso multiplicativo modular

de k moacutedulo q

Se calcula s = i (h + r x) mod q Si s = 0 se selecciona una k diferente

Por uacuteltimo se empaqueta la firma digital como r s (Yang 2019)

22142 RSA Encriptacioacuten RSA encriptacioacuten Rivest-Shamir-Adleman tipo de

criptografiacutea de clave puacuteblica ampliamente utilizada para la encriptacioacuten de datos de correo

electroacutenico y otras transacciones digitales a traveacutes de Internet RSA lleva el nombre de sus

inventores Ronald L Rivest Adi Shamir y Leonard M Adleman quienes lo crearon mientras

trabajaban en la facultad del Instituto Tecnoloacutegico de Massachusetts (Simmons 2019)

En el sistema RSA un usuario elige de manera secreta un par de nuacutemeros primos p y q tan

grandes que factorizar el producto n = pq estaacute mucho maacutes allaacute de las capacidades informaacuteticas

proyectadas para la vida uacutetil de los cifrados A partir del antildeo 2000 los estaacutendares de seguridad del

gobierno de EE UU exigen que el moacutedulo tenga un tamantildeo de 1024 bits es decir p y q deben

tener un tamantildeo de aproximadamente 155 diacutegitos decimales por lo que n es aproximadamente un

nuacutemero de 310 diacutegitos Dado que los nuacutemeros duros maacutes grandes que actualmente se pueden

factorizar son solo la mitad de este tamantildeo y dado que la dificultad de factorizar se duplica

aproximadamente por cada tres diacutegitos adicionales en el moacutedulo se cree que los moacutedulos de 310

diacutegitos estaacuten a salvo de factorizar durante varias deacutecadas

38

2215 Cifrado hiacutebrido Es una teacutecnica comuacuten que combina diferentes funciones

criptograacuteficas como el cifrado de bloque Con el cifrado hiacutebrido se pueden cifrar datos firmarlos

o agregar un MAC y enviarlos en un objeto seguro (como una cadena o archivo) a traveacutes de un

canal de comunicacioacuten inseguro (sin un acuerdo clave entre dos partes)

En el sistema de cifrado hiacutebrido el texto plano (sin formato) se divide en tokens Luego

se calcula la longitud de cada ficha Los tokens y sus longitudes se almacenan en una matriz

Posteriormente se aplica el algoritmo Ceacutesar anidado sugerido El texto producido se almacena en

una matriz n x m llamada A Luego la transposicioacuten de esta matriz At se calcula utilizando

nuestra versioacuten revisada del cifrado de transposicioacuten para resolver el problema de secuenciacioacuten

A continuacioacuten el algoritmo RSA revisado se aplica en la matriz producida En el paso final se

aplica el formato de datos textuales usando el coacutedigo ASCII para producir el texto cifrado El

proceso de descifrado se realiza de la misma manera pero en orden inverso (Nahar amp Abu Abbas

2010)

23 Criptoanaacutelisis

El criptoanaacutelisis es el proceso de estudiar sistemas criptograacuteficos para buscar debilidades

o fugas de informacioacuten En general se considera que el criptoanaacutelisis explora las debilidades de

las matemaacuteticas subyacentes de un sistema criptograacutefico pero tambieacuten incluye la buacutesqueda de

debilidades en la implementacioacuten como ataques de canal lateral o entradas de entropiacutea deacutebiles

39

Su funcioacuten es la de conseguir obtener el significado de mensajes creados por medio de

criptografiacutea El objetivo principal del criptoanaacutelisis es opuesto al de la criptografiacutea Tiene como

finalidad encontrar la debilidad de las diferentes teacutecnicas criptograacuteficas para explotarla y de esta

manera reducir o eliminar la seguridad de la teacutecnica criptograacutefica Cualquier intento de

criptoanaacutelisis puede ser llamado ataque Una vez que un atacante logra romper la seguridad que

una teacutecnica criptograacutefica aportaba al sistema se dice que dicho sistema ha sido roto y por lo tanto

dicho ataque tuvo eacutexito

El criptoanaacutelisis es la investigacioacuten de sistemas texto cifrado y cifrados para revelar el

significado oculto o los detalles del sistema mismo El objetivo de este tipo de estudio es descubrir

los aspectos ocultos incluso si la clave o el algoritmo principal no se pueden descifrar Se necesita

una combinacioacuten exitosa de persistencia matemaacuteticas intuicioacuten curiosidad y una computadora

que funcione para hacer un buen criptoanalista Este tipo de ruptura de coacutedigo es extremadamente

importante especialmente en el mundo tecnoloacutegicamente dependiente de hoy El criptoanaacutelisis es

constantemente realizado por criptoacutegrafos que intentan obtener informacioacuten valiosa y por aquellos

que intentan descifrar el coacutedigo para revelar secretos (Security Degree Hub 2017)

24 Niveles de seguridad

Los niveles de seguridad de sistemas operativos son otorgados de acuerdo con el sistema

operativo que esteacute utilizando la empresa o institucioacuten ya sea puacuteblica privada gubernamental o no

gubernamental En el manual ldquoTrusted Computer System Evaluation Criteriardquo (United States

40

Government Department of Defense 1983) el Departamento de Defensa de los Estados Unidos

define los siguientes niveles

241 Nivel D1 Este nivel es el maacutes bajo de seguridad por lo tanto la norma establece que

el sistema no es confiable Esta divisioacuten contiene solo una clase Estaacute reservado para aquellos

sistemas que han sido evaluados pero que no cumplen con los requisitos para un nivel de

evaluacioacuten superior

242 Nivel C1 Un sistema de nivel C1 cumple nominalmente los requisitos de seguridad

discrecionales al proporcionar separacioacuten de usuarios y datos Incorpora alguna forma de controles

creiacutebles capaces de imponer limitaciones de acceso de manera individual es decir aparentemente

adecuados para permitir que los usuarios puedan proteger la informacioacuten privada o del proyecto y

evitar que otros usuarios lean o destruyan accidentalmente sus datos Se espera que el entorno de

nivel C1 sea uno de los usuarios cooperantes que procesan datos con el mismo nivel de

sensibilidad Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten

de nivel C1 son

Control de acceso discrecional por ejemplo listas de control de acceso (ACL)

usuario grupo

Por lo general para usuarios que estaacuten en el mismo nivel de seguridad

Proteccioacuten de nombre de usuario y contrasentildea y base de datos de autorizaciones

seguras (ADB)

Sistema operativo protegido y modo de operaciones del sistema

Comprobacioacuten perioacutedica de integridad de TCB

41

Mecanismos de seguridad probados sin derivaciones obvias

Documentacioacuten para la seguridad del usuario

Documentacioacuten para la seguridad de la administracioacuten de sistemas

Documentacioacuten para pruebas de seguridad

Documentacioacuten de disentildeo TCB

Tiacutepicamente para usuarios en el mismo nivel de seguridad

La certificacioacuten C1 es rara Los sistemas de ejemplo son versiones anteriores de

Unix IBM RACF

243 Nivel C2 Los sistemas de esta clase imponen un control de acceso discrecional maacutes

fino que los sistemas (C1) lo que hace que los usuarios sean individualmente responsables de sus

acciones a traveacutes de procedimientos de inicio de sesioacuten auditoriacutea de eventos relevantes para la

seguridad y aislamiento de recursos Los siguientes son requisitos miacutenimos para los sistemas

asignados a una clasificacioacuten de nivel C2

La proteccioacuten de objetos puede ser para un solo usuario Por ejemplo a traveacutes de

una base de datos ACL

La autorizacioacuten de acceso solo puede ser asignada por usuarios autorizados

Proteccioacuten de reutilizacioacuten de objetos (Por ejemplo para evitar la reasignacioacuten de

objetos eliminados de manera segura)

Procedimientos obligatorios de identificacioacuten y autorizacioacuten para los usuarios (Por

ejemplo Usuario Contrasentildea)

Auditoriacutea completa de eventos de seguridad (es decir fecha hora evento usuario

eacutexito falla ID de terminal)

42

Modo de operacioacuten del sistema protegido

Proteccioacuten adicional para la autorizacioacuten y los datos de auditoriacutea

Documentacioacuten como C1 maacutes informacioacuten sobre el examen de la informacioacuten de

auditoriacutea

Esta es una de las certificaciones maacutes comunes Los sistemas operativos de ejemplo

son VMS IBM OS 400 Windows NT Novell NetWare 411 Oracle 7 DG AOS

VS II

244 Nivel B1 Los sistemas de este nivel requieren todas las caracteriacutesticas requeridas

para el nivel C2 Ademaacutes debe estar presente una declaracioacuten informal del modelo de poliacutetica de

seguridad etiquetado de datos y control de acceso obligatorio sobre sujetos y objetos nombrados

La capacidad debe existir para etiquetar con precisioacuten la informacioacuten exportada Cualquier falla

identificada por la prueba debe ser eliminada Los siguientes son requisitos miacutenimos para los

sistemas asignados a una clasificacioacuten de nivel B1

Etiquetado obligatorio de seguridad y acceso de todos los objetos (Por ejemplo

archivos procesos dispositivos)

Comprobacioacuten de integridad de etiquetas (Por ejemplo mantenimiento de etiquetas

de sensibilidad cuando se exportan datos)

Auditoriacutea de objetos etiquetados

Control de acceso obligatorio para todas las operaciones

Capacidad para especificar el nivel de seguridad impreso en salida legible para

humanos (Por ejemplo impresoras)

43

Capacidad para especificar el nivel de seguridad en cualquier salida legible por

maacutequina

Auditoriacutea mejorada

Proteccioacuten mejorada del sistema operativo

Documentacioacuten mejorada

Los sistemas operativos de ejemplo son HP-UX BLS Cray Research Trusted

Unicos 80 Digital SEVMS Harris CS SX SGI Trusted IRIX

245 Nivel B2 En los sistemas de nivel B2 el TCB se basa en un modelo de poliacutetica de

seguridad formal claramente definido y documentado que requiere que la aplicacioacuten de control de

acceso discrecional y obligatoria que se encuentra en los sistemas de nivel B1 se extienda a todos

los sujetos y objetos en el sistema Ademaacutes se abordan los canales encubiertos El TCB debe

estructurarse cuidadosamente en elementos criacuteticos para la proteccioacuten y no criacuteticos para la

proteccioacuten La interfaz TCB estaacute bien definida y el disentildeo y la implementacioacuten TCB le permiten

someterse a pruebas maacutes exhaustivas y una revisioacuten maacutes completa Se fortalecen los mecanismos

de autenticacioacuten se proporciona una gestioacuten confiable de las instalaciones en forma de soporte

para las funciones de administrador y operador del sistema y se imponen estrictos controles de

gestioacuten de la configuracioacuten El sistema es relativamente resistente a la penetracioacuten Los siguientes

son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de nivel B2

Notificacioacuten de cambios en el nivel de seguridad que afectan a los usuarios

interactivos

Etiquetas de dispositivos jeraacuterquicos

44

Acceso obligatorio a todos los objetos y dispositivos

Comunicaciones de ruta confiables entre usuario y sistema

Rastreo de canales de almacenamiento encubiertos

Modo de operaciones del sistema maacutes estricto en unidades independientes de varios

niveles

Anaacutelisis de canales encubiertos

Pruebas de seguridad mejoradas

Modelos formales de TCB

Versioacuten actualizacioacuten y anaacutelisis y revisioacuten de parches

Los sistemas de ejemplo son Honeywell Multics Cryptek VSLAN Trusted

XENIX

246 Nivel B3 El TCB debe satisfacer los requisitos del monitor de referencia para mediar

todos los accesos de los sujetos a los objetos ser a prueba de manipulaciones y ser lo

suficientemente pequentildeo como para ser sometido a anaacutelisis y pruebas Con este fin el TCB estaacute

estructurado para excluir el coacutedigo que no es esencial para la aplicacioacuten de la poliacutetica de seguridad

con una importante ingenieriacutea del sistema durante el disentildeo y la implementacioacuten del TCB dirigido

a minimizar su complejidad Se admite un administrador de seguridad los mecanismos de

auditoriacutea se ampliacutean para sentildealar eventos relevantes para la seguridad y se requieren

procedimientos de recuperacioacuten del sistema El sistema es altamente resistente a la penetracioacuten

Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de clase

(B3)

45

ACL adicionalmente basadas en grupos e identificadores

Acceso de ruta confiable y autenticacioacuten

Anaacutelisis automaacutetico de seguridad

Modelos TCB maacutes formales

Auditoriacutea de eventos de auditoriacutea de seguridad

Recuperacioacuten confiable despueacutes de la caiacuteda del sistema y documentacioacuten relevante

Cero defectos de disentildeo en TCB y defectos miacutenimos de implementacioacuten

El uacutenico sistema operativo con certificacioacuten B3 es Getronics Wang Federal XTS-

300

247 Nivel A1 Los sistemas en el nivel A1 son funcionalmente equivalentes a los del nivel

B3 en que no se agregan caracteriacutesticas arquitectoacutenicas adicionales ni requisitos de poliacuteticas La

caracteriacutestica distintiva de los sistemas en este nivel es el anaacutelisis derivado de la especificacioacuten

formal del disentildeo y las teacutecnicas de verificacioacuten y el alto grado resultante de seguridad de que el

TCB se implementa correctamente Esta garantiacutea es de naturaleza de desarrollo comenzando con

un modelo formal de la poliacutetica de seguridad y una especificacioacuten formal de alto nivel del disentildeo

Independientemente del lenguaje de especificacioacuten particular o del sistema de verificacioacuten

utilizado existen los siguientes criterios importantes para la verificacioacuten del disentildeo de nivel A1

Meacutetodos formales y prueba de integridad de TCB

Estos son los uacutenicos sistemas con certificacioacuten A1 Boeing MLS LAN Gemini

Trusted Network Processor Honeywell SCOMP (United States Government

Department of Defense 1983)

46

25 Sistemas Operativos

Un sistema operativo actuacutea como intermediario entre el usuario de una computadora y el

hardware de la computadora El propoacutesito de un sistema operativo es proporcionar un entorno en

el que un usuario pueda ejecutar programas de manera conveniente y eficiente

Un sistema operativo es un software que administra el hardware de la computadora El

hardware debe proporcionar mecanismos apropiados para garantizar el correcto funcionamiento

del sistema informaacutetico y para evitar que los programas del usuario interfieran con el correcto

funcionamiento del sistema (Carretero Peacuterez de Miguel Anasagasti Garciacutea Carballeira amp Peacuterez

Costoya 2001)

Un sistema operativo es un programa que controla la ejecucioacuten de programas de aplicacioacuten

y actuacutea como una interfaz entre el usuario de una computadora y el hardware de la computadora

Una definicioacuten maacutes comuacuten es que el sistema operativo es el uacutenico programa que se ejecuta

en todo momento en la computadora (generalmente llamado kernel) y todo lo demaacutes son

programas de aplicacioacuten

Un sistema operativo se ocupa de la asignacioacuten de recursos y servicios como memoria

procesadores dispositivos e informacioacuten El sistema operativo incluye los programas para

administrar estos recursos como un controlador de traacutefico un programador un moacutedulo de

administracioacuten de memoria programas de E S y un sistema de archivos (Pawar 2016)

47

251 Windows Sistema operativo de la empresa Microsoft es un conjunto de programas

que administra los recursos de una computadora Windows empieza a trabajar cuando se enciende

o inicializa el equipo para gestionar el hardware empezando desde los niveles maacutes baacutesicos

Es importante conocer que los sistemas operativos funcionan tanto en las computadoras

como en diferentes dispositivos electroacutenicos que usan microprocesadores En este caso Windows

su versioacuten estaacutendar funciona con computadoras Microsoft domina el mercado de los sistemas

operativos debido a su comodidad se puede decir que eacuteste sistema operativo se encuentra

instalado en el 887 de los equipos de coacutemputo que cuentan con acceso a Internet en todo el

mundo

Se pueden mencionar algunas aplicaciones principales (que eacutestas tambieacuten pueden ser

desinstaladas por los usuarios o actualizadas sin que el sistema operativo se dantildee o deje de

funcionar) se encuentran el procesador de texto WordPad el navegador Internet Explorer el

reproductor multimedia Windows Media y el editor de imaacutegenes Paint

La principal novedad que aportoacute Windows desde sus oriacutegenes fue la facilidad para usarlo

y el atractivo visual De hecho su nombre (ldquoventanasrdquo) se debe a la forma en que el sistema

presenta a los usuarios los recursos con los que cuenta su computadora lo que facilita las tareas

cotidianas Windows tambieacuten suele recibir varias criacuteticas por sus problemas de seguridad y por

otros fallos

48

252 Registro de Windows El registro es una base de datos jeraacuterquica que contiene datos

que son criacuteticos para el funcionamiento de Windows y las aplicaciones y servicios que se ejecutan

en Windows Los datos estaacuten estructurados en un formato de aacuterbol Cada nodo en el aacuterbol se llama

clave Cada clave puede contener subclaves y entradas de datos llamadas valores A veces la

presencia de una clave es el uacutenico dato que requiere una aplicacioacuten otras veces una aplicacioacuten

abre una clave y usa los valores asociados con la clave (Microsoft Inc 2019) Una clave puede

tener cualquier nuacutemero de valores y los valores pueden tener cualquier forma El registro es

utilizado por

Autenticacioacuten

Nuacutecleo (Kernel)

Controladores de dispositivos

Servicios

SAM

Las carpetas del sistema se almacenaraacuten en distintas rutas de acceso dependiendo de la

versioacuten de Windows con la que se esteacute trabajando a continuacioacuten cuatro de los cinco archivos

que maacutes interesan a esta investigacioacuten se encuentran en la siguiente ubicacioacuten SystemRoot

System32 Config dentro de las siguientes sub llaves

SAM - HKEY LOCAL MACHINE SAM

SECURITY - HKEY LOCAL MACHINE SECURITY

SOFTWARE - HKEY LOCAL MACHINE SOFTWARE

SYSTEM - HKEY LOCAL MACHINE SYSTEM

49

253 Administrador de cuentas de seguridad El administrador de cuentas de seguridad

(SAM por sus siglas en ingleacutes) es una base de datos en donde se encuentran las cuentas de

seguridad Esto es utilizado por Windows para administrar las cuentas de usuario y contrasentildeas en

el formato hash

Las contrasentildeas nunca se almacenan en formato de texto claro Se almacenan en formato

de hash para protegerlas de los ataques La base de datos SAM se implementa como un archivo de

registro y las obtiene del kernel de Windows y mantiene un bloqueo exclusivo al archivo SAM

esto quiere decir que el archivo tiene cierta medida de seguridad para el almacenamiento de las

contrasentildeas (Hernandez 2013)

No es posible copiar el archivo SAM a otra ubicacioacuten en el caso de los ataques en liacutenea

Dado que el archivo SAM estaacute bloqueado con un bloqueo exclusivo al sistema de archivos no

puede ser copiado o movido mientras se ejecuta Windows El bloqueo no iniciaraacute hasta que la

excepcioacuten de la pantalla azul haya sido inicializada o el sistema operativo haya sido apagado Sin

embargo los archivos en formato hash de contrasentildeas fuera de liacutenea estaacuten disponibles para los

ataques de fuerza bruta el contenido del archivo SAM puede ser copiado o descargado utilizando

diversas teacutecnicas

Un identificador de seguridad (SID) es un valor uacutenico de longitud variable utilizado para

identificar a un usuario Cada cuenta tiene un SID uacutenico emitido por una autoridad como un

controlador de dominio de Windows y almacenado en una base de datos de seguridad Cada vez

50

que un usuario inicia sesioacuten el sistema recupera el SID para ese usuario de la base de datos y lo

coloca en el token de acceso para ese usuario El sistema usa el SID en el token de acceso para

identificar al usuario en todas las interacciones posteriores con la seguridad de Windows Cuando

se ha usado un SID como identificador uacutenico para un usuario o grupo no se puede volver a usar

para identificar a otro usuario o grupo

La seguridad de Windows usa SID en los siguientes elementos de seguridad

En descriptores de seguridad para identificar al propietario de un objeto y grupo

primario

En las entradas de control de acceso para identificar al usuario para quien el acceso

estaacute permitido denegado o auditado

En tokens de acceso para identificar al usuario y los grupos a los que pertenece

2531 Identificador de Seguridad (SID Security Identifier)

S - 1 - 5 - 21 - 3983109318 - 554656936 - 3066752241 - 1000

S - indica que es un string de SID

1 - el nivel de revisioacuten

5 - el identificador de valor de autoridad o authority value no siempre seraacute 5 Entre otros

valores que se pueden encontrar estaacuten los siguientes

51

0 - sin autoridad

1 - autoridad global

2 - autoridad local

3 - autoridad de creador

4 - autoridad no uacutenica

5 - autoridad NT

9 - autoridad de administrador de recursos

21 - 3983109318 - 554656936 - 3066752241 - es el dominio en el que se encuentra el

sistema o el identificador local de la computadora

1000 - ID uacutenico para cada cuenta aquiacute se encuentra el RID (Relative Identifier) Nuacutemero

de longitud variable cualquier grupo o usuario que se cree de manera diferente a la predeterminada

recibiraacute un RID de 1000 o superior En el caso de que el valor sea 500 responde a que este SID

representa la cuenta de un administrador el valor de 500 siempre seraacute el mismo en cualquier cuenta

de administrador a su vez el valor 501 representa el SID de una cuenta Invitado (Guest)

(Hernandez 2013)

254 Autenticacioacuten NTML NTLM (NT LAN Manager) es un protocolo empleado por

muchos productos de Microsoft para realizar la autenticacioacuten desafiacuteorespuesta por lo tanto es el

esquema de autenticacioacuten que por defecto usa Firewall de Microsoft y tambieacuten los productos del

servidor proxy

52

Este software fue desarrollado para afrontar el problema del trabajo con Tecnologiacuteas Java

en un entorno orientado a Microsoft Puesto que no se basa en ninguna especificacioacuten oficial de

protocolo por lo tanto no hay garantiacutea de que funciona correctamente en todos los casos Tambieacuten

ha estado en algunas instalaciones de Windows donde funcionoacute con eacutexito

La Autenticacioacuten NTLM se compone de dos protocolos protocolo de autenticacioacuten NTLM

y protocolo de autenticacioacuten LM Estos protocolos utilizan una metodologiacutea de hash diferente para

almacenar contrasentildeas de los usuarios en la base de datos SAM (Hernandez 2013) (Meneacutendez-

Barzanallana 17)

26 LINUX (ROCKS)

Rocks es una distribucioacuten para cluacutester de Linux de coacutedigo abierto que permite a los usuarios

finales construir de manera maacutes amigable cluacutesteres computacionales y muros de visualizacioacuten en

mosaico Cientos de investigadores de todo el mundo han utilizado Rocks para implementar su

propio cluacutester

Desde mayo de 2000 el grupo Rocks ha abordado las dificultades de implementar cluacutesteres

manejables Encaminados hacia un objetivo crear cluacutesters de manera maacutes sencilla Por sencilla

significa faacutecil de implementar administrar actualizar y escalar Este objetivo impulsa a los

creadores de esta herramienta a ayudar a entregar el poder computacional de los cluacutesteres a una

amplia gama de usuarios cientiacuteficos Estaacute claro que poner a disposicioacuten de una amplia gama de

53

cientiacuteficos plataformas de computacioacuten paralelas estables y manejables ayudaraacute enormemente a

mejorar el estado del arte en herramientas paralelas (Rocksclusters 2010)

261 Escritorio De todos los escritorios disponibles para el sistema operativo Linux

GNOME ha logrado convertirse en el maacutes eficiente estable y confiable sin dejar de ser sencillo

de usar De hecho la mayoriacutea de los usuarios independientemente de su experiencia pueden

trabajar con GNOME casi sin esfuerzo

Los usuarios que son nuevos tanto en Linux como en GNOME hariacutean mejor en conocer

los entresijos del escritorio que hacen que Linux no solo sea faacutecil sino tambieacuten divertido

Un entorno de escritorio agrupa programas que trabajan juntos para formar un espacio de

trabajo informaacutetico cohesivo unificado transparente e interactivo para los usuarios O para

decirlo de manera maacutes simple el entorno de escritorio es la interfaz de usuario para el sistema

operativo En el caso de GNOME ese sistema operativo es Linux Sin un entorno de escritorio su

uacutenica alternativa es una sesioacuten de Shell (liacutenea de comandos) basada en texto (Wallen 2019)

262 Paquete de Oficina Una suite ofimaacutetica es una coleccioacuten de software creada por el

mismo proveedor y disentildeada para ser utilizada para tareas rutinarias dentro de una organizacioacuten

Por lo general una suite ofimaacutetica incluye aplicaciones como procesamiento de texto hojas de

caacutelculo presentacioacuten correo electroacutenico toma de notas base de datos colaboracioacuten y otros tipos

de software relacionados En la mayoriacutea de los casos cada aplicacioacuten en la suite ofimaacutetica se puede

instalar por separado y todas las aplicaciones dentro de la suite admiten la interoperabilidad entre

54

siacute Microsoft Office Suite Lotus Live Notes y LibreOffice son todas suites de oficina de uso

comuacuten

263 Organizador de archivos Es una funcioacuten avanzada disentildeada para agrupar y

renombrar archivos usando sus atributos del sistema o meta atributos

Cada archivo tiene atributos del sistema como la fecha (Acceso Creado y Modificado) el

tipo de archivo (definido por extensioacuten) y asociado con la aplicacioacuten registrada de ese tipo de

archivo Estos atributos se pueden usar para generar un nuevo nombre de archivo o carpeta (grupo)

para cada archivo con el mismo atributo Ademaacutes de los atributos del sistema algunos archivos

en su mayoriacutea medios o imaacutegenes pueden contener metacampos como el nombre del artista el

tiacutetulo el nombre del aacutelbum y otros El Organizador de archivos tambieacuten usa estos metacampos

para agrupar archivos en una carpeta con el mismo atributo Por lo tanto el organizador de archivos

opera reglas de organizacioacuten de archivos que definen la jerarquiacutea de agrupacioacuten de carpetas y las

reglas de cambio de nombre de archivos

Asiacute como el conocido ldquoexplorador de Windowsrdquo Linux integra un organizador de archivos

y carpetas llamado NAUTILUS para realizar tareas de manejo de archivos como mover copiar

renombrar crear carpetas y de esta manera administrar nuestros dispositivos de almacenamiento

55

27 Agrupamiento (Cluacutester) de Computadoras

El agrupamiento (cluacutester) de computadoras estaacute conformado por una coleccioacuten de

computadoras autoacutenomas interconectadas trabajando unidas como un solo recurso de computacioacuten

integrado El concepto de agrupamiento de computadoras nacioacute cuando los pioneros de la

supercomputacioacuten intentaban difundir diferentes procesos entre varias computadoras para luego

poder recoger los resultados que dichos procesos debiacutean producir Con un hardware maacutes barato y

faacutecil de conseguir se pudo perfilar que podriacutean conseguirse resultados muy parecidos a los

obtenidos con aquellas maacutequinas mucho maacutes costosas (Chirinov 2003)

Un agrupamiento de computadoras se puede definir como el trabajo realizado por dos o

maacutes computadoras que en conjunto se encargan de proveer una determinada solucioacuten Tiene como

finalidad agrupar el poder de coacutemputo de los nodos implicados para proporcionar una mayor

escalabilidad disponibilidad y fiabilidad (Branch Bedoya amp Mesa Muacutenera 2008)

La escalabilidad es la capacidad de un equipo para hacer frente a voluacutemenes de trabajo

cada vez mayores sin por ello dejar de prestar un nivel de rendimiento aceptable

La disponibilidad y la fiabilidad se encuentran bastante relacionadas aunque difieren

ligeramente en algunos aspectos La disponibilidad es la calidad de estar presente y listo para su

uso mientras que la fiabilidad es la probabilidad de un correcto funcionamiento

56

Entre los tipos de agrupamiento maacutes comunes se pueden encontrar de alta disponibilidad

(ambiente a prueba de fallas) coacutemputo de alto desempentildeo (los procesos o las tareas dadas se

presentan como un solo sistema virtual) y escalamiento horizontal (se utiliza para proporcionar

una sola interfaz a un conjunto de recursos que pueden aumentar o disminuir arbitrariamente su

tamantildeo en un cierto periodo de tiempo) (Gonzaacutelez Ramiacuterez amp Rodriacuteguez Saacutenchez 2008)

271 Beowulf Es una clase de computadora masivamente paralela de altas prestaciones

principalmente construida a base de agrupamiento de componentes hardware estaacutendar (Llorens amp

Pentildea 2002) Consta de un conjunto de nodos minimalistas unidos por un medio de

comunicaciones econoacutemico Esto quiere decir que tienen lo miacutenimo para ejecutar su funcioacuten de

hecho los nodos por siacute solos no son capaces de ejecutar siquiera un sistema operativo (Nievas

Pino amp Arroyo) Se puede ver como una supercomputadora paralela construida con hardware

comercial de faacutecil adquisicioacuten que posee como sistema operativo Linux Los cluacutesters Beowulf son

extremadamente poderosos pero no son para todas las personas Su principal desventaja es que

requieren software disentildeado para poder aprovechar los recursos del cluacutester (Lizaacuterraga 2002)

272 Mosix Seguacuten Peacuterez (2001) la arquitectura Mosix estaacute basada en la misma ideologiacutea

de la arquitectura Beowulf Se basa en un conjunto de parches aplicados al nuacutecleo (kernel) de Linux

y que asignan a todo el grupo de nodos un espacio de direcciones y de procesos comuacuten gracias al

cual los procesos migran de uno a otro con el fin de equilibrar favorablemente la carga del sistema

global Es una herramienta disentildeada para realizar balanceo de carga en el agrupamiento de forma

totalmente transparente de manera tal que los nodos se comportan como una sola maacutequina y asiacute

incrementar el aprovechamiento de cada uno de los nodos (Chaacutevez y otros 1999) La principal

57

ventaja de Mosix frente a Beowulf se basa precisamente en esto Mosix da mejores respuestas que

Beowulf frente a la caiacuteda o insercioacuten de nodos A parte de esto Mosix permite un cambio constante

de aplicacioacuten o incluso el correr aplicaciones independientes de forma simultaacutenea

273 OpenMosix OpenMosix es una extensioacuten del proyecto Mosix Seguacuten Chirinov

(2003) la idea de este modelo es que la distribucioacuten de tareas en el cluacutester la determina OpenMosix

de forma dinaacutemica conforme se van creando tareas Cuando un nodo estaacute demasiado cargado las

tareas que se estaacuten ejecutando pueden migrar a cualquier otro nodo del cluacutester Asiacute desde que se

ejecuta una tarea hasta que eacutesta muere podraacute migrar de un nodo a otro sin que el proceso sufra

mayores cambios

Ademaacutes OpenMosix funciona a nivel de kernel por tanto puede conseguir toda la

informacioacuten que necesite para decidir que tanto estaacute cargado un sistema y queacute pasos se deben

seguir para aumentar el rendimiento ademaacutes puede realizar maacutes funciones que cualquier

aplicacioacuten a nivel de usuario

Despueacutes de elegir el tipo de cluacutester a utilizar se procede a elegir los elementos baacutesicos que

se emplearaacuten para implementar el cluacutester capacidad de procesamiento memoria espacio del disco

de cada nodo asiacute como tambieacuten el ancho de banda de la comunicacioacuten entre los nodos Se deberaacute

decidir cuaacuteles son importantes basaacutendose en la variedad de aplicaciones que se piensen ejecutar

en el cluacutester y de la cantidad de dinero que se disponga para construirlo

58

Bajo estos mismos paraacutemetros se debe escoger tambieacuten el tipo de red que interconectaraacute

los nodos (Turner 2004)

Luego se debe escoger el sistema operativo a utilizar Esta eleccioacuten dependeraacute mucho de

la maacutequina que se escoja Linux es siempre una opcioacuten en cualquier maacutequina y es la eleccioacuten maacutes

comuacuten Muchas de las herramientas necesarias para la implementacioacuten de un cluacutester han sido

desarrolladas bajo Linux Pero existen cluacutesters corriendo bajo Windows NT UNIX Solaris y AIX

59

Capiacutetulo 3 Implementacioacuten de Cluacutester

31 Requisitos previos

Antes de iniciar la instalacioacuten del FrontEnd es necesario asegurarse que las conexiones de

red de los equipos junto con la configuracioacuten de la BIOS de cada uno sean las correctas

311 Conexioacuten de los equipos y acceso a la red

Un cluacutester de alto desempentildeo funciona como un uacutenico equipo el cuaacutel comparte los recursos

de los nodos esclavos con el nodo maestro para ello es esencial la existencia de una red interna de

alta velocidad por medio de la cual se realice la comunicacioacuten entre el nodo maestro y los nodos

esclavos como se muestra en la Figura 31 El nodo maestro necesitaraacute 2 tarjetas de red de alta

Figura 31 Esquema tiacutepico de configuracioacuten de un cluacutester (Fuente Elaboracioacuten propia)

60

velocidad una para la comunicacioacuten interna y otra para la comunicacioacuten con redes externas El

sistema operativo Rocks asigna automaacuteticamente la interface ldquoeth0rdquo a la red interna del cluacutester y

la interface ldquoeth1rdquo a la red externa En caso de que Rocks sea incapaz de determinar cuaacutel es la red

externa debido a la falta de conexioacuten a internet estas podriacutean ser asignadas de manera incorrecta

por tal motivo se sugiere asegurar el nombre de cada una de las interfaces

Dado que Rocks no permite volverlas a asignar una vez finalizada la instalacioacuten es

necesario volver a reinstalarlo para poder solucionar este inconveniente

312 Configuracioacuten de la BIOS Para evitar problemas durante la instalacioacuten conviene

configurar correctamente la Bios

3121 ATAIDE Mode Algunos sistemas operativos puede que no sean capaces de

reconocer el controlador del disco duro como es en el caso de esta distribucioacuten de Rocks usada

Para evitar complicaciones de tener que antildeadir el controlador a mano lo mejor es habilitar el modo

ldquoLegacyrdquo de controlador de disco duro

61

Para ello se accede a la Bios pulsando F2 al encender el equipo se situacutea en la pestantildea

ldquoAdvancedrdquo y se selecciona ldquoDrive Configurationrdquo como se muestra en la Figura 32

Figura 32 Imagen del Bios del equipo en la opcioacuten ldquodrive configurationrdquo (Fuente Elaboracioacuten propia)

Figura 33 Bios ATAIDE Legacy Mode (Fuente Elaboracioacuten propia)

62

Dentro del menuacute se tiene que seleccionar el Modo ldquoLegacyrdquo en la opcioacuten ldquoATAIDE

Moderdquo como se muestra en la Figura 33 y para salir se guardan los cambios con F10

3122 PXE Al momento de instalar un nodo puede ocurrir falla al arrancar y aparecer

bootsplash (Reboot and Select proper device) Para evitarlo es necesario habilitar la opcioacuten de

PXE para que tome los archivos de instalacioacuten del nodo maestro a traveacutes de la red interna

En la Bios se selecciona la pestantildea ldquoBootrdquo y dentro de ese mismo menuacute se deshabilita

ldquoSilent bootrdquo y se habilita la opcioacuten de ldquoPXE boot to lanrdquo como se muestra en la Figura 34

Finalmente hay que verificar que en la secuencia de arranque (Figura 35) como primer

dispositivo sea desde red para que de esta manera inicie desde el PXE

Figura 34 Bios Boot PXE (Fuente Elaboracioacuten propia)

63

Se guardan los cambios antes de salir

32 Instalacioacuten de Sistema Operativo Rocks

Una vez configurados los equipos se enciende el equipo que seraacute el nodo maestro

(FrontEnd) en el cuaacutel previamente se ha modificado la secuencia de inicio del boot desde la Bios

de modo que al insertar el CD de Rocks eacuteste procederaacute a iniciar la instalacioacuten con la siguiente

pantalla que se muestra a continuacioacuten

Figura 35 Bios Boot device prioriry (Fuente Elaboracioacuten propia)

64

Para iniciar la instalacioacuten uacutenicamente se selecciona la opcioacuten ldquoInstall CentOS 7rdquo como se

muestra en la Figura 36 dando asiacute comienzo al proceso de instalacioacuten Tras finalizar un proceso

de carga en memoria Rocks mostraraacute un formulario en entorno graacutefico mediante el cual

procederemos a configurar el FrontEnd

Esta primera pantalla se muestra coacutemo se desea realizar la instalacioacuten puede realizarse

por medio de la descarga del sistema operativo (se requiere internet) En este caso como se muestra

en la Figura 37 dado que previamente se descargoacute el DVD completo se seleccionoacute ldquoCDDVD

based rollsrdquo

Figura 36 Pantalla de Inicio de instalacioacuten de Rocks (Fuente Elaboracioacuten propia)

65

A continuacioacuten Figura 38 se selecciona de la lista de Rolls aquellos que se desean instalar

Figura 37 Pantalla de seleccioacuten de Rolls (Fuente Elaboracioacuten propia)

Figura 38 Listado de opciones de rolls para instalar (Fuente Elaboracioacuten propia)

66

Tras presionar el botoacuten ldquoSubmitrdquo la siguiente pantalla (Figura 39) muestra formulario en

el que hay que indicar la informacioacuten baacutesica del cluacutester entre las cuales aparecen

Fully-Qualified Host Name Nombre con el que se conoceraacute en la red externa el cluacutester

Cluster Name Nombre utilizado para ser identificado dentro de las herramientas del cluacutester

Certificate Organization Locality State and Country Organizacioacuten a la que pertenece el

cluacutester la localidad el estado y la ciudad

Contact URL and LattitudeLongitude Contacto direccioacuten web y posicioacuten GPS

Figura 39 Informacioacuten baacutesica del cluacutester a instalar (Fuente Elaboracioacuten propia)

67

Una vez que se ingresa la informacioacuten al cluacutester se presiona el botoacuten ldquoListordquo y

posteriormente se podraacute cambiar la configuracioacuten baacutesica de la red interna del cluacutester En este caso

Figura 310 se dejoacute el valor por defecto una IP de clase B (1011116)

El siguiente paso es la configuracioacuten de la red externa (para tener acceso a internet) En

este punto se introducen los datos de la red externa a la que se encuentra conectado el nodo

maestro como se muestra en la Figura 311

Figura 310 Configuracioacuten Ethernet de la red privada (Fuente Elaboracioacuten propia)

Figura 311 Configuracioacuten Ethernet de la red puacuteblica (Fuente Elaboracioacuten propia)

68

Para terminar de configurar la red externa como se muestra en la Figura 312 se ingresa la

direccioacuten IP del Gateway y los DNS (Servidor de nombre de dominio) que va a usar para el acceso

a internet

Se continuacutea con el resto del formulario donde se introduce la contrasentildea para el usuario

root tal y como se muestran en la Figura 313

Figura 312 Configuracioacuten de DNS y Gateway (Fuente Elaboracioacuten propia)

Figura 313 Ingresar contrasentildea de usuario root (Fuente Elaboracioacuten propia)

69

Paso siguiente se procede a seleccionar la zona horaria como se muestra en la Figura 314

donde se encuentra ubicado el cluacutester asiacute como un servidor de donde podraacute obtener la zona horaria

automaacuteticamente en este caso se dejoacute el valor por default

En el formulario de la Figura 315 se selecciona la forma de particionar el disco duro

(automaacutetica manual) una vez seleccionado daraacute comienzo al proceso de instalacioacuten de manera

Figura 314 Configuracioacuten horaria (Fuente Elaboracioacuten propia)

Figura 315 Particiones del disco duro (Fuente Elaboracioacuten propia)

70

desatendida Cuando ha concluido la instalacioacuten el equipo se reiniciaraacute y se requeriraacute iniciar con

el usuario root y la contrasentildea establecida previamente

321 Configuracioacuten del teclado Debido a que el teclado por defecto estaacute en idioma

ingleacutes podriacutea provocar problemas al momento de escribir la contrasentildea u otros comandos

Seguacuten las pruebas realizadas aunque se cambie la configuracioacuten del teclado desde el menuacute

de preferencias uacutenicamente se mantiene dentro de la sesioacuten desde la que se ha cambiado dicha

opcioacuten (lo cual implica que la contrasentildea de usuario hay que introducirla seguacuten la distribucioacuten

inglesa)

33 Instalacioacuten de los nodos

Previo a la instalacioacuten de los nodos esclavos cada uno de los equipos fueron configurados

desde la Bios para que arranquen desde la red (seccioacuten 3122) Para ir antildeadiendo los nodos solo

se tiene que introducir el siguiente comando desde nuestro FrontEnd

$insert-ethers

A continuacioacuten como se muestra en la Figura 316 apareceraacute una ventana en la pantalla

en la cual se seleccionaraacute la opcioacuten ldquoComputerdquo

71

Una vez realizado este paso se procede a encender los equipos que funcionaraacuten como

nodos esclavos uno a uno

Se sugiere esperar a que cada nuevo equipo encendido esteacute marcado con un asterisco antes

de proceder a encender el siguiente como se muestra en la Figura 317 De esta manera se asegura

que cada nuevo nodo antildeadido posea el nombre y numeracioacuten deseada

Figura 316 Pantalla para ingresar nodos (Fuente Elaboracioacuten propia)

Figura 317 Indicador de insercioacuten de nuevos nodos (Fuente Elaboracioacuten propia)

72

Puede darse el caso de que un nodo no sea detectado automaacuteticamente eso indica que se

ha omitido alguacuten paso o parte de la configuracioacuten realizada hasta el momento es incorrecta En ese

caso comprobar lo siguiente

Que el nodo esclavo este correctamente conectado a la red interna

Que el FrontEnd (nodo maestro) tenga correctamente configurada la red interna y externa

Que el PXE esteacute habilitado en la Bios del nodo esclavo

331 Administracioacuten de nodos Algunos de los comandos maacutes uacutetiles para para la gestioacuten

de los nodos son los siguientes

Eliminar un nodo de la lista

Reinstalar un nodo

Listar los nodos ya instalados

Acceder a un nodo

$rocks remove host nombre_nodo

$rocks remove host nombre_nodo

$rocks set host boot nombre_nodo action=install

$rocks set host boot nombre_nodo action=install

$rocks list host

$rocks list host

$ssh nombre_nodo

$ssh nombre_nodo

73

Ejecutar un comando de manera remota a un nodo

332 Creacioacuten de cuentas de usuario Para agregar a un usuario hay que realizar los

siguientes pasos

1 Creacioacuten de la cuenta

$useradd nombre_usuario

2 Asignacioacuten de una contrasentildea

$passwd nombre_usuario

3 Sincronizacioacuten de la cuenta de usuario con el resto de nodos

$rocks-user-sync

333 Configuracioacuten del directorio compartido El directorio share es compartido por el

FrontEnd y el resto de nodos se localiza dentro del FrontEnd en la carpeta exports siendo la

carpeta share un enlace simboacutelico a esta uacuteltima

Al principio es posible que no se sincronicen correctamente los archivos introducidos en el

directorio debido a que la carpeta inicialmente estaacute vaciacutea por lo que para solucionar este

inconveniente puede usarse el comando siguiente para reiniciar dicho servicio

$ssh nombre_nodo lsquocomandorsquo

$ssh nombre_nodo lsquocomandorsquo

$cd

$export fs ndashrv

service nfs restart

$cd

$export fs ndashrv

service nfs restart

74

34 Operaciones baacutesicas de Rocks

Comandos y aplicaciones esenciales para el manejo del cluacutester

Ver que rolls estaacuten instalados

$rocks list roll

Visualizar el estado del sistema Figura 318

$qstat ndashf

Probar el sistema de colas para distribuir tareas a los nodos

Para ello se prueba que el SGE del cluacutester funcione enviaacutendole una serie de trabajos

mediante el comando qsub

En primer lugar se crea un fichero (pruebapl) que tenga permisos de ejecucioacuten con el

siguiente contenido

Figura 318 Comando qstat ndashf (Fuente Elaboracioacuten propia)

75

usrbinperl

for(my $i=0$ilt30$i++) sleep(2) print okn

Y se ejecuta con el siguiente comando

$ for ((i=1ilt=10i+=1)) do qsub pruebapl done

Al ejecutarse se puede comprobar que los trabajos se han mandado Figura 319

Y al realizar de nuevo un ldquoqstat ndashfrdquo Figura 320 se observa coacutemo se van realizando

Figura 319 Enviacuteo de trabajos por medio del comando qsub (Fuente Elaboracioacuten propia)

Figura 320 Estado de los trabajos pendientes mostrados por qstat ndashf (Fuente Elaboracioacuten propia)

76

Para ver la carga de trabajo en el cluacutester de manera global y de forma graacutefica se tiene que

ingresar en un navegador web en la siguiente direccioacuten httplocalhostganglia apareceraacute la

Figura 321

Figura 321 Visualizacioacuten de la distribucioacuten de cargas en el cluacutester usando la herramienta Ganglia (Fuente Elaboracioacuten propia)

77

Capiacutetulo 4 Metodologiacutea y Resultados

Una vez finalizada la instalacioacuten y puesta en operacioacuten del equipo se analizaron diferentes

metodologiacuteas de trabajo lo que implicoacute un trabajo arduo debido a que existen complicaciones

cuando se buscan temas relacionados a vulnerar sistemas operativos La realizacioacuten de este

proyecto estaacute basado en la metodologiacutea de Joshua Picolet ldquoCracking Methodologyrdquo (Picolet

2017)

41 Obtener Archivo hash

Se pueden vulnerar contrasentildeas de Windows de diferentes maneras Una de ellas es

mediante el acceso al archivo del Administrador de cuentas de seguridad (SAM) el cual se detalla

en el apartado 253 a traveacutes de la obtencioacuten de las contrasentildeas del sistema en su forma hash por

medio de herramientas diferentes Alternativamente las contrasentildeas se pueden leer desde la

memoria lo que tiene el beneficio adicional de recuperar las contrasentildeas en texto plano y evitar el

requisito de descifrado Para comprender los formatos que se observan cuando se descarguen

hashes del sistema de Windows se requiere una breve descripcioacuten de los diferentes formatos de

almacenamiento

Originalmente las contrasentildeas de Windows de menos de 15 caracteres se almacenaban en

el formato hash de Lan Manager (LM) Algunos sistemas operativos como Windows 2000 XP y

Server 2003 continuacutean usando estos hashes a menos que esteacuten deshabilitados por el usuario

Ocasionalmente un sistema operativo como Windows Vista puede almacenar el hash LM para la

compatibilidad con otros sistemas Seguacuten analistas incluye varias vulnerabilidades como dividir

78

la contrasentildea en dos bloques y permitir que cada uno se descifre de forma independiente Mediante

el uso de tablas Rainbow es trivial descifrar una contrasentildea almacenada en un hash LM

independientemente de la complejidad Este hash se almacena con la misma contrasentildea calculada

en el formato de hash NT como el que se muestra en el siguiente ejemplo

Ejemplo de un hash NTLM con el componente LM y NT

Administrator500611D6F6E763B902934544489FCC9192BB71ED1E7F2B60ED5A2

EDD28379D45C91

Los sistemas operativos Windows maacutes recientes como el Windows 8 y 10 usan el hash NT

En teacuterminos simples no hay una debilidad significativa en este hash que lo diferencie de cualquier

otra funcioacuten hash criptograacutefica Se requieren meacutetodos de descifrado como lo es la fuerza bruta o

ataque de diccionario para recuperar la contrasentildea si uacutenicamente se almacena en el formato NT

Ejemplo de un hash NTLM uacutenicamente con el componente NT (como se ve en los sistemas

Windows mas recientes

Administrator500NOPASSWORDEC054D40119570A4663

4350291AF0F72

Es importante sentildealar que la cadena NO PASSWORD es variable seguacuten la herramienta

que se utilice Otras pueden presentar esta informacioacuten como ceros rellenos o comuacutenmente puede

79

ver la cadena ldquoAAD3B435B51404EEAAD3B435B51404EErdquo en lugar de ninguna contrasentildea

Esto significa que el hash LM estaacute vaciacuteo y no estaacute almacenado

El archivo hash se encuentran en el directorio ldquoWindows System32 configrdquo y se

necesitan ambos archivos SAM y SYSTEM Ademaacutes tambieacuten se encuentran en el archivo de

registro HKEY_LOCAL_MACHINE SAM al que no se puede acceder durante el tiempo de

ejecucioacuten Finalmente las copias de seguridad se pueden encontrar a menudo en ldquoWindows

Repairrdquo (Peleus 2019)

Para extraer el archivo hash de un sistema operativo con un nivel de seguridad C1 existen

diferentes meacutetodos en esta ocasioacuten se procederaacute a iniciar el equipo objetivo con una distribucioacuten

de Linux desde una memoria USB como se muestra en la figura 41 para de esta manera ingresar

al directorio CWINDOWSSystem32Config directorio de ubicacioacuten de los archivos SAM y

SYSTEM que son los necesarios para obtener el archivo hash (Caballero 2018)

Figura 41 Arranque con LiveUSB KaliLinux (Fuente Elaboracioacuten propia)

80

42 Dar Formato al Hash

En este punto es donde se tiene que identificar el algoritmo con el que fueron encriptados

los archivos SAM y SYSTEM que se han obtenido en el punto anterior con la finalidad de

seleccionar el tratamiento que se les daraacute El algoritmo de encriptacioacuten del archivo SAM de

Windows 10 es NTLM y ademaacutes estaacute almacenado en un formato binario (ByteBleeder 2017) por

lo que fue necesario instalar la herramienta con licencia GNU samdump2 para obtener la syskey y

de esta manera poder extraer los hash desde el archivo SAM de Windows

En la figura 42 se han obtenido los hashes del archivo SAM donde se puede observar que

los usuarios Administrador e Invitado estaacuten deshabilitados ademaacutes de que existen tres cuentas de

usuario activas las cuales son Gad prueba y usuarioprueba cada una con su contrasentildea cifrada

en formato NTLM a la derecha del nombre de usuario la cuenta usuarioprueba fue a la que se le

realizoacute el anaacutelisis que se detalla posteriormente

43 Evaluar la fuerza del Hash

En criptografiacutea se dice que un algoritmo criptograacutefico se rompe si por alguacuten meacutetodo se

consigue reducir su fortaleza es decir reducir por ejemplo su entropiacutea de los 2256 bits teoacutericos a

Figura 42 Resultado de la ejecucioacuten de la herramienta samdump2 (Fuente Elaboracioacuten propia)

81

tan soacutelo 2255 por ejemplo El hecho de que se encuentre una colisioacuten no implica necesariamente

que un algoritmo se haya roto pues podriacutea haber sido realizado mediante fuerza bruta pero puede

ser una causa

Un ataque de colisioacuten significa que encuentro dos entradas diferentes que producen el

mismo resultado de un hash particular Este es generalmente el tipo de ataque maacutes faacutecil Es el tipo

de ataque que se conoce desde hace varios antildeos contra MD5

Dado que una utilidad importante de las funciones hash estaacute en las firmas digitales

encontrar colisiones puede facilitar falsificar firmas digitales Es decir dos mensajes distintos que

tengan un mismo resumen tienen ademaacutes la misma firma y un atacante puede reemplazar un

mensaje por el otro Un ejemplo de este ataque fue demostrado en 2008 por un grupo de

investigadores en Aacutemsterdam los cuales falsificaron un certificado raiacutez mediante el uso de un

ataque de colisioacuten contra el algoritmo MD5 (Preukschat 2015)

Un ataque previo a la imagen generalmente es mucho maacutes difiacutecil es encontrar otra entrada

que produzca el mismo resultado que un hash que ya se conoce

Para tratar de aclarar la diferencia aquiacute en un ataque de colisioacuten encuentro dos entradas A

y B que producen el mismo resultado En un ataque de preimagen comienzo a partir de alguacuten

resultado conocido X y encuentro una entrada que produciraacute X como resultado (Coffin 2015)

82

Para realizar esta evaluacioacuten se tomoacute como base la tabla del apeacutendice Hash craking

benchmark (Picolet 2017) el objetivo es observar el comportamiento y velocidad del Hash

mencionado cuando fue sometido a pruebas de criptoanaacutelisis Si se trata de un Hash lento se deberaacute

ser maacutes selectivo en queacute tipos de diccionarios y meacutetodos de criptoanaacutelisis se le debe aplicar Si es

un Hash raacutepido se puede ser maacutes libre con la estrategia de criptoanaacutelisis Este estudio busca

realizar una prueba de criptoanaacutelisis mostrando las diferencias entre el poder de procesamiento de

un cluacutester de 17 nodos contra una computadora personal por lo que no necesariamente se

implementaraacute el meacutetodo oacuteptimo para la realizacioacuten del criptoanaacutelisis

44 Calcular la capacidad del equipo

Con la informacioacuten de la evaluacioacuten de la fuerza del Hash obtenida en el apartado anterior en

este apartado se tiene que establecer la capacidad de la plataforma o plataformas que realizaraacuten

el criptoanaacutelisis

Para conocer la capacidad de procesamiento del cluacutester de alto rendimiento se utilizoacute la

herramienta Linpack Benchmark HPL es una implementacioacuten portaacutetil del Benchmark de alto

rendimiento LINPACK para equipos de coacutemputo distribuido Actualmente se utiliza para obtener

varios resultados en la lista actual de Top500 de HP cluacutesters (Dongarra 2010)

El Linpack Benchmark (HPL del Ingleacutes High-Performance Linpack Bench-mark) es un

software que resuelve un sistema lineal aleatorio de doble precisioacuten aritmeacutetica (64 bits) en equipos

de memoria distribuida El rendimiento muestra el nuacutemero de operaciones de punto flotante por

segundo logradas por el sistema (Petitet Whaley Dongarra amp Cleary 2008)

83

El HPL fue desarrollado en el Argone National Laboratory por Jack Don-garra en 1976 y

es uno de los maacutes usados en sistemas cientiacuteficos y de ingenieriacutea para el caacutelculo de prestaciones

Las principales caracteriacutesticas del algoritmo utilizado por el HPL son

Distribucioacuten ciacuteclica de datos de bloques de dos dimensiones

Variante derecha de la factorizacioacuten LU con pivoteo parcial (Teacutecnica de pivoteo

Dicta que el elemento pivote que debe escogerse es el mayor absolutamente de cada

columna)

Factorizacioacuten recursiva con pivoteo y reenviacuteo de columna

Distintas topologiacuteas virtuales de reenviacuteos

Algoritmo de reduccioacuten de reenviacuteo para ancho de banda (Castelloacute Gimeno 2014)

La resolucioacuten del sistema de ecuaciones se realiza del siguiente modo

1 Se crea un sistema de ecuaciones

(1)

119860119909 = 119887

(2)

119860 isin 119877119899119909119899

(3)

119909 119887 isin 119877119899

84

HPL calcula que la solucioacuten para un sistema de ecuaciones lineales se puede generalizar

como 119860119909 = 119887 donde 119860 es una matriz 119873 119909 119873 cuyos valores se generan aleatoriamente

119909 119910 119887 son vectores de tamantildeo 119873 Como se muestra en la Figura 43

2 Primero se calcula la factorizacioacuten 119871119880 con pivoteo parcial de los coeficientes 119899 y 119899 + 1

de la matriz [119860 119887]

(4)

119875119903[119860 119887] = [[119871119880] 119910]

(5)

119875119903 119871 119880 isin 119877119899119909119899

(6)

119910 isin 119877119899

El primer paso es la factorizacioacuten de la matriz 119860 en una matriz triangular superior 119880

y una matriz triangular inferior 119871 tal que 119860 = 119871119880 La factorizacioacuten se usa para calcular

el vector solucioacuten 119909

3 Una vez el pivoteo (representado por la permutacioacuten de la matriz 119875119903) y la factorizacioacuten

inferior se aplican sobre 119887 la solucioacuten se obtiene en un paso resolviendo el sistema

superior triangular

Figura 43 Sistema de Ecuaciones tipo 119860119909 = 119887 (Fuente Elaboracioacuten propia)

85

(7)

119880119909 = 119910

La matriz triangular inferior izquierda y el conjunto de pivotes no se devuelven en el

resultado Para la estabilidad numeacuterica el algoritmo de factorizacioacuten utiliza un pivote parcial de

fila

La implementacioacuten paralela de Linpack divide la matriz 119860 119873 119909 119873 en una cuadriacutecula de

procesos 119875 119909 119876 bidimensional y luego la divide en subgrupos de mosaicos 119873119861 119909 119873119861 (Petitet

Whaley Dongarra amp Cleary 2008)

Utilizando la herramienta HPL en esta investigacioacuten se obtuvieron los siguientes

resultados

La prueba abordoacute el ajuste de 119873 y la eficiencia obtenida en comparacioacuten con el rendimiento

maacuteximo Se determinoacute un valor para 119873 = 800000 aleatoriamente para ejecutar HPL en todo el

cluacutester Sin embargo el tiempo fue excesivo por lo tanto se determinoacute que este tamantildeo del

problema fue demasiado grande para el cluacutester Al realizar otros experimentos con valores maacutes

pequentildeos de 119873 se obtuvieron mejores resultados de rendimiento La Tabla 41 muestra el

rendimiento de HPL en GFlops para 119873 = 300000 400000 y 500000 Como se puede observar

en la Tabla 41 se obtuvo el mejor resultado de rendimiento 850 GFlops para 119873 = 500000 para

valores mayores de 119873 la distribucioacuten de cargas del cluacutester empieza a sobrepasar su capacidad como

se muestra en la Figura 44 y la vez su rendimiento disminuye Esto ocurre porque la cantidad de

memoria utilizada con las memorias intermedias de comunicacioacuten MPI es mayor de lo esperado

Por lo tanto es necesario dejar maacutes del 20 de la memoria para el sistema (Petitet Whaley

86

Dongarra amp Cleary 2008) Tambieacuten se realizaron pruebas usando solo un nodo de coacutemputo y el

rendimiento fue de 34 GFlops para 119873 = 20000

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia)

Analizando la eficiencia obtenida para la ejecucioacuten de un solo nodo cuando 119873 = 20000

se obtuvo el 823 del rendimiento maacuteximo (el rendimiento maacuteximo para un solo nodo es 477

Gflops) Para todo el cluacutester el rendimiento maacuteximo seriacutea 119879119898119886119909 = 477 119909 17 =

8109 119866119891119897119900119901119904 aproximadamente

Figura 44 Distribucioacuten de cargas del cluacutester

0

500

1000

300000 400000 500000

Gflops

Gflops

87

La Figura 44 titulada ldquoDistribucioacuten de cargas del cluacutesterrdquo muestra la imagen de la

herramienta Ganglia de manera graacutefica a traveacutes de cuadros que variacutean de color dependiendo de la

carga que tenga cada uno de los nodos al momento de implementar la herramienta HPL De manera

inicial indica que el cluacutester tiene un total de 17 equipos de 4 cores cada uno eso da un total de 68

cores trabajando sin equipos inactivos Muestra tambieacuten una sobrecarga en el cluacutester y un

porcentaje promedio de 100 de uso en la uacuteltima hora

45 Establecer Estrategia

Esto significa uacutenicamente que en este apartado se realizaraacute una guiacutea baacutesica para procesar

los hashes obtenidos sin perder de vista que cada escenario a criptoanalizar es uacutenico en funcioacuten

de las circunstancias externas Como ya se ha mencionado anteriormente esta estrategia de

criptoanaacutelisis se ha planteado implementar dos meacutetodos los cuales son Fuerza Bruta y ataque de

diccionario sin importar si son o no los oacuteptimos debido a que se realizaraacute una comparativa de

capacidad de procesamiento

451 Fuerza Bruta Una vez que se han intentado varios meacutetodos y han fallado se puede

iniciar un ataque de fuerza bruta estaacutendar poniendo especial atencioacuten en la cantidad de siacutembolos

del alfabeto que puede usar el equipo a analizar Por encima de 8 caracteres esto generalmente no

tiene sentido debido a limitaciones de hardware y entropiacutea (complejidad de la contrasentildea) Una

contrasentildea de Windows seguacuten Microsoft (Microsoft Inc 2019) una contrasentildea de Windows debe

estaacute formada por

88

26 Caracteres mayuacutesculas de la ldquoArdquo a la ldquoZrdquo

26 Caracteres minuacutesculas de la ldquoardquo a la ldquozrdquo

10 Diacutegitos de base 10 (0 a 9)

32 Caracteres especiales (~$^amp_-+=|()[]ltgt)

94 Caracteres alfanumeacutericos en total

4511 Cantidad de combinaciones posibles Si se usa una clave numeacuterica (nuacutemeros del 0

al 9) existen 10 posibilidades de 4 diacutegitos de longitud que es la extensioacuten por defecto de los

teleacutefonos celulares Para 4 diacutegitos las combinaciones posibles seriacutean 10 mil 104 = 10000

(Labaca Castro 2014)

Por otro lado si tomamos un alfabeto de 26 letras mayuacutesculas y 26 minuacutesculas 10 nuacutemeros

y 10 caracteres especiales en total tenemos 72 diferentes posibilidades para un uacutenico caraacutecter Eso

significa que las combinaciones para una contrasentildea de 4 caracteres seriacutean 724 = 26873856

Baacutesicamente maacutes de 26 millones de combinaciones en una clave de 4 caracteres contra 10 mil en

una clave de 4 diacutegitos numeacutericos En este estudio se utiliza la contrasentildea de bloqueo descrita en el

apartado anterior que es de 94 combinaciones para cada caraacutecter teniendo una longitud de 7

caracteres por lo tanto seraacuten 947 = 64847759000000 de posibles combinaciones que

nuestros equipos deben explorar para obtener la contrasentildea correcta

Como se mencionoacute en el apartado 42 el usuario sobre el cual se realizoacute el criptoanaacutelisis

fue usuarioprueba el cual constaba de una contrasentildea de longitud 7 caracteres la cual despueacutes

de realizado el anaacutelisis y como se puede observar en la Figura 45

89

1 Anaacutelisis a usuario usuarioprueba

2 Nuacutemero de nodos en operacioacuten 17

3 Nuacutemero de procesos ejecutaacutendose de forma paralela 68

4 Tiempo de duracioacuten del anaacutelisis en el cluacutester 122727 horas

5 Contrasentildea criptoanalizada Pass7

Asiacute mismo en la Tabla 42 se muestra el resultado final y el tiempo de duracioacuten del

criptoanaacutelisis realizado al archivo SAM con el cluacutester y la computadora personal

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Horas)

1 (PC) 4 1075316

17 (Cluacutester) 68 122727

1

2

3

4 5

Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester (Fuente Elaboracioacuten propia)

90

452 Diccionario Meacutetodo empleado para romper la seguridad de los sistemas basados en

contrasentildeas (password) en la que el atacante intenta dar con la clave adecuada probando todas (o

casi todas) las palabras posibles ingresadas previamente en un diccionario idiomaacutetico

Generalmente se emplean programas especiales que se encargan de ello

Este meacutetodo suele ser maacutes eficiente que el meacutetodo de fuerza bruta debido a que muchas

usuarios casi siempre suelen utilizar contrasentildeas con una o varias palabras existentes en su lengua

para que la contrasentildea no sea olvidada faacutecilmente y sea sencilla de recordar esto no es una praacutectica

recomendable (Alegsa 2018)

Para realizar este meacutetodo se utilizoacute un diccionario descargado de internet el cual contiene

10000000 de posibles contrasentildeas (g0tmi1k 2018)

Ademaacutes se ejecutoacute un programa creado en lenguaje C (Anexo 1) a traveacutes de la

implementacioacuten de las libreriacuteas MPI y open MPI propias de la arquitectura de cluacutester de

computadoras Este programa fue ejecutado en los mismos equipos descritos anteriormente para

obtener todos los nuacutemeros primos encontrados dentro de un intervalo dado En este caso el

intervalo dado fue de 10000000 con los siguientes resultados mostrados en la Tabla 43

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos (Fuente Elaboracioacuten

propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Segs)

1 (PC) 4 5078

17 (Cluacutester) 68 00013

91

453 Analizar los resultados Posterior a realizar el criptoanaacutelisis y descifrar con eacutexito

una cantidad suficiente de hashes se analizan los resultados en busca de pistas o patrones Este

anaacutelisis puede ayudar a tener eacutexito en cualquier hash restante

454 Personalizar ataques Tomando como base el anaacutelisis de resultados realizado

previamente se disentildearaacuten diversas estrategias personalizadas que aprovechen las vulnerabilidades

conocidas o patrones Los ejemplos seriacutean ataques de maacutescara personalizados o reglas para

adaptarse al comportamiento o las preferencias del usuario objetivo

92

Conclusioacuten

El trabajo de investigacioacuten presentado parte de la necesidad de buscar alternativas para

explotar al maacuteximo la capacidad de procesamiento del equipo de coacutemputo que existe actualmente

dentro del inventario del Instituto Tecnoloacutegico de Acapulco asiacute como proveer una plataforma que

coadyuve a la investigacioacuten dentro del Instituto a traveacutes de implementar un cluacutester de coacutemputo

con capacidad para realizar proyectos en el aacuterea de ingenieriacutea y matemaacuteticas con el fin de optimizar

el tiempo de ejecucioacuten lo cual en un futuro se veraacute reflejado en ventajas para el desarrollo de la

regioacuten

La revisioacuten y anaacutelisis de informacioacuten en relacioacuten a cluacutesters es muy interesante pero a la

vez es compleja dado que involucra diferentes aspectos durante su evolucioacuten asiacute como diversas

metodologiacuteas para su formacioacuten e implementacioacuten Se considera de suma importancia para este

trabajo las revisiones efectuadas ya que son la base para la propuesta entregada

De acuerdo a las especificaciones teacutecnicas de los equipos informaacuteticos existentes dentro

del laboratorio de la Maestriacutea en Sistemas Computacionales y una vez que se realizoacute el anaacutelisis

de varios casos de eacutexito se propuso la metodologiacutea para implementacioacuten de un cluacutester homogeacuteneo

tipo Beowolf Este meacutetodo estaacute basado en otros que ya se han implementado bajo realidades

acadeacutemicas similares rescatando las etapas maacutes importantes de cada uno y complementaacutendolo con

los aportes personales se consideroacute que fue el oacuteptimo debido a que se implementoacute con hardware

convencional y herramientas de uso libre

93

El hecho de haber seleccionado un meacutetodo adecuado permitioacute superar gran parte los

problemas que presentaban las metodologiacuteas que fueron analizadas simplificoacute la implementacioacuten

del cluacutester y permitioacute el poder alcanzar una mayor estabilidad en su desempentildeo desde su etapa

inicial fue importante conocer el resultado en cada una de las etapas de implementacioacuten para

asegurar su desenvolvimiento en el futuro

Para integrar los equipos independientes a la arquitectura cluacutester se realizoacute el disentildeo de

una topologiacutea de red Gigabit Ethernet tipo estrella con un direccionamiento IP estaacutetico la

configuracioacuten de protocolos de comunicacioacuten remota sin autenticacioacuten la comparticioacuten de

archivos en red y la utilizacioacuten de aplicaciones de licencia GPL que permiten obtener el

funcionamiento similar a la de una supercomputadora

Haciendo uso de libreriacuteas de paso de mensajes (MPI) y el software John the Ripper para el

descifrado de contrasentildeas la arquitectura cluacutester implementada alcanzoacute una eficiencia de 885

de rendimiento en comparacioacuten con los recursos computacionales de un solo equipo con las

caracteriacutesticas de un nodo Ademaacutes otros de los proyectos ejecutados en la arquitectura cluacutester

para probar el rendimiento fue la ejecucioacuten de un programa para la deteccioacuten de nuacutemeros primos

dentro de un archivo de 10000000 de nuacutemeros obteniendo una eficiencia de maacutes de 99 gracias

a la distribucioacuten de tareas que proporcionan las libreriacuteas de paso de mensajes (MPI) dentro de la

arquitectura cluacutester

Con la implementacioacuten de la arquitectura cluacutester el laboratorio de la Maestriacutea en Sistemas

Computacionales podraacute dar soluciones potentes eficientes y econoacutemicas en los entornos de

94

investigacioacuten mejorando la capacidad de procesamiento en aplicaciones como evaluacioacuten de

algoritmos compresioacuten de archivos renderizacioacuten de imaacutegenes anaacutelisis de datos (big data) en un

tiempo relativamente bajo ideal para las necesidades educativas

La experiencia obtenida al realizar esta investigacioacuten y propuesta ha sido enriquecedora

tanto por la obtencioacuten de conocimiento en base a la historia evolucioacuten y arquitectura de cluacutesters

asiacute como la programacioacuten paralela y sus ventajas en diferentes proyectos desarrollados en todo el

mundo Igualmente la comparacioacuten entre cada uno de los modelos y meacutetodos resulta interesante

dado que existe un sinnuacutemero de ejemplos con caracteriacutesticas diferentes pero baacutesicamente con un

mismo objetivo final

Trabajo Futuro

El cluacutester implementado en el Laboratorio de la Maestriacutea en Sistemas computacionales del

Instituto Tecnoloacutegico de Acapulco puede ser utilizado en gran cantidad de aplicaciones dentro de

las diferentes aacutereas de investigacioacuten del Instituto asiacute como estar disponible para el Departamento

de Posgrado e Investigacioacuten como apoyo durante la realizacioacuten de tareas y proyectos dentro de las

aacutereas de Desarrollo de Sistemas Inteligentes asiacute como de Tecnologiacuteas Web

Propuesta de Trabajo a Futuro

Durante la realizacioacuten de este proyecto se observoacute la necesidad que existe dentro del

departamento de Investigacioacuten y Posgrado de equipos de alta capacidad de procesamiento para

realizar de una manera maacutes eficiente las investigaciones que se estaacuten llevando a cabo Una de ellas

es el ldquoSistema de apoyo al diagnoacutestico oportuno de Retinopatiacutea Diabeacuteticardquo en la cual a traveacutes del

entrenamiento de una red neuronal se clasificaraacuten y evaluaraacuten un nuacutemero de 3000 imaacutegenes para

95

demostrar la presencia de dicha enfermedad en pacientes del Instituto Estatal de Oftalmologiacutea

Actualmente se ha realizado una prueba de entrenamiento de dicha red neuronal con 70 imaacutegenes

obteniendo como resultado un tiempo clasificacioacuten y evaluacioacuten de 301532 horas en un equipo

con un procesador Core I7 con 8 GB en memoria RAM

96

Bibliografiacutea

Alegsa (01 de 01 de 2018) Alegsa Diccionario Informaacutetico Recuperado el 07 de 2019 de

Alegsa httpwwwalegsacomarDicataque_por_diccionariophp

Avecto (2017) Avecto Limited Recuperado el 10 de 08 de 2018 de AVECTO a Bomgar

Company wwwavectocom

Borghello C (2009) Seguridad de la Informacioacuten Recuperado el 11 de 2018 de Criptografiacutea de

la A-Z httpswwwsegu-infocomarproyectosp1_hashhtm

Branch Bedoya J amp Mesa Muacutenera A (Diciembre de 2008) Implementacioacuten de un cluster

homogeacuteneo para la resolucioacuten de problemas de alta complejidad computacional Avances

en Sistemas e Informaacutetica 5(3)

ByteBleeder (02 de 06 de 2017) Practical guide to NTLM Relaying in 2017 Obtenido de Github

httpsbyt3bl33d3rgithubiopractical-guide-to-ntlm-relaying-in-2017-aka-getting-a-

foothold-in-under-5-minuteshtml

Caballero A (26 de 06 de 2018) Hacking Eacutetico Recuperado el 03 de 2019 de John The Ripper

httpwwwreydescomdq=Recuperar_la_Contrasena_del_Administrador_utilizando_s

amdump2_y_John_The_Ripper

Carretero Peacuterez J de Miguel Anasagasti P Garciacutea Carballeira F amp Peacuterez Costoya F (2001)

Sistemas Operativos Una visioacuten aplicada (C F Madrid Ed) Madrid Espantildea

McGRAW-HillInteramericana

Castelloacute Gimeno A (30 de 07 de 2014) Universitat Jaume Recuperado el 10 de 2019 de

Evaluacioacuten de prestaciones mediante laaplicacioacuten HPL de clusters utilizandorCUDA

97

httprepositoriujiesxmluibitstreamhandle10234115082TFM_2014_CastelloGimen

oApdfsequence=1ampisAllowed=y

Chaacutevez J Echeverriacutea C Correa M Vaacutezquez E Suaacuterez M Maacutermol X Diacuteaz G (07 de

1999) Centro de Caacutelculo Cientiacutefico Recuperado el 01 de 05 de 2018 de Universidad de

Los Andes httpwwwcecalculavedocumentaciontutorialesbeowulfinformehtml

Chirinov R (2003) Nfinite9000 SL Recuperado el 26 de 04 de 2018 de Noticias 3D

httpswwwnoticias3dcomarticuloaspidarticulo=248amppag=4

Coffin J (23 de 07 de 2015) Quora Recuperado el 15 de 08 de 2019 de

httpswwwquoracomWhat-does-it-mean-when-a-hashing-algorithm-has-been-broken

Dongarra J (2010) Top500 Super computer sites Recuperado el 07 de 2019 de http

wwwtop500org

Educba (01 de 01 de 2019) Recuperado el 10 de 2019 de Educbaorg

httpswwweducbacomidea-algorithm

europa press (04 de 06 de 2013) Portal Tic Recuperado el 18 de 11 de 2018 de Europa Press

httpswwweuropapressesportalticgadgetsnoticia-cuarta-generacion-intel-core-mayor-

salto-cuanto-ahorro-energetico-20130604174722html

g0tmi1k (2018) github Recuperado el 05 de 2019 de github

httpsgithubcomdanielmiesslerSecListsblobmasterPasswordsCommon-

Credentials10-million-password-list-top-1000000txt

Gonzaacutelez Agudelo D (2014) El riesgo y la falta de politicas de seguridad informaacutetica una

amenaza en las empresas certificadas basc Recuperado el 20 de 05 de 2018 de

Universidad Militar Nueva Granada

httpsrepositoryunimilitareducobitstream10654122511ENSAYO20FINALpdf

98

Gonzaacutelez Ramiacuterez E amp Rodriacuteguez Saacutenchez A (2008) Disentildeo e implementacioacuten de un cluster

tipo BEOWULF para el desarrollo de coacutemputo cientiacutefico avanzado CdMx Mexico

Hernandez M (2013) Forensics Mexico Recuperado el 07 de 2018 de La importancia del

registro de Windows parte 1 httpforensicsmexicoblogspotcom201309la-

importancia-del-registro-de-windowshtml

Kowalczyk C (01 de 2015) Crypto-IT Recuperado el 11 de 2018 de Crypto-IT

httpwwwcrypto-itnetengasymmetricindexhtml

Labaca Castro R (13 de 06 de 2014) We live security Recuperado el 2019 de 08 de 07 de

Welivesecuritybyeset httpswwwwelivesecuritycomla-es20140613matematica-

claves-numerica-alfanumerica

Lizaacuterraga C (2002) Departamento de Fiacutesica Recuperado el 12 de 03 de 2018 de Universidad

de Sonora httpclustersfisicausonmx

Llorens E amp Pentildea M (2002) Recuperado el 04 de 2018 de Departament dArquitectura de

Computadors httppersonalsacupceduenricPFCBeowulfbeowulfhtml

Meneacutendez-Barzanallana R (07 de 08 de 17) Universidad de Murcia Recuperado el 11 de 2018

de Informaacutetica Aplicada a las Ciencias Sociales

httpswwwumesdocenciabarzanaIACCSSCriptografiahtml

Merkle R amp Damgaringrd I (sf) Numerenturorg Recuperado el 06 de 2019 de Para computar -

numerenturorg httpnumerenturorgfuncion-merkle-damgard

Microsoft Inc (02 de 05 de 2019) wwwmicrosoftcom Obtenido de Password must meet

complexity requirements httpsdocsmicrosoftcomes-eswindowssecuritythreat-

protectionsecurity-policy-settingspassword-must-meet-complexity-requirements

99

Mifsud E (26 de 03 de 2012) Introduccioacuten a la seguridad informaacutetica Recuperado el 07 de 05

de 2018 de Ministerio de educacioacuten cultura y deportes Gobierno de Espantildea

httprecursosticeducacionesobservatoriowebessoftwaresoftware-general1040-

introduccion-a-la-seguridad-informaticashowall=1

Murugesan S (01 de 02 de 2008) Researchgate doi101109MITP200810

Nahar K amp Abu Abbas O (01 de 2010) Researchgate Recuperado el 07 de 2019 de

Researchgate

httpswwwresearchgatenetpublication315492522_Hybrid_Cipher_System

Nievas F Pino O amp Arroyo R (sf) Los clusters como Plataforma de Procesamiento Paralelo

Recuperado el 25 de 04 de 2018 de

httpusuarioslycoseslacaraocultadescargasClusters_definitivo pdf

Pawar S (2016) A computer science portal for geeks Recuperado el 10 de 2018 de

Geeksforgeeks httpswwwgeeksforgeeksorgrc5-encryption-algorithm

Peleus (2019) NETSEC Recuperado el 08 de 2019 de httpsnetsecwsp=314

Peacuterez Tavera I (2014) Obtenido de Universidad Autonoma del Estado de Hidalgo

httpswwwuaehedumxscigeboletinprepa4n2e4html

Peacuterez M (2001) Recuperado el 15 de 04 de 2018 de

httpwwwdragonesorgBibliotecaArticulosArquitecturaParalela2pdf

Petitet A Whaley R C Dongarra J amp Cleary A (2008) HPL - A Portable Implementation of

the High-Performance Linpack Benchmark for Distributed-Memory Computers

Recuperado el 07 de 2019 de httpwwwnetliborgbenchmarkhpl

Picolet J (2017) Hash Crack Password Cracking Manual (Vol 2) Createspace Independent

Pub

100

Preukschat A (23 de 02 de 2015) Oro y Finanzas Recuperado el 07 de 2019 de

httpswwworoyfinanzascom201502que-es-colision-criptografia-bitcoin

Robbins D (2008) OpenMosix Recuperado el 22 de 04 de 2018 de the openMosix Project

httpopenmosixsourceforgenetintroduction_to_openmosixhtml

Rocha Quezada J d Botello Rionda S Vargas Feacutelix J M amp Munguiacutea Torres I A (Sep-Dic

de 2011) Disentildeo e implementacioacuten de un cluacutester de coacutemputo de alto rendimiento Acta

Universitaria 21(3) 24-33 Recuperado el 1 de 12 de 2018

Rocksclusters (01 de 01 de 2010) httpwwwrocksclustersorg Recuperado el 01 de 06 de 2018

de httpwwwrocksclustersorg httpwwwrocksclustersorg

Sanjoy K (01 de 01 de 2015) DZone Recuperado el 15 de 06 de 2019 de DZone

httpsdzonecomarticlessecurity-algorithms-des-algorithm

Security Degree Hub (01 de 2017) Security Degree Hub Recuperado el 13 de 02 de 2019 de

Security Degree Hub httpswwwsecuritydegreehubcomwhat-is-cryptanalysis

Simmons G (01 de 01 de 2019) Encyclopedia Britannica Recuperado el 08 de 2019 de

Encyclopedia Britannica httpswwwbritannicacomtopicRSA-encryption

statista (09 de 2017) Statista Obtenido de Statista Co httpsesstatistacom

Turner D (2004) Recuperado el 12 de 02 de 2018 de Ames Lab

httpwwwsclameslabgovProjectsparrallel_computingpara_intohtml

United States Government Department of Defense (1983) Trusted Computer System Evaluation

Criteria Rainbow Series

Universidad Internacional de Valencia (09 de Septiembre de 2016) Nuestros

expertosTecnologiacutea Recuperado el 27 de Abril de 2018 de Universidad Internacional de

Valencia httpswwwuniversidadviuesla-seguridad-informatica-puede-ayudarme

101

Wallen J (19 de 01 de 2019) Lifewire Recuperado el 13 de 06 de 2019 de Lifewire

httpswwwlifewirecomgnome-3-desktop-4175640

Yang H (01 de 02 de 2019) Herong Yang Recuperado el 15 de 06 de 2019 de Cryptography

Tutorials httpwwwherongyangcomCryptographyDSA-Introduction-What-Is-DSA-

Digital-Signature-Algorithmhtml

102

Anexo 1

Programa en Lenguaje C para la obtencioacuten de nuacutemeros primos utilizando libreriacuteas mpi

include ltcstdlibgt

include ltiostreamgt

include ltiomanipgt

include ltcmathgt

include ltctimegt

include mpih

using namespace std

int main ( int argc char argv[] )

int prime_number ( int n int id int p )

void timestamp ( )

int main ( int argc char argv[] )

int i

int id

int master = 0

int n

int n_factor

int n_hi

int n_lo

int p

int primes

int primes_part

double wtime

n_lo = 1

n_hi = 10000000

n_factor = 2

MPIInit ( argc argv )

p = MPICOMM_WORLDGet_size ( )

id = MPICOMM_WORLDGet_rank ( )

if ( id == master )

cout ltlt n

cout ltlt Cuenta primosn

cout ltlt C++MPI versionn

cout ltlt n

cout ltlt Programa para contar cantidad de primos para un N dadon

cout ltlt Corriendo en ltlt p ltlt procesosn

cout ltlt n

103

cout ltlt N S Tiempon

cout ltlt n

n = n_lo

while ( n lt= n_hi )

if ( id == master )

wtime = MPIWtime ( )

MPICOMM_WORLDBcast ( ampn 1 MPIINT master )

primes_part = prime_number ( n id p )

MPICOMM_WORLDReduce ( ampprimes_part ampprimes 1 MPIINT

MPISUM

master )

if ( id == master )

wtime = MPIWtime ( ) - wtime

cout ltlt ltlt setw(8) ltlt n

ltlt ltlt setw(8) ltlt primes

ltlt ltlt setw(14) ltlt wtime ltlt n

n = n n_factor

MPIFinalize ( )

if ( id == master )

cout ltlt n

cout ltlt PRIME_MPI - Procesos maestron

cout ltlt Finalizacion del calculo normaln

return 0

int prime_number ( int n int id int p )

int i

int j

int prime

int total

104

total = 0

for ( i = 2 + id i lt= n i = i + p )

prime = 1

for ( j = 2 j lt i j++ )

if ( ( i j ) == 0 )

prime = 0

break

total = total + prime

return total

void timestamp ( )

define TIME_SIZE 40

static char time_buffer[TIME_SIZE]

const struct tm tm

size_t len

time_t now

now = time ( NULL )

tm = localtime ( ampnow )

len = strftime ( time_buffer TIME_SIZE d B Y IMS p tm )

cout ltlt time_buffer ltlt n

return

undef TIME_SIZE

Page 10: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios

ix

272 Mosix 56

273 OpenMosix 57

Capiacutetulo 3 Implementacioacuten de Cluacutester 59 31 Requisitos previos 59

311 Conexioacuten de los equipos y acceso a la red 59

312 Configuracioacuten de la BIOS 60

3121 ATAIDE Mode 60

3122 PXE 62

32 Instalacioacuten de Sistema Operativo Rocks 63

321 Configuracioacuten del teclado 70

33 Instalacioacuten de los nodos 70

331 Administracioacuten de nodos 72

332 Creacioacuten de cuentas de usuario 73

333 Configuracioacuten del directorio compartido 73

34 Operaciones baacutesicas de Rocks 74

Capiacutetulo 4 Metodologiacutea y Resultados 77 41 Obtener Archivo hash 77

42 Dar Formato al Hash 80

43 Evaluar la fuerza del Hash 80

44 Calcular la capacidad del equipo 82

45 Establecer Estrategia 87

451 Fuerza Bruta 87

4511 Cantidad de combinaciones posibles 88

452 Diccionario 90

453 Analizar los resultados 91

454 Personalizar ataques 91

Conclusioacuten 92

Trabajo Futuro 94 Propuesta de Trabajo a Futuro 94

Bibliografiacutea 96

Anexo 1 102

x

Iacutendice de Figuras

Figura 31 Esquema tiacutepico de configuracioacuten de un cluacutester xi

Figura 32 Imagen del Bios del equipo en la opcioacuten ldquodrive configurationrdquo 61

Figura 33 Bios ATAIDE Legacy Mode 61

Figura 34 Bios Boot PXE 62

Figura 35 Bios Boot device prioriry 63

Figura 36 Pantalla de Inicio de instalacioacuten de Rocks 64

Figura 37 Pantalla de seleccioacuten de Rolls 65

Figura 38 Listado de opciones de rolls para instalar 65

Figura 39 Informacioacuten baacutesica del cluacutester a instalar 66

Figura 310 Configuracioacuten Ethernet de la red privada 67

Figura 311 Configuracioacuten Ethernet de la red puacuteblica 67

Figura 312 Configuracioacuten de DNS y Gateway 68

Figura 313 Ingresar contrasentildea de usuario root 68

Figura 314 Configuracioacuten horaria 69

Figura 315 Particiones del disco duro 69

Figura 316 Pantalla para ingresar nodos 71

Figura 317 Indicador de insercioacuten de nuevos nodos 71

Figura 318 Comando qstat ndashf 74

Figura 319 Enviacuteo de trabajos por medio del comando qsub 75

Figura 320 Estado de los trabajos pendientes mostrados por qstat ndashf 75

Figura 321 Visualizacioacuten de la distribucioacuten de cargas en el cluacutester usando la herramienta

Ganglia 76

Figura 41 Arranque con LiveUSB KaliLinux 79

Figura 42 Resultado de la ejecucioacuten de la herramienta samdump2 80

Figura 43 Sistema de Ecuaciones tipo 119860119909 = 119887 Fuente Propia 84 Figura 44 Distribucioacuten de cargas del cluacutester 86

Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester 89

xi

Iacutendice de Tablas

Tabla 11 Costo del Proyecto 15

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia) 86

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia) 89

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos

(Fuente Elaboracioacuten propia) 90

1

Capiacutetulo 1 Introduccioacuten

11 Antecedentes del problema

Sin lugar a duda una de las herramientas maacutes importantes producida en el siglo XX ha sido

la computadora la cual ha provocado cambios vertiginosos en la sociedad y en el progreso de la

misma En la actualidad el entorno estaacute praacutecticamente controlado por las nuevas tecnologiacuteas que

a medida que transcurre el tiempo avanzan sin liacutemites y en ocasiones son utilizadas

incorrectamente provocando dantildeos de grandes dimensiones

Los trascendentales cambios operados en el mundo moderno caracterizados por su

constante desarrollo la acelerada globalizacioacuten de la economiacutea la acentuada dependencia a

almacenar grandes voluacutemenes de informacioacuten y los sistemas que la proveen aunado a grandes

inversiones de las empresas en conocimiento actual y futuro en sistemas de informacioacuten ademaacutes

del potencial que poseen las tecnologiacuteas para cambiar draacutesticamente las organizaciones y las

praacutecticas de negocio asiacute como crear nuevas oportunidades disentildear nuevas estructuras tecnoloacutegicas

basadas en informacioacuten la convierte en un activo codiciable Tales avances hacen permanente el

riesgo en las tecnologiacuteas y nos llevan a pensar en la problemaacutetica sobre la seguridad informaacutetica

La proteccioacuten de datos documentos y control de acceso a la informacioacuten es un tema que

cada diacutea toma maacutes fuerza en las grandes compantildeiacuteas debido a las diferentes praacutecticas de

especialistas tecnoloacutegicos como los son los hackers y crackers que roban informacioacuten vital para

posteriormente sacar provecho de ella

2

ldquoDesde la aparicioacuten de los grandes sistemas aislados hasta nuestros diacuteas en los que el

trabajo en red es lo habitual los problemas derivados de la seguridad de la informacioacuten han ido

tambieacuten cambiando evolucionando pero estaacuten ahiacute y las soluciones han tenido que ir adaptaacutendose

a los nuevos requerimientos teacutecnicos Aumenta la sofisticacioacuten en el ataque y ello aumenta la

complejidad de la solucioacuten pero la esencia es la mismardquo (Mifsud 2012)

Dentro del mundo actual la informacioacuten es denominada un activo importante de una

institucioacuten la cual debe ser protegida para evitar su peacuterdida modificacioacuten o el uso inadecuado de

su contenido

El extraviacuteo o el mal uso de informacioacuten que para alguien es confidencial genera dantildeos y

repercusiones directas relacionadas a la integridad disponibilidad y confidencialidad de los

archivos y a su vez a los duentildeos de dicha informacioacuten

ldquoLa seguridad informaacutetica se distingue por tener dos propoacutesitos de seguridad la Seguridad

de la Informacioacuten y la Proteccioacuten de Datos estos se diferencian debido a que los datos son valores

numeacutericos que soportan la informacioacuten mientras que la informacioacuten es aquello que tiene un

significado para nosotrosrdquo (Gonzaacutelez Agudelo 2014)

La seguridad informaacutetica consiste en asegurar que los recursos del sistema de informacioacuten

(material informaacutetico o programas) de una organizacioacuten sean utilizados de la manera que se decidioacute

3

inicialmente y que el acceso a la informacioacuten alliacute contenida asiacute como su modificacioacuten soacutelo sea

posible a las personas que se encuentren acreditadas y dentro de los liacutemites de su autorizacioacuten

Actualmente hay mucha informacioacuten circulando en internet por ejemplo correos

electroacutenicos publicaciones en Twitter Facebook videos fotos comercio electroacutenico secretos de

estado militares o industriales Lamentablemente dicha red es puacuteblica e insegura dentro de la cual

existen usuarios bien intencionados y muchos mal intencionados Diariamente encontramos

noticias de sitios con intrusiones mal intencionadas (hackeados) clonacioacuten de tarjeta de creacutedito o

imaacutegenes adulteradas Todo lo anterior motiva la necesidad de proteger la informacioacuten a traveacutes de

mecanismos que impidan a los usuarios no autorizados acceder a dicha informacioacuten

4

12 Planteamiento del Problema

Los sistemas de informacioacuten actuales estaacuten relacionados completamente con la exposicioacuten

de su informacioacuten a entidades externas que son ajenas a la organizacioacuten o delegacioacuten a la que

pertenecen

Cuando no se conoce el alcance que tienen los sistemas informaacuteticos ni lo vulnerables que

pueden ser si son expuestos a Internet por los mismos empleados de la organizacioacuten puede darse

ldquofugardquo de informacioacuten hacia el exterior esto los hace vulnerables a eventos y amenazas que

conllevan a riesgos que pueden provocar peacuterdidas tangibles e intangibles las cuales se traducen

en peacuterdidas que en muchos de los casos por decir lo menos seraacuten monetarias

El portal espantildeol de estadiacutesticas statista muestra la cuota de mercado de los principales

sistemas operativos a nivel mundial a fecha de febrero de 2017 seguacuten el nuacutemero de instalaciones

(statista 2017) Windows 10 fue el segundo sistema operativo maacutes instalado con una cuota de

mercado de 253 Esto significa que alrededor de una de cada cuatro computadoras estaacute

gobernado por este sistema operativo Por su parte en el caso de Windows 7 el porcentaje se situacutea

por encima del 45 a pesar de que ya no se vende ninguacuten PC con este sistema operativo Hablando

de manera conjunta los sistemas operativos Windows cuentan con una cuota del mercado global

de 8857

La empresa de seguridad informaacutetica Britaacutenica Avecto informoacute en su Microsoft

Vulnerabilities Report 2017 (Avecto 2017) (reporte 2017 de vulnerabilidades de Windows) un

aumento de vulnerabilidades publicadas del 111 en los uacuteltimos 5 antildeos de las cuales 235 criacuteticas

5

fueron mitigadas removiendo permisos de administrador asiacute como otras muy importantes

enfocadas al Administrador de Cuentas de Seguridad (SAM Security Account Manager por sus

siglas en ingleacutes) la cual es una base de datos almacenada como un archivo del registro en Windows

y que almacena las contrasentildeas de los usuarios en un formato hash (Algoritmos que crean a partir

de una entrada una salida alfanumeacuterica de longitud fija)

6

13 Objetivos

131 Objetivo General A traveacutes de la implementacioacuten de un procedimiento de fuerza

bruta utilizando para ello un cluacutester de alto rendimiento asiacute como software de uso libre lograr

capacidad de procesamiento capaz de vulnerar un sistema de autenticacioacuten nivel C1

132 Objetivos Especiacuteficos

Analizar los diferentes niveles de seguridad de sistemas operativos

Analizar diferentes meacutetodos de criptoanaacutelisis para vulnerar el Administrador de

cuentas de seguridad

Estudiar las teacutecnicas de agrupamiento de computadoras (clustering) para la

obtencioacuten de mayor poder de procesamiento

Implementar un cluacutester de alto rendimiento en el Laboratorio de la Maestriacutea en

Sistemas Computacionales del Instituto Tecnoloacutegico de Acapulco para ejecutar

operaciones de coacutemputo distribuido

7

14 Justificacioacuten

Antes la seguridad de la informacioacuten se realizaba a traveacutes de medios fiacutesicos por ejemplo

una caja fuerte en la cual las personas resguardaban objetos o informacioacuten valiosa para ellos Con

la introduccioacuten de las computadoras y el uso de internet los usuarios comienzan a almacenar

informacioacuten importante dentro de sus equipos por lo que se considera indispensable el uso de

herramientas que brinden proteccioacuten a la informacioacuten que se encuentra resguardada dentro de

eacutestas Los usuarios informaacuteticos suelen enviar informacioacuten por la red en las empresas al realizar

traacutemites o enviar informes a socios jefes entre otros

El resguardo de informacioacuten siempre ha sido importante para los seres humanos con la

diferencia que anteriormente no se contaba con los avances tecnoloacutegicos que tenemos actualmente

puesto que con la introduccioacuten de internet y el uso de dispositivos electroacutenicos se tiene mayor

riesgo de la informacioacuten que en ellos se maneja

La proteccioacuten del contenido de los datos es una necesidad urgente en casi todos los aacutembitos

de la sociedad incluyendo los servicios puacuteblicos y privados por lo que la tecnologiacutea de la

seguridad de los sistemas de cifrado se encuentra de frente a verdaderos retos

15 Hipoacutetesis

A traveacutes de un de fuerza bruta como teacutecnica de criptoanaacutelisis y con la ayuda de una mayor

capacidad de procesamiento mediante la implementacioacuten de agrupamiento de computadoras

(cluacutester) de alto rendimiento seraacute posible encontrar alguna vulnerabilidad dentro del sistema de

administracioacuten de cuentas de seguridad de Windows server 2012

8

16 Alcances y Limitaciones

Esta tesis se centraraacute en el sistema operativo Windows como objeto de estudio al cual se

le realizaraacute el criptoanaacutelisis

La tesis se enfocaraacute en el meacutetodo Beowulf para realizar el agrupamiento de computadoras

asiacute como la distribucioacuten de software libre del sistema operativo Linux Rocks

El nuacutemero de equipos disponibles para poder realizar el agrupamiento es de 17

computadoras hasta lograr el poder de coacutemputo de 800 Gflops

17 Impacto Social Tecnoloacutegico Econoacutemico y Ambiental

La sostenibilidad del presente proyecto seraacute abordada a partir de los siguientes aspectos

171 Impacto social A veces se puede pensar que un cluacutester de alto rendimiento pudiera

no tener alguacuten impacto directo en el medio social pero si nos enfocamos a un punto de vista en

donde gracias a la capacidad de procesamiento de estas maacutequinas han sido parte fundamental en

el desarrollo de proyectos que inciden de manera directa en beneficio de la sociedad en la que

vivimos como lo es la medicina la fiacutesica quiacutemica

Este proyecto busca beneficiar a nuestra sociedad proveyendo su capacidad de

procesamiento en la buacutesqueda de alguna vulnerabilidad en el sistema operativo maacutes utilizado hoy

en diacutea como lo es Windows ademaacutes de que estaraacute disponible para la comunidad cientiacutefica y

9

estudiantil del Instituto Tecnoloacutegico de Acapulco para optimizar tiempo de caacutelculo en futuras

investigaciones

172 Impacto ambiental Green IT tambieacuten conocido como Green Computing o

traducido al espantildeol como Tecnologiacuteas Informaacuteticas Verdes es definido como el estudio y la

praacutectica de disentildear desarrollar usar y disponer de computadoras servidores y diferentes

perifeacutericos tales como monitores impresoras dispositivos de almacenamiento de redes y

comunicaciones eficientemente y efectivamente con un impacto miacutenimo o nulo en el medio

ambiente (Murugesan 2008)

Bajo la premisa anterior este proyecto hace uso de los equipos con los que cuenta

actualmente el laboratorio de la Maestriacutea en Sistemas Computacionales lo cual evitaraacute la

adquisicioacuten de equipo nuevo y por consecuencia desechar el equipo existente evitando desperdicio

electroacutenico Dicho equipo cuenta con un procesador Intel I3 de 4ta generacioacuten lo cual seguacuten el

portal electroacutenico Europa press

ldquoEsta nueva generacioacuten supone el mayor salto en cuanto ahorro energeacutetico de la historia

de Intel asiacute como una mejora en los graacuteficos y nuevas experiencias de usuariordquo (europa press

2013)

Teniendo como base estos dos puntos importantes como lo son la reutilizacioacuten de equipo

y utilizando procesadores de bajo consumo energeacutetico es como este proyecto busca contribuir de

manera positiva con el medio ambiente

10

173 Impacto econoacutemico Actualmente existe una gran necesidad de procesar grandes

cantidades de datos lo cual hace imprescindible disponer de maacutequinas con estas caracteriacutesticas sin

embargo su alta complejidad aunado al gran costo hace que en instituciones de caraacutecter puacuteblico

sea muy complicado conseguir recurso para este fin Sin embargo un cluacutester de alto rendimiento

reutilizaraacute equipo propio evitando asiacute gastos por concepto de adquisicioacuten de equipo siendo de

esta manera viable para instituciones de caraacutecter puacuteblico

18 Metodologiacutea a Utilizar

181 Anaacutelisis Despueacutes de analizar las diferentes metodologiacuteas de clustering se optoacute por

desarrollar e implementar un cluacutester de alto rendimiento (HPC)

182 Disentildeo

1821 Economiacutea Debido a las caracteriacutesticas del equipo con el cual cuenta el Laboratorios

de la Maestriacutea en Sistemas Computacionales los componentes utilizados para este proyecto son

considerados de uso comuacuten y de bajo costo lo cual los hace faacutecilmente reemplazables en caso de

fallo a un costo accesible El equipo es de la marca Acer Aspire modelos AXC-605-M021 lo cual

nos hace tener ventaja y respaldo del fabricante con respecto a hardware geneacuterico

1822 Instalaciones Un cluacutester requiere de un ambiente controlado Esto es una

habitacioacuten especial con sistema de enfriamiento capacidad suficiente de carga eleacutectrica control

de humedad y un ambiente libre de polvo Ademaacutes se deben considerar el peso del equipo sobre

el piso (ya sea falso o piso normal) Se recomienda colocarlo en los soacutetanos o en la plata baja de

edificios (Rocha Quezada Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

11

En el laboratorio de la Maestriacutea en Sistemas Computacionales se cuenta con espacio que

reuniacutea la mayoriacutea de las caracteriacutesticas requeridas para este proyecto

1823 Escalabilidad Un cluacutester debe ser faacutecilmente escalable y a su vez confiable Por

tal motivo se ha utilizado equipo de marca lo cual nos proporciona maacutes de confiabilidad en su

desempentildeo y a su vez facilidad de aumentar el nuacutemero de equipos si en un futuro fuese necesario

agrandar este proyecto Se armoacute un cluacutester de cinco computadoras con procesadores Intel Core I3

de 64 bits en cada nodo La memoria incluida y perifeacutericos son faacuteciles de adquirir en el mercado

1824 Red En la parte de redes se utilizoacute un switch fast Ethernet con una velocidad de 1

Gbps el cual tiene tazas de transferencia raacutepida y el costo es notablemente maacutes econoacutemico que

uno de fibra oacuteptica

El cableado seleccionado fue el estaacutendar UTP de cobre con la norma Gigabit Ethernet de

IEEE 8023ab con la categoriacutea de cableado 6e que soporta tazas de transferencia de datos de

1000Base T (1 Gbps)

1825 Software

ldquoEl sistema operativo debe constar con servicios dedicados para compartir y respaldar

archivos asiacute como capacidad de acceder a los datos de trabajo raacutepidamente El sistema operativo

debe tambieacuten proveer servicios de monitoreo y reporte de fallas en el sistemardquo (Rocha Quezada

Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

12

Existe una gran variedad de software para instalar cluacutester de alto rendimiento sin embargo

como se ha comentado con anterioridad el costo de adquisicioacuten debe ser accesible por tal motivo

se optoacute por una distribucioacuten con licencia GNU de Linux Rocks Cluster la cual es una distribucioacuten

sencilla de instalar y configurar en comparacioacuten con otras distribuciones analizadas dicha

distribucioacuten estaacute basada en CentOS que a su vez estaacute basada en la conocida distribucioacuten de Linux

Red Hat

1826 Almacenamiento Para este proyecto no se requeriraacute un gran espacio de

almacenamiento por tal motivo los equipos utilizados tanto maestro como esclavos mantuvieron

sus unidades de disco originales las cuales son de 1 TB de almacenamiento

183 Implementacioacuten La implementacioacuten del cluacutester de alto rendimiento fue realizada

dentro de las instalaciones del Laboratorio de la Maestriacutea en Sistemas Computacionales del

Instituto Tecnoloacutegico de Acapulco construido inicialmente para este proyecto de criptoanaacutelisis lo

cual requeriraacute suficiente capacidad de procesamiento para poder implementar ataques de fuerza

bruta a sistemas operativos Las caracteriacutesticas del cluacutester construido son

1831 Software El software instalado en cada uno de los nodos es el siguiente

bull Sistema operativo Rocks Cluacutester Linux 74 (64 bits)

bull Libreriacutea de manejo de mensajes Open-MPI 153

bull Software de monitoreo Ganglia

13

1832 Hardware El cluacutester estaacute compuesto de 17 equipos con las siguientes

caracteriacutesticas

bull Nodo Maestro y 16 Nodos Esclavos

- Procesador Intel Core I3 4150 (4 nuacutecleos) Memoria 6 GB Disco Duro SATA 1 TB

tarjeta de Red Gigabit Ethernet

El hardware adicional es el siguiente

bull Interconexioacuten de Red

bull Switch Cisco 26 puertos 1Gbps modelo SG200 Red interna

1833 Recursos totales del cluacutester

bull Nuacutecleos de unidades de procesamiento (cores) 68

bull Capacidad en memoria 92 GB

bull Capacidad en disco 17 TB

19 Aseguramiento Teacutecnico ndash Material

A continuacioacuten se muestra el desglose del equipo utilizado para la elaboracioacuten de un

cluacutester de alto rendimiento estos componentes consisten en Hardware y Software especializado

asiacute como los costos de produccioacuten y personal involucrados en la metodologiacutea y elaboracioacuten del

proyecto

Costos de Hardware

Costos de Software

14

191 Hardware En este punto se refleja el costo de los dispositivos y herramientas a nivel

fiacutesico las cuales sirvieron para la implementacioacuten del proyecto cluacutester de alto rendimiento Cabe

resaltar que el equipo utilizado forma parte del inventario actual del Laboratorio motivo por el

cual su utilizacioacuten no causoacute erogacioacuten alguna sin embargo la investigacioacuten de costos se realizoacute

con la finalidad que el lector pueda establecer comparativas y buscar alternativas en caso de ajuste

de presupuesto

1911 Equipo de coacutemputo El equipo de coacutemputo utilizado consta de diecisiete

computadoras las cuales serviraacuten una para Nodo Maestro y las dieciseacuteis restantes como Nodos

Esclavos

La descripcioacuten de estos equipos se muestra en la tabla a continuacioacuten mostrando los costos

de todos los equipos utilizados dentro del proyecto

15

Tabla 11 Costo del Proyecto

Modelo

Cantidad

Caracteriacutesticas

Costos

PC - Acer AXC-

605

17

Procesador Intel Core i3

Pantalla 156rdquo

Disco duro 1TB HDD

RAM 6GB

Salida HDMI

Tarjeta de graacuteficos INTEGRADA

Lector de CD

Los costos en el mercado de una PC de

escritorio con estas caracteriacutesticas tiene un

valor aproximado de $600000 pesos

(Moneda nacional Mexicana)

Switch Cisco

Gigabit Ethernet

1

Modelo SG200 de 26 puertos

Costo en el mercado alrededor de

$2000000 pesos MN

Total

12200000 pesos MN

16

Capiacutetulo 2 Estado del Arte

Tiacutetulo del Trabajo Introduccioacuten a la Criptografiacutea

Autor Gibraacuten Granados Paredes

Fecha Julio 2010

Lugar Ciudad de Meacutexico

Publicado en Coordinacioacuten de Publicaciones Digitales DGSCA-UNAM

httpwwwrevistaunammxvol7num7art55int55htm

Siacutentesis Cuando se desea tener seguridad hablando en aacutembitos informaacuteticos la

criptografiacutea es una herramienta muy uacutetil el autor lo entiende tambieacuten como un medio para

garantizar las propiedades de confidencialidad integridad y disponibilidad de los recursos de un

sistema

Con la criptografiacutea se puede garantizar las propiedades de integridad y confidencialidad

pero hay que saber coacutemo utilizarla para ello es importante tener claros los conceptos baacutesicos que

estaacuten detraacutes de los sistemas criptograacuteficos modernos Estos conceptos van desde entender queacute es

la criptografiacutea coacutemo estaacute clasificada entender el funcionamiento baacutesico de algunos sistemas de

cifrado y conocer coacutemo se forman los documentos digitales como firmas y sobres digitales

Resultados El autor realiza un viaje por un gran nuacutemero de conceptos utilizados en

criptografiacutea el inicio y la clasificacioacuten de la misma asiacute como la criptografiacutea claacutesica y moderna y

analiza de manera breve algunos meacutetodos de cifrado maacutes comunes

17

Tiacutetulo del Trabajo Criptoanaacutelisis sobre meacutetodos claacutesicos de cifrado

Autores Sebastiaacuten Goacutemez Juan David Arias Diego Agudelo

Fecha 2 de mayo 2013

Lugar Ciudad de Meacutexico

Publicado en Scientia et Technica Antildeo XVII No 50 abril de 2012

Siacutentesis Los algoritmos criptograacuteficos utilizados desde la antigua Roma hasta nuestros

diacuteas son meacutetodos que convierten un mensaje de texto plano a cifrado al proceso inverso se le

conoce como descifrar Este artiacuteculo realiza un estudio de algunas teacutecnicas de encriptacioacuten claacutesicas

del siglo pasado como lo son el cifrado de Cesar y el cifrado de Vigeneacutere asiacute como muestra

teacutecnicas baacutesicas y modernas de criptoanaacutelisis basadas en la teoriacutea de la informacioacuten y estadiacutestica

como lo son la entropiacutea y el ataque de maacutexima correlacioacuten Las teacutecnicas de criptoanaacutelisis descritas

anteriormente pueden ser usadas en otros meacutetodos de cifrado siempre y cuando esteacuten presentes las

mismas debilidades

Resultados Los autores implementaron en lenguajes de programacioacuten Python un

algoritmo para el caacutelculo de entropiacutea para diferentes longitudes de clave Para la implementacioacuten

de los algoritmos de cifrado y descifrado de Vigeneacutere y de maacutexima correlacioacuten utilizaron lenguaje

de programacioacuten C++ Se probaron los meacutetodos anteriormente descritos sobre textos planos de

diferentes longitudes logrando un resultado de 9385 de efectividad en promedio

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de dos de los

algoritmos de encriptacioacuten maacutes antiguos y baacutesicos pero sobre todo que conociendo los meacutetodos

de criptoanaacutelisis me permitiraacuten analizar debilidades y fortalezas de algoritmos

18

Tiacutetulo del Trabajo ULTRACOM Computacioacuten de Alto Rendimiento para Criptoanaacutelisis

Autor Antonio Castro Lechtaler Alejandro Repetto Martiacuten Bianchi Marcelo Cipriano

Alejandro Arroyo Arzubi Ceacutesar Cicerchia Eduardo Malvacio

Fecha octubre 2014

Lugar Buenos Aires Argentina

Publicado en XX Congreso Argentino de Ciencias de la Computacioacuten (Buenos Aires

2014)

Siacutentesis La generacioacuten de nuacutemeros primos fundamentales para la produccioacuten de claves

el anaacutelisis de secuencias pseudo-aleatorias los procesos de verificacioacuten y validacioacuten de algoritmos

de seguridad en un sentido geneacuterico requieren enormes cantidades de procesamiento Los

procesos relacionados con la matemaacutetica criptograacutefica se caracterizan por la alta necesidad de

coacutemputo El objetivo de ULTRACOM es desarrollar una computacioacuten distribuida multipropoacutesito

que permita como primera aplicacioacuten real el anaacutelisis la validacioacuten y la ejecucioacuten de pruebas de

estreacutes sobre sistemas criptograacuteficos El presente trabajo de investigacioacuten detalla el proceso de

desarrollo de ULTRACOM y muestra un ejemplo de su implementacioacuten en una versioacuten Beta Para

ello toman como entrada dos versiones del algoritmo Trivium Utilizando la misma

infraestructura y sin desarrollo extra se prueban grandes voluacutemenes de claves y vectores de

inicializacioacuten de los algoritmos en busca de secuencias deacutebiles de menor longitud que la de la

buscada

Resultados El equipo implementoacute una versioacuten beta de la plataforma ULTRACOM

comprobando la factibilidad y viabilidad teacutecnica de la generalizacioacuten de la infraestructura de

computacioacuten distribuida en grilla (malla) BOINC Este avance permite extender los horizontes de

BOINC y habilita la posibilidad de obtener la capacidad de coacutemputo de alto rendimiento a bajo

19

costo Concluyeron que ULTRACOM es un proyecto viable escalable y de alto impacto para la

evaluacioacuten y validacioacuten de algoritmos criptograacuteficos

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento y la

implementacioacuten de una arquitectura de computacioacuten distribuida y una vez siendo factible su

desarrollo utilizar su poder de coacutemputo atacando a traveacutes de un algoritmo un sistema criptograacutefico

20

Tiacutetulo del Trabajo Criptografiacutea Cuaacutentica

Autor M Baig

Fecha 2010

Lugar Barcelona Espantildea

Siacutentesis En este artiacuteculo el autor realiza una breve introduccioacuten a la criptografiacutea claacutesica y

la relacioacuten que existe con la teoriacutea de la informacioacuten de Shannon la cual asegura que el cifrado

digital simeacutetrico es secreto y perfecto siempre y cuando se cumplan los tres requisitos

1 La llave ha de ser aleatoria

2 La llave debe usarse soacutelo una vez

3 La llave ha de ser tan larga como el mensaje y de un solo uso debe de estar en posesioacuten

tanto del emisor como del receptor

El punto 3 es el maacutes complicado de cumplir debido a la forma de compartir la llave entre

el emisor y receptor

Maacutes adelante en el artiacuteculo se hace un anaacutelisis sobre otra teacutecnica de criptografiacutea que es el

cifrado digital asimeacutetrico en la que se estudia coacutemo funcionan las llaves privadas y puacuteblicas asiacute

como el meacutetodo de criptograacutefico RSA

Resultados

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento maacutes profundo de

los meacutetodos de criptografiacutea simeacutetricos y asimeacutetricos especiacuteficamente el algoritmo asimeacutetrico

RSA

21

Tiacutetulo del Trabajo La Criptografiacutea Maderista en la Revolucioacuten Mexicana (1910-1911)

Criptoanaacutelisis de una carta cifrada por Gabriel Leyva Solano

Autor Roberto Narvaacuteez

Fecha 2011

Lugar Meacutexico DF

Siacutentesis Este trabajo aborda temas relacionados con las comunicaciones secretas del

movimiento revolucionario comandado por Francisco I Madero a partir de 1910 Se compone de

dos partes la primera es una breve resentildea criacutetica de ejemplos criptograacuteficos del maderismo que

fueron generados entre 1910 y 1911 la segunda describe paso a paso el criptoanaacutelisis que aplicoacute

el autor Roberto Narvaacuteez para desencriptar una carta parcialmente cifrada de Gabriel Leyva Solano

a Francisco I Madero

Resultados El propoacutesito general uacuteltimo es contribuir al conocimiento de la criptografiacutea

mexicana en el siglo XX En lo particular se trata de poner a disposicioacuten de los estudiosos el

contenido completo de la carta de Leyva Solano por primera vez despueacutes de 100 antildeos y al mismo

tiempo someter a la criacutetica teacutecnica e histoacuterica el procedimiento criptoanaliacutetico puesto en operacioacuten

para recuperar el texto plano

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados en nuestro paiacutes sobre formas y meacutetodos de encriptacioacuten durante la Revolucioacuten

Mexicana incluso mucho antes de la 2ordf Guerra mundial momento donde se registroacute un auge

importante dentro de la criptografiacutea moderna

22

Tiacutetulo de Tesis Anaacutelisis de la programacioacuten concurrente sobre la cpu y gpu en el

desarrollo de fractal build

Autor Joseacute Vicente Anilema Guadalupe

Fecha 2012

Lugar Riobamba Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la geometriacutea euclidiana debido a que

el autor realiza una aplicacioacuten que crea paisajes fractales lo que significa crear un paisaje con una

misma figura geomeacutetrica Lo anterior se traduce en una necesidad de gran poder de coacutemputo para

realizar de una manera eficaz la tarea Dentro de la tesis el autor realiza diversos estudios

comparativos entre el procesamiento serializado realizado por una CPU (unidad central de

procesamiento) y procesamiento paralelizado realizado por una GPU (Unidad grafica de

procesamiento) a traveacutes de diversas herramientas para obtener el mejor aprovechamiento de los

recursos

Resultados El autor concluye que es necesario examinar los algoritmos a utilizar para que

estos puedan ser utilizados en coacutemputo paralelo Ademaacutes de que es necesario aprender ciertas

herramientas a utilizar para aprovechar al maacuteximo el coacutemputo distribuido y no desperdiciar el

poder de procesamiento muy superior que las GPUrsquos nos pueden brindar

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados para medir y comparar la velocidad de procesamiento de la unidad central de

procesamiento (CPU) y la unidad graacutefica de procesamiento (GPU) Asiacute como la medida en Flops

(Operaciones de punto flotante por segundo)

23

Tiacutetulo del Trabajo Arquitectura cluacutester de alto rendimiento utilizando herramientas de

software libre

Autores Leonardo Chiquiguanca Edyson Malla Freddy Ajila Rene Guamaacuten-Quincheacute

Fecha mayo 2015

Lugar Loja Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la gran cantidad de datos que tienen

que procesar las universidades puacuteblicas dentro de sus investigaciones realizadas en diferentes aacutereas

como la ingenieriacutea medicina etc y la carencia de recursos econoacutemicos para obtener

supercomputadoras que procesen dicha informacioacuten Los autores proponen dentro de su

investigacioacuten la utilizacioacuten de equipo de coacutemputo existente dentro de su universidad y por medio

de software libre realizar agrupamiento de computadoras para poder lograr el procesamiento de

grandes voluacutemenes de datos de una manera accesible

Resultados Los autores concluyen que la mejor arquitectura para el agrupamiento

(cluacutester) de computadoras en ambientes universitarios es la arquitectura Beowulf debido a que la

implementaron en hardware convencional existente dentro de su campus universitario y que

ademaacutes usaron software libre mencionando que el poder de coacutemputo logrado fue muy cercano al

de una supercomputadora

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de las teacutecnicas

utilizadas en ambientes universitarios para la realizacioacuten de agrupamiento de computadoras y

sobre todo la optimizacioacuten de costos para realizar dicha tarea y tener como finalidad el lograr

mayor capacidad de procesamiento

24

Tiacutetulo de Tesis Desarrollo de un algoritmo de cifrado simeacutetrico de resumen

Autores Jonathan Dave Orjuela Navarrete

Antildeo 2008

Lugar Bogotaacute DC

Siacutentesis Esta tesis realiza un estudio de varios meacutetodos de criptografiacutea simeacutetrica para

posteriormente utilizando diferentes foacutermulas matemaacuteticas crear un algoritmo criptograacutefico

nuevo Dentro de la tesis utiliza dos meacutetodos para realizar pruebas a su algoritmo criptoanaacutelisis

diferencial y criptoanaacutelisis basado en fallos de hardware Dentro de los cuales hace un estudio

detallado de las teacutecnicas y herramientas de criptoanaacutelisis realizado a su algoritmo

Resultados El autor concluye de manera positiva con la realizacioacuten del algoritmo y de

manera satisfactoria con la realizacioacuten de criptoanaacutelisis a su algoritmo pudiendo demostrar la

fortaleza del algoritmo a traveacutes de ejemplo de cifrado con textos claro muy parecido y su

conversioacuten a cadenas completamente diferentes

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de criptoanaacutelisis diferencial y criptoanaacutelisis basado en fallos de hardware para la

evaluacioacuten de algoritmos de cifrado simeacutetrico de textos claros

25

Tiacutetulo del Trabajo Firt step in a Pc cluster development with openMosix

Autores Javier Bilbao Gorka Garate

Antildeo 2008

Lugar Bilbao Spain

Siacutentesis En este trabajo se afirma que es posible hacer maacutequinas de alta capacidad de

caacutelculo mediante la interconexioacuten de equipos con redes de alta velocidad A este tipo de sistemas

se les llama sistemas distribuidos y hoy en diacutea es la tecnologiacutea maacutes utilizada para resolver

problemas que requieren una gran capacidad de caacutelculo La agrupacioacuten de computadoras permite

que varias computadoras trabajen juntas para resolver los problemas de informaacutetica comuacuten Este

artiacuteculo centra su estudio en uno de los diferentes meacutetodos de agrupamiento de computadoras

openMosix El trabajo tambieacuten evaluacutea el cluacutester por dos casos de estudio donde se mejora el

tiempo de ejecucioacuten de los problemas resueltos

Resultados El autor del artiacuteculo concluye con la realizacioacuten satisfactoria de agrupamiento

de computadoras bajo el meacutetodo openMosix el cual uacutenicamente permite agrupamiento de la forma

SSI (Single System Image) que se refiere a que uacutenicamente se puede realizar el agrupamiento con

todos los nodos ejecutando un mismo sistema operativo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras openMosix ventajas desventajas y dificultades para

su implementacioacuten

26

Tiacutetulo del Trabajo Disentildeo e implementacioacuten de un cluacutester tipo Beowulf para el desarrollo

de coacutemputo cientiacutefico avanzado

Autores Edgar Rubeacuten Gonzaacutelez Ramiacuterez Abimael Rodriacuteguez Saacutenchez

Antildeo 2008

Lugar Instituto Politeacutecnico Nacional Meacutexico DF

Siacutentesis Este trabajo de tesis ha desarrollado e implementado una herramienta

computacional llamada Cluster Beowulf para mejorar la programacioacuten paralela Comenzando

con la memoria compartida y distribuida el autor implemento el agrupamiento tipo Beowulf

pensando en procesamiento paralelo la optimizacioacuten de las fuentes informaacuteticas El disentildeo se

construye mediante una distribucioacuten Linux Fedora Core 6 a 64 bits utilizando todas las ventajas

que ofrece el estaacutendar Gigabyt Ethernet La programacioacuten paralela fue desarrollada en lenguaje C

tanto para MPI como para OPENMP

Resultados El autor del artiacuteculo concluye que de acuerdo con los resultados el tiempo

de procesamiento se redujo con el uso muacuteltiples nuacutecleos mejoroacute hasta ocho veces gracias al

multihilo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras Beowulf y su implementacioacuten en sistemas operativos

de uso libre Linux distribucioacuten Fedora 6

27

Marco Teoacuterico

21 Seguridad de la Informacioacuten

La Seguridad de la Informacioacuten consiste y hace referencia a la proteccioacuten de cualquier

amenaza para salvaguardar los activos fijos y en especial toda informacioacuten de la cual estaacute basada

la continuidad de las operaciones de la empresa sean estas ocasionadas dentro o fuera de la misma

con esto se logra disminuir los dantildeos y perjuicios que estas amenazas causariacutean a la organizacioacuten

y a la vez aumentar las oportunidades de servicio hacia otras empresas

La Seguridad de la informacioacuten se consigue mediante la implementacioacuten de controles

efectivos que pueden ser normas manual de funciones buenas praacutecticas procedimientos

estructuras organizativas funciones de software y hardware planes de contingencia y herramientas

que se encargan de proteger la privacidad e integridad de la informacioacuten que se almacena en un

sistema informaacutetico Estos controles necesitan continuamente ser establecidos monitoreados

revisados y mejorados en donde sea necesario para asegurar que se cumplan los objetivos

especiacuteficos de seguridad en cada aacuterea de negocio de la organizacioacuten

La seguridad informaacutetica es en realidad una rama de la seguridad de la informacioacuten aunque

de forma praacutectica algunos autores suelen utilizar de manera indistinta ambos teacuterminos

211 Objetivo de la seguridad de la informacioacuten En la seguridad de la informacioacuten

sabiendo que dichos procesos de seguridad permiten proteger el recurso maacutes importante y valioso

de una organizacioacuten partiendo como principio fundamental los procesos de aseguramiento el

28

objetivo del proceso de seguridad informaacutetica es obtener un nivel aceptable de seguridad ya que

la informacioacuten es lo maacutes valioso que tiene una institucioacuten o empresa por lo tanto esta debe ser

protegida para que no sea vulnerable y utilizada para fines maliciosos

212 Principios de la seguridad informaacutetica

Confidencialidad Los datos solo deben ser conocidos y accedidos por quienes esteacuten

autorizados durante su almacenamiento procesamiento o trasmisioacuten Verificar y certificar que solo

los usuarios con accesos autorizados puedan acceder a la informacioacuten

Integridad Los datos solo pueden ser modificados y eliminados por quienes esteacuten

autorizados para ello es decir los sistemas y aplicaciones solo deben ser operados por personal

autorizado

Disponibilidad Los sistemas que almacenan datos e informacioacuten deben garantizar su

acceso cuando asiacute se requiera por quienes tengan derecho a ello

213 Caracteriacutesticas de seguridad informaacutetica

Control Solo los usuarios autorizados deciden cuaacutendo y coacutemo permitir el acceso a la

informacioacuten

Auditoriacutea Establece las acciones cuaacutendo las implementa y quieacuten las realiza sobre el

sistema

Autenticidad Define que la informacioacuten necesaria es correcta utilizable y vaacutelida en tiempo

y forma

No Repudio Su funcioacuten es evitar que alguna entidad que envioacute o recibioacute informacioacuten

alegue que no lo hizo

29

214 Formas de Autenticacioacuten

Contrasentildea Una contrasentildea es un tipo de seguridad informaacutetica ya que es una serie de

caracteres secretos que permiten a un usuario tener acceso a un archivo equipo de coacutemputo o

programa y negar el acceso a usuarios no autorizados

Certificado digital Es un tipo de seguridad informaacutetica que permite la firma digital

electroacutenica que garantiza teacutecnica y legalmente la identidad de una persona en Internet

Autenticacioacuten HTTP Tipo de seguridad informaacutetica que delega la autenticacioacuten de

usuarios a un servidor a traveacutes de Kerberos

215 Ciber-seguridad Con los avances tecnoloacutegicos y la demanda que ha causado en ello

existe un elevado iacutendice de informacioacuten personal y empresarial que circula y se mantiene en la red

por la utilizacioacuten del internet esto permite que toda informacioacuten quede expuesta a cualquier ataque

de ciber-delincuentes los cuales buscan la manera de vulnerar cualquier sistema para espiar robar

informacioacuten o hacer dantildeo de cualquier tipo por lo que se ha visto la necesidad de tomar medidas

de seguridad para salvaguardar la informacioacuten ya que es muy importante

La ciberseguridad es la proteccioacuten de los sistemas conectados a Internet incluidos el

hardware el software y los datos de los ciberataques En un contexto informaacutetico la seguridad

comprende la ciberseguridad y la seguridad fiacutesica ambas son utilizadas por las empresas para

proteger contra el acceso no autorizado a los centros de datos y otros sistemas de coacutemputo El

objetivo de la ciberseguridad es limitar el riesgo y proteger los activos de Tecnologiacuteas de

Informacioacuten de los atacantes con intenciones maliciosas La seguridad de la informacioacuten estaacute

30

disentildeada para mantener la confidencialidad integridad y disponibilidad de los datos es un

subconjunto de la ciberseguridad

22 Criptografiacutea

La Criptografiacutea tambieacuten llamada ldquoescritura ocultardquo tradicionalmente en el aacutembito de

criptografiacutea es donde se ocupan las teacutecnicas de cifrado o codificacioacuten que permiten alterar el

contenido de cierta informacioacuten o mensajes con el fin de hacerlos ininteligibles a receptores o

personas no autorizadas (Meneacutendez-Barzanallana 17)

Actualmente la criptografiacutea se encarga de analizar algoritmos protocolos y sistemas que

son utilizados para proveer seguridad a las comunicaciones informacioacuten y a las entidades que se

comunican entre siacute

221 Tipos de Criptografiacuteas

2211 Tablas Hash Un hash o funcioacuten hash toma un grupo de caracteres (llamado clave)

y lo asigna a un valor de cierta longitud (llamado valor hash o hash) El valor hash es representativo

de la cadena de caracteres original pero normalmente es maacutes pequentildeo que el original

El hash tambieacuten es utilizado en el cifrado y descifrado de firmas digitales La funcioacuten hash

transforma la firma digital luego tanto el valor hash como la firma se enviacutean al receptor El

receptor utiliza la misma funcioacuten hash para generar el valor hash y luego lo compara con el recibido

31

en el mensaje Si los valores hash son los mismos es probable que el mensaje se haya transmitido

sin errores

Un ejemplo de una funcioacuten hash se llama plegado(folding) Esta toma un valor original lo

divide en varias partes luego agrega las partes y usa los uacuteltimos cuatro diacutegitos restantes como

valor o clave hash

2212 Tipos de algoritmos Hash

22121 SHA - 1 (Secure Hash Algorithm) Es un algoritmo criptograacutefico de Hash

publicado por el gobierno de los Estados Unidos Genera un valor Hash de 160 bits a partir de una

secuencia de longitud arbitraria Es considerado lo suficientemente seguro para aplicaciones

praacutecticas pero hay disponibles versiones maacutes robustas SHA - 256 SHA - 384 y SHA - 512 que

generan valores Hash de 256 384 y 512 bits respectivamente estas versiones reemplazaraacuten a SHA

- 1 mientras se siga trabajando sobre ellas (Borghello 2009)

22122 MD5 (Message Digest Algorithm) En criptografiacutea MD5 es una funcioacuten hash

criptograacutefica ampliamente utilizada con un valor hash de 128 bits Como estaacutendar de Internet (RFC

1321) MD5 se ha empleado en una amplia variedad de aplicaciones de seguridad y tambieacuten se

usa comuacutenmente para verificar la integridad de los archivos Un hash MD5 generalmente se

expresa como un nuacutemero hexadecimal de 32 diacutegitos

MD5 es una versioacuten reforzada de MD4 Al igual que MD4 el hash MD5 fue inventado por

el profesor Ronald Rivest del Massachusetts Institute of Technology (MIT) Ademaacutes MD5 se

32

utilizoacute como modelo para SHA-1 ya que comparten muchas caracteriacutesticas comunes MD5 y

SHA-1 son los dos algoritmos hash maacutes utilizados en la actualidad aunque el uso de MD5 ha

disminuido ya que ahora se considera roto (Borghello 2009)

22123 RIPEMD ndash 160 Es una funcioacuten hash criptograacutefica basada en la construccioacuten

Merkle-Damgaringrd (MD) Se usa en el estaacutendar de Bitcoin Es una versioacuten reforzada del algoritmo

RIPEMD que produce un resumen de hash de 128 bits mientras que el algoritmo RIPEMD-160

produce una salida de 160 bits La funcioacuten de compresioacuten consta de 80 etapas formadas por 5

bloques que se ejecutan 16 veces cada uno Este patroacuten se ejecuta dos veces con los resultados

combinados en la parte inferior utilizando la adicioacuten del moacutedulo 32 (Borghello 2009)

22124 Funcioacuten Merkle-Damgaringrd La construccioacuten MD es una metodologiacutea para crear

funciones hash resistentes a colisiones a partir de funciones de compresioacuten unidireccionales Ralph

Merkle la propuso en el antildeo de 1979 en ldquoA certified Digital Signaturerdquo posterior a este estudio

Ivan Damgaringrd demostroacute de manera independiente que la estructura era soacutelida (Merkle amp

Damgaringrd sf)

2213 Cifrado simeacutetrico Los cifrados simeacutetricos son los cifrados criptograacuteficos maacutes

antiguos y maacutes utilizados En un cifrado simeacutetrico la clave que descifra el texto cifrado es la

misma (o puede derivarse faacutecilmente) de la clave que cifra el texto claro Esta clave a menudo se

conoce como la clave secreta Los cifrados simeacutetricos maacutes utilizados son DES y AES

La problemaacutetica que surge es la seguridad de la clave

33

El emisor cifra el mensaje con una clave

Enviacutea el mensaje cifrado de tal manera que nadie puede descifrarlo sin dicha clave

El receptor obtiene la clave y entonces puede descifrar el mensaje con la misma clave

que recibioacute del emisor

Algunos algoritmos de este tipo son

22131 RC5 (Cifrado de Rivest) Es un algoritmo de cifrado de bloque de clave simeacutetrica

disentildeado por Ron Rivest en 1994 Se destaca por ser simple raacutepido (debido a que usa solo

operaciones de coacutemputo primitivas como XOR o shift) y ademaacutes por consumir menos memoria

RC5 es un cifrado de bloques y aborda dos bloques de palabras a la vez Dependiendo del

tamantildeo del bloque de texto sin formato nuacutemero de rondas y tamantildeo de clave se pueden definir

varias instancias de RC5 y cada instancia se denota como RC5-w r b donde w = tamantildeo de

palabra en bits r = nuacutemero de rondas y b = tamantildeo de la clave en bytes (Pawar 2016)

Como se ha mencionado RC5 utiliza bloques de 2 palabras el tamantildeo del bloque de texto

sin formato puede ser de 32 64 o 128 bits

22132 IDEA (International Data Encryption Algorithm) Baacutesicamente es un algoritmo

de cifrado de bloque simeacutetrico El algoritmo asimeacutetrico utiliza la misma clave para el cifrado y

descifrado Un cifrado de bloque divide el mensaje en bloques cada uno de una longitud fija y

luego cifra cada bloque de forma independiente

34

El tamantildeo de bloque tiacutepico es de 16 bytes de 128 bits Un cifrado de bloque generalmente

operaraacute en bloques o rondas donde se aplica parte de la clave a la ronda Despueacutes de un cierto

nuacutemero de rondas digamos entre 10 y 16 se termina con el texto cifrado para ese bloque

El bloque de texto cifrado tiene exactamente el mismo tamantildeo que el bloque de texto sin

formato 16 bytes Para cada ronda se trabaja en el bloque utilizando una parte de la clave de

cifrado a la que se le llama la clave redonda Muacuteltiples claves redondas se derivan de la clave de

cifrado utilizando para esto un programa de claves

La programacioacuten de claves es un algoritmo que cambia XOR multiplica y realiza otros

tipos de operaciones en la clave de cifrado original para obtener estas claves redondas Bueno si

tengo un bloque de 16 bytes y tengo una clave de 128 bits que tambieacuten es de 16 bytes (Educba

2019)

22133 DES (Data Encryption Standard) El algoritmo DES es el algoritmo de seguridad

maacutes popular Es un algoritmo simeacutetrico lo que significa que se utilizan las mismas claves para

cifrar descifrar datos confidenciales La longitud de la clave es de 8 bytes (64 bits) Entonces

para cifrar descifrar datos el algoritmo DES utiliza una clave de 8 bytes pero 1 byte (8 bits) para

la verificacioacuten de paridad Es un algoritmo de cifrado de bloque por lo tanto el tamantildeo del bloque

de datos del algoritmo DES es de 64 bits Para cifrar descifrar datos el algoritmo DES utiliza la

estructura Feistel Entonces utiliza una ronda para cifrar descifrar datos Aunque el tamantildeo del

35

bloque de datos es de 64 bits el nuacutemero de rondas seraacute de 16 rondas asiacute mismo utilizaraacute diferentes

subclaves para cada ronda por lo tanto el nuacutemero de subclaves seraacute de 16 subclaves

Como se puede observar la clave efectiva es de 56 bits por consiguiente se tiene 256

combinaciones posibles por lo que la fuerza bruta se hace casi imposible (Sanjoy 2015)

2214 Cifrado asimeacutetrico Los cifrados asimeacutetricos tambieacuten se conocen como cifrados

con claves puacuteblicas y privadas Usan dos claves una para el cifrado de mensajes y la otra durante

el descifrado

Un intruso puede encriptar cualquier mensaje usando la clave puacuteblica conocida Los

cifrados asimeacutetricos son por lo tanto vulnerables a los ataques de texto sin formato Los cifrados

con encriptacioacuten de clave puacuteblica deben proporcionar seguridad contra tales ataques Despueacutes de

encriptar dos mensajes con la misma clave puacuteblica el intruso no puede distinguir queacute texto cifrado

estaacute conectado con queacute texto plano Ademaacutes un observador que analiza dos mensajes encriptados

usando el mismo algoritmo y la misma clave puacuteblica no puede distinguir sus textos cifrados

(Kowalczyk 2015)

Los cifrados asimeacutetricos son mucho maacutes lentos que los cifrados simeacutetricos (generalmente

mil veces maacutes lentos) Es una praacutectica comuacuten usar el cifrado de clave puacuteblica solo para establecer

la conexioacuten segura y negociar la nueva clave secreta que luego se utilizaraacute para proteger la

comunicacioacuten mediante cifrado simeacutetrico Ejemplos de este cifrado son

36

22141 DSA (Digital Signature Algorithm - Algoritmo de Firma digital) Es un estaacutendar

del Gobierno Federal de los Estados Unidos para firmas digitales Fue propuesto por el Instituto

Nacional de Estaacutendares y Tecnologiacutea (NIST) en agosto de 1991 para ser usado en su Estaacutendar de

Firma Digital (DSS) en el antildeo de 1993

La primera parte del algoritmo DSA es la generacioacuten de clave puacuteblica y clave privada que

puede describirse como

Se elige un nuacutemero primo q que se llama divisor primo

Se elige otro nuacutemero primo p de modo que pndash1 mod q = 0 p seraacute llamado moacutedulo

primo

Ahora se elige un nuacutemero entero g tal que 1 ltg ltp g q mod p = 1 g = h ((p

ndash 1) q) mod p q tambieacuten se llama moacutedulo de orden multiplicativo de g moacutedulo p

Se elige un nuacutemero entero tal que 0 ltx ltq

Se calcula y como g x mod p

Se empaqueta la clave puacuteblica como p q g y

Por uacuteltimo se empaqueta la clave privada como p q g x

La segunda parte del algoritmo DSA es la generacioacuten de firma y la verificacioacuten de firma

Para generar una firma de mensaje el remitente puede seguir estos pasos

Se genera el resumen del mensaje h utilizando un algoritmo hash como SHA1

Se genera un nuacutemero aleatorio k tal que 0 ltk ltq

37

Se calcula r como (g k mod p) mod q Si r = 0 seleccione una k diferente

Ahora se calcula i de modo que k i mod q = 1 i se llama el inverso multiplicativo modular

de k moacutedulo q

Se calcula s = i (h + r x) mod q Si s = 0 se selecciona una k diferente

Por uacuteltimo se empaqueta la firma digital como r s (Yang 2019)

22142 RSA Encriptacioacuten RSA encriptacioacuten Rivest-Shamir-Adleman tipo de

criptografiacutea de clave puacuteblica ampliamente utilizada para la encriptacioacuten de datos de correo

electroacutenico y otras transacciones digitales a traveacutes de Internet RSA lleva el nombre de sus

inventores Ronald L Rivest Adi Shamir y Leonard M Adleman quienes lo crearon mientras

trabajaban en la facultad del Instituto Tecnoloacutegico de Massachusetts (Simmons 2019)

En el sistema RSA un usuario elige de manera secreta un par de nuacutemeros primos p y q tan

grandes que factorizar el producto n = pq estaacute mucho maacutes allaacute de las capacidades informaacuteticas

proyectadas para la vida uacutetil de los cifrados A partir del antildeo 2000 los estaacutendares de seguridad del

gobierno de EE UU exigen que el moacutedulo tenga un tamantildeo de 1024 bits es decir p y q deben

tener un tamantildeo de aproximadamente 155 diacutegitos decimales por lo que n es aproximadamente un

nuacutemero de 310 diacutegitos Dado que los nuacutemeros duros maacutes grandes que actualmente se pueden

factorizar son solo la mitad de este tamantildeo y dado que la dificultad de factorizar se duplica

aproximadamente por cada tres diacutegitos adicionales en el moacutedulo se cree que los moacutedulos de 310

diacutegitos estaacuten a salvo de factorizar durante varias deacutecadas

38

2215 Cifrado hiacutebrido Es una teacutecnica comuacuten que combina diferentes funciones

criptograacuteficas como el cifrado de bloque Con el cifrado hiacutebrido se pueden cifrar datos firmarlos

o agregar un MAC y enviarlos en un objeto seguro (como una cadena o archivo) a traveacutes de un

canal de comunicacioacuten inseguro (sin un acuerdo clave entre dos partes)

En el sistema de cifrado hiacutebrido el texto plano (sin formato) se divide en tokens Luego

se calcula la longitud de cada ficha Los tokens y sus longitudes se almacenan en una matriz

Posteriormente se aplica el algoritmo Ceacutesar anidado sugerido El texto producido se almacena en

una matriz n x m llamada A Luego la transposicioacuten de esta matriz At se calcula utilizando

nuestra versioacuten revisada del cifrado de transposicioacuten para resolver el problema de secuenciacioacuten

A continuacioacuten el algoritmo RSA revisado se aplica en la matriz producida En el paso final se

aplica el formato de datos textuales usando el coacutedigo ASCII para producir el texto cifrado El

proceso de descifrado se realiza de la misma manera pero en orden inverso (Nahar amp Abu Abbas

2010)

23 Criptoanaacutelisis

El criptoanaacutelisis es el proceso de estudiar sistemas criptograacuteficos para buscar debilidades

o fugas de informacioacuten En general se considera que el criptoanaacutelisis explora las debilidades de

las matemaacuteticas subyacentes de un sistema criptograacutefico pero tambieacuten incluye la buacutesqueda de

debilidades en la implementacioacuten como ataques de canal lateral o entradas de entropiacutea deacutebiles

39

Su funcioacuten es la de conseguir obtener el significado de mensajes creados por medio de

criptografiacutea El objetivo principal del criptoanaacutelisis es opuesto al de la criptografiacutea Tiene como

finalidad encontrar la debilidad de las diferentes teacutecnicas criptograacuteficas para explotarla y de esta

manera reducir o eliminar la seguridad de la teacutecnica criptograacutefica Cualquier intento de

criptoanaacutelisis puede ser llamado ataque Una vez que un atacante logra romper la seguridad que

una teacutecnica criptograacutefica aportaba al sistema se dice que dicho sistema ha sido roto y por lo tanto

dicho ataque tuvo eacutexito

El criptoanaacutelisis es la investigacioacuten de sistemas texto cifrado y cifrados para revelar el

significado oculto o los detalles del sistema mismo El objetivo de este tipo de estudio es descubrir

los aspectos ocultos incluso si la clave o el algoritmo principal no se pueden descifrar Se necesita

una combinacioacuten exitosa de persistencia matemaacuteticas intuicioacuten curiosidad y una computadora

que funcione para hacer un buen criptoanalista Este tipo de ruptura de coacutedigo es extremadamente

importante especialmente en el mundo tecnoloacutegicamente dependiente de hoy El criptoanaacutelisis es

constantemente realizado por criptoacutegrafos que intentan obtener informacioacuten valiosa y por aquellos

que intentan descifrar el coacutedigo para revelar secretos (Security Degree Hub 2017)

24 Niveles de seguridad

Los niveles de seguridad de sistemas operativos son otorgados de acuerdo con el sistema

operativo que esteacute utilizando la empresa o institucioacuten ya sea puacuteblica privada gubernamental o no

gubernamental En el manual ldquoTrusted Computer System Evaluation Criteriardquo (United States

40

Government Department of Defense 1983) el Departamento de Defensa de los Estados Unidos

define los siguientes niveles

241 Nivel D1 Este nivel es el maacutes bajo de seguridad por lo tanto la norma establece que

el sistema no es confiable Esta divisioacuten contiene solo una clase Estaacute reservado para aquellos

sistemas que han sido evaluados pero que no cumplen con los requisitos para un nivel de

evaluacioacuten superior

242 Nivel C1 Un sistema de nivel C1 cumple nominalmente los requisitos de seguridad

discrecionales al proporcionar separacioacuten de usuarios y datos Incorpora alguna forma de controles

creiacutebles capaces de imponer limitaciones de acceso de manera individual es decir aparentemente

adecuados para permitir que los usuarios puedan proteger la informacioacuten privada o del proyecto y

evitar que otros usuarios lean o destruyan accidentalmente sus datos Se espera que el entorno de

nivel C1 sea uno de los usuarios cooperantes que procesan datos con el mismo nivel de

sensibilidad Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten

de nivel C1 son

Control de acceso discrecional por ejemplo listas de control de acceso (ACL)

usuario grupo

Por lo general para usuarios que estaacuten en el mismo nivel de seguridad

Proteccioacuten de nombre de usuario y contrasentildea y base de datos de autorizaciones

seguras (ADB)

Sistema operativo protegido y modo de operaciones del sistema

Comprobacioacuten perioacutedica de integridad de TCB

41

Mecanismos de seguridad probados sin derivaciones obvias

Documentacioacuten para la seguridad del usuario

Documentacioacuten para la seguridad de la administracioacuten de sistemas

Documentacioacuten para pruebas de seguridad

Documentacioacuten de disentildeo TCB

Tiacutepicamente para usuarios en el mismo nivel de seguridad

La certificacioacuten C1 es rara Los sistemas de ejemplo son versiones anteriores de

Unix IBM RACF

243 Nivel C2 Los sistemas de esta clase imponen un control de acceso discrecional maacutes

fino que los sistemas (C1) lo que hace que los usuarios sean individualmente responsables de sus

acciones a traveacutes de procedimientos de inicio de sesioacuten auditoriacutea de eventos relevantes para la

seguridad y aislamiento de recursos Los siguientes son requisitos miacutenimos para los sistemas

asignados a una clasificacioacuten de nivel C2

La proteccioacuten de objetos puede ser para un solo usuario Por ejemplo a traveacutes de

una base de datos ACL

La autorizacioacuten de acceso solo puede ser asignada por usuarios autorizados

Proteccioacuten de reutilizacioacuten de objetos (Por ejemplo para evitar la reasignacioacuten de

objetos eliminados de manera segura)

Procedimientos obligatorios de identificacioacuten y autorizacioacuten para los usuarios (Por

ejemplo Usuario Contrasentildea)

Auditoriacutea completa de eventos de seguridad (es decir fecha hora evento usuario

eacutexito falla ID de terminal)

42

Modo de operacioacuten del sistema protegido

Proteccioacuten adicional para la autorizacioacuten y los datos de auditoriacutea

Documentacioacuten como C1 maacutes informacioacuten sobre el examen de la informacioacuten de

auditoriacutea

Esta es una de las certificaciones maacutes comunes Los sistemas operativos de ejemplo

son VMS IBM OS 400 Windows NT Novell NetWare 411 Oracle 7 DG AOS

VS II

244 Nivel B1 Los sistemas de este nivel requieren todas las caracteriacutesticas requeridas

para el nivel C2 Ademaacutes debe estar presente una declaracioacuten informal del modelo de poliacutetica de

seguridad etiquetado de datos y control de acceso obligatorio sobre sujetos y objetos nombrados

La capacidad debe existir para etiquetar con precisioacuten la informacioacuten exportada Cualquier falla

identificada por la prueba debe ser eliminada Los siguientes son requisitos miacutenimos para los

sistemas asignados a una clasificacioacuten de nivel B1

Etiquetado obligatorio de seguridad y acceso de todos los objetos (Por ejemplo

archivos procesos dispositivos)

Comprobacioacuten de integridad de etiquetas (Por ejemplo mantenimiento de etiquetas

de sensibilidad cuando se exportan datos)

Auditoriacutea de objetos etiquetados

Control de acceso obligatorio para todas las operaciones

Capacidad para especificar el nivel de seguridad impreso en salida legible para

humanos (Por ejemplo impresoras)

43

Capacidad para especificar el nivel de seguridad en cualquier salida legible por

maacutequina

Auditoriacutea mejorada

Proteccioacuten mejorada del sistema operativo

Documentacioacuten mejorada

Los sistemas operativos de ejemplo son HP-UX BLS Cray Research Trusted

Unicos 80 Digital SEVMS Harris CS SX SGI Trusted IRIX

245 Nivel B2 En los sistemas de nivel B2 el TCB se basa en un modelo de poliacutetica de

seguridad formal claramente definido y documentado que requiere que la aplicacioacuten de control de

acceso discrecional y obligatoria que se encuentra en los sistemas de nivel B1 se extienda a todos

los sujetos y objetos en el sistema Ademaacutes se abordan los canales encubiertos El TCB debe

estructurarse cuidadosamente en elementos criacuteticos para la proteccioacuten y no criacuteticos para la

proteccioacuten La interfaz TCB estaacute bien definida y el disentildeo y la implementacioacuten TCB le permiten

someterse a pruebas maacutes exhaustivas y una revisioacuten maacutes completa Se fortalecen los mecanismos

de autenticacioacuten se proporciona una gestioacuten confiable de las instalaciones en forma de soporte

para las funciones de administrador y operador del sistema y se imponen estrictos controles de

gestioacuten de la configuracioacuten El sistema es relativamente resistente a la penetracioacuten Los siguientes

son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de nivel B2

Notificacioacuten de cambios en el nivel de seguridad que afectan a los usuarios

interactivos

Etiquetas de dispositivos jeraacuterquicos

44

Acceso obligatorio a todos los objetos y dispositivos

Comunicaciones de ruta confiables entre usuario y sistema

Rastreo de canales de almacenamiento encubiertos

Modo de operaciones del sistema maacutes estricto en unidades independientes de varios

niveles

Anaacutelisis de canales encubiertos

Pruebas de seguridad mejoradas

Modelos formales de TCB

Versioacuten actualizacioacuten y anaacutelisis y revisioacuten de parches

Los sistemas de ejemplo son Honeywell Multics Cryptek VSLAN Trusted

XENIX

246 Nivel B3 El TCB debe satisfacer los requisitos del monitor de referencia para mediar

todos los accesos de los sujetos a los objetos ser a prueba de manipulaciones y ser lo

suficientemente pequentildeo como para ser sometido a anaacutelisis y pruebas Con este fin el TCB estaacute

estructurado para excluir el coacutedigo que no es esencial para la aplicacioacuten de la poliacutetica de seguridad

con una importante ingenieriacutea del sistema durante el disentildeo y la implementacioacuten del TCB dirigido

a minimizar su complejidad Se admite un administrador de seguridad los mecanismos de

auditoriacutea se ampliacutean para sentildealar eventos relevantes para la seguridad y se requieren

procedimientos de recuperacioacuten del sistema El sistema es altamente resistente a la penetracioacuten

Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de clase

(B3)

45

ACL adicionalmente basadas en grupos e identificadores

Acceso de ruta confiable y autenticacioacuten

Anaacutelisis automaacutetico de seguridad

Modelos TCB maacutes formales

Auditoriacutea de eventos de auditoriacutea de seguridad

Recuperacioacuten confiable despueacutes de la caiacuteda del sistema y documentacioacuten relevante

Cero defectos de disentildeo en TCB y defectos miacutenimos de implementacioacuten

El uacutenico sistema operativo con certificacioacuten B3 es Getronics Wang Federal XTS-

300

247 Nivel A1 Los sistemas en el nivel A1 son funcionalmente equivalentes a los del nivel

B3 en que no se agregan caracteriacutesticas arquitectoacutenicas adicionales ni requisitos de poliacuteticas La

caracteriacutestica distintiva de los sistemas en este nivel es el anaacutelisis derivado de la especificacioacuten

formal del disentildeo y las teacutecnicas de verificacioacuten y el alto grado resultante de seguridad de que el

TCB se implementa correctamente Esta garantiacutea es de naturaleza de desarrollo comenzando con

un modelo formal de la poliacutetica de seguridad y una especificacioacuten formal de alto nivel del disentildeo

Independientemente del lenguaje de especificacioacuten particular o del sistema de verificacioacuten

utilizado existen los siguientes criterios importantes para la verificacioacuten del disentildeo de nivel A1

Meacutetodos formales y prueba de integridad de TCB

Estos son los uacutenicos sistemas con certificacioacuten A1 Boeing MLS LAN Gemini

Trusted Network Processor Honeywell SCOMP (United States Government

Department of Defense 1983)

46

25 Sistemas Operativos

Un sistema operativo actuacutea como intermediario entre el usuario de una computadora y el

hardware de la computadora El propoacutesito de un sistema operativo es proporcionar un entorno en

el que un usuario pueda ejecutar programas de manera conveniente y eficiente

Un sistema operativo es un software que administra el hardware de la computadora El

hardware debe proporcionar mecanismos apropiados para garantizar el correcto funcionamiento

del sistema informaacutetico y para evitar que los programas del usuario interfieran con el correcto

funcionamiento del sistema (Carretero Peacuterez de Miguel Anasagasti Garciacutea Carballeira amp Peacuterez

Costoya 2001)

Un sistema operativo es un programa que controla la ejecucioacuten de programas de aplicacioacuten

y actuacutea como una interfaz entre el usuario de una computadora y el hardware de la computadora

Una definicioacuten maacutes comuacuten es que el sistema operativo es el uacutenico programa que se ejecuta

en todo momento en la computadora (generalmente llamado kernel) y todo lo demaacutes son

programas de aplicacioacuten

Un sistema operativo se ocupa de la asignacioacuten de recursos y servicios como memoria

procesadores dispositivos e informacioacuten El sistema operativo incluye los programas para

administrar estos recursos como un controlador de traacutefico un programador un moacutedulo de

administracioacuten de memoria programas de E S y un sistema de archivos (Pawar 2016)

47

251 Windows Sistema operativo de la empresa Microsoft es un conjunto de programas

que administra los recursos de una computadora Windows empieza a trabajar cuando se enciende

o inicializa el equipo para gestionar el hardware empezando desde los niveles maacutes baacutesicos

Es importante conocer que los sistemas operativos funcionan tanto en las computadoras

como en diferentes dispositivos electroacutenicos que usan microprocesadores En este caso Windows

su versioacuten estaacutendar funciona con computadoras Microsoft domina el mercado de los sistemas

operativos debido a su comodidad se puede decir que eacuteste sistema operativo se encuentra

instalado en el 887 de los equipos de coacutemputo que cuentan con acceso a Internet en todo el

mundo

Se pueden mencionar algunas aplicaciones principales (que eacutestas tambieacuten pueden ser

desinstaladas por los usuarios o actualizadas sin que el sistema operativo se dantildee o deje de

funcionar) se encuentran el procesador de texto WordPad el navegador Internet Explorer el

reproductor multimedia Windows Media y el editor de imaacutegenes Paint

La principal novedad que aportoacute Windows desde sus oriacutegenes fue la facilidad para usarlo

y el atractivo visual De hecho su nombre (ldquoventanasrdquo) se debe a la forma en que el sistema

presenta a los usuarios los recursos con los que cuenta su computadora lo que facilita las tareas

cotidianas Windows tambieacuten suele recibir varias criacuteticas por sus problemas de seguridad y por

otros fallos

48

252 Registro de Windows El registro es una base de datos jeraacuterquica que contiene datos

que son criacuteticos para el funcionamiento de Windows y las aplicaciones y servicios que se ejecutan

en Windows Los datos estaacuten estructurados en un formato de aacuterbol Cada nodo en el aacuterbol se llama

clave Cada clave puede contener subclaves y entradas de datos llamadas valores A veces la

presencia de una clave es el uacutenico dato que requiere una aplicacioacuten otras veces una aplicacioacuten

abre una clave y usa los valores asociados con la clave (Microsoft Inc 2019) Una clave puede

tener cualquier nuacutemero de valores y los valores pueden tener cualquier forma El registro es

utilizado por

Autenticacioacuten

Nuacutecleo (Kernel)

Controladores de dispositivos

Servicios

SAM

Las carpetas del sistema se almacenaraacuten en distintas rutas de acceso dependiendo de la

versioacuten de Windows con la que se esteacute trabajando a continuacioacuten cuatro de los cinco archivos

que maacutes interesan a esta investigacioacuten se encuentran en la siguiente ubicacioacuten SystemRoot

System32 Config dentro de las siguientes sub llaves

SAM - HKEY LOCAL MACHINE SAM

SECURITY - HKEY LOCAL MACHINE SECURITY

SOFTWARE - HKEY LOCAL MACHINE SOFTWARE

SYSTEM - HKEY LOCAL MACHINE SYSTEM

49

253 Administrador de cuentas de seguridad El administrador de cuentas de seguridad

(SAM por sus siglas en ingleacutes) es una base de datos en donde se encuentran las cuentas de

seguridad Esto es utilizado por Windows para administrar las cuentas de usuario y contrasentildeas en

el formato hash

Las contrasentildeas nunca se almacenan en formato de texto claro Se almacenan en formato

de hash para protegerlas de los ataques La base de datos SAM se implementa como un archivo de

registro y las obtiene del kernel de Windows y mantiene un bloqueo exclusivo al archivo SAM

esto quiere decir que el archivo tiene cierta medida de seguridad para el almacenamiento de las

contrasentildeas (Hernandez 2013)

No es posible copiar el archivo SAM a otra ubicacioacuten en el caso de los ataques en liacutenea

Dado que el archivo SAM estaacute bloqueado con un bloqueo exclusivo al sistema de archivos no

puede ser copiado o movido mientras se ejecuta Windows El bloqueo no iniciaraacute hasta que la

excepcioacuten de la pantalla azul haya sido inicializada o el sistema operativo haya sido apagado Sin

embargo los archivos en formato hash de contrasentildeas fuera de liacutenea estaacuten disponibles para los

ataques de fuerza bruta el contenido del archivo SAM puede ser copiado o descargado utilizando

diversas teacutecnicas

Un identificador de seguridad (SID) es un valor uacutenico de longitud variable utilizado para

identificar a un usuario Cada cuenta tiene un SID uacutenico emitido por una autoridad como un

controlador de dominio de Windows y almacenado en una base de datos de seguridad Cada vez

50

que un usuario inicia sesioacuten el sistema recupera el SID para ese usuario de la base de datos y lo

coloca en el token de acceso para ese usuario El sistema usa el SID en el token de acceso para

identificar al usuario en todas las interacciones posteriores con la seguridad de Windows Cuando

se ha usado un SID como identificador uacutenico para un usuario o grupo no se puede volver a usar

para identificar a otro usuario o grupo

La seguridad de Windows usa SID en los siguientes elementos de seguridad

En descriptores de seguridad para identificar al propietario de un objeto y grupo

primario

En las entradas de control de acceso para identificar al usuario para quien el acceso

estaacute permitido denegado o auditado

En tokens de acceso para identificar al usuario y los grupos a los que pertenece

2531 Identificador de Seguridad (SID Security Identifier)

S - 1 - 5 - 21 - 3983109318 - 554656936 - 3066752241 - 1000

S - indica que es un string de SID

1 - el nivel de revisioacuten

5 - el identificador de valor de autoridad o authority value no siempre seraacute 5 Entre otros

valores que se pueden encontrar estaacuten los siguientes

51

0 - sin autoridad

1 - autoridad global

2 - autoridad local

3 - autoridad de creador

4 - autoridad no uacutenica

5 - autoridad NT

9 - autoridad de administrador de recursos

21 - 3983109318 - 554656936 - 3066752241 - es el dominio en el que se encuentra el

sistema o el identificador local de la computadora

1000 - ID uacutenico para cada cuenta aquiacute se encuentra el RID (Relative Identifier) Nuacutemero

de longitud variable cualquier grupo o usuario que se cree de manera diferente a la predeterminada

recibiraacute un RID de 1000 o superior En el caso de que el valor sea 500 responde a que este SID

representa la cuenta de un administrador el valor de 500 siempre seraacute el mismo en cualquier cuenta

de administrador a su vez el valor 501 representa el SID de una cuenta Invitado (Guest)

(Hernandez 2013)

254 Autenticacioacuten NTML NTLM (NT LAN Manager) es un protocolo empleado por

muchos productos de Microsoft para realizar la autenticacioacuten desafiacuteorespuesta por lo tanto es el

esquema de autenticacioacuten que por defecto usa Firewall de Microsoft y tambieacuten los productos del

servidor proxy

52

Este software fue desarrollado para afrontar el problema del trabajo con Tecnologiacuteas Java

en un entorno orientado a Microsoft Puesto que no se basa en ninguna especificacioacuten oficial de

protocolo por lo tanto no hay garantiacutea de que funciona correctamente en todos los casos Tambieacuten

ha estado en algunas instalaciones de Windows donde funcionoacute con eacutexito

La Autenticacioacuten NTLM se compone de dos protocolos protocolo de autenticacioacuten NTLM

y protocolo de autenticacioacuten LM Estos protocolos utilizan una metodologiacutea de hash diferente para

almacenar contrasentildeas de los usuarios en la base de datos SAM (Hernandez 2013) (Meneacutendez-

Barzanallana 17)

26 LINUX (ROCKS)

Rocks es una distribucioacuten para cluacutester de Linux de coacutedigo abierto que permite a los usuarios

finales construir de manera maacutes amigable cluacutesteres computacionales y muros de visualizacioacuten en

mosaico Cientos de investigadores de todo el mundo han utilizado Rocks para implementar su

propio cluacutester

Desde mayo de 2000 el grupo Rocks ha abordado las dificultades de implementar cluacutesteres

manejables Encaminados hacia un objetivo crear cluacutesters de manera maacutes sencilla Por sencilla

significa faacutecil de implementar administrar actualizar y escalar Este objetivo impulsa a los

creadores de esta herramienta a ayudar a entregar el poder computacional de los cluacutesteres a una

amplia gama de usuarios cientiacuteficos Estaacute claro que poner a disposicioacuten de una amplia gama de

53

cientiacuteficos plataformas de computacioacuten paralelas estables y manejables ayudaraacute enormemente a

mejorar el estado del arte en herramientas paralelas (Rocksclusters 2010)

261 Escritorio De todos los escritorios disponibles para el sistema operativo Linux

GNOME ha logrado convertirse en el maacutes eficiente estable y confiable sin dejar de ser sencillo

de usar De hecho la mayoriacutea de los usuarios independientemente de su experiencia pueden

trabajar con GNOME casi sin esfuerzo

Los usuarios que son nuevos tanto en Linux como en GNOME hariacutean mejor en conocer

los entresijos del escritorio que hacen que Linux no solo sea faacutecil sino tambieacuten divertido

Un entorno de escritorio agrupa programas que trabajan juntos para formar un espacio de

trabajo informaacutetico cohesivo unificado transparente e interactivo para los usuarios O para

decirlo de manera maacutes simple el entorno de escritorio es la interfaz de usuario para el sistema

operativo En el caso de GNOME ese sistema operativo es Linux Sin un entorno de escritorio su

uacutenica alternativa es una sesioacuten de Shell (liacutenea de comandos) basada en texto (Wallen 2019)

262 Paquete de Oficina Una suite ofimaacutetica es una coleccioacuten de software creada por el

mismo proveedor y disentildeada para ser utilizada para tareas rutinarias dentro de una organizacioacuten

Por lo general una suite ofimaacutetica incluye aplicaciones como procesamiento de texto hojas de

caacutelculo presentacioacuten correo electroacutenico toma de notas base de datos colaboracioacuten y otros tipos

de software relacionados En la mayoriacutea de los casos cada aplicacioacuten en la suite ofimaacutetica se puede

instalar por separado y todas las aplicaciones dentro de la suite admiten la interoperabilidad entre

54

siacute Microsoft Office Suite Lotus Live Notes y LibreOffice son todas suites de oficina de uso

comuacuten

263 Organizador de archivos Es una funcioacuten avanzada disentildeada para agrupar y

renombrar archivos usando sus atributos del sistema o meta atributos

Cada archivo tiene atributos del sistema como la fecha (Acceso Creado y Modificado) el

tipo de archivo (definido por extensioacuten) y asociado con la aplicacioacuten registrada de ese tipo de

archivo Estos atributos se pueden usar para generar un nuevo nombre de archivo o carpeta (grupo)

para cada archivo con el mismo atributo Ademaacutes de los atributos del sistema algunos archivos

en su mayoriacutea medios o imaacutegenes pueden contener metacampos como el nombre del artista el

tiacutetulo el nombre del aacutelbum y otros El Organizador de archivos tambieacuten usa estos metacampos

para agrupar archivos en una carpeta con el mismo atributo Por lo tanto el organizador de archivos

opera reglas de organizacioacuten de archivos que definen la jerarquiacutea de agrupacioacuten de carpetas y las

reglas de cambio de nombre de archivos

Asiacute como el conocido ldquoexplorador de Windowsrdquo Linux integra un organizador de archivos

y carpetas llamado NAUTILUS para realizar tareas de manejo de archivos como mover copiar

renombrar crear carpetas y de esta manera administrar nuestros dispositivos de almacenamiento

55

27 Agrupamiento (Cluacutester) de Computadoras

El agrupamiento (cluacutester) de computadoras estaacute conformado por una coleccioacuten de

computadoras autoacutenomas interconectadas trabajando unidas como un solo recurso de computacioacuten

integrado El concepto de agrupamiento de computadoras nacioacute cuando los pioneros de la

supercomputacioacuten intentaban difundir diferentes procesos entre varias computadoras para luego

poder recoger los resultados que dichos procesos debiacutean producir Con un hardware maacutes barato y

faacutecil de conseguir se pudo perfilar que podriacutean conseguirse resultados muy parecidos a los

obtenidos con aquellas maacutequinas mucho maacutes costosas (Chirinov 2003)

Un agrupamiento de computadoras se puede definir como el trabajo realizado por dos o

maacutes computadoras que en conjunto se encargan de proveer una determinada solucioacuten Tiene como

finalidad agrupar el poder de coacutemputo de los nodos implicados para proporcionar una mayor

escalabilidad disponibilidad y fiabilidad (Branch Bedoya amp Mesa Muacutenera 2008)

La escalabilidad es la capacidad de un equipo para hacer frente a voluacutemenes de trabajo

cada vez mayores sin por ello dejar de prestar un nivel de rendimiento aceptable

La disponibilidad y la fiabilidad se encuentran bastante relacionadas aunque difieren

ligeramente en algunos aspectos La disponibilidad es la calidad de estar presente y listo para su

uso mientras que la fiabilidad es la probabilidad de un correcto funcionamiento

56

Entre los tipos de agrupamiento maacutes comunes se pueden encontrar de alta disponibilidad

(ambiente a prueba de fallas) coacutemputo de alto desempentildeo (los procesos o las tareas dadas se

presentan como un solo sistema virtual) y escalamiento horizontal (se utiliza para proporcionar

una sola interfaz a un conjunto de recursos que pueden aumentar o disminuir arbitrariamente su

tamantildeo en un cierto periodo de tiempo) (Gonzaacutelez Ramiacuterez amp Rodriacuteguez Saacutenchez 2008)

271 Beowulf Es una clase de computadora masivamente paralela de altas prestaciones

principalmente construida a base de agrupamiento de componentes hardware estaacutendar (Llorens amp

Pentildea 2002) Consta de un conjunto de nodos minimalistas unidos por un medio de

comunicaciones econoacutemico Esto quiere decir que tienen lo miacutenimo para ejecutar su funcioacuten de

hecho los nodos por siacute solos no son capaces de ejecutar siquiera un sistema operativo (Nievas

Pino amp Arroyo) Se puede ver como una supercomputadora paralela construida con hardware

comercial de faacutecil adquisicioacuten que posee como sistema operativo Linux Los cluacutesters Beowulf son

extremadamente poderosos pero no son para todas las personas Su principal desventaja es que

requieren software disentildeado para poder aprovechar los recursos del cluacutester (Lizaacuterraga 2002)

272 Mosix Seguacuten Peacuterez (2001) la arquitectura Mosix estaacute basada en la misma ideologiacutea

de la arquitectura Beowulf Se basa en un conjunto de parches aplicados al nuacutecleo (kernel) de Linux

y que asignan a todo el grupo de nodos un espacio de direcciones y de procesos comuacuten gracias al

cual los procesos migran de uno a otro con el fin de equilibrar favorablemente la carga del sistema

global Es una herramienta disentildeada para realizar balanceo de carga en el agrupamiento de forma

totalmente transparente de manera tal que los nodos se comportan como una sola maacutequina y asiacute

incrementar el aprovechamiento de cada uno de los nodos (Chaacutevez y otros 1999) La principal

57

ventaja de Mosix frente a Beowulf se basa precisamente en esto Mosix da mejores respuestas que

Beowulf frente a la caiacuteda o insercioacuten de nodos A parte de esto Mosix permite un cambio constante

de aplicacioacuten o incluso el correr aplicaciones independientes de forma simultaacutenea

273 OpenMosix OpenMosix es una extensioacuten del proyecto Mosix Seguacuten Chirinov

(2003) la idea de este modelo es que la distribucioacuten de tareas en el cluacutester la determina OpenMosix

de forma dinaacutemica conforme se van creando tareas Cuando un nodo estaacute demasiado cargado las

tareas que se estaacuten ejecutando pueden migrar a cualquier otro nodo del cluacutester Asiacute desde que se

ejecuta una tarea hasta que eacutesta muere podraacute migrar de un nodo a otro sin que el proceso sufra

mayores cambios

Ademaacutes OpenMosix funciona a nivel de kernel por tanto puede conseguir toda la

informacioacuten que necesite para decidir que tanto estaacute cargado un sistema y queacute pasos se deben

seguir para aumentar el rendimiento ademaacutes puede realizar maacutes funciones que cualquier

aplicacioacuten a nivel de usuario

Despueacutes de elegir el tipo de cluacutester a utilizar se procede a elegir los elementos baacutesicos que

se emplearaacuten para implementar el cluacutester capacidad de procesamiento memoria espacio del disco

de cada nodo asiacute como tambieacuten el ancho de banda de la comunicacioacuten entre los nodos Se deberaacute

decidir cuaacuteles son importantes basaacutendose en la variedad de aplicaciones que se piensen ejecutar

en el cluacutester y de la cantidad de dinero que se disponga para construirlo

58

Bajo estos mismos paraacutemetros se debe escoger tambieacuten el tipo de red que interconectaraacute

los nodos (Turner 2004)

Luego se debe escoger el sistema operativo a utilizar Esta eleccioacuten dependeraacute mucho de

la maacutequina que se escoja Linux es siempre una opcioacuten en cualquier maacutequina y es la eleccioacuten maacutes

comuacuten Muchas de las herramientas necesarias para la implementacioacuten de un cluacutester han sido

desarrolladas bajo Linux Pero existen cluacutesters corriendo bajo Windows NT UNIX Solaris y AIX

59

Capiacutetulo 3 Implementacioacuten de Cluacutester

31 Requisitos previos

Antes de iniciar la instalacioacuten del FrontEnd es necesario asegurarse que las conexiones de

red de los equipos junto con la configuracioacuten de la BIOS de cada uno sean las correctas

311 Conexioacuten de los equipos y acceso a la red

Un cluacutester de alto desempentildeo funciona como un uacutenico equipo el cuaacutel comparte los recursos

de los nodos esclavos con el nodo maestro para ello es esencial la existencia de una red interna de

alta velocidad por medio de la cual se realice la comunicacioacuten entre el nodo maestro y los nodos

esclavos como se muestra en la Figura 31 El nodo maestro necesitaraacute 2 tarjetas de red de alta

Figura 31 Esquema tiacutepico de configuracioacuten de un cluacutester (Fuente Elaboracioacuten propia)

60

velocidad una para la comunicacioacuten interna y otra para la comunicacioacuten con redes externas El

sistema operativo Rocks asigna automaacuteticamente la interface ldquoeth0rdquo a la red interna del cluacutester y

la interface ldquoeth1rdquo a la red externa En caso de que Rocks sea incapaz de determinar cuaacutel es la red

externa debido a la falta de conexioacuten a internet estas podriacutean ser asignadas de manera incorrecta

por tal motivo se sugiere asegurar el nombre de cada una de las interfaces

Dado que Rocks no permite volverlas a asignar una vez finalizada la instalacioacuten es

necesario volver a reinstalarlo para poder solucionar este inconveniente

312 Configuracioacuten de la BIOS Para evitar problemas durante la instalacioacuten conviene

configurar correctamente la Bios

3121 ATAIDE Mode Algunos sistemas operativos puede que no sean capaces de

reconocer el controlador del disco duro como es en el caso de esta distribucioacuten de Rocks usada

Para evitar complicaciones de tener que antildeadir el controlador a mano lo mejor es habilitar el modo

ldquoLegacyrdquo de controlador de disco duro

61

Para ello se accede a la Bios pulsando F2 al encender el equipo se situacutea en la pestantildea

ldquoAdvancedrdquo y se selecciona ldquoDrive Configurationrdquo como se muestra en la Figura 32

Figura 32 Imagen del Bios del equipo en la opcioacuten ldquodrive configurationrdquo (Fuente Elaboracioacuten propia)

Figura 33 Bios ATAIDE Legacy Mode (Fuente Elaboracioacuten propia)

62

Dentro del menuacute se tiene que seleccionar el Modo ldquoLegacyrdquo en la opcioacuten ldquoATAIDE

Moderdquo como se muestra en la Figura 33 y para salir se guardan los cambios con F10

3122 PXE Al momento de instalar un nodo puede ocurrir falla al arrancar y aparecer

bootsplash (Reboot and Select proper device) Para evitarlo es necesario habilitar la opcioacuten de

PXE para que tome los archivos de instalacioacuten del nodo maestro a traveacutes de la red interna

En la Bios se selecciona la pestantildea ldquoBootrdquo y dentro de ese mismo menuacute se deshabilita

ldquoSilent bootrdquo y se habilita la opcioacuten de ldquoPXE boot to lanrdquo como se muestra en la Figura 34

Finalmente hay que verificar que en la secuencia de arranque (Figura 35) como primer

dispositivo sea desde red para que de esta manera inicie desde el PXE

Figura 34 Bios Boot PXE (Fuente Elaboracioacuten propia)

63

Se guardan los cambios antes de salir

32 Instalacioacuten de Sistema Operativo Rocks

Una vez configurados los equipos se enciende el equipo que seraacute el nodo maestro

(FrontEnd) en el cuaacutel previamente se ha modificado la secuencia de inicio del boot desde la Bios

de modo que al insertar el CD de Rocks eacuteste procederaacute a iniciar la instalacioacuten con la siguiente

pantalla que se muestra a continuacioacuten

Figura 35 Bios Boot device prioriry (Fuente Elaboracioacuten propia)

64

Para iniciar la instalacioacuten uacutenicamente se selecciona la opcioacuten ldquoInstall CentOS 7rdquo como se

muestra en la Figura 36 dando asiacute comienzo al proceso de instalacioacuten Tras finalizar un proceso

de carga en memoria Rocks mostraraacute un formulario en entorno graacutefico mediante el cual

procederemos a configurar el FrontEnd

Esta primera pantalla se muestra coacutemo se desea realizar la instalacioacuten puede realizarse

por medio de la descarga del sistema operativo (se requiere internet) En este caso como se muestra

en la Figura 37 dado que previamente se descargoacute el DVD completo se seleccionoacute ldquoCDDVD

based rollsrdquo

Figura 36 Pantalla de Inicio de instalacioacuten de Rocks (Fuente Elaboracioacuten propia)

65

A continuacioacuten Figura 38 se selecciona de la lista de Rolls aquellos que se desean instalar

Figura 37 Pantalla de seleccioacuten de Rolls (Fuente Elaboracioacuten propia)

Figura 38 Listado de opciones de rolls para instalar (Fuente Elaboracioacuten propia)

66

Tras presionar el botoacuten ldquoSubmitrdquo la siguiente pantalla (Figura 39) muestra formulario en

el que hay que indicar la informacioacuten baacutesica del cluacutester entre las cuales aparecen

Fully-Qualified Host Name Nombre con el que se conoceraacute en la red externa el cluacutester

Cluster Name Nombre utilizado para ser identificado dentro de las herramientas del cluacutester

Certificate Organization Locality State and Country Organizacioacuten a la que pertenece el

cluacutester la localidad el estado y la ciudad

Contact URL and LattitudeLongitude Contacto direccioacuten web y posicioacuten GPS

Figura 39 Informacioacuten baacutesica del cluacutester a instalar (Fuente Elaboracioacuten propia)

67

Una vez que se ingresa la informacioacuten al cluacutester se presiona el botoacuten ldquoListordquo y

posteriormente se podraacute cambiar la configuracioacuten baacutesica de la red interna del cluacutester En este caso

Figura 310 se dejoacute el valor por defecto una IP de clase B (1011116)

El siguiente paso es la configuracioacuten de la red externa (para tener acceso a internet) En

este punto se introducen los datos de la red externa a la que se encuentra conectado el nodo

maestro como se muestra en la Figura 311

Figura 310 Configuracioacuten Ethernet de la red privada (Fuente Elaboracioacuten propia)

Figura 311 Configuracioacuten Ethernet de la red puacuteblica (Fuente Elaboracioacuten propia)

68

Para terminar de configurar la red externa como se muestra en la Figura 312 se ingresa la

direccioacuten IP del Gateway y los DNS (Servidor de nombre de dominio) que va a usar para el acceso

a internet

Se continuacutea con el resto del formulario donde se introduce la contrasentildea para el usuario

root tal y como se muestran en la Figura 313

Figura 312 Configuracioacuten de DNS y Gateway (Fuente Elaboracioacuten propia)

Figura 313 Ingresar contrasentildea de usuario root (Fuente Elaboracioacuten propia)

69

Paso siguiente se procede a seleccionar la zona horaria como se muestra en la Figura 314

donde se encuentra ubicado el cluacutester asiacute como un servidor de donde podraacute obtener la zona horaria

automaacuteticamente en este caso se dejoacute el valor por default

En el formulario de la Figura 315 se selecciona la forma de particionar el disco duro

(automaacutetica manual) una vez seleccionado daraacute comienzo al proceso de instalacioacuten de manera

Figura 314 Configuracioacuten horaria (Fuente Elaboracioacuten propia)

Figura 315 Particiones del disco duro (Fuente Elaboracioacuten propia)

70

desatendida Cuando ha concluido la instalacioacuten el equipo se reiniciaraacute y se requeriraacute iniciar con

el usuario root y la contrasentildea establecida previamente

321 Configuracioacuten del teclado Debido a que el teclado por defecto estaacute en idioma

ingleacutes podriacutea provocar problemas al momento de escribir la contrasentildea u otros comandos

Seguacuten las pruebas realizadas aunque se cambie la configuracioacuten del teclado desde el menuacute

de preferencias uacutenicamente se mantiene dentro de la sesioacuten desde la que se ha cambiado dicha

opcioacuten (lo cual implica que la contrasentildea de usuario hay que introducirla seguacuten la distribucioacuten

inglesa)

33 Instalacioacuten de los nodos

Previo a la instalacioacuten de los nodos esclavos cada uno de los equipos fueron configurados

desde la Bios para que arranquen desde la red (seccioacuten 3122) Para ir antildeadiendo los nodos solo

se tiene que introducir el siguiente comando desde nuestro FrontEnd

$insert-ethers

A continuacioacuten como se muestra en la Figura 316 apareceraacute una ventana en la pantalla

en la cual se seleccionaraacute la opcioacuten ldquoComputerdquo

71

Una vez realizado este paso se procede a encender los equipos que funcionaraacuten como

nodos esclavos uno a uno

Se sugiere esperar a que cada nuevo equipo encendido esteacute marcado con un asterisco antes

de proceder a encender el siguiente como se muestra en la Figura 317 De esta manera se asegura

que cada nuevo nodo antildeadido posea el nombre y numeracioacuten deseada

Figura 316 Pantalla para ingresar nodos (Fuente Elaboracioacuten propia)

Figura 317 Indicador de insercioacuten de nuevos nodos (Fuente Elaboracioacuten propia)

72

Puede darse el caso de que un nodo no sea detectado automaacuteticamente eso indica que se

ha omitido alguacuten paso o parte de la configuracioacuten realizada hasta el momento es incorrecta En ese

caso comprobar lo siguiente

Que el nodo esclavo este correctamente conectado a la red interna

Que el FrontEnd (nodo maestro) tenga correctamente configurada la red interna y externa

Que el PXE esteacute habilitado en la Bios del nodo esclavo

331 Administracioacuten de nodos Algunos de los comandos maacutes uacutetiles para para la gestioacuten

de los nodos son los siguientes

Eliminar un nodo de la lista

Reinstalar un nodo

Listar los nodos ya instalados

Acceder a un nodo

$rocks remove host nombre_nodo

$rocks remove host nombre_nodo

$rocks set host boot nombre_nodo action=install

$rocks set host boot nombre_nodo action=install

$rocks list host

$rocks list host

$ssh nombre_nodo

$ssh nombre_nodo

73

Ejecutar un comando de manera remota a un nodo

332 Creacioacuten de cuentas de usuario Para agregar a un usuario hay que realizar los

siguientes pasos

1 Creacioacuten de la cuenta

$useradd nombre_usuario

2 Asignacioacuten de una contrasentildea

$passwd nombre_usuario

3 Sincronizacioacuten de la cuenta de usuario con el resto de nodos

$rocks-user-sync

333 Configuracioacuten del directorio compartido El directorio share es compartido por el

FrontEnd y el resto de nodos se localiza dentro del FrontEnd en la carpeta exports siendo la

carpeta share un enlace simboacutelico a esta uacuteltima

Al principio es posible que no se sincronicen correctamente los archivos introducidos en el

directorio debido a que la carpeta inicialmente estaacute vaciacutea por lo que para solucionar este

inconveniente puede usarse el comando siguiente para reiniciar dicho servicio

$ssh nombre_nodo lsquocomandorsquo

$ssh nombre_nodo lsquocomandorsquo

$cd

$export fs ndashrv

service nfs restart

$cd

$export fs ndashrv

service nfs restart

74

34 Operaciones baacutesicas de Rocks

Comandos y aplicaciones esenciales para el manejo del cluacutester

Ver que rolls estaacuten instalados

$rocks list roll

Visualizar el estado del sistema Figura 318

$qstat ndashf

Probar el sistema de colas para distribuir tareas a los nodos

Para ello se prueba que el SGE del cluacutester funcione enviaacutendole una serie de trabajos

mediante el comando qsub

En primer lugar se crea un fichero (pruebapl) que tenga permisos de ejecucioacuten con el

siguiente contenido

Figura 318 Comando qstat ndashf (Fuente Elaboracioacuten propia)

75

usrbinperl

for(my $i=0$ilt30$i++) sleep(2) print okn

Y se ejecuta con el siguiente comando

$ for ((i=1ilt=10i+=1)) do qsub pruebapl done

Al ejecutarse se puede comprobar que los trabajos se han mandado Figura 319

Y al realizar de nuevo un ldquoqstat ndashfrdquo Figura 320 se observa coacutemo se van realizando

Figura 319 Enviacuteo de trabajos por medio del comando qsub (Fuente Elaboracioacuten propia)

Figura 320 Estado de los trabajos pendientes mostrados por qstat ndashf (Fuente Elaboracioacuten propia)

76

Para ver la carga de trabajo en el cluacutester de manera global y de forma graacutefica se tiene que

ingresar en un navegador web en la siguiente direccioacuten httplocalhostganglia apareceraacute la

Figura 321

Figura 321 Visualizacioacuten de la distribucioacuten de cargas en el cluacutester usando la herramienta Ganglia (Fuente Elaboracioacuten propia)

77

Capiacutetulo 4 Metodologiacutea y Resultados

Una vez finalizada la instalacioacuten y puesta en operacioacuten del equipo se analizaron diferentes

metodologiacuteas de trabajo lo que implicoacute un trabajo arduo debido a que existen complicaciones

cuando se buscan temas relacionados a vulnerar sistemas operativos La realizacioacuten de este

proyecto estaacute basado en la metodologiacutea de Joshua Picolet ldquoCracking Methodologyrdquo (Picolet

2017)

41 Obtener Archivo hash

Se pueden vulnerar contrasentildeas de Windows de diferentes maneras Una de ellas es

mediante el acceso al archivo del Administrador de cuentas de seguridad (SAM) el cual se detalla

en el apartado 253 a traveacutes de la obtencioacuten de las contrasentildeas del sistema en su forma hash por

medio de herramientas diferentes Alternativamente las contrasentildeas se pueden leer desde la

memoria lo que tiene el beneficio adicional de recuperar las contrasentildeas en texto plano y evitar el

requisito de descifrado Para comprender los formatos que se observan cuando se descarguen

hashes del sistema de Windows se requiere una breve descripcioacuten de los diferentes formatos de

almacenamiento

Originalmente las contrasentildeas de Windows de menos de 15 caracteres se almacenaban en

el formato hash de Lan Manager (LM) Algunos sistemas operativos como Windows 2000 XP y

Server 2003 continuacutean usando estos hashes a menos que esteacuten deshabilitados por el usuario

Ocasionalmente un sistema operativo como Windows Vista puede almacenar el hash LM para la

compatibilidad con otros sistemas Seguacuten analistas incluye varias vulnerabilidades como dividir

78

la contrasentildea en dos bloques y permitir que cada uno se descifre de forma independiente Mediante

el uso de tablas Rainbow es trivial descifrar una contrasentildea almacenada en un hash LM

independientemente de la complejidad Este hash se almacena con la misma contrasentildea calculada

en el formato de hash NT como el que se muestra en el siguiente ejemplo

Ejemplo de un hash NTLM con el componente LM y NT

Administrator500611D6F6E763B902934544489FCC9192BB71ED1E7F2B60ED5A2

EDD28379D45C91

Los sistemas operativos Windows maacutes recientes como el Windows 8 y 10 usan el hash NT

En teacuterminos simples no hay una debilidad significativa en este hash que lo diferencie de cualquier

otra funcioacuten hash criptograacutefica Se requieren meacutetodos de descifrado como lo es la fuerza bruta o

ataque de diccionario para recuperar la contrasentildea si uacutenicamente se almacena en el formato NT

Ejemplo de un hash NTLM uacutenicamente con el componente NT (como se ve en los sistemas

Windows mas recientes

Administrator500NOPASSWORDEC054D40119570A4663

4350291AF0F72

Es importante sentildealar que la cadena NO PASSWORD es variable seguacuten la herramienta

que se utilice Otras pueden presentar esta informacioacuten como ceros rellenos o comuacutenmente puede

79

ver la cadena ldquoAAD3B435B51404EEAAD3B435B51404EErdquo en lugar de ninguna contrasentildea

Esto significa que el hash LM estaacute vaciacuteo y no estaacute almacenado

El archivo hash se encuentran en el directorio ldquoWindows System32 configrdquo y se

necesitan ambos archivos SAM y SYSTEM Ademaacutes tambieacuten se encuentran en el archivo de

registro HKEY_LOCAL_MACHINE SAM al que no se puede acceder durante el tiempo de

ejecucioacuten Finalmente las copias de seguridad se pueden encontrar a menudo en ldquoWindows

Repairrdquo (Peleus 2019)

Para extraer el archivo hash de un sistema operativo con un nivel de seguridad C1 existen

diferentes meacutetodos en esta ocasioacuten se procederaacute a iniciar el equipo objetivo con una distribucioacuten

de Linux desde una memoria USB como se muestra en la figura 41 para de esta manera ingresar

al directorio CWINDOWSSystem32Config directorio de ubicacioacuten de los archivos SAM y

SYSTEM que son los necesarios para obtener el archivo hash (Caballero 2018)

Figura 41 Arranque con LiveUSB KaliLinux (Fuente Elaboracioacuten propia)

80

42 Dar Formato al Hash

En este punto es donde se tiene que identificar el algoritmo con el que fueron encriptados

los archivos SAM y SYSTEM que se han obtenido en el punto anterior con la finalidad de

seleccionar el tratamiento que se les daraacute El algoritmo de encriptacioacuten del archivo SAM de

Windows 10 es NTLM y ademaacutes estaacute almacenado en un formato binario (ByteBleeder 2017) por

lo que fue necesario instalar la herramienta con licencia GNU samdump2 para obtener la syskey y

de esta manera poder extraer los hash desde el archivo SAM de Windows

En la figura 42 se han obtenido los hashes del archivo SAM donde se puede observar que

los usuarios Administrador e Invitado estaacuten deshabilitados ademaacutes de que existen tres cuentas de

usuario activas las cuales son Gad prueba y usuarioprueba cada una con su contrasentildea cifrada

en formato NTLM a la derecha del nombre de usuario la cuenta usuarioprueba fue a la que se le

realizoacute el anaacutelisis que se detalla posteriormente

43 Evaluar la fuerza del Hash

En criptografiacutea se dice que un algoritmo criptograacutefico se rompe si por alguacuten meacutetodo se

consigue reducir su fortaleza es decir reducir por ejemplo su entropiacutea de los 2256 bits teoacutericos a

Figura 42 Resultado de la ejecucioacuten de la herramienta samdump2 (Fuente Elaboracioacuten propia)

81

tan soacutelo 2255 por ejemplo El hecho de que se encuentre una colisioacuten no implica necesariamente

que un algoritmo se haya roto pues podriacutea haber sido realizado mediante fuerza bruta pero puede

ser una causa

Un ataque de colisioacuten significa que encuentro dos entradas diferentes que producen el

mismo resultado de un hash particular Este es generalmente el tipo de ataque maacutes faacutecil Es el tipo

de ataque que se conoce desde hace varios antildeos contra MD5

Dado que una utilidad importante de las funciones hash estaacute en las firmas digitales

encontrar colisiones puede facilitar falsificar firmas digitales Es decir dos mensajes distintos que

tengan un mismo resumen tienen ademaacutes la misma firma y un atacante puede reemplazar un

mensaje por el otro Un ejemplo de este ataque fue demostrado en 2008 por un grupo de

investigadores en Aacutemsterdam los cuales falsificaron un certificado raiacutez mediante el uso de un

ataque de colisioacuten contra el algoritmo MD5 (Preukschat 2015)

Un ataque previo a la imagen generalmente es mucho maacutes difiacutecil es encontrar otra entrada

que produzca el mismo resultado que un hash que ya se conoce

Para tratar de aclarar la diferencia aquiacute en un ataque de colisioacuten encuentro dos entradas A

y B que producen el mismo resultado En un ataque de preimagen comienzo a partir de alguacuten

resultado conocido X y encuentro una entrada que produciraacute X como resultado (Coffin 2015)

82

Para realizar esta evaluacioacuten se tomoacute como base la tabla del apeacutendice Hash craking

benchmark (Picolet 2017) el objetivo es observar el comportamiento y velocidad del Hash

mencionado cuando fue sometido a pruebas de criptoanaacutelisis Si se trata de un Hash lento se deberaacute

ser maacutes selectivo en queacute tipos de diccionarios y meacutetodos de criptoanaacutelisis se le debe aplicar Si es

un Hash raacutepido se puede ser maacutes libre con la estrategia de criptoanaacutelisis Este estudio busca

realizar una prueba de criptoanaacutelisis mostrando las diferencias entre el poder de procesamiento de

un cluacutester de 17 nodos contra una computadora personal por lo que no necesariamente se

implementaraacute el meacutetodo oacuteptimo para la realizacioacuten del criptoanaacutelisis

44 Calcular la capacidad del equipo

Con la informacioacuten de la evaluacioacuten de la fuerza del Hash obtenida en el apartado anterior en

este apartado se tiene que establecer la capacidad de la plataforma o plataformas que realizaraacuten

el criptoanaacutelisis

Para conocer la capacidad de procesamiento del cluacutester de alto rendimiento se utilizoacute la

herramienta Linpack Benchmark HPL es una implementacioacuten portaacutetil del Benchmark de alto

rendimiento LINPACK para equipos de coacutemputo distribuido Actualmente se utiliza para obtener

varios resultados en la lista actual de Top500 de HP cluacutesters (Dongarra 2010)

El Linpack Benchmark (HPL del Ingleacutes High-Performance Linpack Bench-mark) es un

software que resuelve un sistema lineal aleatorio de doble precisioacuten aritmeacutetica (64 bits) en equipos

de memoria distribuida El rendimiento muestra el nuacutemero de operaciones de punto flotante por

segundo logradas por el sistema (Petitet Whaley Dongarra amp Cleary 2008)

83

El HPL fue desarrollado en el Argone National Laboratory por Jack Don-garra en 1976 y

es uno de los maacutes usados en sistemas cientiacuteficos y de ingenieriacutea para el caacutelculo de prestaciones

Las principales caracteriacutesticas del algoritmo utilizado por el HPL son

Distribucioacuten ciacuteclica de datos de bloques de dos dimensiones

Variante derecha de la factorizacioacuten LU con pivoteo parcial (Teacutecnica de pivoteo

Dicta que el elemento pivote que debe escogerse es el mayor absolutamente de cada

columna)

Factorizacioacuten recursiva con pivoteo y reenviacuteo de columna

Distintas topologiacuteas virtuales de reenviacuteos

Algoritmo de reduccioacuten de reenviacuteo para ancho de banda (Castelloacute Gimeno 2014)

La resolucioacuten del sistema de ecuaciones se realiza del siguiente modo

1 Se crea un sistema de ecuaciones

(1)

119860119909 = 119887

(2)

119860 isin 119877119899119909119899

(3)

119909 119887 isin 119877119899

84

HPL calcula que la solucioacuten para un sistema de ecuaciones lineales se puede generalizar

como 119860119909 = 119887 donde 119860 es una matriz 119873 119909 119873 cuyos valores se generan aleatoriamente

119909 119910 119887 son vectores de tamantildeo 119873 Como se muestra en la Figura 43

2 Primero se calcula la factorizacioacuten 119871119880 con pivoteo parcial de los coeficientes 119899 y 119899 + 1

de la matriz [119860 119887]

(4)

119875119903[119860 119887] = [[119871119880] 119910]

(5)

119875119903 119871 119880 isin 119877119899119909119899

(6)

119910 isin 119877119899

El primer paso es la factorizacioacuten de la matriz 119860 en una matriz triangular superior 119880

y una matriz triangular inferior 119871 tal que 119860 = 119871119880 La factorizacioacuten se usa para calcular

el vector solucioacuten 119909

3 Una vez el pivoteo (representado por la permutacioacuten de la matriz 119875119903) y la factorizacioacuten

inferior se aplican sobre 119887 la solucioacuten se obtiene en un paso resolviendo el sistema

superior triangular

Figura 43 Sistema de Ecuaciones tipo 119860119909 = 119887 (Fuente Elaboracioacuten propia)

85

(7)

119880119909 = 119910

La matriz triangular inferior izquierda y el conjunto de pivotes no se devuelven en el

resultado Para la estabilidad numeacuterica el algoritmo de factorizacioacuten utiliza un pivote parcial de

fila

La implementacioacuten paralela de Linpack divide la matriz 119860 119873 119909 119873 en una cuadriacutecula de

procesos 119875 119909 119876 bidimensional y luego la divide en subgrupos de mosaicos 119873119861 119909 119873119861 (Petitet

Whaley Dongarra amp Cleary 2008)

Utilizando la herramienta HPL en esta investigacioacuten se obtuvieron los siguientes

resultados

La prueba abordoacute el ajuste de 119873 y la eficiencia obtenida en comparacioacuten con el rendimiento

maacuteximo Se determinoacute un valor para 119873 = 800000 aleatoriamente para ejecutar HPL en todo el

cluacutester Sin embargo el tiempo fue excesivo por lo tanto se determinoacute que este tamantildeo del

problema fue demasiado grande para el cluacutester Al realizar otros experimentos con valores maacutes

pequentildeos de 119873 se obtuvieron mejores resultados de rendimiento La Tabla 41 muestra el

rendimiento de HPL en GFlops para 119873 = 300000 400000 y 500000 Como se puede observar

en la Tabla 41 se obtuvo el mejor resultado de rendimiento 850 GFlops para 119873 = 500000 para

valores mayores de 119873 la distribucioacuten de cargas del cluacutester empieza a sobrepasar su capacidad como

se muestra en la Figura 44 y la vez su rendimiento disminuye Esto ocurre porque la cantidad de

memoria utilizada con las memorias intermedias de comunicacioacuten MPI es mayor de lo esperado

Por lo tanto es necesario dejar maacutes del 20 de la memoria para el sistema (Petitet Whaley

86

Dongarra amp Cleary 2008) Tambieacuten se realizaron pruebas usando solo un nodo de coacutemputo y el

rendimiento fue de 34 GFlops para 119873 = 20000

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia)

Analizando la eficiencia obtenida para la ejecucioacuten de un solo nodo cuando 119873 = 20000

se obtuvo el 823 del rendimiento maacuteximo (el rendimiento maacuteximo para un solo nodo es 477

Gflops) Para todo el cluacutester el rendimiento maacuteximo seriacutea 119879119898119886119909 = 477 119909 17 =

8109 119866119891119897119900119901119904 aproximadamente

Figura 44 Distribucioacuten de cargas del cluacutester

0

500

1000

300000 400000 500000

Gflops

Gflops

87

La Figura 44 titulada ldquoDistribucioacuten de cargas del cluacutesterrdquo muestra la imagen de la

herramienta Ganglia de manera graacutefica a traveacutes de cuadros que variacutean de color dependiendo de la

carga que tenga cada uno de los nodos al momento de implementar la herramienta HPL De manera

inicial indica que el cluacutester tiene un total de 17 equipos de 4 cores cada uno eso da un total de 68

cores trabajando sin equipos inactivos Muestra tambieacuten una sobrecarga en el cluacutester y un

porcentaje promedio de 100 de uso en la uacuteltima hora

45 Establecer Estrategia

Esto significa uacutenicamente que en este apartado se realizaraacute una guiacutea baacutesica para procesar

los hashes obtenidos sin perder de vista que cada escenario a criptoanalizar es uacutenico en funcioacuten

de las circunstancias externas Como ya se ha mencionado anteriormente esta estrategia de

criptoanaacutelisis se ha planteado implementar dos meacutetodos los cuales son Fuerza Bruta y ataque de

diccionario sin importar si son o no los oacuteptimos debido a que se realizaraacute una comparativa de

capacidad de procesamiento

451 Fuerza Bruta Una vez que se han intentado varios meacutetodos y han fallado se puede

iniciar un ataque de fuerza bruta estaacutendar poniendo especial atencioacuten en la cantidad de siacutembolos

del alfabeto que puede usar el equipo a analizar Por encima de 8 caracteres esto generalmente no

tiene sentido debido a limitaciones de hardware y entropiacutea (complejidad de la contrasentildea) Una

contrasentildea de Windows seguacuten Microsoft (Microsoft Inc 2019) una contrasentildea de Windows debe

estaacute formada por

88

26 Caracteres mayuacutesculas de la ldquoArdquo a la ldquoZrdquo

26 Caracteres minuacutesculas de la ldquoardquo a la ldquozrdquo

10 Diacutegitos de base 10 (0 a 9)

32 Caracteres especiales (~$^amp_-+=|()[]ltgt)

94 Caracteres alfanumeacutericos en total

4511 Cantidad de combinaciones posibles Si se usa una clave numeacuterica (nuacutemeros del 0

al 9) existen 10 posibilidades de 4 diacutegitos de longitud que es la extensioacuten por defecto de los

teleacutefonos celulares Para 4 diacutegitos las combinaciones posibles seriacutean 10 mil 104 = 10000

(Labaca Castro 2014)

Por otro lado si tomamos un alfabeto de 26 letras mayuacutesculas y 26 minuacutesculas 10 nuacutemeros

y 10 caracteres especiales en total tenemos 72 diferentes posibilidades para un uacutenico caraacutecter Eso

significa que las combinaciones para una contrasentildea de 4 caracteres seriacutean 724 = 26873856

Baacutesicamente maacutes de 26 millones de combinaciones en una clave de 4 caracteres contra 10 mil en

una clave de 4 diacutegitos numeacutericos En este estudio se utiliza la contrasentildea de bloqueo descrita en el

apartado anterior que es de 94 combinaciones para cada caraacutecter teniendo una longitud de 7

caracteres por lo tanto seraacuten 947 = 64847759000000 de posibles combinaciones que

nuestros equipos deben explorar para obtener la contrasentildea correcta

Como se mencionoacute en el apartado 42 el usuario sobre el cual se realizoacute el criptoanaacutelisis

fue usuarioprueba el cual constaba de una contrasentildea de longitud 7 caracteres la cual despueacutes

de realizado el anaacutelisis y como se puede observar en la Figura 45

89

1 Anaacutelisis a usuario usuarioprueba

2 Nuacutemero de nodos en operacioacuten 17

3 Nuacutemero de procesos ejecutaacutendose de forma paralela 68

4 Tiempo de duracioacuten del anaacutelisis en el cluacutester 122727 horas

5 Contrasentildea criptoanalizada Pass7

Asiacute mismo en la Tabla 42 se muestra el resultado final y el tiempo de duracioacuten del

criptoanaacutelisis realizado al archivo SAM con el cluacutester y la computadora personal

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Horas)

1 (PC) 4 1075316

17 (Cluacutester) 68 122727

1

2

3

4 5

Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester (Fuente Elaboracioacuten propia)

90

452 Diccionario Meacutetodo empleado para romper la seguridad de los sistemas basados en

contrasentildeas (password) en la que el atacante intenta dar con la clave adecuada probando todas (o

casi todas) las palabras posibles ingresadas previamente en un diccionario idiomaacutetico

Generalmente se emplean programas especiales que se encargan de ello

Este meacutetodo suele ser maacutes eficiente que el meacutetodo de fuerza bruta debido a que muchas

usuarios casi siempre suelen utilizar contrasentildeas con una o varias palabras existentes en su lengua

para que la contrasentildea no sea olvidada faacutecilmente y sea sencilla de recordar esto no es una praacutectica

recomendable (Alegsa 2018)

Para realizar este meacutetodo se utilizoacute un diccionario descargado de internet el cual contiene

10000000 de posibles contrasentildeas (g0tmi1k 2018)

Ademaacutes se ejecutoacute un programa creado en lenguaje C (Anexo 1) a traveacutes de la

implementacioacuten de las libreriacuteas MPI y open MPI propias de la arquitectura de cluacutester de

computadoras Este programa fue ejecutado en los mismos equipos descritos anteriormente para

obtener todos los nuacutemeros primos encontrados dentro de un intervalo dado En este caso el

intervalo dado fue de 10000000 con los siguientes resultados mostrados en la Tabla 43

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos (Fuente Elaboracioacuten

propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Segs)

1 (PC) 4 5078

17 (Cluacutester) 68 00013

91

453 Analizar los resultados Posterior a realizar el criptoanaacutelisis y descifrar con eacutexito

una cantidad suficiente de hashes se analizan los resultados en busca de pistas o patrones Este

anaacutelisis puede ayudar a tener eacutexito en cualquier hash restante

454 Personalizar ataques Tomando como base el anaacutelisis de resultados realizado

previamente se disentildearaacuten diversas estrategias personalizadas que aprovechen las vulnerabilidades

conocidas o patrones Los ejemplos seriacutean ataques de maacutescara personalizados o reglas para

adaptarse al comportamiento o las preferencias del usuario objetivo

92

Conclusioacuten

El trabajo de investigacioacuten presentado parte de la necesidad de buscar alternativas para

explotar al maacuteximo la capacidad de procesamiento del equipo de coacutemputo que existe actualmente

dentro del inventario del Instituto Tecnoloacutegico de Acapulco asiacute como proveer una plataforma que

coadyuve a la investigacioacuten dentro del Instituto a traveacutes de implementar un cluacutester de coacutemputo

con capacidad para realizar proyectos en el aacuterea de ingenieriacutea y matemaacuteticas con el fin de optimizar

el tiempo de ejecucioacuten lo cual en un futuro se veraacute reflejado en ventajas para el desarrollo de la

regioacuten

La revisioacuten y anaacutelisis de informacioacuten en relacioacuten a cluacutesters es muy interesante pero a la

vez es compleja dado que involucra diferentes aspectos durante su evolucioacuten asiacute como diversas

metodologiacuteas para su formacioacuten e implementacioacuten Se considera de suma importancia para este

trabajo las revisiones efectuadas ya que son la base para la propuesta entregada

De acuerdo a las especificaciones teacutecnicas de los equipos informaacuteticos existentes dentro

del laboratorio de la Maestriacutea en Sistemas Computacionales y una vez que se realizoacute el anaacutelisis

de varios casos de eacutexito se propuso la metodologiacutea para implementacioacuten de un cluacutester homogeacuteneo

tipo Beowolf Este meacutetodo estaacute basado en otros que ya se han implementado bajo realidades

acadeacutemicas similares rescatando las etapas maacutes importantes de cada uno y complementaacutendolo con

los aportes personales se consideroacute que fue el oacuteptimo debido a que se implementoacute con hardware

convencional y herramientas de uso libre

93

El hecho de haber seleccionado un meacutetodo adecuado permitioacute superar gran parte los

problemas que presentaban las metodologiacuteas que fueron analizadas simplificoacute la implementacioacuten

del cluacutester y permitioacute el poder alcanzar una mayor estabilidad en su desempentildeo desde su etapa

inicial fue importante conocer el resultado en cada una de las etapas de implementacioacuten para

asegurar su desenvolvimiento en el futuro

Para integrar los equipos independientes a la arquitectura cluacutester se realizoacute el disentildeo de

una topologiacutea de red Gigabit Ethernet tipo estrella con un direccionamiento IP estaacutetico la

configuracioacuten de protocolos de comunicacioacuten remota sin autenticacioacuten la comparticioacuten de

archivos en red y la utilizacioacuten de aplicaciones de licencia GPL que permiten obtener el

funcionamiento similar a la de una supercomputadora

Haciendo uso de libreriacuteas de paso de mensajes (MPI) y el software John the Ripper para el

descifrado de contrasentildeas la arquitectura cluacutester implementada alcanzoacute una eficiencia de 885

de rendimiento en comparacioacuten con los recursos computacionales de un solo equipo con las

caracteriacutesticas de un nodo Ademaacutes otros de los proyectos ejecutados en la arquitectura cluacutester

para probar el rendimiento fue la ejecucioacuten de un programa para la deteccioacuten de nuacutemeros primos

dentro de un archivo de 10000000 de nuacutemeros obteniendo una eficiencia de maacutes de 99 gracias

a la distribucioacuten de tareas que proporcionan las libreriacuteas de paso de mensajes (MPI) dentro de la

arquitectura cluacutester

Con la implementacioacuten de la arquitectura cluacutester el laboratorio de la Maestriacutea en Sistemas

Computacionales podraacute dar soluciones potentes eficientes y econoacutemicas en los entornos de

94

investigacioacuten mejorando la capacidad de procesamiento en aplicaciones como evaluacioacuten de

algoritmos compresioacuten de archivos renderizacioacuten de imaacutegenes anaacutelisis de datos (big data) en un

tiempo relativamente bajo ideal para las necesidades educativas

La experiencia obtenida al realizar esta investigacioacuten y propuesta ha sido enriquecedora

tanto por la obtencioacuten de conocimiento en base a la historia evolucioacuten y arquitectura de cluacutesters

asiacute como la programacioacuten paralela y sus ventajas en diferentes proyectos desarrollados en todo el

mundo Igualmente la comparacioacuten entre cada uno de los modelos y meacutetodos resulta interesante

dado que existe un sinnuacutemero de ejemplos con caracteriacutesticas diferentes pero baacutesicamente con un

mismo objetivo final

Trabajo Futuro

El cluacutester implementado en el Laboratorio de la Maestriacutea en Sistemas computacionales del

Instituto Tecnoloacutegico de Acapulco puede ser utilizado en gran cantidad de aplicaciones dentro de

las diferentes aacutereas de investigacioacuten del Instituto asiacute como estar disponible para el Departamento

de Posgrado e Investigacioacuten como apoyo durante la realizacioacuten de tareas y proyectos dentro de las

aacutereas de Desarrollo de Sistemas Inteligentes asiacute como de Tecnologiacuteas Web

Propuesta de Trabajo a Futuro

Durante la realizacioacuten de este proyecto se observoacute la necesidad que existe dentro del

departamento de Investigacioacuten y Posgrado de equipos de alta capacidad de procesamiento para

realizar de una manera maacutes eficiente las investigaciones que se estaacuten llevando a cabo Una de ellas

es el ldquoSistema de apoyo al diagnoacutestico oportuno de Retinopatiacutea Diabeacuteticardquo en la cual a traveacutes del

entrenamiento de una red neuronal se clasificaraacuten y evaluaraacuten un nuacutemero de 3000 imaacutegenes para

95

demostrar la presencia de dicha enfermedad en pacientes del Instituto Estatal de Oftalmologiacutea

Actualmente se ha realizado una prueba de entrenamiento de dicha red neuronal con 70 imaacutegenes

obteniendo como resultado un tiempo clasificacioacuten y evaluacioacuten de 301532 horas en un equipo

con un procesador Core I7 con 8 GB en memoria RAM

96

Bibliografiacutea

Alegsa (01 de 01 de 2018) Alegsa Diccionario Informaacutetico Recuperado el 07 de 2019 de

Alegsa httpwwwalegsacomarDicataque_por_diccionariophp

Avecto (2017) Avecto Limited Recuperado el 10 de 08 de 2018 de AVECTO a Bomgar

Company wwwavectocom

Borghello C (2009) Seguridad de la Informacioacuten Recuperado el 11 de 2018 de Criptografiacutea de

la A-Z httpswwwsegu-infocomarproyectosp1_hashhtm

Branch Bedoya J amp Mesa Muacutenera A (Diciembre de 2008) Implementacioacuten de un cluster

homogeacuteneo para la resolucioacuten de problemas de alta complejidad computacional Avances

en Sistemas e Informaacutetica 5(3)

ByteBleeder (02 de 06 de 2017) Practical guide to NTLM Relaying in 2017 Obtenido de Github

httpsbyt3bl33d3rgithubiopractical-guide-to-ntlm-relaying-in-2017-aka-getting-a-

foothold-in-under-5-minuteshtml

Caballero A (26 de 06 de 2018) Hacking Eacutetico Recuperado el 03 de 2019 de John The Ripper

httpwwwreydescomdq=Recuperar_la_Contrasena_del_Administrador_utilizando_s

amdump2_y_John_The_Ripper

Carretero Peacuterez J de Miguel Anasagasti P Garciacutea Carballeira F amp Peacuterez Costoya F (2001)

Sistemas Operativos Una visioacuten aplicada (C F Madrid Ed) Madrid Espantildea

McGRAW-HillInteramericana

Castelloacute Gimeno A (30 de 07 de 2014) Universitat Jaume Recuperado el 10 de 2019 de

Evaluacioacuten de prestaciones mediante laaplicacioacuten HPL de clusters utilizandorCUDA

97

httprepositoriujiesxmluibitstreamhandle10234115082TFM_2014_CastelloGimen

oApdfsequence=1ampisAllowed=y

Chaacutevez J Echeverriacutea C Correa M Vaacutezquez E Suaacuterez M Maacutermol X Diacuteaz G (07 de

1999) Centro de Caacutelculo Cientiacutefico Recuperado el 01 de 05 de 2018 de Universidad de

Los Andes httpwwwcecalculavedocumentaciontutorialesbeowulfinformehtml

Chirinov R (2003) Nfinite9000 SL Recuperado el 26 de 04 de 2018 de Noticias 3D

httpswwwnoticias3dcomarticuloaspidarticulo=248amppag=4

Coffin J (23 de 07 de 2015) Quora Recuperado el 15 de 08 de 2019 de

httpswwwquoracomWhat-does-it-mean-when-a-hashing-algorithm-has-been-broken

Dongarra J (2010) Top500 Super computer sites Recuperado el 07 de 2019 de http

wwwtop500org

Educba (01 de 01 de 2019) Recuperado el 10 de 2019 de Educbaorg

httpswwweducbacomidea-algorithm

europa press (04 de 06 de 2013) Portal Tic Recuperado el 18 de 11 de 2018 de Europa Press

httpswwweuropapressesportalticgadgetsnoticia-cuarta-generacion-intel-core-mayor-

salto-cuanto-ahorro-energetico-20130604174722html

g0tmi1k (2018) github Recuperado el 05 de 2019 de github

httpsgithubcomdanielmiesslerSecListsblobmasterPasswordsCommon-

Credentials10-million-password-list-top-1000000txt

Gonzaacutelez Agudelo D (2014) El riesgo y la falta de politicas de seguridad informaacutetica una

amenaza en las empresas certificadas basc Recuperado el 20 de 05 de 2018 de

Universidad Militar Nueva Granada

httpsrepositoryunimilitareducobitstream10654122511ENSAYO20FINALpdf

98

Gonzaacutelez Ramiacuterez E amp Rodriacuteguez Saacutenchez A (2008) Disentildeo e implementacioacuten de un cluster

tipo BEOWULF para el desarrollo de coacutemputo cientiacutefico avanzado CdMx Mexico

Hernandez M (2013) Forensics Mexico Recuperado el 07 de 2018 de La importancia del

registro de Windows parte 1 httpforensicsmexicoblogspotcom201309la-

importancia-del-registro-de-windowshtml

Kowalczyk C (01 de 2015) Crypto-IT Recuperado el 11 de 2018 de Crypto-IT

httpwwwcrypto-itnetengasymmetricindexhtml

Labaca Castro R (13 de 06 de 2014) We live security Recuperado el 2019 de 08 de 07 de

Welivesecuritybyeset httpswwwwelivesecuritycomla-es20140613matematica-

claves-numerica-alfanumerica

Lizaacuterraga C (2002) Departamento de Fiacutesica Recuperado el 12 de 03 de 2018 de Universidad

de Sonora httpclustersfisicausonmx

Llorens E amp Pentildea M (2002) Recuperado el 04 de 2018 de Departament dArquitectura de

Computadors httppersonalsacupceduenricPFCBeowulfbeowulfhtml

Meneacutendez-Barzanallana R (07 de 08 de 17) Universidad de Murcia Recuperado el 11 de 2018

de Informaacutetica Aplicada a las Ciencias Sociales

httpswwwumesdocenciabarzanaIACCSSCriptografiahtml

Merkle R amp Damgaringrd I (sf) Numerenturorg Recuperado el 06 de 2019 de Para computar -

numerenturorg httpnumerenturorgfuncion-merkle-damgard

Microsoft Inc (02 de 05 de 2019) wwwmicrosoftcom Obtenido de Password must meet

complexity requirements httpsdocsmicrosoftcomes-eswindowssecuritythreat-

protectionsecurity-policy-settingspassword-must-meet-complexity-requirements

99

Mifsud E (26 de 03 de 2012) Introduccioacuten a la seguridad informaacutetica Recuperado el 07 de 05

de 2018 de Ministerio de educacioacuten cultura y deportes Gobierno de Espantildea

httprecursosticeducacionesobservatoriowebessoftwaresoftware-general1040-

introduccion-a-la-seguridad-informaticashowall=1

Murugesan S (01 de 02 de 2008) Researchgate doi101109MITP200810

Nahar K amp Abu Abbas O (01 de 2010) Researchgate Recuperado el 07 de 2019 de

Researchgate

httpswwwresearchgatenetpublication315492522_Hybrid_Cipher_System

Nievas F Pino O amp Arroyo R (sf) Los clusters como Plataforma de Procesamiento Paralelo

Recuperado el 25 de 04 de 2018 de

httpusuarioslycoseslacaraocultadescargasClusters_definitivo pdf

Pawar S (2016) A computer science portal for geeks Recuperado el 10 de 2018 de

Geeksforgeeks httpswwwgeeksforgeeksorgrc5-encryption-algorithm

Peleus (2019) NETSEC Recuperado el 08 de 2019 de httpsnetsecwsp=314

Peacuterez Tavera I (2014) Obtenido de Universidad Autonoma del Estado de Hidalgo

httpswwwuaehedumxscigeboletinprepa4n2e4html

Peacuterez M (2001) Recuperado el 15 de 04 de 2018 de

httpwwwdragonesorgBibliotecaArticulosArquitecturaParalela2pdf

Petitet A Whaley R C Dongarra J amp Cleary A (2008) HPL - A Portable Implementation of

the High-Performance Linpack Benchmark for Distributed-Memory Computers

Recuperado el 07 de 2019 de httpwwwnetliborgbenchmarkhpl

Picolet J (2017) Hash Crack Password Cracking Manual (Vol 2) Createspace Independent

Pub

100

Preukschat A (23 de 02 de 2015) Oro y Finanzas Recuperado el 07 de 2019 de

httpswwworoyfinanzascom201502que-es-colision-criptografia-bitcoin

Robbins D (2008) OpenMosix Recuperado el 22 de 04 de 2018 de the openMosix Project

httpopenmosixsourceforgenetintroduction_to_openmosixhtml

Rocha Quezada J d Botello Rionda S Vargas Feacutelix J M amp Munguiacutea Torres I A (Sep-Dic

de 2011) Disentildeo e implementacioacuten de un cluacutester de coacutemputo de alto rendimiento Acta

Universitaria 21(3) 24-33 Recuperado el 1 de 12 de 2018

Rocksclusters (01 de 01 de 2010) httpwwwrocksclustersorg Recuperado el 01 de 06 de 2018

de httpwwwrocksclustersorg httpwwwrocksclustersorg

Sanjoy K (01 de 01 de 2015) DZone Recuperado el 15 de 06 de 2019 de DZone

httpsdzonecomarticlessecurity-algorithms-des-algorithm

Security Degree Hub (01 de 2017) Security Degree Hub Recuperado el 13 de 02 de 2019 de

Security Degree Hub httpswwwsecuritydegreehubcomwhat-is-cryptanalysis

Simmons G (01 de 01 de 2019) Encyclopedia Britannica Recuperado el 08 de 2019 de

Encyclopedia Britannica httpswwwbritannicacomtopicRSA-encryption

statista (09 de 2017) Statista Obtenido de Statista Co httpsesstatistacom

Turner D (2004) Recuperado el 12 de 02 de 2018 de Ames Lab

httpwwwsclameslabgovProjectsparrallel_computingpara_intohtml

United States Government Department of Defense (1983) Trusted Computer System Evaluation

Criteria Rainbow Series

Universidad Internacional de Valencia (09 de Septiembre de 2016) Nuestros

expertosTecnologiacutea Recuperado el 27 de Abril de 2018 de Universidad Internacional de

Valencia httpswwwuniversidadviuesla-seguridad-informatica-puede-ayudarme

101

Wallen J (19 de 01 de 2019) Lifewire Recuperado el 13 de 06 de 2019 de Lifewire

httpswwwlifewirecomgnome-3-desktop-4175640

Yang H (01 de 02 de 2019) Herong Yang Recuperado el 15 de 06 de 2019 de Cryptography

Tutorials httpwwwherongyangcomCryptographyDSA-Introduction-What-Is-DSA-

Digital-Signature-Algorithmhtml

102

Anexo 1

Programa en Lenguaje C para la obtencioacuten de nuacutemeros primos utilizando libreriacuteas mpi

include ltcstdlibgt

include ltiostreamgt

include ltiomanipgt

include ltcmathgt

include ltctimegt

include mpih

using namespace std

int main ( int argc char argv[] )

int prime_number ( int n int id int p )

void timestamp ( )

int main ( int argc char argv[] )

int i

int id

int master = 0

int n

int n_factor

int n_hi

int n_lo

int p

int primes

int primes_part

double wtime

n_lo = 1

n_hi = 10000000

n_factor = 2

MPIInit ( argc argv )

p = MPICOMM_WORLDGet_size ( )

id = MPICOMM_WORLDGet_rank ( )

if ( id == master )

cout ltlt n

cout ltlt Cuenta primosn

cout ltlt C++MPI versionn

cout ltlt n

cout ltlt Programa para contar cantidad de primos para un N dadon

cout ltlt Corriendo en ltlt p ltlt procesosn

cout ltlt n

103

cout ltlt N S Tiempon

cout ltlt n

n = n_lo

while ( n lt= n_hi )

if ( id == master )

wtime = MPIWtime ( )

MPICOMM_WORLDBcast ( ampn 1 MPIINT master )

primes_part = prime_number ( n id p )

MPICOMM_WORLDReduce ( ampprimes_part ampprimes 1 MPIINT

MPISUM

master )

if ( id == master )

wtime = MPIWtime ( ) - wtime

cout ltlt ltlt setw(8) ltlt n

ltlt ltlt setw(8) ltlt primes

ltlt ltlt setw(14) ltlt wtime ltlt n

n = n n_factor

MPIFinalize ( )

if ( id == master )

cout ltlt n

cout ltlt PRIME_MPI - Procesos maestron

cout ltlt Finalizacion del calculo normaln

return 0

int prime_number ( int n int id int p )

int i

int j

int prime

int total

104

total = 0

for ( i = 2 + id i lt= n i = i + p )

prime = 1

for ( j = 2 j lt i j++ )

if ( ( i j ) == 0 )

prime = 0

break

total = total + prime

return total

void timestamp ( )

define TIME_SIZE 40

static char time_buffer[TIME_SIZE]

const struct tm tm

size_t len

time_t now

now = time ( NULL )

tm = localtime ( ampnow )

len = strftime ( time_buffer TIME_SIZE d B Y IMS p tm )

cout ltlt time_buffer ltlt n

return

undef TIME_SIZE

Page 11: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios

x

Iacutendice de Figuras

Figura 31 Esquema tiacutepico de configuracioacuten de un cluacutester xi

Figura 32 Imagen del Bios del equipo en la opcioacuten ldquodrive configurationrdquo 61

Figura 33 Bios ATAIDE Legacy Mode 61

Figura 34 Bios Boot PXE 62

Figura 35 Bios Boot device prioriry 63

Figura 36 Pantalla de Inicio de instalacioacuten de Rocks 64

Figura 37 Pantalla de seleccioacuten de Rolls 65

Figura 38 Listado de opciones de rolls para instalar 65

Figura 39 Informacioacuten baacutesica del cluacutester a instalar 66

Figura 310 Configuracioacuten Ethernet de la red privada 67

Figura 311 Configuracioacuten Ethernet de la red puacuteblica 67

Figura 312 Configuracioacuten de DNS y Gateway 68

Figura 313 Ingresar contrasentildea de usuario root 68

Figura 314 Configuracioacuten horaria 69

Figura 315 Particiones del disco duro 69

Figura 316 Pantalla para ingresar nodos 71

Figura 317 Indicador de insercioacuten de nuevos nodos 71

Figura 318 Comando qstat ndashf 74

Figura 319 Enviacuteo de trabajos por medio del comando qsub 75

Figura 320 Estado de los trabajos pendientes mostrados por qstat ndashf 75

Figura 321 Visualizacioacuten de la distribucioacuten de cargas en el cluacutester usando la herramienta

Ganglia 76

Figura 41 Arranque con LiveUSB KaliLinux 79

Figura 42 Resultado de la ejecucioacuten de la herramienta samdump2 80

Figura 43 Sistema de Ecuaciones tipo 119860119909 = 119887 Fuente Propia 84 Figura 44 Distribucioacuten de cargas del cluacutester 86

Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester 89

xi

Iacutendice de Tablas

Tabla 11 Costo del Proyecto 15

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia) 86

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia) 89

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos

(Fuente Elaboracioacuten propia) 90

1

Capiacutetulo 1 Introduccioacuten

11 Antecedentes del problema

Sin lugar a duda una de las herramientas maacutes importantes producida en el siglo XX ha sido

la computadora la cual ha provocado cambios vertiginosos en la sociedad y en el progreso de la

misma En la actualidad el entorno estaacute praacutecticamente controlado por las nuevas tecnologiacuteas que

a medida que transcurre el tiempo avanzan sin liacutemites y en ocasiones son utilizadas

incorrectamente provocando dantildeos de grandes dimensiones

Los trascendentales cambios operados en el mundo moderno caracterizados por su

constante desarrollo la acelerada globalizacioacuten de la economiacutea la acentuada dependencia a

almacenar grandes voluacutemenes de informacioacuten y los sistemas que la proveen aunado a grandes

inversiones de las empresas en conocimiento actual y futuro en sistemas de informacioacuten ademaacutes

del potencial que poseen las tecnologiacuteas para cambiar draacutesticamente las organizaciones y las

praacutecticas de negocio asiacute como crear nuevas oportunidades disentildear nuevas estructuras tecnoloacutegicas

basadas en informacioacuten la convierte en un activo codiciable Tales avances hacen permanente el

riesgo en las tecnologiacuteas y nos llevan a pensar en la problemaacutetica sobre la seguridad informaacutetica

La proteccioacuten de datos documentos y control de acceso a la informacioacuten es un tema que

cada diacutea toma maacutes fuerza en las grandes compantildeiacuteas debido a las diferentes praacutecticas de

especialistas tecnoloacutegicos como los son los hackers y crackers que roban informacioacuten vital para

posteriormente sacar provecho de ella

2

ldquoDesde la aparicioacuten de los grandes sistemas aislados hasta nuestros diacuteas en los que el

trabajo en red es lo habitual los problemas derivados de la seguridad de la informacioacuten han ido

tambieacuten cambiando evolucionando pero estaacuten ahiacute y las soluciones han tenido que ir adaptaacutendose

a los nuevos requerimientos teacutecnicos Aumenta la sofisticacioacuten en el ataque y ello aumenta la

complejidad de la solucioacuten pero la esencia es la mismardquo (Mifsud 2012)

Dentro del mundo actual la informacioacuten es denominada un activo importante de una

institucioacuten la cual debe ser protegida para evitar su peacuterdida modificacioacuten o el uso inadecuado de

su contenido

El extraviacuteo o el mal uso de informacioacuten que para alguien es confidencial genera dantildeos y

repercusiones directas relacionadas a la integridad disponibilidad y confidencialidad de los

archivos y a su vez a los duentildeos de dicha informacioacuten

ldquoLa seguridad informaacutetica se distingue por tener dos propoacutesitos de seguridad la Seguridad

de la Informacioacuten y la Proteccioacuten de Datos estos se diferencian debido a que los datos son valores

numeacutericos que soportan la informacioacuten mientras que la informacioacuten es aquello que tiene un

significado para nosotrosrdquo (Gonzaacutelez Agudelo 2014)

La seguridad informaacutetica consiste en asegurar que los recursos del sistema de informacioacuten

(material informaacutetico o programas) de una organizacioacuten sean utilizados de la manera que se decidioacute

3

inicialmente y que el acceso a la informacioacuten alliacute contenida asiacute como su modificacioacuten soacutelo sea

posible a las personas que se encuentren acreditadas y dentro de los liacutemites de su autorizacioacuten

Actualmente hay mucha informacioacuten circulando en internet por ejemplo correos

electroacutenicos publicaciones en Twitter Facebook videos fotos comercio electroacutenico secretos de

estado militares o industriales Lamentablemente dicha red es puacuteblica e insegura dentro de la cual

existen usuarios bien intencionados y muchos mal intencionados Diariamente encontramos

noticias de sitios con intrusiones mal intencionadas (hackeados) clonacioacuten de tarjeta de creacutedito o

imaacutegenes adulteradas Todo lo anterior motiva la necesidad de proteger la informacioacuten a traveacutes de

mecanismos que impidan a los usuarios no autorizados acceder a dicha informacioacuten

4

12 Planteamiento del Problema

Los sistemas de informacioacuten actuales estaacuten relacionados completamente con la exposicioacuten

de su informacioacuten a entidades externas que son ajenas a la organizacioacuten o delegacioacuten a la que

pertenecen

Cuando no se conoce el alcance que tienen los sistemas informaacuteticos ni lo vulnerables que

pueden ser si son expuestos a Internet por los mismos empleados de la organizacioacuten puede darse

ldquofugardquo de informacioacuten hacia el exterior esto los hace vulnerables a eventos y amenazas que

conllevan a riesgos que pueden provocar peacuterdidas tangibles e intangibles las cuales se traducen

en peacuterdidas que en muchos de los casos por decir lo menos seraacuten monetarias

El portal espantildeol de estadiacutesticas statista muestra la cuota de mercado de los principales

sistemas operativos a nivel mundial a fecha de febrero de 2017 seguacuten el nuacutemero de instalaciones

(statista 2017) Windows 10 fue el segundo sistema operativo maacutes instalado con una cuota de

mercado de 253 Esto significa que alrededor de una de cada cuatro computadoras estaacute

gobernado por este sistema operativo Por su parte en el caso de Windows 7 el porcentaje se situacutea

por encima del 45 a pesar de que ya no se vende ninguacuten PC con este sistema operativo Hablando

de manera conjunta los sistemas operativos Windows cuentan con una cuota del mercado global

de 8857

La empresa de seguridad informaacutetica Britaacutenica Avecto informoacute en su Microsoft

Vulnerabilities Report 2017 (Avecto 2017) (reporte 2017 de vulnerabilidades de Windows) un

aumento de vulnerabilidades publicadas del 111 en los uacuteltimos 5 antildeos de las cuales 235 criacuteticas

5

fueron mitigadas removiendo permisos de administrador asiacute como otras muy importantes

enfocadas al Administrador de Cuentas de Seguridad (SAM Security Account Manager por sus

siglas en ingleacutes) la cual es una base de datos almacenada como un archivo del registro en Windows

y que almacena las contrasentildeas de los usuarios en un formato hash (Algoritmos que crean a partir

de una entrada una salida alfanumeacuterica de longitud fija)

6

13 Objetivos

131 Objetivo General A traveacutes de la implementacioacuten de un procedimiento de fuerza

bruta utilizando para ello un cluacutester de alto rendimiento asiacute como software de uso libre lograr

capacidad de procesamiento capaz de vulnerar un sistema de autenticacioacuten nivel C1

132 Objetivos Especiacuteficos

Analizar los diferentes niveles de seguridad de sistemas operativos

Analizar diferentes meacutetodos de criptoanaacutelisis para vulnerar el Administrador de

cuentas de seguridad

Estudiar las teacutecnicas de agrupamiento de computadoras (clustering) para la

obtencioacuten de mayor poder de procesamiento

Implementar un cluacutester de alto rendimiento en el Laboratorio de la Maestriacutea en

Sistemas Computacionales del Instituto Tecnoloacutegico de Acapulco para ejecutar

operaciones de coacutemputo distribuido

7

14 Justificacioacuten

Antes la seguridad de la informacioacuten se realizaba a traveacutes de medios fiacutesicos por ejemplo

una caja fuerte en la cual las personas resguardaban objetos o informacioacuten valiosa para ellos Con

la introduccioacuten de las computadoras y el uso de internet los usuarios comienzan a almacenar

informacioacuten importante dentro de sus equipos por lo que se considera indispensable el uso de

herramientas que brinden proteccioacuten a la informacioacuten que se encuentra resguardada dentro de

eacutestas Los usuarios informaacuteticos suelen enviar informacioacuten por la red en las empresas al realizar

traacutemites o enviar informes a socios jefes entre otros

El resguardo de informacioacuten siempre ha sido importante para los seres humanos con la

diferencia que anteriormente no se contaba con los avances tecnoloacutegicos que tenemos actualmente

puesto que con la introduccioacuten de internet y el uso de dispositivos electroacutenicos se tiene mayor

riesgo de la informacioacuten que en ellos se maneja

La proteccioacuten del contenido de los datos es una necesidad urgente en casi todos los aacutembitos

de la sociedad incluyendo los servicios puacuteblicos y privados por lo que la tecnologiacutea de la

seguridad de los sistemas de cifrado se encuentra de frente a verdaderos retos

15 Hipoacutetesis

A traveacutes de un de fuerza bruta como teacutecnica de criptoanaacutelisis y con la ayuda de una mayor

capacidad de procesamiento mediante la implementacioacuten de agrupamiento de computadoras

(cluacutester) de alto rendimiento seraacute posible encontrar alguna vulnerabilidad dentro del sistema de

administracioacuten de cuentas de seguridad de Windows server 2012

8

16 Alcances y Limitaciones

Esta tesis se centraraacute en el sistema operativo Windows como objeto de estudio al cual se

le realizaraacute el criptoanaacutelisis

La tesis se enfocaraacute en el meacutetodo Beowulf para realizar el agrupamiento de computadoras

asiacute como la distribucioacuten de software libre del sistema operativo Linux Rocks

El nuacutemero de equipos disponibles para poder realizar el agrupamiento es de 17

computadoras hasta lograr el poder de coacutemputo de 800 Gflops

17 Impacto Social Tecnoloacutegico Econoacutemico y Ambiental

La sostenibilidad del presente proyecto seraacute abordada a partir de los siguientes aspectos

171 Impacto social A veces se puede pensar que un cluacutester de alto rendimiento pudiera

no tener alguacuten impacto directo en el medio social pero si nos enfocamos a un punto de vista en

donde gracias a la capacidad de procesamiento de estas maacutequinas han sido parte fundamental en

el desarrollo de proyectos que inciden de manera directa en beneficio de la sociedad en la que

vivimos como lo es la medicina la fiacutesica quiacutemica

Este proyecto busca beneficiar a nuestra sociedad proveyendo su capacidad de

procesamiento en la buacutesqueda de alguna vulnerabilidad en el sistema operativo maacutes utilizado hoy

en diacutea como lo es Windows ademaacutes de que estaraacute disponible para la comunidad cientiacutefica y

9

estudiantil del Instituto Tecnoloacutegico de Acapulco para optimizar tiempo de caacutelculo en futuras

investigaciones

172 Impacto ambiental Green IT tambieacuten conocido como Green Computing o

traducido al espantildeol como Tecnologiacuteas Informaacuteticas Verdes es definido como el estudio y la

praacutectica de disentildear desarrollar usar y disponer de computadoras servidores y diferentes

perifeacutericos tales como monitores impresoras dispositivos de almacenamiento de redes y

comunicaciones eficientemente y efectivamente con un impacto miacutenimo o nulo en el medio

ambiente (Murugesan 2008)

Bajo la premisa anterior este proyecto hace uso de los equipos con los que cuenta

actualmente el laboratorio de la Maestriacutea en Sistemas Computacionales lo cual evitaraacute la

adquisicioacuten de equipo nuevo y por consecuencia desechar el equipo existente evitando desperdicio

electroacutenico Dicho equipo cuenta con un procesador Intel I3 de 4ta generacioacuten lo cual seguacuten el

portal electroacutenico Europa press

ldquoEsta nueva generacioacuten supone el mayor salto en cuanto ahorro energeacutetico de la historia

de Intel asiacute como una mejora en los graacuteficos y nuevas experiencias de usuariordquo (europa press

2013)

Teniendo como base estos dos puntos importantes como lo son la reutilizacioacuten de equipo

y utilizando procesadores de bajo consumo energeacutetico es como este proyecto busca contribuir de

manera positiva con el medio ambiente

10

173 Impacto econoacutemico Actualmente existe una gran necesidad de procesar grandes

cantidades de datos lo cual hace imprescindible disponer de maacutequinas con estas caracteriacutesticas sin

embargo su alta complejidad aunado al gran costo hace que en instituciones de caraacutecter puacuteblico

sea muy complicado conseguir recurso para este fin Sin embargo un cluacutester de alto rendimiento

reutilizaraacute equipo propio evitando asiacute gastos por concepto de adquisicioacuten de equipo siendo de

esta manera viable para instituciones de caraacutecter puacuteblico

18 Metodologiacutea a Utilizar

181 Anaacutelisis Despueacutes de analizar las diferentes metodologiacuteas de clustering se optoacute por

desarrollar e implementar un cluacutester de alto rendimiento (HPC)

182 Disentildeo

1821 Economiacutea Debido a las caracteriacutesticas del equipo con el cual cuenta el Laboratorios

de la Maestriacutea en Sistemas Computacionales los componentes utilizados para este proyecto son

considerados de uso comuacuten y de bajo costo lo cual los hace faacutecilmente reemplazables en caso de

fallo a un costo accesible El equipo es de la marca Acer Aspire modelos AXC-605-M021 lo cual

nos hace tener ventaja y respaldo del fabricante con respecto a hardware geneacuterico

1822 Instalaciones Un cluacutester requiere de un ambiente controlado Esto es una

habitacioacuten especial con sistema de enfriamiento capacidad suficiente de carga eleacutectrica control

de humedad y un ambiente libre de polvo Ademaacutes se deben considerar el peso del equipo sobre

el piso (ya sea falso o piso normal) Se recomienda colocarlo en los soacutetanos o en la plata baja de

edificios (Rocha Quezada Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

11

En el laboratorio de la Maestriacutea en Sistemas Computacionales se cuenta con espacio que

reuniacutea la mayoriacutea de las caracteriacutesticas requeridas para este proyecto

1823 Escalabilidad Un cluacutester debe ser faacutecilmente escalable y a su vez confiable Por

tal motivo se ha utilizado equipo de marca lo cual nos proporciona maacutes de confiabilidad en su

desempentildeo y a su vez facilidad de aumentar el nuacutemero de equipos si en un futuro fuese necesario

agrandar este proyecto Se armoacute un cluacutester de cinco computadoras con procesadores Intel Core I3

de 64 bits en cada nodo La memoria incluida y perifeacutericos son faacuteciles de adquirir en el mercado

1824 Red En la parte de redes se utilizoacute un switch fast Ethernet con una velocidad de 1

Gbps el cual tiene tazas de transferencia raacutepida y el costo es notablemente maacutes econoacutemico que

uno de fibra oacuteptica

El cableado seleccionado fue el estaacutendar UTP de cobre con la norma Gigabit Ethernet de

IEEE 8023ab con la categoriacutea de cableado 6e que soporta tazas de transferencia de datos de

1000Base T (1 Gbps)

1825 Software

ldquoEl sistema operativo debe constar con servicios dedicados para compartir y respaldar

archivos asiacute como capacidad de acceder a los datos de trabajo raacutepidamente El sistema operativo

debe tambieacuten proveer servicios de monitoreo y reporte de fallas en el sistemardquo (Rocha Quezada

Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

12

Existe una gran variedad de software para instalar cluacutester de alto rendimiento sin embargo

como se ha comentado con anterioridad el costo de adquisicioacuten debe ser accesible por tal motivo

se optoacute por una distribucioacuten con licencia GNU de Linux Rocks Cluster la cual es una distribucioacuten

sencilla de instalar y configurar en comparacioacuten con otras distribuciones analizadas dicha

distribucioacuten estaacute basada en CentOS que a su vez estaacute basada en la conocida distribucioacuten de Linux

Red Hat

1826 Almacenamiento Para este proyecto no se requeriraacute un gran espacio de

almacenamiento por tal motivo los equipos utilizados tanto maestro como esclavos mantuvieron

sus unidades de disco originales las cuales son de 1 TB de almacenamiento

183 Implementacioacuten La implementacioacuten del cluacutester de alto rendimiento fue realizada

dentro de las instalaciones del Laboratorio de la Maestriacutea en Sistemas Computacionales del

Instituto Tecnoloacutegico de Acapulco construido inicialmente para este proyecto de criptoanaacutelisis lo

cual requeriraacute suficiente capacidad de procesamiento para poder implementar ataques de fuerza

bruta a sistemas operativos Las caracteriacutesticas del cluacutester construido son

1831 Software El software instalado en cada uno de los nodos es el siguiente

bull Sistema operativo Rocks Cluacutester Linux 74 (64 bits)

bull Libreriacutea de manejo de mensajes Open-MPI 153

bull Software de monitoreo Ganglia

13

1832 Hardware El cluacutester estaacute compuesto de 17 equipos con las siguientes

caracteriacutesticas

bull Nodo Maestro y 16 Nodos Esclavos

- Procesador Intel Core I3 4150 (4 nuacutecleos) Memoria 6 GB Disco Duro SATA 1 TB

tarjeta de Red Gigabit Ethernet

El hardware adicional es el siguiente

bull Interconexioacuten de Red

bull Switch Cisco 26 puertos 1Gbps modelo SG200 Red interna

1833 Recursos totales del cluacutester

bull Nuacutecleos de unidades de procesamiento (cores) 68

bull Capacidad en memoria 92 GB

bull Capacidad en disco 17 TB

19 Aseguramiento Teacutecnico ndash Material

A continuacioacuten se muestra el desglose del equipo utilizado para la elaboracioacuten de un

cluacutester de alto rendimiento estos componentes consisten en Hardware y Software especializado

asiacute como los costos de produccioacuten y personal involucrados en la metodologiacutea y elaboracioacuten del

proyecto

Costos de Hardware

Costos de Software

14

191 Hardware En este punto se refleja el costo de los dispositivos y herramientas a nivel

fiacutesico las cuales sirvieron para la implementacioacuten del proyecto cluacutester de alto rendimiento Cabe

resaltar que el equipo utilizado forma parte del inventario actual del Laboratorio motivo por el

cual su utilizacioacuten no causoacute erogacioacuten alguna sin embargo la investigacioacuten de costos se realizoacute

con la finalidad que el lector pueda establecer comparativas y buscar alternativas en caso de ajuste

de presupuesto

1911 Equipo de coacutemputo El equipo de coacutemputo utilizado consta de diecisiete

computadoras las cuales serviraacuten una para Nodo Maestro y las dieciseacuteis restantes como Nodos

Esclavos

La descripcioacuten de estos equipos se muestra en la tabla a continuacioacuten mostrando los costos

de todos los equipos utilizados dentro del proyecto

15

Tabla 11 Costo del Proyecto

Modelo

Cantidad

Caracteriacutesticas

Costos

PC - Acer AXC-

605

17

Procesador Intel Core i3

Pantalla 156rdquo

Disco duro 1TB HDD

RAM 6GB

Salida HDMI

Tarjeta de graacuteficos INTEGRADA

Lector de CD

Los costos en el mercado de una PC de

escritorio con estas caracteriacutesticas tiene un

valor aproximado de $600000 pesos

(Moneda nacional Mexicana)

Switch Cisco

Gigabit Ethernet

1

Modelo SG200 de 26 puertos

Costo en el mercado alrededor de

$2000000 pesos MN

Total

12200000 pesos MN

16

Capiacutetulo 2 Estado del Arte

Tiacutetulo del Trabajo Introduccioacuten a la Criptografiacutea

Autor Gibraacuten Granados Paredes

Fecha Julio 2010

Lugar Ciudad de Meacutexico

Publicado en Coordinacioacuten de Publicaciones Digitales DGSCA-UNAM

httpwwwrevistaunammxvol7num7art55int55htm

Siacutentesis Cuando se desea tener seguridad hablando en aacutembitos informaacuteticos la

criptografiacutea es una herramienta muy uacutetil el autor lo entiende tambieacuten como un medio para

garantizar las propiedades de confidencialidad integridad y disponibilidad de los recursos de un

sistema

Con la criptografiacutea se puede garantizar las propiedades de integridad y confidencialidad

pero hay que saber coacutemo utilizarla para ello es importante tener claros los conceptos baacutesicos que

estaacuten detraacutes de los sistemas criptograacuteficos modernos Estos conceptos van desde entender queacute es

la criptografiacutea coacutemo estaacute clasificada entender el funcionamiento baacutesico de algunos sistemas de

cifrado y conocer coacutemo se forman los documentos digitales como firmas y sobres digitales

Resultados El autor realiza un viaje por un gran nuacutemero de conceptos utilizados en

criptografiacutea el inicio y la clasificacioacuten de la misma asiacute como la criptografiacutea claacutesica y moderna y

analiza de manera breve algunos meacutetodos de cifrado maacutes comunes

17

Tiacutetulo del Trabajo Criptoanaacutelisis sobre meacutetodos claacutesicos de cifrado

Autores Sebastiaacuten Goacutemez Juan David Arias Diego Agudelo

Fecha 2 de mayo 2013

Lugar Ciudad de Meacutexico

Publicado en Scientia et Technica Antildeo XVII No 50 abril de 2012

Siacutentesis Los algoritmos criptograacuteficos utilizados desde la antigua Roma hasta nuestros

diacuteas son meacutetodos que convierten un mensaje de texto plano a cifrado al proceso inverso se le

conoce como descifrar Este artiacuteculo realiza un estudio de algunas teacutecnicas de encriptacioacuten claacutesicas

del siglo pasado como lo son el cifrado de Cesar y el cifrado de Vigeneacutere asiacute como muestra

teacutecnicas baacutesicas y modernas de criptoanaacutelisis basadas en la teoriacutea de la informacioacuten y estadiacutestica

como lo son la entropiacutea y el ataque de maacutexima correlacioacuten Las teacutecnicas de criptoanaacutelisis descritas

anteriormente pueden ser usadas en otros meacutetodos de cifrado siempre y cuando esteacuten presentes las

mismas debilidades

Resultados Los autores implementaron en lenguajes de programacioacuten Python un

algoritmo para el caacutelculo de entropiacutea para diferentes longitudes de clave Para la implementacioacuten

de los algoritmos de cifrado y descifrado de Vigeneacutere y de maacutexima correlacioacuten utilizaron lenguaje

de programacioacuten C++ Se probaron los meacutetodos anteriormente descritos sobre textos planos de

diferentes longitudes logrando un resultado de 9385 de efectividad en promedio

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de dos de los

algoritmos de encriptacioacuten maacutes antiguos y baacutesicos pero sobre todo que conociendo los meacutetodos

de criptoanaacutelisis me permitiraacuten analizar debilidades y fortalezas de algoritmos

18

Tiacutetulo del Trabajo ULTRACOM Computacioacuten de Alto Rendimiento para Criptoanaacutelisis

Autor Antonio Castro Lechtaler Alejandro Repetto Martiacuten Bianchi Marcelo Cipriano

Alejandro Arroyo Arzubi Ceacutesar Cicerchia Eduardo Malvacio

Fecha octubre 2014

Lugar Buenos Aires Argentina

Publicado en XX Congreso Argentino de Ciencias de la Computacioacuten (Buenos Aires

2014)

Siacutentesis La generacioacuten de nuacutemeros primos fundamentales para la produccioacuten de claves

el anaacutelisis de secuencias pseudo-aleatorias los procesos de verificacioacuten y validacioacuten de algoritmos

de seguridad en un sentido geneacuterico requieren enormes cantidades de procesamiento Los

procesos relacionados con la matemaacutetica criptograacutefica se caracterizan por la alta necesidad de

coacutemputo El objetivo de ULTRACOM es desarrollar una computacioacuten distribuida multipropoacutesito

que permita como primera aplicacioacuten real el anaacutelisis la validacioacuten y la ejecucioacuten de pruebas de

estreacutes sobre sistemas criptograacuteficos El presente trabajo de investigacioacuten detalla el proceso de

desarrollo de ULTRACOM y muestra un ejemplo de su implementacioacuten en una versioacuten Beta Para

ello toman como entrada dos versiones del algoritmo Trivium Utilizando la misma

infraestructura y sin desarrollo extra se prueban grandes voluacutemenes de claves y vectores de

inicializacioacuten de los algoritmos en busca de secuencias deacutebiles de menor longitud que la de la

buscada

Resultados El equipo implementoacute una versioacuten beta de la plataforma ULTRACOM

comprobando la factibilidad y viabilidad teacutecnica de la generalizacioacuten de la infraestructura de

computacioacuten distribuida en grilla (malla) BOINC Este avance permite extender los horizontes de

BOINC y habilita la posibilidad de obtener la capacidad de coacutemputo de alto rendimiento a bajo

19

costo Concluyeron que ULTRACOM es un proyecto viable escalable y de alto impacto para la

evaluacioacuten y validacioacuten de algoritmos criptograacuteficos

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento y la

implementacioacuten de una arquitectura de computacioacuten distribuida y una vez siendo factible su

desarrollo utilizar su poder de coacutemputo atacando a traveacutes de un algoritmo un sistema criptograacutefico

20

Tiacutetulo del Trabajo Criptografiacutea Cuaacutentica

Autor M Baig

Fecha 2010

Lugar Barcelona Espantildea

Siacutentesis En este artiacuteculo el autor realiza una breve introduccioacuten a la criptografiacutea claacutesica y

la relacioacuten que existe con la teoriacutea de la informacioacuten de Shannon la cual asegura que el cifrado

digital simeacutetrico es secreto y perfecto siempre y cuando se cumplan los tres requisitos

1 La llave ha de ser aleatoria

2 La llave debe usarse soacutelo una vez

3 La llave ha de ser tan larga como el mensaje y de un solo uso debe de estar en posesioacuten

tanto del emisor como del receptor

El punto 3 es el maacutes complicado de cumplir debido a la forma de compartir la llave entre

el emisor y receptor

Maacutes adelante en el artiacuteculo se hace un anaacutelisis sobre otra teacutecnica de criptografiacutea que es el

cifrado digital asimeacutetrico en la que se estudia coacutemo funcionan las llaves privadas y puacuteblicas asiacute

como el meacutetodo de criptograacutefico RSA

Resultados

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento maacutes profundo de

los meacutetodos de criptografiacutea simeacutetricos y asimeacutetricos especiacuteficamente el algoritmo asimeacutetrico

RSA

21

Tiacutetulo del Trabajo La Criptografiacutea Maderista en la Revolucioacuten Mexicana (1910-1911)

Criptoanaacutelisis de una carta cifrada por Gabriel Leyva Solano

Autor Roberto Narvaacuteez

Fecha 2011

Lugar Meacutexico DF

Siacutentesis Este trabajo aborda temas relacionados con las comunicaciones secretas del

movimiento revolucionario comandado por Francisco I Madero a partir de 1910 Se compone de

dos partes la primera es una breve resentildea criacutetica de ejemplos criptograacuteficos del maderismo que

fueron generados entre 1910 y 1911 la segunda describe paso a paso el criptoanaacutelisis que aplicoacute

el autor Roberto Narvaacuteez para desencriptar una carta parcialmente cifrada de Gabriel Leyva Solano

a Francisco I Madero

Resultados El propoacutesito general uacuteltimo es contribuir al conocimiento de la criptografiacutea

mexicana en el siglo XX En lo particular se trata de poner a disposicioacuten de los estudiosos el

contenido completo de la carta de Leyva Solano por primera vez despueacutes de 100 antildeos y al mismo

tiempo someter a la criacutetica teacutecnica e histoacuterica el procedimiento criptoanaliacutetico puesto en operacioacuten

para recuperar el texto plano

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados en nuestro paiacutes sobre formas y meacutetodos de encriptacioacuten durante la Revolucioacuten

Mexicana incluso mucho antes de la 2ordf Guerra mundial momento donde se registroacute un auge

importante dentro de la criptografiacutea moderna

22

Tiacutetulo de Tesis Anaacutelisis de la programacioacuten concurrente sobre la cpu y gpu en el

desarrollo de fractal build

Autor Joseacute Vicente Anilema Guadalupe

Fecha 2012

Lugar Riobamba Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la geometriacutea euclidiana debido a que

el autor realiza una aplicacioacuten que crea paisajes fractales lo que significa crear un paisaje con una

misma figura geomeacutetrica Lo anterior se traduce en una necesidad de gran poder de coacutemputo para

realizar de una manera eficaz la tarea Dentro de la tesis el autor realiza diversos estudios

comparativos entre el procesamiento serializado realizado por una CPU (unidad central de

procesamiento) y procesamiento paralelizado realizado por una GPU (Unidad grafica de

procesamiento) a traveacutes de diversas herramientas para obtener el mejor aprovechamiento de los

recursos

Resultados El autor concluye que es necesario examinar los algoritmos a utilizar para que

estos puedan ser utilizados en coacutemputo paralelo Ademaacutes de que es necesario aprender ciertas

herramientas a utilizar para aprovechar al maacuteximo el coacutemputo distribuido y no desperdiciar el

poder de procesamiento muy superior que las GPUrsquos nos pueden brindar

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados para medir y comparar la velocidad de procesamiento de la unidad central de

procesamiento (CPU) y la unidad graacutefica de procesamiento (GPU) Asiacute como la medida en Flops

(Operaciones de punto flotante por segundo)

23

Tiacutetulo del Trabajo Arquitectura cluacutester de alto rendimiento utilizando herramientas de

software libre

Autores Leonardo Chiquiguanca Edyson Malla Freddy Ajila Rene Guamaacuten-Quincheacute

Fecha mayo 2015

Lugar Loja Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la gran cantidad de datos que tienen

que procesar las universidades puacuteblicas dentro de sus investigaciones realizadas en diferentes aacutereas

como la ingenieriacutea medicina etc y la carencia de recursos econoacutemicos para obtener

supercomputadoras que procesen dicha informacioacuten Los autores proponen dentro de su

investigacioacuten la utilizacioacuten de equipo de coacutemputo existente dentro de su universidad y por medio

de software libre realizar agrupamiento de computadoras para poder lograr el procesamiento de

grandes voluacutemenes de datos de una manera accesible

Resultados Los autores concluyen que la mejor arquitectura para el agrupamiento

(cluacutester) de computadoras en ambientes universitarios es la arquitectura Beowulf debido a que la

implementaron en hardware convencional existente dentro de su campus universitario y que

ademaacutes usaron software libre mencionando que el poder de coacutemputo logrado fue muy cercano al

de una supercomputadora

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de las teacutecnicas

utilizadas en ambientes universitarios para la realizacioacuten de agrupamiento de computadoras y

sobre todo la optimizacioacuten de costos para realizar dicha tarea y tener como finalidad el lograr

mayor capacidad de procesamiento

24

Tiacutetulo de Tesis Desarrollo de un algoritmo de cifrado simeacutetrico de resumen

Autores Jonathan Dave Orjuela Navarrete

Antildeo 2008

Lugar Bogotaacute DC

Siacutentesis Esta tesis realiza un estudio de varios meacutetodos de criptografiacutea simeacutetrica para

posteriormente utilizando diferentes foacutermulas matemaacuteticas crear un algoritmo criptograacutefico

nuevo Dentro de la tesis utiliza dos meacutetodos para realizar pruebas a su algoritmo criptoanaacutelisis

diferencial y criptoanaacutelisis basado en fallos de hardware Dentro de los cuales hace un estudio

detallado de las teacutecnicas y herramientas de criptoanaacutelisis realizado a su algoritmo

Resultados El autor concluye de manera positiva con la realizacioacuten del algoritmo y de

manera satisfactoria con la realizacioacuten de criptoanaacutelisis a su algoritmo pudiendo demostrar la

fortaleza del algoritmo a traveacutes de ejemplo de cifrado con textos claro muy parecido y su

conversioacuten a cadenas completamente diferentes

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de criptoanaacutelisis diferencial y criptoanaacutelisis basado en fallos de hardware para la

evaluacioacuten de algoritmos de cifrado simeacutetrico de textos claros

25

Tiacutetulo del Trabajo Firt step in a Pc cluster development with openMosix

Autores Javier Bilbao Gorka Garate

Antildeo 2008

Lugar Bilbao Spain

Siacutentesis En este trabajo se afirma que es posible hacer maacutequinas de alta capacidad de

caacutelculo mediante la interconexioacuten de equipos con redes de alta velocidad A este tipo de sistemas

se les llama sistemas distribuidos y hoy en diacutea es la tecnologiacutea maacutes utilizada para resolver

problemas que requieren una gran capacidad de caacutelculo La agrupacioacuten de computadoras permite

que varias computadoras trabajen juntas para resolver los problemas de informaacutetica comuacuten Este

artiacuteculo centra su estudio en uno de los diferentes meacutetodos de agrupamiento de computadoras

openMosix El trabajo tambieacuten evaluacutea el cluacutester por dos casos de estudio donde se mejora el

tiempo de ejecucioacuten de los problemas resueltos

Resultados El autor del artiacuteculo concluye con la realizacioacuten satisfactoria de agrupamiento

de computadoras bajo el meacutetodo openMosix el cual uacutenicamente permite agrupamiento de la forma

SSI (Single System Image) que se refiere a que uacutenicamente se puede realizar el agrupamiento con

todos los nodos ejecutando un mismo sistema operativo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras openMosix ventajas desventajas y dificultades para

su implementacioacuten

26

Tiacutetulo del Trabajo Disentildeo e implementacioacuten de un cluacutester tipo Beowulf para el desarrollo

de coacutemputo cientiacutefico avanzado

Autores Edgar Rubeacuten Gonzaacutelez Ramiacuterez Abimael Rodriacuteguez Saacutenchez

Antildeo 2008

Lugar Instituto Politeacutecnico Nacional Meacutexico DF

Siacutentesis Este trabajo de tesis ha desarrollado e implementado una herramienta

computacional llamada Cluster Beowulf para mejorar la programacioacuten paralela Comenzando

con la memoria compartida y distribuida el autor implemento el agrupamiento tipo Beowulf

pensando en procesamiento paralelo la optimizacioacuten de las fuentes informaacuteticas El disentildeo se

construye mediante una distribucioacuten Linux Fedora Core 6 a 64 bits utilizando todas las ventajas

que ofrece el estaacutendar Gigabyt Ethernet La programacioacuten paralela fue desarrollada en lenguaje C

tanto para MPI como para OPENMP

Resultados El autor del artiacuteculo concluye que de acuerdo con los resultados el tiempo

de procesamiento se redujo con el uso muacuteltiples nuacutecleos mejoroacute hasta ocho veces gracias al

multihilo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras Beowulf y su implementacioacuten en sistemas operativos

de uso libre Linux distribucioacuten Fedora 6

27

Marco Teoacuterico

21 Seguridad de la Informacioacuten

La Seguridad de la Informacioacuten consiste y hace referencia a la proteccioacuten de cualquier

amenaza para salvaguardar los activos fijos y en especial toda informacioacuten de la cual estaacute basada

la continuidad de las operaciones de la empresa sean estas ocasionadas dentro o fuera de la misma

con esto se logra disminuir los dantildeos y perjuicios que estas amenazas causariacutean a la organizacioacuten

y a la vez aumentar las oportunidades de servicio hacia otras empresas

La Seguridad de la informacioacuten se consigue mediante la implementacioacuten de controles

efectivos que pueden ser normas manual de funciones buenas praacutecticas procedimientos

estructuras organizativas funciones de software y hardware planes de contingencia y herramientas

que se encargan de proteger la privacidad e integridad de la informacioacuten que se almacena en un

sistema informaacutetico Estos controles necesitan continuamente ser establecidos monitoreados

revisados y mejorados en donde sea necesario para asegurar que se cumplan los objetivos

especiacuteficos de seguridad en cada aacuterea de negocio de la organizacioacuten

La seguridad informaacutetica es en realidad una rama de la seguridad de la informacioacuten aunque

de forma praacutectica algunos autores suelen utilizar de manera indistinta ambos teacuterminos

211 Objetivo de la seguridad de la informacioacuten En la seguridad de la informacioacuten

sabiendo que dichos procesos de seguridad permiten proteger el recurso maacutes importante y valioso

de una organizacioacuten partiendo como principio fundamental los procesos de aseguramiento el

28

objetivo del proceso de seguridad informaacutetica es obtener un nivel aceptable de seguridad ya que

la informacioacuten es lo maacutes valioso que tiene una institucioacuten o empresa por lo tanto esta debe ser

protegida para que no sea vulnerable y utilizada para fines maliciosos

212 Principios de la seguridad informaacutetica

Confidencialidad Los datos solo deben ser conocidos y accedidos por quienes esteacuten

autorizados durante su almacenamiento procesamiento o trasmisioacuten Verificar y certificar que solo

los usuarios con accesos autorizados puedan acceder a la informacioacuten

Integridad Los datos solo pueden ser modificados y eliminados por quienes esteacuten

autorizados para ello es decir los sistemas y aplicaciones solo deben ser operados por personal

autorizado

Disponibilidad Los sistemas que almacenan datos e informacioacuten deben garantizar su

acceso cuando asiacute se requiera por quienes tengan derecho a ello

213 Caracteriacutesticas de seguridad informaacutetica

Control Solo los usuarios autorizados deciden cuaacutendo y coacutemo permitir el acceso a la

informacioacuten

Auditoriacutea Establece las acciones cuaacutendo las implementa y quieacuten las realiza sobre el

sistema

Autenticidad Define que la informacioacuten necesaria es correcta utilizable y vaacutelida en tiempo

y forma

No Repudio Su funcioacuten es evitar que alguna entidad que envioacute o recibioacute informacioacuten

alegue que no lo hizo

29

214 Formas de Autenticacioacuten

Contrasentildea Una contrasentildea es un tipo de seguridad informaacutetica ya que es una serie de

caracteres secretos que permiten a un usuario tener acceso a un archivo equipo de coacutemputo o

programa y negar el acceso a usuarios no autorizados

Certificado digital Es un tipo de seguridad informaacutetica que permite la firma digital

electroacutenica que garantiza teacutecnica y legalmente la identidad de una persona en Internet

Autenticacioacuten HTTP Tipo de seguridad informaacutetica que delega la autenticacioacuten de

usuarios a un servidor a traveacutes de Kerberos

215 Ciber-seguridad Con los avances tecnoloacutegicos y la demanda que ha causado en ello

existe un elevado iacutendice de informacioacuten personal y empresarial que circula y se mantiene en la red

por la utilizacioacuten del internet esto permite que toda informacioacuten quede expuesta a cualquier ataque

de ciber-delincuentes los cuales buscan la manera de vulnerar cualquier sistema para espiar robar

informacioacuten o hacer dantildeo de cualquier tipo por lo que se ha visto la necesidad de tomar medidas

de seguridad para salvaguardar la informacioacuten ya que es muy importante

La ciberseguridad es la proteccioacuten de los sistemas conectados a Internet incluidos el

hardware el software y los datos de los ciberataques En un contexto informaacutetico la seguridad

comprende la ciberseguridad y la seguridad fiacutesica ambas son utilizadas por las empresas para

proteger contra el acceso no autorizado a los centros de datos y otros sistemas de coacutemputo El

objetivo de la ciberseguridad es limitar el riesgo y proteger los activos de Tecnologiacuteas de

Informacioacuten de los atacantes con intenciones maliciosas La seguridad de la informacioacuten estaacute

30

disentildeada para mantener la confidencialidad integridad y disponibilidad de los datos es un

subconjunto de la ciberseguridad

22 Criptografiacutea

La Criptografiacutea tambieacuten llamada ldquoescritura ocultardquo tradicionalmente en el aacutembito de

criptografiacutea es donde se ocupan las teacutecnicas de cifrado o codificacioacuten que permiten alterar el

contenido de cierta informacioacuten o mensajes con el fin de hacerlos ininteligibles a receptores o

personas no autorizadas (Meneacutendez-Barzanallana 17)

Actualmente la criptografiacutea se encarga de analizar algoritmos protocolos y sistemas que

son utilizados para proveer seguridad a las comunicaciones informacioacuten y a las entidades que se

comunican entre siacute

221 Tipos de Criptografiacuteas

2211 Tablas Hash Un hash o funcioacuten hash toma un grupo de caracteres (llamado clave)

y lo asigna a un valor de cierta longitud (llamado valor hash o hash) El valor hash es representativo

de la cadena de caracteres original pero normalmente es maacutes pequentildeo que el original

El hash tambieacuten es utilizado en el cifrado y descifrado de firmas digitales La funcioacuten hash

transforma la firma digital luego tanto el valor hash como la firma se enviacutean al receptor El

receptor utiliza la misma funcioacuten hash para generar el valor hash y luego lo compara con el recibido

31

en el mensaje Si los valores hash son los mismos es probable que el mensaje se haya transmitido

sin errores

Un ejemplo de una funcioacuten hash se llama plegado(folding) Esta toma un valor original lo

divide en varias partes luego agrega las partes y usa los uacuteltimos cuatro diacutegitos restantes como

valor o clave hash

2212 Tipos de algoritmos Hash

22121 SHA - 1 (Secure Hash Algorithm) Es un algoritmo criptograacutefico de Hash

publicado por el gobierno de los Estados Unidos Genera un valor Hash de 160 bits a partir de una

secuencia de longitud arbitraria Es considerado lo suficientemente seguro para aplicaciones

praacutecticas pero hay disponibles versiones maacutes robustas SHA - 256 SHA - 384 y SHA - 512 que

generan valores Hash de 256 384 y 512 bits respectivamente estas versiones reemplazaraacuten a SHA

- 1 mientras se siga trabajando sobre ellas (Borghello 2009)

22122 MD5 (Message Digest Algorithm) En criptografiacutea MD5 es una funcioacuten hash

criptograacutefica ampliamente utilizada con un valor hash de 128 bits Como estaacutendar de Internet (RFC

1321) MD5 se ha empleado en una amplia variedad de aplicaciones de seguridad y tambieacuten se

usa comuacutenmente para verificar la integridad de los archivos Un hash MD5 generalmente se

expresa como un nuacutemero hexadecimal de 32 diacutegitos

MD5 es una versioacuten reforzada de MD4 Al igual que MD4 el hash MD5 fue inventado por

el profesor Ronald Rivest del Massachusetts Institute of Technology (MIT) Ademaacutes MD5 se

32

utilizoacute como modelo para SHA-1 ya que comparten muchas caracteriacutesticas comunes MD5 y

SHA-1 son los dos algoritmos hash maacutes utilizados en la actualidad aunque el uso de MD5 ha

disminuido ya que ahora se considera roto (Borghello 2009)

22123 RIPEMD ndash 160 Es una funcioacuten hash criptograacutefica basada en la construccioacuten

Merkle-Damgaringrd (MD) Se usa en el estaacutendar de Bitcoin Es una versioacuten reforzada del algoritmo

RIPEMD que produce un resumen de hash de 128 bits mientras que el algoritmo RIPEMD-160

produce una salida de 160 bits La funcioacuten de compresioacuten consta de 80 etapas formadas por 5

bloques que se ejecutan 16 veces cada uno Este patroacuten se ejecuta dos veces con los resultados

combinados en la parte inferior utilizando la adicioacuten del moacutedulo 32 (Borghello 2009)

22124 Funcioacuten Merkle-Damgaringrd La construccioacuten MD es una metodologiacutea para crear

funciones hash resistentes a colisiones a partir de funciones de compresioacuten unidireccionales Ralph

Merkle la propuso en el antildeo de 1979 en ldquoA certified Digital Signaturerdquo posterior a este estudio

Ivan Damgaringrd demostroacute de manera independiente que la estructura era soacutelida (Merkle amp

Damgaringrd sf)

2213 Cifrado simeacutetrico Los cifrados simeacutetricos son los cifrados criptograacuteficos maacutes

antiguos y maacutes utilizados En un cifrado simeacutetrico la clave que descifra el texto cifrado es la

misma (o puede derivarse faacutecilmente) de la clave que cifra el texto claro Esta clave a menudo se

conoce como la clave secreta Los cifrados simeacutetricos maacutes utilizados son DES y AES

La problemaacutetica que surge es la seguridad de la clave

33

El emisor cifra el mensaje con una clave

Enviacutea el mensaje cifrado de tal manera que nadie puede descifrarlo sin dicha clave

El receptor obtiene la clave y entonces puede descifrar el mensaje con la misma clave

que recibioacute del emisor

Algunos algoritmos de este tipo son

22131 RC5 (Cifrado de Rivest) Es un algoritmo de cifrado de bloque de clave simeacutetrica

disentildeado por Ron Rivest en 1994 Se destaca por ser simple raacutepido (debido a que usa solo

operaciones de coacutemputo primitivas como XOR o shift) y ademaacutes por consumir menos memoria

RC5 es un cifrado de bloques y aborda dos bloques de palabras a la vez Dependiendo del

tamantildeo del bloque de texto sin formato nuacutemero de rondas y tamantildeo de clave se pueden definir

varias instancias de RC5 y cada instancia se denota como RC5-w r b donde w = tamantildeo de

palabra en bits r = nuacutemero de rondas y b = tamantildeo de la clave en bytes (Pawar 2016)

Como se ha mencionado RC5 utiliza bloques de 2 palabras el tamantildeo del bloque de texto

sin formato puede ser de 32 64 o 128 bits

22132 IDEA (International Data Encryption Algorithm) Baacutesicamente es un algoritmo

de cifrado de bloque simeacutetrico El algoritmo asimeacutetrico utiliza la misma clave para el cifrado y

descifrado Un cifrado de bloque divide el mensaje en bloques cada uno de una longitud fija y

luego cifra cada bloque de forma independiente

34

El tamantildeo de bloque tiacutepico es de 16 bytes de 128 bits Un cifrado de bloque generalmente

operaraacute en bloques o rondas donde se aplica parte de la clave a la ronda Despueacutes de un cierto

nuacutemero de rondas digamos entre 10 y 16 se termina con el texto cifrado para ese bloque

El bloque de texto cifrado tiene exactamente el mismo tamantildeo que el bloque de texto sin

formato 16 bytes Para cada ronda se trabaja en el bloque utilizando una parte de la clave de

cifrado a la que se le llama la clave redonda Muacuteltiples claves redondas se derivan de la clave de

cifrado utilizando para esto un programa de claves

La programacioacuten de claves es un algoritmo que cambia XOR multiplica y realiza otros

tipos de operaciones en la clave de cifrado original para obtener estas claves redondas Bueno si

tengo un bloque de 16 bytes y tengo una clave de 128 bits que tambieacuten es de 16 bytes (Educba

2019)

22133 DES (Data Encryption Standard) El algoritmo DES es el algoritmo de seguridad

maacutes popular Es un algoritmo simeacutetrico lo que significa que se utilizan las mismas claves para

cifrar descifrar datos confidenciales La longitud de la clave es de 8 bytes (64 bits) Entonces

para cifrar descifrar datos el algoritmo DES utiliza una clave de 8 bytes pero 1 byte (8 bits) para

la verificacioacuten de paridad Es un algoritmo de cifrado de bloque por lo tanto el tamantildeo del bloque

de datos del algoritmo DES es de 64 bits Para cifrar descifrar datos el algoritmo DES utiliza la

estructura Feistel Entonces utiliza una ronda para cifrar descifrar datos Aunque el tamantildeo del

35

bloque de datos es de 64 bits el nuacutemero de rondas seraacute de 16 rondas asiacute mismo utilizaraacute diferentes

subclaves para cada ronda por lo tanto el nuacutemero de subclaves seraacute de 16 subclaves

Como se puede observar la clave efectiva es de 56 bits por consiguiente se tiene 256

combinaciones posibles por lo que la fuerza bruta se hace casi imposible (Sanjoy 2015)

2214 Cifrado asimeacutetrico Los cifrados asimeacutetricos tambieacuten se conocen como cifrados

con claves puacuteblicas y privadas Usan dos claves una para el cifrado de mensajes y la otra durante

el descifrado

Un intruso puede encriptar cualquier mensaje usando la clave puacuteblica conocida Los

cifrados asimeacutetricos son por lo tanto vulnerables a los ataques de texto sin formato Los cifrados

con encriptacioacuten de clave puacuteblica deben proporcionar seguridad contra tales ataques Despueacutes de

encriptar dos mensajes con la misma clave puacuteblica el intruso no puede distinguir queacute texto cifrado

estaacute conectado con queacute texto plano Ademaacutes un observador que analiza dos mensajes encriptados

usando el mismo algoritmo y la misma clave puacuteblica no puede distinguir sus textos cifrados

(Kowalczyk 2015)

Los cifrados asimeacutetricos son mucho maacutes lentos que los cifrados simeacutetricos (generalmente

mil veces maacutes lentos) Es una praacutectica comuacuten usar el cifrado de clave puacuteblica solo para establecer

la conexioacuten segura y negociar la nueva clave secreta que luego se utilizaraacute para proteger la

comunicacioacuten mediante cifrado simeacutetrico Ejemplos de este cifrado son

36

22141 DSA (Digital Signature Algorithm - Algoritmo de Firma digital) Es un estaacutendar

del Gobierno Federal de los Estados Unidos para firmas digitales Fue propuesto por el Instituto

Nacional de Estaacutendares y Tecnologiacutea (NIST) en agosto de 1991 para ser usado en su Estaacutendar de

Firma Digital (DSS) en el antildeo de 1993

La primera parte del algoritmo DSA es la generacioacuten de clave puacuteblica y clave privada que

puede describirse como

Se elige un nuacutemero primo q que se llama divisor primo

Se elige otro nuacutemero primo p de modo que pndash1 mod q = 0 p seraacute llamado moacutedulo

primo

Ahora se elige un nuacutemero entero g tal que 1 ltg ltp g q mod p = 1 g = h ((p

ndash 1) q) mod p q tambieacuten se llama moacutedulo de orden multiplicativo de g moacutedulo p

Se elige un nuacutemero entero tal que 0 ltx ltq

Se calcula y como g x mod p

Se empaqueta la clave puacuteblica como p q g y

Por uacuteltimo se empaqueta la clave privada como p q g x

La segunda parte del algoritmo DSA es la generacioacuten de firma y la verificacioacuten de firma

Para generar una firma de mensaje el remitente puede seguir estos pasos

Se genera el resumen del mensaje h utilizando un algoritmo hash como SHA1

Se genera un nuacutemero aleatorio k tal que 0 ltk ltq

37

Se calcula r como (g k mod p) mod q Si r = 0 seleccione una k diferente

Ahora se calcula i de modo que k i mod q = 1 i se llama el inverso multiplicativo modular

de k moacutedulo q

Se calcula s = i (h + r x) mod q Si s = 0 se selecciona una k diferente

Por uacuteltimo se empaqueta la firma digital como r s (Yang 2019)

22142 RSA Encriptacioacuten RSA encriptacioacuten Rivest-Shamir-Adleman tipo de

criptografiacutea de clave puacuteblica ampliamente utilizada para la encriptacioacuten de datos de correo

electroacutenico y otras transacciones digitales a traveacutes de Internet RSA lleva el nombre de sus

inventores Ronald L Rivest Adi Shamir y Leonard M Adleman quienes lo crearon mientras

trabajaban en la facultad del Instituto Tecnoloacutegico de Massachusetts (Simmons 2019)

En el sistema RSA un usuario elige de manera secreta un par de nuacutemeros primos p y q tan

grandes que factorizar el producto n = pq estaacute mucho maacutes allaacute de las capacidades informaacuteticas

proyectadas para la vida uacutetil de los cifrados A partir del antildeo 2000 los estaacutendares de seguridad del

gobierno de EE UU exigen que el moacutedulo tenga un tamantildeo de 1024 bits es decir p y q deben

tener un tamantildeo de aproximadamente 155 diacutegitos decimales por lo que n es aproximadamente un

nuacutemero de 310 diacutegitos Dado que los nuacutemeros duros maacutes grandes que actualmente se pueden

factorizar son solo la mitad de este tamantildeo y dado que la dificultad de factorizar se duplica

aproximadamente por cada tres diacutegitos adicionales en el moacutedulo se cree que los moacutedulos de 310

diacutegitos estaacuten a salvo de factorizar durante varias deacutecadas

38

2215 Cifrado hiacutebrido Es una teacutecnica comuacuten que combina diferentes funciones

criptograacuteficas como el cifrado de bloque Con el cifrado hiacutebrido se pueden cifrar datos firmarlos

o agregar un MAC y enviarlos en un objeto seguro (como una cadena o archivo) a traveacutes de un

canal de comunicacioacuten inseguro (sin un acuerdo clave entre dos partes)

En el sistema de cifrado hiacutebrido el texto plano (sin formato) se divide en tokens Luego

se calcula la longitud de cada ficha Los tokens y sus longitudes se almacenan en una matriz

Posteriormente se aplica el algoritmo Ceacutesar anidado sugerido El texto producido se almacena en

una matriz n x m llamada A Luego la transposicioacuten de esta matriz At se calcula utilizando

nuestra versioacuten revisada del cifrado de transposicioacuten para resolver el problema de secuenciacioacuten

A continuacioacuten el algoritmo RSA revisado se aplica en la matriz producida En el paso final se

aplica el formato de datos textuales usando el coacutedigo ASCII para producir el texto cifrado El

proceso de descifrado se realiza de la misma manera pero en orden inverso (Nahar amp Abu Abbas

2010)

23 Criptoanaacutelisis

El criptoanaacutelisis es el proceso de estudiar sistemas criptograacuteficos para buscar debilidades

o fugas de informacioacuten En general se considera que el criptoanaacutelisis explora las debilidades de

las matemaacuteticas subyacentes de un sistema criptograacutefico pero tambieacuten incluye la buacutesqueda de

debilidades en la implementacioacuten como ataques de canal lateral o entradas de entropiacutea deacutebiles

39

Su funcioacuten es la de conseguir obtener el significado de mensajes creados por medio de

criptografiacutea El objetivo principal del criptoanaacutelisis es opuesto al de la criptografiacutea Tiene como

finalidad encontrar la debilidad de las diferentes teacutecnicas criptograacuteficas para explotarla y de esta

manera reducir o eliminar la seguridad de la teacutecnica criptograacutefica Cualquier intento de

criptoanaacutelisis puede ser llamado ataque Una vez que un atacante logra romper la seguridad que

una teacutecnica criptograacutefica aportaba al sistema se dice que dicho sistema ha sido roto y por lo tanto

dicho ataque tuvo eacutexito

El criptoanaacutelisis es la investigacioacuten de sistemas texto cifrado y cifrados para revelar el

significado oculto o los detalles del sistema mismo El objetivo de este tipo de estudio es descubrir

los aspectos ocultos incluso si la clave o el algoritmo principal no se pueden descifrar Se necesita

una combinacioacuten exitosa de persistencia matemaacuteticas intuicioacuten curiosidad y una computadora

que funcione para hacer un buen criptoanalista Este tipo de ruptura de coacutedigo es extremadamente

importante especialmente en el mundo tecnoloacutegicamente dependiente de hoy El criptoanaacutelisis es

constantemente realizado por criptoacutegrafos que intentan obtener informacioacuten valiosa y por aquellos

que intentan descifrar el coacutedigo para revelar secretos (Security Degree Hub 2017)

24 Niveles de seguridad

Los niveles de seguridad de sistemas operativos son otorgados de acuerdo con el sistema

operativo que esteacute utilizando la empresa o institucioacuten ya sea puacuteblica privada gubernamental o no

gubernamental En el manual ldquoTrusted Computer System Evaluation Criteriardquo (United States

40

Government Department of Defense 1983) el Departamento de Defensa de los Estados Unidos

define los siguientes niveles

241 Nivel D1 Este nivel es el maacutes bajo de seguridad por lo tanto la norma establece que

el sistema no es confiable Esta divisioacuten contiene solo una clase Estaacute reservado para aquellos

sistemas que han sido evaluados pero que no cumplen con los requisitos para un nivel de

evaluacioacuten superior

242 Nivel C1 Un sistema de nivel C1 cumple nominalmente los requisitos de seguridad

discrecionales al proporcionar separacioacuten de usuarios y datos Incorpora alguna forma de controles

creiacutebles capaces de imponer limitaciones de acceso de manera individual es decir aparentemente

adecuados para permitir que los usuarios puedan proteger la informacioacuten privada o del proyecto y

evitar que otros usuarios lean o destruyan accidentalmente sus datos Se espera que el entorno de

nivel C1 sea uno de los usuarios cooperantes que procesan datos con el mismo nivel de

sensibilidad Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten

de nivel C1 son

Control de acceso discrecional por ejemplo listas de control de acceso (ACL)

usuario grupo

Por lo general para usuarios que estaacuten en el mismo nivel de seguridad

Proteccioacuten de nombre de usuario y contrasentildea y base de datos de autorizaciones

seguras (ADB)

Sistema operativo protegido y modo de operaciones del sistema

Comprobacioacuten perioacutedica de integridad de TCB

41

Mecanismos de seguridad probados sin derivaciones obvias

Documentacioacuten para la seguridad del usuario

Documentacioacuten para la seguridad de la administracioacuten de sistemas

Documentacioacuten para pruebas de seguridad

Documentacioacuten de disentildeo TCB

Tiacutepicamente para usuarios en el mismo nivel de seguridad

La certificacioacuten C1 es rara Los sistemas de ejemplo son versiones anteriores de

Unix IBM RACF

243 Nivel C2 Los sistemas de esta clase imponen un control de acceso discrecional maacutes

fino que los sistemas (C1) lo que hace que los usuarios sean individualmente responsables de sus

acciones a traveacutes de procedimientos de inicio de sesioacuten auditoriacutea de eventos relevantes para la

seguridad y aislamiento de recursos Los siguientes son requisitos miacutenimos para los sistemas

asignados a una clasificacioacuten de nivel C2

La proteccioacuten de objetos puede ser para un solo usuario Por ejemplo a traveacutes de

una base de datos ACL

La autorizacioacuten de acceso solo puede ser asignada por usuarios autorizados

Proteccioacuten de reutilizacioacuten de objetos (Por ejemplo para evitar la reasignacioacuten de

objetos eliminados de manera segura)

Procedimientos obligatorios de identificacioacuten y autorizacioacuten para los usuarios (Por

ejemplo Usuario Contrasentildea)

Auditoriacutea completa de eventos de seguridad (es decir fecha hora evento usuario

eacutexito falla ID de terminal)

42

Modo de operacioacuten del sistema protegido

Proteccioacuten adicional para la autorizacioacuten y los datos de auditoriacutea

Documentacioacuten como C1 maacutes informacioacuten sobre el examen de la informacioacuten de

auditoriacutea

Esta es una de las certificaciones maacutes comunes Los sistemas operativos de ejemplo

son VMS IBM OS 400 Windows NT Novell NetWare 411 Oracle 7 DG AOS

VS II

244 Nivel B1 Los sistemas de este nivel requieren todas las caracteriacutesticas requeridas

para el nivel C2 Ademaacutes debe estar presente una declaracioacuten informal del modelo de poliacutetica de

seguridad etiquetado de datos y control de acceso obligatorio sobre sujetos y objetos nombrados

La capacidad debe existir para etiquetar con precisioacuten la informacioacuten exportada Cualquier falla

identificada por la prueba debe ser eliminada Los siguientes son requisitos miacutenimos para los

sistemas asignados a una clasificacioacuten de nivel B1

Etiquetado obligatorio de seguridad y acceso de todos los objetos (Por ejemplo

archivos procesos dispositivos)

Comprobacioacuten de integridad de etiquetas (Por ejemplo mantenimiento de etiquetas

de sensibilidad cuando se exportan datos)

Auditoriacutea de objetos etiquetados

Control de acceso obligatorio para todas las operaciones

Capacidad para especificar el nivel de seguridad impreso en salida legible para

humanos (Por ejemplo impresoras)

43

Capacidad para especificar el nivel de seguridad en cualquier salida legible por

maacutequina

Auditoriacutea mejorada

Proteccioacuten mejorada del sistema operativo

Documentacioacuten mejorada

Los sistemas operativos de ejemplo son HP-UX BLS Cray Research Trusted

Unicos 80 Digital SEVMS Harris CS SX SGI Trusted IRIX

245 Nivel B2 En los sistemas de nivel B2 el TCB se basa en un modelo de poliacutetica de

seguridad formal claramente definido y documentado que requiere que la aplicacioacuten de control de

acceso discrecional y obligatoria que se encuentra en los sistemas de nivel B1 se extienda a todos

los sujetos y objetos en el sistema Ademaacutes se abordan los canales encubiertos El TCB debe

estructurarse cuidadosamente en elementos criacuteticos para la proteccioacuten y no criacuteticos para la

proteccioacuten La interfaz TCB estaacute bien definida y el disentildeo y la implementacioacuten TCB le permiten

someterse a pruebas maacutes exhaustivas y una revisioacuten maacutes completa Se fortalecen los mecanismos

de autenticacioacuten se proporciona una gestioacuten confiable de las instalaciones en forma de soporte

para las funciones de administrador y operador del sistema y se imponen estrictos controles de

gestioacuten de la configuracioacuten El sistema es relativamente resistente a la penetracioacuten Los siguientes

son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de nivel B2

Notificacioacuten de cambios en el nivel de seguridad que afectan a los usuarios

interactivos

Etiquetas de dispositivos jeraacuterquicos

44

Acceso obligatorio a todos los objetos y dispositivos

Comunicaciones de ruta confiables entre usuario y sistema

Rastreo de canales de almacenamiento encubiertos

Modo de operaciones del sistema maacutes estricto en unidades independientes de varios

niveles

Anaacutelisis de canales encubiertos

Pruebas de seguridad mejoradas

Modelos formales de TCB

Versioacuten actualizacioacuten y anaacutelisis y revisioacuten de parches

Los sistemas de ejemplo son Honeywell Multics Cryptek VSLAN Trusted

XENIX

246 Nivel B3 El TCB debe satisfacer los requisitos del monitor de referencia para mediar

todos los accesos de los sujetos a los objetos ser a prueba de manipulaciones y ser lo

suficientemente pequentildeo como para ser sometido a anaacutelisis y pruebas Con este fin el TCB estaacute

estructurado para excluir el coacutedigo que no es esencial para la aplicacioacuten de la poliacutetica de seguridad

con una importante ingenieriacutea del sistema durante el disentildeo y la implementacioacuten del TCB dirigido

a minimizar su complejidad Se admite un administrador de seguridad los mecanismos de

auditoriacutea se ampliacutean para sentildealar eventos relevantes para la seguridad y se requieren

procedimientos de recuperacioacuten del sistema El sistema es altamente resistente a la penetracioacuten

Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de clase

(B3)

45

ACL adicionalmente basadas en grupos e identificadores

Acceso de ruta confiable y autenticacioacuten

Anaacutelisis automaacutetico de seguridad

Modelos TCB maacutes formales

Auditoriacutea de eventos de auditoriacutea de seguridad

Recuperacioacuten confiable despueacutes de la caiacuteda del sistema y documentacioacuten relevante

Cero defectos de disentildeo en TCB y defectos miacutenimos de implementacioacuten

El uacutenico sistema operativo con certificacioacuten B3 es Getronics Wang Federal XTS-

300

247 Nivel A1 Los sistemas en el nivel A1 son funcionalmente equivalentes a los del nivel

B3 en que no se agregan caracteriacutesticas arquitectoacutenicas adicionales ni requisitos de poliacuteticas La

caracteriacutestica distintiva de los sistemas en este nivel es el anaacutelisis derivado de la especificacioacuten

formal del disentildeo y las teacutecnicas de verificacioacuten y el alto grado resultante de seguridad de que el

TCB se implementa correctamente Esta garantiacutea es de naturaleza de desarrollo comenzando con

un modelo formal de la poliacutetica de seguridad y una especificacioacuten formal de alto nivel del disentildeo

Independientemente del lenguaje de especificacioacuten particular o del sistema de verificacioacuten

utilizado existen los siguientes criterios importantes para la verificacioacuten del disentildeo de nivel A1

Meacutetodos formales y prueba de integridad de TCB

Estos son los uacutenicos sistemas con certificacioacuten A1 Boeing MLS LAN Gemini

Trusted Network Processor Honeywell SCOMP (United States Government

Department of Defense 1983)

46

25 Sistemas Operativos

Un sistema operativo actuacutea como intermediario entre el usuario de una computadora y el

hardware de la computadora El propoacutesito de un sistema operativo es proporcionar un entorno en

el que un usuario pueda ejecutar programas de manera conveniente y eficiente

Un sistema operativo es un software que administra el hardware de la computadora El

hardware debe proporcionar mecanismos apropiados para garantizar el correcto funcionamiento

del sistema informaacutetico y para evitar que los programas del usuario interfieran con el correcto

funcionamiento del sistema (Carretero Peacuterez de Miguel Anasagasti Garciacutea Carballeira amp Peacuterez

Costoya 2001)

Un sistema operativo es un programa que controla la ejecucioacuten de programas de aplicacioacuten

y actuacutea como una interfaz entre el usuario de una computadora y el hardware de la computadora

Una definicioacuten maacutes comuacuten es que el sistema operativo es el uacutenico programa que se ejecuta

en todo momento en la computadora (generalmente llamado kernel) y todo lo demaacutes son

programas de aplicacioacuten

Un sistema operativo se ocupa de la asignacioacuten de recursos y servicios como memoria

procesadores dispositivos e informacioacuten El sistema operativo incluye los programas para

administrar estos recursos como un controlador de traacutefico un programador un moacutedulo de

administracioacuten de memoria programas de E S y un sistema de archivos (Pawar 2016)

47

251 Windows Sistema operativo de la empresa Microsoft es un conjunto de programas

que administra los recursos de una computadora Windows empieza a trabajar cuando se enciende

o inicializa el equipo para gestionar el hardware empezando desde los niveles maacutes baacutesicos

Es importante conocer que los sistemas operativos funcionan tanto en las computadoras

como en diferentes dispositivos electroacutenicos que usan microprocesadores En este caso Windows

su versioacuten estaacutendar funciona con computadoras Microsoft domina el mercado de los sistemas

operativos debido a su comodidad se puede decir que eacuteste sistema operativo se encuentra

instalado en el 887 de los equipos de coacutemputo que cuentan con acceso a Internet en todo el

mundo

Se pueden mencionar algunas aplicaciones principales (que eacutestas tambieacuten pueden ser

desinstaladas por los usuarios o actualizadas sin que el sistema operativo se dantildee o deje de

funcionar) se encuentran el procesador de texto WordPad el navegador Internet Explorer el

reproductor multimedia Windows Media y el editor de imaacutegenes Paint

La principal novedad que aportoacute Windows desde sus oriacutegenes fue la facilidad para usarlo

y el atractivo visual De hecho su nombre (ldquoventanasrdquo) se debe a la forma en que el sistema

presenta a los usuarios los recursos con los que cuenta su computadora lo que facilita las tareas

cotidianas Windows tambieacuten suele recibir varias criacuteticas por sus problemas de seguridad y por

otros fallos

48

252 Registro de Windows El registro es una base de datos jeraacuterquica que contiene datos

que son criacuteticos para el funcionamiento de Windows y las aplicaciones y servicios que se ejecutan

en Windows Los datos estaacuten estructurados en un formato de aacuterbol Cada nodo en el aacuterbol se llama

clave Cada clave puede contener subclaves y entradas de datos llamadas valores A veces la

presencia de una clave es el uacutenico dato que requiere una aplicacioacuten otras veces una aplicacioacuten

abre una clave y usa los valores asociados con la clave (Microsoft Inc 2019) Una clave puede

tener cualquier nuacutemero de valores y los valores pueden tener cualquier forma El registro es

utilizado por

Autenticacioacuten

Nuacutecleo (Kernel)

Controladores de dispositivos

Servicios

SAM

Las carpetas del sistema se almacenaraacuten en distintas rutas de acceso dependiendo de la

versioacuten de Windows con la que se esteacute trabajando a continuacioacuten cuatro de los cinco archivos

que maacutes interesan a esta investigacioacuten se encuentran en la siguiente ubicacioacuten SystemRoot

System32 Config dentro de las siguientes sub llaves

SAM - HKEY LOCAL MACHINE SAM

SECURITY - HKEY LOCAL MACHINE SECURITY

SOFTWARE - HKEY LOCAL MACHINE SOFTWARE

SYSTEM - HKEY LOCAL MACHINE SYSTEM

49

253 Administrador de cuentas de seguridad El administrador de cuentas de seguridad

(SAM por sus siglas en ingleacutes) es una base de datos en donde se encuentran las cuentas de

seguridad Esto es utilizado por Windows para administrar las cuentas de usuario y contrasentildeas en

el formato hash

Las contrasentildeas nunca se almacenan en formato de texto claro Se almacenan en formato

de hash para protegerlas de los ataques La base de datos SAM se implementa como un archivo de

registro y las obtiene del kernel de Windows y mantiene un bloqueo exclusivo al archivo SAM

esto quiere decir que el archivo tiene cierta medida de seguridad para el almacenamiento de las

contrasentildeas (Hernandez 2013)

No es posible copiar el archivo SAM a otra ubicacioacuten en el caso de los ataques en liacutenea

Dado que el archivo SAM estaacute bloqueado con un bloqueo exclusivo al sistema de archivos no

puede ser copiado o movido mientras se ejecuta Windows El bloqueo no iniciaraacute hasta que la

excepcioacuten de la pantalla azul haya sido inicializada o el sistema operativo haya sido apagado Sin

embargo los archivos en formato hash de contrasentildeas fuera de liacutenea estaacuten disponibles para los

ataques de fuerza bruta el contenido del archivo SAM puede ser copiado o descargado utilizando

diversas teacutecnicas

Un identificador de seguridad (SID) es un valor uacutenico de longitud variable utilizado para

identificar a un usuario Cada cuenta tiene un SID uacutenico emitido por una autoridad como un

controlador de dominio de Windows y almacenado en una base de datos de seguridad Cada vez

50

que un usuario inicia sesioacuten el sistema recupera el SID para ese usuario de la base de datos y lo

coloca en el token de acceso para ese usuario El sistema usa el SID en el token de acceso para

identificar al usuario en todas las interacciones posteriores con la seguridad de Windows Cuando

se ha usado un SID como identificador uacutenico para un usuario o grupo no se puede volver a usar

para identificar a otro usuario o grupo

La seguridad de Windows usa SID en los siguientes elementos de seguridad

En descriptores de seguridad para identificar al propietario de un objeto y grupo

primario

En las entradas de control de acceso para identificar al usuario para quien el acceso

estaacute permitido denegado o auditado

En tokens de acceso para identificar al usuario y los grupos a los que pertenece

2531 Identificador de Seguridad (SID Security Identifier)

S - 1 - 5 - 21 - 3983109318 - 554656936 - 3066752241 - 1000

S - indica que es un string de SID

1 - el nivel de revisioacuten

5 - el identificador de valor de autoridad o authority value no siempre seraacute 5 Entre otros

valores que se pueden encontrar estaacuten los siguientes

51

0 - sin autoridad

1 - autoridad global

2 - autoridad local

3 - autoridad de creador

4 - autoridad no uacutenica

5 - autoridad NT

9 - autoridad de administrador de recursos

21 - 3983109318 - 554656936 - 3066752241 - es el dominio en el que se encuentra el

sistema o el identificador local de la computadora

1000 - ID uacutenico para cada cuenta aquiacute se encuentra el RID (Relative Identifier) Nuacutemero

de longitud variable cualquier grupo o usuario que se cree de manera diferente a la predeterminada

recibiraacute un RID de 1000 o superior En el caso de que el valor sea 500 responde a que este SID

representa la cuenta de un administrador el valor de 500 siempre seraacute el mismo en cualquier cuenta

de administrador a su vez el valor 501 representa el SID de una cuenta Invitado (Guest)

(Hernandez 2013)

254 Autenticacioacuten NTML NTLM (NT LAN Manager) es un protocolo empleado por

muchos productos de Microsoft para realizar la autenticacioacuten desafiacuteorespuesta por lo tanto es el

esquema de autenticacioacuten que por defecto usa Firewall de Microsoft y tambieacuten los productos del

servidor proxy

52

Este software fue desarrollado para afrontar el problema del trabajo con Tecnologiacuteas Java

en un entorno orientado a Microsoft Puesto que no se basa en ninguna especificacioacuten oficial de

protocolo por lo tanto no hay garantiacutea de que funciona correctamente en todos los casos Tambieacuten

ha estado en algunas instalaciones de Windows donde funcionoacute con eacutexito

La Autenticacioacuten NTLM se compone de dos protocolos protocolo de autenticacioacuten NTLM

y protocolo de autenticacioacuten LM Estos protocolos utilizan una metodologiacutea de hash diferente para

almacenar contrasentildeas de los usuarios en la base de datos SAM (Hernandez 2013) (Meneacutendez-

Barzanallana 17)

26 LINUX (ROCKS)

Rocks es una distribucioacuten para cluacutester de Linux de coacutedigo abierto que permite a los usuarios

finales construir de manera maacutes amigable cluacutesteres computacionales y muros de visualizacioacuten en

mosaico Cientos de investigadores de todo el mundo han utilizado Rocks para implementar su

propio cluacutester

Desde mayo de 2000 el grupo Rocks ha abordado las dificultades de implementar cluacutesteres

manejables Encaminados hacia un objetivo crear cluacutesters de manera maacutes sencilla Por sencilla

significa faacutecil de implementar administrar actualizar y escalar Este objetivo impulsa a los

creadores de esta herramienta a ayudar a entregar el poder computacional de los cluacutesteres a una

amplia gama de usuarios cientiacuteficos Estaacute claro que poner a disposicioacuten de una amplia gama de

53

cientiacuteficos plataformas de computacioacuten paralelas estables y manejables ayudaraacute enormemente a

mejorar el estado del arte en herramientas paralelas (Rocksclusters 2010)

261 Escritorio De todos los escritorios disponibles para el sistema operativo Linux

GNOME ha logrado convertirse en el maacutes eficiente estable y confiable sin dejar de ser sencillo

de usar De hecho la mayoriacutea de los usuarios independientemente de su experiencia pueden

trabajar con GNOME casi sin esfuerzo

Los usuarios que son nuevos tanto en Linux como en GNOME hariacutean mejor en conocer

los entresijos del escritorio que hacen que Linux no solo sea faacutecil sino tambieacuten divertido

Un entorno de escritorio agrupa programas que trabajan juntos para formar un espacio de

trabajo informaacutetico cohesivo unificado transparente e interactivo para los usuarios O para

decirlo de manera maacutes simple el entorno de escritorio es la interfaz de usuario para el sistema

operativo En el caso de GNOME ese sistema operativo es Linux Sin un entorno de escritorio su

uacutenica alternativa es una sesioacuten de Shell (liacutenea de comandos) basada en texto (Wallen 2019)

262 Paquete de Oficina Una suite ofimaacutetica es una coleccioacuten de software creada por el

mismo proveedor y disentildeada para ser utilizada para tareas rutinarias dentro de una organizacioacuten

Por lo general una suite ofimaacutetica incluye aplicaciones como procesamiento de texto hojas de

caacutelculo presentacioacuten correo electroacutenico toma de notas base de datos colaboracioacuten y otros tipos

de software relacionados En la mayoriacutea de los casos cada aplicacioacuten en la suite ofimaacutetica se puede

instalar por separado y todas las aplicaciones dentro de la suite admiten la interoperabilidad entre

54

siacute Microsoft Office Suite Lotus Live Notes y LibreOffice son todas suites de oficina de uso

comuacuten

263 Organizador de archivos Es una funcioacuten avanzada disentildeada para agrupar y

renombrar archivos usando sus atributos del sistema o meta atributos

Cada archivo tiene atributos del sistema como la fecha (Acceso Creado y Modificado) el

tipo de archivo (definido por extensioacuten) y asociado con la aplicacioacuten registrada de ese tipo de

archivo Estos atributos se pueden usar para generar un nuevo nombre de archivo o carpeta (grupo)

para cada archivo con el mismo atributo Ademaacutes de los atributos del sistema algunos archivos

en su mayoriacutea medios o imaacutegenes pueden contener metacampos como el nombre del artista el

tiacutetulo el nombre del aacutelbum y otros El Organizador de archivos tambieacuten usa estos metacampos

para agrupar archivos en una carpeta con el mismo atributo Por lo tanto el organizador de archivos

opera reglas de organizacioacuten de archivos que definen la jerarquiacutea de agrupacioacuten de carpetas y las

reglas de cambio de nombre de archivos

Asiacute como el conocido ldquoexplorador de Windowsrdquo Linux integra un organizador de archivos

y carpetas llamado NAUTILUS para realizar tareas de manejo de archivos como mover copiar

renombrar crear carpetas y de esta manera administrar nuestros dispositivos de almacenamiento

55

27 Agrupamiento (Cluacutester) de Computadoras

El agrupamiento (cluacutester) de computadoras estaacute conformado por una coleccioacuten de

computadoras autoacutenomas interconectadas trabajando unidas como un solo recurso de computacioacuten

integrado El concepto de agrupamiento de computadoras nacioacute cuando los pioneros de la

supercomputacioacuten intentaban difundir diferentes procesos entre varias computadoras para luego

poder recoger los resultados que dichos procesos debiacutean producir Con un hardware maacutes barato y

faacutecil de conseguir se pudo perfilar que podriacutean conseguirse resultados muy parecidos a los

obtenidos con aquellas maacutequinas mucho maacutes costosas (Chirinov 2003)

Un agrupamiento de computadoras se puede definir como el trabajo realizado por dos o

maacutes computadoras que en conjunto se encargan de proveer una determinada solucioacuten Tiene como

finalidad agrupar el poder de coacutemputo de los nodos implicados para proporcionar una mayor

escalabilidad disponibilidad y fiabilidad (Branch Bedoya amp Mesa Muacutenera 2008)

La escalabilidad es la capacidad de un equipo para hacer frente a voluacutemenes de trabajo

cada vez mayores sin por ello dejar de prestar un nivel de rendimiento aceptable

La disponibilidad y la fiabilidad se encuentran bastante relacionadas aunque difieren

ligeramente en algunos aspectos La disponibilidad es la calidad de estar presente y listo para su

uso mientras que la fiabilidad es la probabilidad de un correcto funcionamiento

56

Entre los tipos de agrupamiento maacutes comunes se pueden encontrar de alta disponibilidad

(ambiente a prueba de fallas) coacutemputo de alto desempentildeo (los procesos o las tareas dadas se

presentan como un solo sistema virtual) y escalamiento horizontal (se utiliza para proporcionar

una sola interfaz a un conjunto de recursos que pueden aumentar o disminuir arbitrariamente su

tamantildeo en un cierto periodo de tiempo) (Gonzaacutelez Ramiacuterez amp Rodriacuteguez Saacutenchez 2008)

271 Beowulf Es una clase de computadora masivamente paralela de altas prestaciones

principalmente construida a base de agrupamiento de componentes hardware estaacutendar (Llorens amp

Pentildea 2002) Consta de un conjunto de nodos minimalistas unidos por un medio de

comunicaciones econoacutemico Esto quiere decir que tienen lo miacutenimo para ejecutar su funcioacuten de

hecho los nodos por siacute solos no son capaces de ejecutar siquiera un sistema operativo (Nievas

Pino amp Arroyo) Se puede ver como una supercomputadora paralela construida con hardware

comercial de faacutecil adquisicioacuten que posee como sistema operativo Linux Los cluacutesters Beowulf son

extremadamente poderosos pero no son para todas las personas Su principal desventaja es que

requieren software disentildeado para poder aprovechar los recursos del cluacutester (Lizaacuterraga 2002)

272 Mosix Seguacuten Peacuterez (2001) la arquitectura Mosix estaacute basada en la misma ideologiacutea

de la arquitectura Beowulf Se basa en un conjunto de parches aplicados al nuacutecleo (kernel) de Linux

y que asignan a todo el grupo de nodos un espacio de direcciones y de procesos comuacuten gracias al

cual los procesos migran de uno a otro con el fin de equilibrar favorablemente la carga del sistema

global Es una herramienta disentildeada para realizar balanceo de carga en el agrupamiento de forma

totalmente transparente de manera tal que los nodos se comportan como una sola maacutequina y asiacute

incrementar el aprovechamiento de cada uno de los nodos (Chaacutevez y otros 1999) La principal

57

ventaja de Mosix frente a Beowulf se basa precisamente en esto Mosix da mejores respuestas que

Beowulf frente a la caiacuteda o insercioacuten de nodos A parte de esto Mosix permite un cambio constante

de aplicacioacuten o incluso el correr aplicaciones independientes de forma simultaacutenea

273 OpenMosix OpenMosix es una extensioacuten del proyecto Mosix Seguacuten Chirinov

(2003) la idea de este modelo es que la distribucioacuten de tareas en el cluacutester la determina OpenMosix

de forma dinaacutemica conforme se van creando tareas Cuando un nodo estaacute demasiado cargado las

tareas que se estaacuten ejecutando pueden migrar a cualquier otro nodo del cluacutester Asiacute desde que se

ejecuta una tarea hasta que eacutesta muere podraacute migrar de un nodo a otro sin que el proceso sufra

mayores cambios

Ademaacutes OpenMosix funciona a nivel de kernel por tanto puede conseguir toda la

informacioacuten que necesite para decidir que tanto estaacute cargado un sistema y queacute pasos se deben

seguir para aumentar el rendimiento ademaacutes puede realizar maacutes funciones que cualquier

aplicacioacuten a nivel de usuario

Despueacutes de elegir el tipo de cluacutester a utilizar se procede a elegir los elementos baacutesicos que

se emplearaacuten para implementar el cluacutester capacidad de procesamiento memoria espacio del disco

de cada nodo asiacute como tambieacuten el ancho de banda de la comunicacioacuten entre los nodos Se deberaacute

decidir cuaacuteles son importantes basaacutendose en la variedad de aplicaciones que se piensen ejecutar

en el cluacutester y de la cantidad de dinero que se disponga para construirlo

58

Bajo estos mismos paraacutemetros se debe escoger tambieacuten el tipo de red que interconectaraacute

los nodos (Turner 2004)

Luego se debe escoger el sistema operativo a utilizar Esta eleccioacuten dependeraacute mucho de

la maacutequina que se escoja Linux es siempre una opcioacuten en cualquier maacutequina y es la eleccioacuten maacutes

comuacuten Muchas de las herramientas necesarias para la implementacioacuten de un cluacutester han sido

desarrolladas bajo Linux Pero existen cluacutesters corriendo bajo Windows NT UNIX Solaris y AIX

59

Capiacutetulo 3 Implementacioacuten de Cluacutester

31 Requisitos previos

Antes de iniciar la instalacioacuten del FrontEnd es necesario asegurarse que las conexiones de

red de los equipos junto con la configuracioacuten de la BIOS de cada uno sean las correctas

311 Conexioacuten de los equipos y acceso a la red

Un cluacutester de alto desempentildeo funciona como un uacutenico equipo el cuaacutel comparte los recursos

de los nodos esclavos con el nodo maestro para ello es esencial la existencia de una red interna de

alta velocidad por medio de la cual se realice la comunicacioacuten entre el nodo maestro y los nodos

esclavos como se muestra en la Figura 31 El nodo maestro necesitaraacute 2 tarjetas de red de alta

Figura 31 Esquema tiacutepico de configuracioacuten de un cluacutester (Fuente Elaboracioacuten propia)

60

velocidad una para la comunicacioacuten interna y otra para la comunicacioacuten con redes externas El

sistema operativo Rocks asigna automaacuteticamente la interface ldquoeth0rdquo a la red interna del cluacutester y

la interface ldquoeth1rdquo a la red externa En caso de que Rocks sea incapaz de determinar cuaacutel es la red

externa debido a la falta de conexioacuten a internet estas podriacutean ser asignadas de manera incorrecta

por tal motivo se sugiere asegurar el nombre de cada una de las interfaces

Dado que Rocks no permite volverlas a asignar una vez finalizada la instalacioacuten es

necesario volver a reinstalarlo para poder solucionar este inconveniente

312 Configuracioacuten de la BIOS Para evitar problemas durante la instalacioacuten conviene

configurar correctamente la Bios

3121 ATAIDE Mode Algunos sistemas operativos puede que no sean capaces de

reconocer el controlador del disco duro como es en el caso de esta distribucioacuten de Rocks usada

Para evitar complicaciones de tener que antildeadir el controlador a mano lo mejor es habilitar el modo

ldquoLegacyrdquo de controlador de disco duro

61

Para ello se accede a la Bios pulsando F2 al encender el equipo se situacutea en la pestantildea

ldquoAdvancedrdquo y se selecciona ldquoDrive Configurationrdquo como se muestra en la Figura 32

Figura 32 Imagen del Bios del equipo en la opcioacuten ldquodrive configurationrdquo (Fuente Elaboracioacuten propia)

Figura 33 Bios ATAIDE Legacy Mode (Fuente Elaboracioacuten propia)

62

Dentro del menuacute se tiene que seleccionar el Modo ldquoLegacyrdquo en la opcioacuten ldquoATAIDE

Moderdquo como se muestra en la Figura 33 y para salir se guardan los cambios con F10

3122 PXE Al momento de instalar un nodo puede ocurrir falla al arrancar y aparecer

bootsplash (Reboot and Select proper device) Para evitarlo es necesario habilitar la opcioacuten de

PXE para que tome los archivos de instalacioacuten del nodo maestro a traveacutes de la red interna

En la Bios se selecciona la pestantildea ldquoBootrdquo y dentro de ese mismo menuacute se deshabilita

ldquoSilent bootrdquo y se habilita la opcioacuten de ldquoPXE boot to lanrdquo como se muestra en la Figura 34

Finalmente hay que verificar que en la secuencia de arranque (Figura 35) como primer

dispositivo sea desde red para que de esta manera inicie desde el PXE

Figura 34 Bios Boot PXE (Fuente Elaboracioacuten propia)

63

Se guardan los cambios antes de salir

32 Instalacioacuten de Sistema Operativo Rocks

Una vez configurados los equipos se enciende el equipo que seraacute el nodo maestro

(FrontEnd) en el cuaacutel previamente se ha modificado la secuencia de inicio del boot desde la Bios

de modo que al insertar el CD de Rocks eacuteste procederaacute a iniciar la instalacioacuten con la siguiente

pantalla que se muestra a continuacioacuten

Figura 35 Bios Boot device prioriry (Fuente Elaboracioacuten propia)

64

Para iniciar la instalacioacuten uacutenicamente se selecciona la opcioacuten ldquoInstall CentOS 7rdquo como se

muestra en la Figura 36 dando asiacute comienzo al proceso de instalacioacuten Tras finalizar un proceso

de carga en memoria Rocks mostraraacute un formulario en entorno graacutefico mediante el cual

procederemos a configurar el FrontEnd

Esta primera pantalla se muestra coacutemo se desea realizar la instalacioacuten puede realizarse

por medio de la descarga del sistema operativo (se requiere internet) En este caso como se muestra

en la Figura 37 dado que previamente se descargoacute el DVD completo se seleccionoacute ldquoCDDVD

based rollsrdquo

Figura 36 Pantalla de Inicio de instalacioacuten de Rocks (Fuente Elaboracioacuten propia)

65

A continuacioacuten Figura 38 se selecciona de la lista de Rolls aquellos que se desean instalar

Figura 37 Pantalla de seleccioacuten de Rolls (Fuente Elaboracioacuten propia)

Figura 38 Listado de opciones de rolls para instalar (Fuente Elaboracioacuten propia)

66

Tras presionar el botoacuten ldquoSubmitrdquo la siguiente pantalla (Figura 39) muestra formulario en

el que hay que indicar la informacioacuten baacutesica del cluacutester entre las cuales aparecen

Fully-Qualified Host Name Nombre con el que se conoceraacute en la red externa el cluacutester

Cluster Name Nombre utilizado para ser identificado dentro de las herramientas del cluacutester

Certificate Organization Locality State and Country Organizacioacuten a la que pertenece el

cluacutester la localidad el estado y la ciudad

Contact URL and LattitudeLongitude Contacto direccioacuten web y posicioacuten GPS

Figura 39 Informacioacuten baacutesica del cluacutester a instalar (Fuente Elaboracioacuten propia)

67

Una vez que se ingresa la informacioacuten al cluacutester se presiona el botoacuten ldquoListordquo y

posteriormente se podraacute cambiar la configuracioacuten baacutesica de la red interna del cluacutester En este caso

Figura 310 se dejoacute el valor por defecto una IP de clase B (1011116)

El siguiente paso es la configuracioacuten de la red externa (para tener acceso a internet) En

este punto se introducen los datos de la red externa a la que se encuentra conectado el nodo

maestro como se muestra en la Figura 311

Figura 310 Configuracioacuten Ethernet de la red privada (Fuente Elaboracioacuten propia)

Figura 311 Configuracioacuten Ethernet de la red puacuteblica (Fuente Elaboracioacuten propia)

68

Para terminar de configurar la red externa como se muestra en la Figura 312 se ingresa la

direccioacuten IP del Gateway y los DNS (Servidor de nombre de dominio) que va a usar para el acceso

a internet

Se continuacutea con el resto del formulario donde se introduce la contrasentildea para el usuario

root tal y como se muestran en la Figura 313

Figura 312 Configuracioacuten de DNS y Gateway (Fuente Elaboracioacuten propia)

Figura 313 Ingresar contrasentildea de usuario root (Fuente Elaboracioacuten propia)

69

Paso siguiente se procede a seleccionar la zona horaria como se muestra en la Figura 314

donde se encuentra ubicado el cluacutester asiacute como un servidor de donde podraacute obtener la zona horaria

automaacuteticamente en este caso se dejoacute el valor por default

En el formulario de la Figura 315 se selecciona la forma de particionar el disco duro

(automaacutetica manual) una vez seleccionado daraacute comienzo al proceso de instalacioacuten de manera

Figura 314 Configuracioacuten horaria (Fuente Elaboracioacuten propia)

Figura 315 Particiones del disco duro (Fuente Elaboracioacuten propia)

70

desatendida Cuando ha concluido la instalacioacuten el equipo se reiniciaraacute y se requeriraacute iniciar con

el usuario root y la contrasentildea establecida previamente

321 Configuracioacuten del teclado Debido a que el teclado por defecto estaacute en idioma

ingleacutes podriacutea provocar problemas al momento de escribir la contrasentildea u otros comandos

Seguacuten las pruebas realizadas aunque se cambie la configuracioacuten del teclado desde el menuacute

de preferencias uacutenicamente se mantiene dentro de la sesioacuten desde la que se ha cambiado dicha

opcioacuten (lo cual implica que la contrasentildea de usuario hay que introducirla seguacuten la distribucioacuten

inglesa)

33 Instalacioacuten de los nodos

Previo a la instalacioacuten de los nodos esclavos cada uno de los equipos fueron configurados

desde la Bios para que arranquen desde la red (seccioacuten 3122) Para ir antildeadiendo los nodos solo

se tiene que introducir el siguiente comando desde nuestro FrontEnd

$insert-ethers

A continuacioacuten como se muestra en la Figura 316 apareceraacute una ventana en la pantalla

en la cual se seleccionaraacute la opcioacuten ldquoComputerdquo

71

Una vez realizado este paso se procede a encender los equipos que funcionaraacuten como

nodos esclavos uno a uno

Se sugiere esperar a que cada nuevo equipo encendido esteacute marcado con un asterisco antes

de proceder a encender el siguiente como se muestra en la Figura 317 De esta manera se asegura

que cada nuevo nodo antildeadido posea el nombre y numeracioacuten deseada

Figura 316 Pantalla para ingresar nodos (Fuente Elaboracioacuten propia)

Figura 317 Indicador de insercioacuten de nuevos nodos (Fuente Elaboracioacuten propia)

72

Puede darse el caso de que un nodo no sea detectado automaacuteticamente eso indica que se

ha omitido alguacuten paso o parte de la configuracioacuten realizada hasta el momento es incorrecta En ese

caso comprobar lo siguiente

Que el nodo esclavo este correctamente conectado a la red interna

Que el FrontEnd (nodo maestro) tenga correctamente configurada la red interna y externa

Que el PXE esteacute habilitado en la Bios del nodo esclavo

331 Administracioacuten de nodos Algunos de los comandos maacutes uacutetiles para para la gestioacuten

de los nodos son los siguientes

Eliminar un nodo de la lista

Reinstalar un nodo

Listar los nodos ya instalados

Acceder a un nodo

$rocks remove host nombre_nodo

$rocks remove host nombre_nodo

$rocks set host boot nombre_nodo action=install

$rocks set host boot nombre_nodo action=install

$rocks list host

$rocks list host

$ssh nombre_nodo

$ssh nombre_nodo

73

Ejecutar un comando de manera remota a un nodo

332 Creacioacuten de cuentas de usuario Para agregar a un usuario hay que realizar los

siguientes pasos

1 Creacioacuten de la cuenta

$useradd nombre_usuario

2 Asignacioacuten de una contrasentildea

$passwd nombre_usuario

3 Sincronizacioacuten de la cuenta de usuario con el resto de nodos

$rocks-user-sync

333 Configuracioacuten del directorio compartido El directorio share es compartido por el

FrontEnd y el resto de nodos se localiza dentro del FrontEnd en la carpeta exports siendo la

carpeta share un enlace simboacutelico a esta uacuteltima

Al principio es posible que no se sincronicen correctamente los archivos introducidos en el

directorio debido a que la carpeta inicialmente estaacute vaciacutea por lo que para solucionar este

inconveniente puede usarse el comando siguiente para reiniciar dicho servicio

$ssh nombre_nodo lsquocomandorsquo

$ssh nombre_nodo lsquocomandorsquo

$cd

$export fs ndashrv

service nfs restart

$cd

$export fs ndashrv

service nfs restart

74

34 Operaciones baacutesicas de Rocks

Comandos y aplicaciones esenciales para el manejo del cluacutester

Ver que rolls estaacuten instalados

$rocks list roll

Visualizar el estado del sistema Figura 318

$qstat ndashf

Probar el sistema de colas para distribuir tareas a los nodos

Para ello se prueba que el SGE del cluacutester funcione enviaacutendole una serie de trabajos

mediante el comando qsub

En primer lugar se crea un fichero (pruebapl) que tenga permisos de ejecucioacuten con el

siguiente contenido

Figura 318 Comando qstat ndashf (Fuente Elaboracioacuten propia)

75

usrbinperl

for(my $i=0$ilt30$i++) sleep(2) print okn

Y se ejecuta con el siguiente comando

$ for ((i=1ilt=10i+=1)) do qsub pruebapl done

Al ejecutarse se puede comprobar que los trabajos se han mandado Figura 319

Y al realizar de nuevo un ldquoqstat ndashfrdquo Figura 320 se observa coacutemo se van realizando

Figura 319 Enviacuteo de trabajos por medio del comando qsub (Fuente Elaboracioacuten propia)

Figura 320 Estado de los trabajos pendientes mostrados por qstat ndashf (Fuente Elaboracioacuten propia)

76

Para ver la carga de trabajo en el cluacutester de manera global y de forma graacutefica se tiene que

ingresar en un navegador web en la siguiente direccioacuten httplocalhostganglia apareceraacute la

Figura 321

Figura 321 Visualizacioacuten de la distribucioacuten de cargas en el cluacutester usando la herramienta Ganglia (Fuente Elaboracioacuten propia)

77

Capiacutetulo 4 Metodologiacutea y Resultados

Una vez finalizada la instalacioacuten y puesta en operacioacuten del equipo se analizaron diferentes

metodologiacuteas de trabajo lo que implicoacute un trabajo arduo debido a que existen complicaciones

cuando se buscan temas relacionados a vulnerar sistemas operativos La realizacioacuten de este

proyecto estaacute basado en la metodologiacutea de Joshua Picolet ldquoCracking Methodologyrdquo (Picolet

2017)

41 Obtener Archivo hash

Se pueden vulnerar contrasentildeas de Windows de diferentes maneras Una de ellas es

mediante el acceso al archivo del Administrador de cuentas de seguridad (SAM) el cual se detalla

en el apartado 253 a traveacutes de la obtencioacuten de las contrasentildeas del sistema en su forma hash por

medio de herramientas diferentes Alternativamente las contrasentildeas se pueden leer desde la

memoria lo que tiene el beneficio adicional de recuperar las contrasentildeas en texto plano y evitar el

requisito de descifrado Para comprender los formatos que se observan cuando se descarguen

hashes del sistema de Windows se requiere una breve descripcioacuten de los diferentes formatos de

almacenamiento

Originalmente las contrasentildeas de Windows de menos de 15 caracteres se almacenaban en

el formato hash de Lan Manager (LM) Algunos sistemas operativos como Windows 2000 XP y

Server 2003 continuacutean usando estos hashes a menos que esteacuten deshabilitados por el usuario

Ocasionalmente un sistema operativo como Windows Vista puede almacenar el hash LM para la

compatibilidad con otros sistemas Seguacuten analistas incluye varias vulnerabilidades como dividir

78

la contrasentildea en dos bloques y permitir que cada uno se descifre de forma independiente Mediante

el uso de tablas Rainbow es trivial descifrar una contrasentildea almacenada en un hash LM

independientemente de la complejidad Este hash se almacena con la misma contrasentildea calculada

en el formato de hash NT como el que se muestra en el siguiente ejemplo

Ejemplo de un hash NTLM con el componente LM y NT

Administrator500611D6F6E763B902934544489FCC9192BB71ED1E7F2B60ED5A2

EDD28379D45C91

Los sistemas operativos Windows maacutes recientes como el Windows 8 y 10 usan el hash NT

En teacuterminos simples no hay una debilidad significativa en este hash que lo diferencie de cualquier

otra funcioacuten hash criptograacutefica Se requieren meacutetodos de descifrado como lo es la fuerza bruta o

ataque de diccionario para recuperar la contrasentildea si uacutenicamente se almacena en el formato NT

Ejemplo de un hash NTLM uacutenicamente con el componente NT (como se ve en los sistemas

Windows mas recientes

Administrator500NOPASSWORDEC054D40119570A4663

4350291AF0F72

Es importante sentildealar que la cadena NO PASSWORD es variable seguacuten la herramienta

que se utilice Otras pueden presentar esta informacioacuten como ceros rellenos o comuacutenmente puede

79

ver la cadena ldquoAAD3B435B51404EEAAD3B435B51404EErdquo en lugar de ninguna contrasentildea

Esto significa que el hash LM estaacute vaciacuteo y no estaacute almacenado

El archivo hash se encuentran en el directorio ldquoWindows System32 configrdquo y se

necesitan ambos archivos SAM y SYSTEM Ademaacutes tambieacuten se encuentran en el archivo de

registro HKEY_LOCAL_MACHINE SAM al que no se puede acceder durante el tiempo de

ejecucioacuten Finalmente las copias de seguridad se pueden encontrar a menudo en ldquoWindows

Repairrdquo (Peleus 2019)

Para extraer el archivo hash de un sistema operativo con un nivel de seguridad C1 existen

diferentes meacutetodos en esta ocasioacuten se procederaacute a iniciar el equipo objetivo con una distribucioacuten

de Linux desde una memoria USB como se muestra en la figura 41 para de esta manera ingresar

al directorio CWINDOWSSystem32Config directorio de ubicacioacuten de los archivos SAM y

SYSTEM que son los necesarios para obtener el archivo hash (Caballero 2018)

Figura 41 Arranque con LiveUSB KaliLinux (Fuente Elaboracioacuten propia)

80

42 Dar Formato al Hash

En este punto es donde se tiene que identificar el algoritmo con el que fueron encriptados

los archivos SAM y SYSTEM que se han obtenido en el punto anterior con la finalidad de

seleccionar el tratamiento que se les daraacute El algoritmo de encriptacioacuten del archivo SAM de

Windows 10 es NTLM y ademaacutes estaacute almacenado en un formato binario (ByteBleeder 2017) por

lo que fue necesario instalar la herramienta con licencia GNU samdump2 para obtener la syskey y

de esta manera poder extraer los hash desde el archivo SAM de Windows

En la figura 42 se han obtenido los hashes del archivo SAM donde se puede observar que

los usuarios Administrador e Invitado estaacuten deshabilitados ademaacutes de que existen tres cuentas de

usuario activas las cuales son Gad prueba y usuarioprueba cada una con su contrasentildea cifrada

en formato NTLM a la derecha del nombre de usuario la cuenta usuarioprueba fue a la que se le

realizoacute el anaacutelisis que se detalla posteriormente

43 Evaluar la fuerza del Hash

En criptografiacutea se dice que un algoritmo criptograacutefico se rompe si por alguacuten meacutetodo se

consigue reducir su fortaleza es decir reducir por ejemplo su entropiacutea de los 2256 bits teoacutericos a

Figura 42 Resultado de la ejecucioacuten de la herramienta samdump2 (Fuente Elaboracioacuten propia)

81

tan soacutelo 2255 por ejemplo El hecho de que se encuentre una colisioacuten no implica necesariamente

que un algoritmo se haya roto pues podriacutea haber sido realizado mediante fuerza bruta pero puede

ser una causa

Un ataque de colisioacuten significa que encuentro dos entradas diferentes que producen el

mismo resultado de un hash particular Este es generalmente el tipo de ataque maacutes faacutecil Es el tipo

de ataque que se conoce desde hace varios antildeos contra MD5

Dado que una utilidad importante de las funciones hash estaacute en las firmas digitales

encontrar colisiones puede facilitar falsificar firmas digitales Es decir dos mensajes distintos que

tengan un mismo resumen tienen ademaacutes la misma firma y un atacante puede reemplazar un

mensaje por el otro Un ejemplo de este ataque fue demostrado en 2008 por un grupo de

investigadores en Aacutemsterdam los cuales falsificaron un certificado raiacutez mediante el uso de un

ataque de colisioacuten contra el algoritmo MD5 (Preukschat 2015)

Un ataque previo a la imagen generalmente es mucho maacutes difiacutecil es encontrar otra entrada

que produzca el mismo resultado que un hash que ya se conoce

Para tratar de aclarar la diferencia aquiacute en un ataque de colisioacuten encuentro dos entradas A

y B que producen el mismo resultado En un ataque de preimagen comienzo a partir de alguacuten

resultado conocido X y encuentro una entrada que produciraacute X como resultado (Coffin 2015)

82

Para realizar esta evaluacioacuten se tomoacute como base la tabla del apeacutendice Hash craking

benchmark (Picolet 2017) el objetivo es observar el comportamiento y velocidad del Hash

mencionado cuando fue sometido a pruebas de criptoanaacutelisis Si se trata de un Hash lento se deberaacute

ser maacutes selectivo en queacute tipos de diccionarios y meacutetodos de criptoanaacutelisis se le debe aplicar Si es

un Hash raacutepido se puede ser maacutes libre con la estrategia de criptoanaacutelisis Este estudio busca

realizar una prueba de criptoanaacutelisis mostrando las diferencias entre el poder de procesamiento de

un cluacutester de 17 nodos contra una computadora personal por lo que no necesariamente se

implementaraacute el meacutetodo oacuteptimo para la realizacioacuten del criptoanaacutelisis

44 Calcular la capacidad del equipo

Con la informacioacuten de la evaluacioacuten de la fuerza del Hash obtenida en el apartado anterior en

este apartado se tiene que establecer la capacidad de la plataforma o plataformas que realizaraacuten

el criptoanaacutelisis

Para conocer la capacidad de procesamiento del cluacutester de alto rendimiento se utilizoacute la

herramienta Linpack Benchmark HPL es una implementacioacuten portaacutetil del Benchmark de alto

rendimiento LINPACK para equipos de coacutemputo distribuido Actualmente se utiliza para obtener

varios resultados en la lista actual de Top500 de HP cluacutesters (Dongarra 2010)

El Linpack Benchmark (HPL del Ingleacutes High-Performance Linpack Bench-mark) es un

software que resuelve un sistema lineal aleatorio de doble precisioacuten aritmeacutetica (64 bits) en equipos

de memoria distribuida El rendimiento muestra el nuacutemero de operaciones de punto flotante por

segundo logradas por el sistema (Petitet Whaley Dongarra amp Cleary 2008)

83

El HPL fue desarrollado en el Argone National Laboratory por Jack Don-garra en 1976 y

es uno de los maacutes usados en sistemas cientiacuteficos y de ingenieriacutea para el caacutelculo de prestaciones

Las principales caracteriacutesticas del algoritmo utilizado por el HPL son

Distribucioacuten ciacuteclica de datos de bloques de dos dimensiones

Variante derecha de la factorizacioacuten LU con pivoteo parcial (Teacutecnica de pivoteo

Dicta que el elemento pivote que debe escogerse es el mayor absolutamente de cada

columna)

Factorizacioacuten recursiva con pivoteo y reenviacuteo de columna

Distintas topologiacuteas virtuales de reenviacuteos

Algoritmo de reduccioacuten de reenviacuteo para ancho de banda (Castelloacute Gimeno 2014)

La resolucioacuten del sistema de ecuaciones se realiza del siguiente modo

1 Se crea un sistema de ecuaciones

(1)

119860119909 = 119887

(2)

119860 isin 119877119899119909119899

(3)

119909 119887 isin 119877119899

84

HPL calcula que la solucioacuten para un sistema de ecuaciones lineales se puede generalizar

como 119860119909 = 119887 donde 119860 es una matriz 119873 119909 119873 cuyos valores se generan aleatoriamente

119909 119910 119887 son vectores de tamantildeo 119873 Como se muestra en la Figura 43

2 Primero se calcula la factorizacioacuten 119871119880 con pivoteo parcial de los coeficientes 119899 y 119899 + 1

de la matriz [119860 119887]

(4)

119875119903[119860 119887] = [[119871119880] 119910]

(5)

119875119903 119871 119880 isin 119877119899119909119899

(6)

119910 isin 119877119899

El primer paso es la factorizacioacuten de la matriz 119860 en una matriz triangular superior 119880

y una matriz triangular inferior 119871 tal que 119860 = 119871119880 La factorizacioacuten se usa para calcular

el vector solucioacuten 119909

3 Una vez el pivoteo (representado por la permutacioacuten de la matriz 119875119903) y la factorizacioacuten

inferior se aplican sobre 119887 la solucioacuten se obtiene en un paso resolviendo el sistema

superior triangular

Figura 43 Sistema de Ecuaciones tipo 119860119909 = 119887 (Fuente Elaboracioacuten propia)

85

(7)

119880119909 = 119910

La matriz triangular inferior izquierda y el conjunto de pivotes no se devuelven en el

resultado Para la estabilidad numeacuterica el algoritmo de factorizacioacuten utiliza un pivote parcial de

fila

La implementacioacuten paralela de Linpack divide la matriz 119860 119873 119909 119873 en una cuadriacutecula de

procesos 119875 119909 119876 bidimensional y luego la divide en subgrupos de mosaicos 119873119861 119909 119873119861 (Petitet

Whaley Dongarra amp Cleary 2008)

Utilizando la herramienta HPL en esta investigacioacuten se obtuvieron los siguientes

resultados

La prueba abordoacute el ajuste de 119873 y la eficiencia obtenida en comparacioacuten con el rendimiento

maacuteximo Se determinoacute un valor para 119873 = 800000 aleatoriamente para ejecutar HPL en todo el

cluacutester Sin embargo el tiempo fue excesivo por lo tanto se determinoacute que este tamantildeo del

problema fue demasiado grande para el cluacutester Al realizar otros experimentos con valores maacutes

pequentildeos de 119873 se obtuvieron mejores resultados de rendimiento La Tabla 41 muestra el

rendimiento de HPL en GFlops para 119873 = 300000 400000 y 500000 Como se puede observar

en la Tabla 41 se obtuvo el mejor resultado de rendimiento 850 GFlops para 119873 = 500000 para

valores mayores de 119873 la distribucioacuten de cargas del cluacutester empieza a sobrepasar su capacidad como

se muestra en la Figura 44 y la vez su rendimiento disminuye Esto ocurre porque la cantidad de

memoria utilizada con las memorias intermedias de comunicacioacuten MPI es mayor de lo esperado

Por lo tanto es necesario dejar maacutes del 20 de la memoria para el sistema (Petitet Whaley

86

Dongarra amp Cleary 2008) Tambieacuten se realizaron pruebas usando solo un nodo de coacutemputo y el

rendimiento fue de 34 GFlops para 119873 = 20000

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia)

Analizando la eficiencia obtenida para la ejecucioacuten de un solo nodo cuando 119873 = 20000

se obtuvo el 823 del rendimiento maacuteximo (el rendimiento maacuteximo para un solo nodo es 477

Gflops) Para todo el cluacutester el rendimiento maacuteximo seriacutea 119879119898119886119909 = 477 119909 17 =

8109 119866119891119897119900119901119904 aproximadamente

Figura 44 Distribucioacuten de cargas del cluacutester

0

500

1000

300000 400000 500000

Gflops

Gflops

87

La Figura 44 titulada ldquoDistribucioacuten de cargas del cluacutesterrdquo muestra la imagen de la

herramienta Ganglia de manera graacutefica a traveacutes de cuadros que variacutean de color dependiendo de la

carga que tenga cada uno de los nodos al momento de implementar la herramienta HPL De manera

inicial indica que el cluacutester tiene un total de 17 equipos de 4 cores cada uno eso da un total de 68

cores trabajando sin equipos inactivos Muestra tambieacuten una sobrecarga en el cluacutester y un

porcentaje promedio de 100 de uso en la uacuteltima hora

45 Establecer Estrategia

Esto significa uacutenicamente que en este apartado se realizaraacute una guiacutea baacutesica para procesar

los hashes obtenidos sin perder de vista que cada escenario a criptoanalizar es uacutenico en funcioacuten

de las circunstancias externas Como ya se ha mencionado anteriormente esta estrategia de

criptoanaacutelisis se ha planteado implementar dos meacutetodos los cuales son Fuerza Bruta y ataque de

diccionario sin importar si son o no los oacuteptimos debido a que se realizaraacute una comparativa de

capacidad de procesamiento

451 Fuerza Bruta Una vez que se han intentado varios meacutetodos y han fallado se puede

iniciar un ataque de fuerza bruta estaacutendar poniendo especial atencioacuten en la cantidad de siacutembolos

del alfabeto que puede usar el equipo a analizar Por encima de 8 caracteres esto generalmente no

tiene sentido debido a limitaciones de hardware y entropiacutea (complejidad de la contrasentildea) Una

contrasentildea de Windows seguacuten Microsoft (Microsoft Inc 2019) una contrasentildea de Windows debe

estaacute formada por

88

26 Caracteres mayuacutesculas de la ldquoArdquo a la ldquoZrdquo

26 Caracteres minuacutesculas de la ldquoardquo a la ldquozrdquo

10 Diacutegitos de base 10 (0 a 9)

32 Caracteres especiales (~$^amp_-+=|()[]ltgt)

94 Caracteres alfanumeacutericos en total

4511 Cantidad de combinaciones posibles Si se usa una clave numeacuterica (nuacutemeros del 0

al 9) existen 10 posibilidades de 4 diacutegitos de longitud que es la extensioacuten por defecto de los

teleacutefonos celulares Para 4 diacutegitos las combinaciones posibles seriacutean 10 mil 104 = 10000

(Labaca Castro 2014)

Por otro lado si tomamos un alfabeto de 26 letras mayuacutesculas y 26 minuacutesculas 10 nuacutemeros

y 10 caracteres especiales en total tenemos 72 diferentes posibilidades para un uacutenico caraacutecter Eso

significa que las combinaciones para una contrasentildea de 4 caracteres seriacutean 724 = 26873856

Baacutesicamente maacutes de 26 millones de combinaciones en una clave de 4 caracteres contra 10 mil en

una clave de 4 diacutegitos numeacutericos En este estudio se utiliza la contrasentildea de bloqueo descrita en el

apartado anterior que es de 94 combinaciones para cada caraacutecter teniendo una longitud de 7

caracteres por lo tanto seraacuten 947 = 64847759000000 de posibles combinaciones que

nuestros equipos deben explorar para obtener la contrasentildea correcta

Como se mencionoacute en el apartado 42 el usuario sobre el cual se realizoacute el criptoanaacutelisis

fue usuarioprueba el cual constaba de una contrasentildea de longitud 7 caracteres la cual despueacutes

de realizado el anaacutelisis y como se puede observar en la Figura 45

89

1 Anaacutelisis a usuario usuarioprueba

2 Nuacutemero de nodos en operacioacuten 17

3 Nuacutemero de procesos ejecutaacutendose de forma paralela 68

4 Tiempo de duracioacuten del anaacutelisis en el cluacutester 122727 horas

5 Contrasentildea criptoanalizada Pass7

Asiacute mismo en la Tabla 42 se muestra el resultado final y el tiempo de duracioacuten del

criptoanaacutelisis realizado al archivo SAM con el cluacutester y la computadora personal

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Horas)

1 (PC) 4 1075316

17 (Cluacutester) 68 122727

1

2

3

4 5

Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester (Fuente Elaboracioacuten propia)

90

452 Diccionario Meacutetodo empleado para romper la seguridad de los sistemas basados en

contrasentildeas (password) en la que el atacante intenta dar con la clave adecuada probando todas (o

casi todas) las palabras posibles ingresadas previamente en un diccionario idiomaacutetico

Generalmente se emplean programas especiales que se encargan de ello

Este meacutetodo suele ser maacutes eficiente que el meacutetodo de fuerza bruta debido a que muchas

usuarios casi siempre suelen utilizar contrasentildeas con una o varias palabras existentes en su lengua

para que la contrasentildea no sea olvidada faacutecilmente y sea sencilla de recordar esto no es una praacutectica

recomendable (Alegsa 2018)

Para realizar este meacutetodo se utilizoacute un diccionario descargado de internet el cual contiene

10000000 de posibles contrasentildeas (g0tmi1k 2018)

Ademaacutes se ejecutoacute un programa creado en lenguaje C (Anexo 1) a traveacutes de la

implementacioacuten de las libreriacuteas MPI y open MPI propias de la arquitectura de cluacutester de

computadoras Este programa fue ejecutado en los mismos equipos descritos anteriormente para

obtener todos los nuacutemeros primos encontrados dentro de un intervalo dado En este caso el

intervalo dado fue de 10000000 con los siguientes resultados mostrados en la Tabla 43

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos (Fuente Elaboracioacuten

propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Segs)

1 (PC) 4 5078

17 (Cluacutester) 68 00013

91

453 Analizar los resultados Posterior a realizar el criptoanaacutelisis y descifrar con eacutexito

una cantidad suficiente de hashes se analizan los resultados en busca de pistas o patrones Este

anaacutelisis puede ayudar a tener eacutexito en cualquier hash restante

454 Personalizar ataques Tomando como base el anaacutelisis de resultados realizado

previamente se disentildearaacuten diversas estrategias personalizadas que aprovechen las vulnerabilidades

conocidas o patrones Los ejemplos seriacutean ataques de maacutescara personalizados o reglas para

adaptarse al comportamiento o las preferencias del usuario objetivo

92

Conclusioacuten

El trabajo de investigacioacuten presentado parte de la necesidad de buscar alternativas para

explotar al maacuteximo la capacidad de procesamiento del equipo de coacutemputo que existe actualmente

dentro del inventario del Instituto Tecnoloacutegico de Acapulco asiacute como proveer una plataforma que

coadyuve a la investigacioacuten dentro del Instituto a traveacutes de implementar un cluacutester de coacutemputo

con capacidad para realizar proyectos en el aacuterea de ingenieriacutea y matemaacuteticas con el fin de optimizar

el tiempo de ejecucioacuten lo cual en un futuro se veraacute reflejado en ventajas para el desarrollo de la

regioacuten

La revisioacuten y anaacutelisis de informacioacuten en relacioacuten a cluacutesters es muy interesante pero a la

vez es compleja dado que involucra diferentes aspectos durante su evolucioacuten asiacute como diversas

metodologiacuteas para su formacioacuten e implementacioacuten Se considera de suma importancia para este

trabajo las revisiones efectuadas ya que son la base para la propuesta entregada

De acuerdo a las especificaciones teacutecnicas de los equipos informaacuteticos existentes dentro

del laboratorio de la Maestriacutea en Sistemas Computacionales y una vez que se realizoacute el anaacutelisis

de varios casos de eacutexito se propuso la metodologiacutea para implementacioacuten de un cluacutester homogeacuteneo

tipo Beowolf Este meacutetodo estaacute basado en otros que ya se han implementado bajo realidades

acadeacutemicas similares rescatando las etapas maacutes importantes de cada uno y complementaacutendolo con

los aportes personales se consideroacute que fue el oacuteptimo debido a que se implementoacute con hardware

convencional y herramientas de uso libre

93

El hecho de haber seleccionado un meacutetodo adecuado permitioacute superar gran parte los

problemas que presentaban las metodologiacuteas que fueron analizadas simplificoacute la implementacioacuten

del cluacutester y permitioacute el poder alcanzar una mayor estabilidad en su desempentildeo desde su etapa

inicial fue importante conocer el resultado en cada una de las etapas de implementacioacuten para

asegurar su desenvolvimiento en el futuro

Para integrar los equipos independientes a la arquitectura cluacutester se realizoacute el disentildeo de

una topologiacutea de red Gigabit Ethernet tipo estrella con un direccionamiento IP estaacutetico la

configuracioacuten de protocolos de comunicacioacuten remota sin autenticacioacuten la comparticioacuten de

archivos en red y la utilizacioacuten de aplicaciones de licencia GPL que permiten obtener el

funcionamiento similar a la de una supercomputadora

Haciendo uso de libreriacuteas de paso de mensajes (MPI) y el software John the Ripper para el

descifrado de contrasentildeas la arquitectura cluacutester implementada alcanzoacute una eficiencia de 885

de rendimiento en comparacioacuten con los recursos computacionales de un solo equipo con las

caracteriacutesticas de un nodo Ademaacutes otros de los proyectos ejecutados en la arquitectura cluacutester

para probar el rendimiento fue la ejecucioacuten de un programa para la deteccioacuten de nuacutemeros primos

dentro de un archivo de 10000000 de nuacutemeros obteniendo una eficiencia de maacutes de 99 gracias

a la distribucioacuten de tareas que proporcionan las libreriacuteas de paso de mensajes (MPI) dentro de la

arquitectura cluacutester

Con la implementacioacuten de la arquitectura cluacutester el laboratorio de la Maestriacutea en Sistemas

Computacionales podraacute dar soluciones potentes eficientes y econoacutemicas en los entornos de

94

investigacioacuten mejorando la capacidad de procesamiento en aplicaciones como evaluacioacuten de

algoritmos compresioacuten de archivos renderizacioacuten de imaacutegenes anaacutelisis de datos (big data) en un

tiempo relativamente bajo ideal para las necesidades educativas

La experiencia obtenida al realizar esta investigacioacuten y propuesta ha sido enriquecedora

tanto por la obtencioacuten de conocimiento en base a la historia evolucioacuten y arquitectura de cluacutesters

asiacute como la programacioacuten paralela y sus ventajas en diferentes proyectos desarrollados en todo el

mundo Igualmente la comparacioacuten entre cada uno de los modelos y meacutetodos resulta interesante

dado que existe un sinnuacutemero de ejemplos con caracteriacutesticas diferentes pero baacutesicamente con un

mismo objetivo final

Trabajo Futuro

El cluacutester implementado en el Laboratorio de la Maestriacutea en Sistemas computacionales del

Instituto Tecnoloacutegico de Acapulco puede ser utilizado en gran cantidad de aplicaciones dentro de

las diferentes aacutereas de investigacioacuten del Instituto asiacute como estar disponible para el Departamento

de Posgrado e Investigacioacuten como apoyo durante la realizacioacuten de tareas y proyectos dentro de las

aacutereas de Desarrollo de Sistemas Inteligentes asiacute como de Tecnologiacuteas Web

Propuesta de Trabajo a Futuro

Durante la realizacioacuten de este proyecto se observoacute la necesidad que existe dentro del

departamento de Investigacioacuten y Posgrado de equipos de alta capacidad de procesamiento para

realizar de una manera maacutes eficiente las investigaciones que se estaacuten llevando a cabo Una de ellas

es el ldquoSistema de apoyo al diagnoacutestico oportuno de Retinopatiacutea Diabeacuteticardquo en la cual a traveacutes del

entrenamiento de una red neuronal se clasificaraacuten y evaluaraacuten un nuacutemero de 3000 imaacutegenes para

95

demostrar la presencia de dicha enfermedad en pacientes del Instituto Estatal de Oftalmologiacutea

Actualmente se ha realizado una prueba de entrenamiento de dicha red neuronal con 70 imaacutegenes

obteniendo como resultado un tiempo clasificacioacuten y evaluacioacuten de 301532 horas en un equipo

con un procesador Core I7 con 8 GB en memoria RAM

96

Bibliografiacutea

Alegsa (01 de 01 de 2018) Alegsa Diccionario Informaacutetico Recuperado el 07 de 2019 de

Alegsa httpwwwalegsacomarDicataque_por_diccionariophp

Avecto (2017) Avecto Limited Recuperado el 10 de 08 de 2018 de AVECTO a Bomgar

Company wwwavectocom

Borghello C (2009) Seguridad de la Informacioacuten Recuperado el 11 de 2018 de Criptografiacutea de

la A-Z httpswwwsegu-infocomarproyectosp1_hashhtm

Branch Bedoya J amp Mesa Muacutenera A (Diciembre de 2008) Implementacioacuten de un cluster

homogeacuteneo para la resolucioacuten de problemas de alta complejidad computacional Avances

en Sistemas e Informaacutetica 5(3)

ByteBleeder (02 de 06 de 2017) Practical guide to NTLM Relaying in 2017 Obtenido de Github

httpsbyt3bl33d3rgithubiopractical-guide-to-ntlm-relaying-in-2017-aka-getting-a-

foothold-in-under-5-minuteshtml

Caballero A (26 de 06 de 2018) Hacking Eacutetico Recuperado el 03 de 2019 de John The Ripper

httpwwwreydescomdq=Recuperar_la_Contrasena_del_Administrador_utilizando_s

amdump2_y_John_The_Ripper

Carretero Peacuterez J de Miguel Anasagasti P Garciacutea Carballeira F amp Peacuterez Costoya F (2001)

Sistemas Operativos Una visioacuten aplicada (C F Madrid Ed) Madrid Espantildea

McGRAW-HillInteramericana

Castelloacute Gimeno A (30 de 07 de 2014) Universitat Jaume Recuperado el 10 de 2019 de

Evaluacioacuten de prestaciones mediante laaplicacioacuten HPL de clusters utilizandorCUDA

97

httprepositoriujiesxmluibitstreamhandle10234115082TFM_2014_CastelloGimen

oApdfsequence=1ampisAllowed=y

Chaacutevez J Echeverriacutea C Correa M Vaacutezquez E Suaacuterez M Maacutermol X Diacuteaz G (07 de

1999) Centro de Caacutelculo Cientiacutefico Recuperado el 01 de 05 de 2018 de Universidad de

Los Andes httpwwwcecalculavedocumentaciontutorialesbeowulfinformehtml

Chirinov R (2003) Nfinite9000 SL Recuperado el 26 de 04 de 2018 de Noticias 3D

httpswwwnoticias3dcomarticuloaspidarticulo=248amppag=4

Coffin J (23 de 07 de 2015) Quora Recuperado el 15 de 08 de 2019 de

httpswwwquoracomWhat-does-it-mean-when-a-hashing-algorithm-has-been-broken

Dongarra J (2010) Top500 Super computer sites Recuperado el 07 de 2019 de http

wwwtop500org

Educba (01 de 01 de 2019) Recuperado el 10 de 2019 de Educbaorg

httpswwweducbacomidea-algorithm

europa press (04 de 06 de 2013) Portal Tic Recuperado el 18 de 11 de 2018 de Europa Press

httpswwweuropapressesportalticgadgetsnoticia-cuarta-generacion-intel-core-mayor-

salto-cuanto-ahorro-energetico-20130604174722html

g0tmi1k (2018) github Recuperado el 05 de 2019 de github

httpsgithubcomdanielmiesslerSecListsblobmasterPasswordsCommon-

Credentials10-million-password-list-top-1000000txt

Gonzaacutelez Agudelo D (2014) El riesgo y la falta de politicas de seguridad informaacutetica una

amenaza en las empresas certificadas basc Recuperado el 20 de 05 de 2018 de

Universidad Militar Nueva Granada

httpsrepositoryunimilitareducobitstream10654122511ENSAYO20FINALpdf

98

Gonzaacutelez Ramiacuterez E amp Rodriacuteguez Saacutenchez A (2008) Disentildeo e implementacioacuten de un cluster

tipo BEOWULF para el desarrollo de coacutemputo cientiacutefico avanzado CdMx Mexico

Hernandez M (2013) Forensics Mexico Recuperado el 07 de 2018 de La importancia del

registro de Windows parte 1 httpforensicsmexicoblogspotcom201309la-

importancia-del-registro-de-windowshtml

Kowalczyk C (01 de 2015) Crypto-IT Recuperado el 11 de 2018 de Crypto-IT

httpwwwcrypto-itnetengasymmetricindexhtml

Labaca Castro R (13 de 06 de 2014) We live security Recuperado el 2019 de 08 de 07 de

Welivesecuritybyeset httpswwwwelivesecuritycomla-es20140613matematica-

claves-numerica-alfanumerica

Lizaacuterraga C (2002) Departamento de Fiacutesica Recuperado el 12 de 03 de 2018 de Universidad

de Sonora httpclustersfisicausonmx

Llorens E amp Pentildea M (2002) Recuperado el 04 de 2018 de Departament dArquitectura de

Computadors httppersonalsacupceduenricPFCBeowulfbeowulfhtml

Meneacutendez-Barzanallana R (07 de 08 de 17) Universidad de Murcia Recuperado el 11 de 2018

de Informaacutetica Aplicada a las Ciencias Sociales

httpswwwumesdocenciabarzanaIACCSSCriptografiahtml

Merkle R amp Damgaringrd I (sf) Numerenturorg Recuperado el 06 de 2019 de Para computar -

numerenturorg httpnumerenturorgfuncion-merkle-damgard

Microsoft Inc (02 de 05 de 2019) wwwmicrosoftcom Obtenido de Password must meet

complexity requirements httpsdocsmicrosoftcomes-eswindowssecuritythreat-

protectionsecurity-policy-settingspassword-must-meet-complexity-requirements

99

Mifsud E (26 de 03 de 2012) Introduccioacuten a la seguridad informaacutetica Recuperado el 07 de 05

de 2018 de Ministerio de educacioacuten cultura y deportes Gobierno de Espantildea

httprecursosticeducacionesobservatoriowebessoftwaresoftware-general1040-

introduccion-a-la-seguridad-informaticashowall=1

Murugesan S (01 de 02 de 2008) Researchgate doi101109MITP200810

Nahar K amp Abu Abbas O (01 de 2010) Researchgate Recuperado el 07 de 2019 de

Researchgate

httpswwwresearchgatenetpublication315492522_Hybrid_Cipher_System

Nievas F Pino O amp Arroyo R (sf) Los clusters como Plataforma de Procesamiento Paralelo

Recuperado el 25 de 04 de 2018 de

httpusuarioslycoseslacaraocultadescargasClusters_definitivo pdf

Pawar S (2016) A computer science portal for geeks Recuperado el 10 de 2018 de

Geeksforgeeks httpswwwgeeksforgeeksorgrc5-encryption-algorithm

Peleus (2019) NETSEC Recuperado el 08 de 2019 de httpsnetsecwsp=314

Peacuterez Tavera I (2014) Obtenido de Universidad Autonoma del Estado de Hidalgo

httpswwwuaehedumxscigeboletinprepa4n2e4html

Peacuterez M (2001) Recuperado el 15 de 04 de 2018 de

httpwwwdragonesorgBibliotecaArticulosArquitecturaParalela2pdf

Petitet A Whaley R C Dongarra J amp Cleary A (2008) HPL - A Portable Implementation of

the High-Performance Linpack Benchmark for Distributed-Memory Computers

Recuperado el 07 de 2019 de httpwwwnetliborgbenchmarkhpl

Picolet J (2017) Hash Crack Password Cracking Manual (Vol 2) Createspace Independent

Pub

100

Preukschat A (23 de 02 de 2015) Oro y Finanzas Recuperado el 07 de 2019 de

httpswwworoyfinanzascom201502que-es-colision-criptografia-bitcoin

Robbins D (2008) OpenMosix Recuperado el 22 de 04 de 2018 de the openMosix Project

httpopenmosixsourceforgenetintroduction_to_openmosixhtml

Rocha Quezada J d Botello Rionda S Vargas Feacutelix J M amp Munguiacutea Torres I A (Sep-Dic

de 2011) Disentildeo e implementacioacuten de un cluacutester de coacutemputo de alto rendimiento Acta

Universitaria 21(3) 24-33 Recuperado el 1 de 12 de 2018

Rocksclusters (01 de 01 de 2010) httpwwwrocksclustersorg Recuperado el 01 de 06 de 2018

de httpwwwrocksclustersorg httpwwwrocksclustersorg

Sanjoy K (01 de 01 de 2015) DZone Recuperado el 15 de 06 de 2019 de DZone

httpsdzonecomarticlessecurity-algorithms-des-algorithm

Security Degree Hub (01 de 2017) Security Degree Hub Recuperado el 13 de 02 de 2019 de

Security Degree Hub httpswwwsecuritydegreehubcomwhat-is-cryptanalysis

Simmons G (01 de 01 de 2019) Encyclopedia Britannica Recuperado el 08 de 2019 de

Encyclopedia Britannica httpswwwbritannicacomtopicRSA-encryption

statista (09 de 2017) Statista Obtenido de Statista Co httpsesstatistacom

Turner D (2004) Recuperado el 12 de 02 de 2018 de Ames Lab

httpwwwsclameslabgovProjectsparrallel_computingpara_intohtml

United States Government Department of Defense (1983) Trusted Computer System Evaluation

Criteria Rainbow Series

Universidad Internacional de Valencia (09 de Septiembre de 2016) Nuestros

expertosTecnologiacutea Recuperado el 27 de Abril de 2018 de Universidad Internacional de

Valencia httpswwwuniversidadviuesla-seguridad-informatica-puede-ayudarme

101

Wallen J (19 de 01 de 2019) Lifewire Recuperado el 13 de 06 de 2019 de Lifewire

httpswwwlifewirecomgnome-3-desktop-4175640

Yang H (01 de 02 de 2019) Herong Yang Recuperado el 15 de 06 de 2019 de Cryptography

Tutorials httpwwwherongyangcomCryptographyDSA-Introduction-What-Is-DSA-

Digital-Signature-Algorithmhtml

102

Anexo 1

Programa en Lenguaje C para la obtencioacuten de nuacutemeros primos utilizando libreriacuteas mpi

include ltcstdlibgt

include ltiostreamgt

include ltiomanipgt

include ltcmathgt

include ltctimegt

include mpih

using namespace std

int main ( int argc char argv[] )

int prime_number ( int n int id int p )

void timestamp ( )

int main ( int argc char argv[] )

int i

int id

int master = 0

int n

int n_factor

int n_hi

int n_lo

int p

int primes

int primes_part

double wtime

n_lo = 1

n_hi = 10000000

n_factor = 2

MPIInit ( argc argv )

p = MPICOMM_WORLDGet_size ( )

id = MPICOMM_WORLDGet_rank ( )

if ( id == master )

cout ltlt n

cout ltlt Cuenta primosn

cout ltlt C++MPI versionn

cout ltlt n

cout ltlt Programa para contar cantidad de primos para un N dadon

cout ltlt Corriendo en ltlt p ltlt procesosn

cout ltlt n

103

cout ltlt N S Tiempon

cout ltlt n

n = n_lo

while ( n lt= n_hi )

if ( id == master )

wtime = MPIWtime ( )

MPICOMM_WORLDBcast ( ampn 1 MPIINT master )

primes_part = prime_number ( n id p )

MPICOMM_WORLDReduce ( ampprimes_part ampprimes 1 MPIINT

MPISUM

master )

if ( id == master )

wtime = MPIWtime ( ) - wtime

cout ltlt ltlt setw(8) ltlt n

ltlt ltlt setw(8) ltlt primes

ltlt ltlt setw(14) ltlt wtime ltlt n

n = n n_factor

MPIFinalize ( )

if ( id == master )

cout ltlt n

cout ltlt PRIME_MPI - Procesos maestron

cout ltlt Finalizacion del calculo normaln

return 0

int prime_number ( int n int id int p )

int i

int j

int prime

int total

104

total = 0

for ( i = 2 + id i lt= n i = i + p )

prime = 1

for ( j = 2 j lt i j++ )

if ( ( i j ) == 0 )

prime = 0

break

total = total + prime

return total

void timestamp ( )

define TIME_SIZE 40

static char time_buffer[TIME_SIZE]

const struct tm tm

size_t len

time_t now

now = time ( NULL )

tm = localtime ( ampnow )

len = strftime ( time_buffer TIME_SIZE d B Y IMS p tm )

cout ltlt time_buffer ltlt n

return

undef TIME_SIZE

Page 12: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios

xi

Iacutendice de Tablas

Tabla 11 Costo del Proyecto 15

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia) 86

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia) 89

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos

(Fuente Elaboracioacuten propia) 90

1

Capiacutetulo 1 Introduccioacuten

11 Antecedentes del problema

Sin lugar a duda una de las herramientas maacutes importantes producida en el siglo XX ha sido

la computadora la cual ha provocado cambios vertiginosos en la sociedad y en el progreso de la

misma En la actualidad el entorno estaacute praacutecticamente controlado por las nuevas tecnologiacuteas que

a medida que transcurre el tiempo avanzan sin liacutemites y en ocasiones son utilizadas

incorrectamente provocando dantildeos de grandes dimensiones

Los trascendentales cambios operados en el mundo moderno caracterizados por su

constante desarrollo la acelerada globalizacioacuten de la economiacutea la acentuada dependencia a

almacenar grandes voluacutemenes de informacioacuten y los sistemas que la proveen aunado a grandes

inversiones de las empresas en conocimiento actual y futuro en sistemas de informacioacuten ademaacutes

del potencial que poseen las tecnologiacuteas para cambiar draacutesticamente las organizaciones y las

praacutecticas de negocio asiacute como crear nuevas oportunidades disentildear nuevas estructuras tecnoloacutegicas

basadas en informacioacuten la convierte en un activo codiciable Tales avances hacen permanente el

riesgo en las tecnologiacuteas y nos llevan a pensar en la problemaacutetica sobre la seguridad informaacutetica

La proteccioacuten de datos documentos y control de acceso a la informacioacuten es un tema que

cada diacutea toma maacutes fuerza en las grandes compantildeiacuteas debido a las diferentes praacutecticas de

especialistas tecnoloacutegicos como los son los hackers y crackers que roban informacioacuten vital para

posteriormente sacar provecho de ella

2

ldquoDesde la aparicioacuten de los grandes sistemas aislados hasta nuestros diacuteas en los que el

trabajo en red es lo habitual los problemas derivados de la seguridad de la informacioacuten han ido

tambieacuten cambiando evolucionando pero estaacuten ahiacute y las soluciones han tenido que ir adaptaacutendose

a los nuevos requerimientos teacutecnicos Aumenta la sofisticacioacuten en el ataque y ello aumenta la

complejidad de la solucioacuten pero la esencia es la mismardquo (Mifsud 2012)

Dentro del mundo actual la informacioacuten es denominada un activo importante de una

institucioacuten la cual debe ser protegida para evitar su peacuterdida modificacioacuten o el uso inadecuado de

su contenido

El extraviacuteo o el mal uso de informacioacuten que para alguien es confidencial genera dantildeos y

repercusiones directas relacionadas a la integridad disponibilidad y confidencialidad de los

archivos y a su vez a los duentildeos de dicha informacioacuten

ldquoLa seguridad informaacutetica se distingue por tener dos propoacutesitos de seguridad la Seguridad

de la Informacioacuten y la Proteccioacuten de Datos estos se diferencian debido a que los datos son valores

numeacutericos que soportan la informacioacuten mientras que la informacioacuten es aquello que tiene un

significado para nosotrosrdquo (Gonzaacutelez Agudelo 2014)

La seguridad informaacutetica consiste en asegurar que los recursos del sistema de informacioacuten

(material informaacutetico o programas) de una organizacioacuten sean utilizados de la manera que se decidioacute

3

inicialmente y que el acceso a la informacioacuten alliacute contenida asiacute como su modificacioacuten soacutelo sea

posible a las personas que se encuentren acreditadas y dentro de los liacutemites de su autorizacioacuten

Actualmente hay mucha informacioacuten circulando en internet por ejemplo correos

electroacutenicos publicaciones en Twitter Facebook videos fotos comercio electroacutenico secretos de

estado militares o industriales Lamentablemente dicha red es puacuteblica e insegura dentro de la cual

existen usuarios bien intencionados y muchos mal intencionados Diariamente encontramos

noticias de sitios con intrusiones mal intencionadas (hackeados) clonacioacuten de tarjeta de creacutedito o

imaacutegenes adulteradas Todo lo anterior motiva la necesidad de proteger la informacioacuten a traveacutes de

mecanismos que impidan a los usuarios no autorizados acceder a dicha informacioacuten

4

12 Planteamiento del Problema

Los sistemas de informacioacuten actuales estaacuten relacionados completamente con la exposicioacuten

de su informacioacuten a entidades externas que son ajenas a la organizacioacuten o delegacioacuten a la que

pertenecen

Cuando no se conoce el alcance que tienen los sistemas informaacuteticos ni lo vulnerables que

pueden ser si son expuestos a Internet por los mismos empleados de la organizacioacuten puede darse

ldquofugardquo de informacioacuten hacia el exterior esto los hace vulnerables a eventos y amenazas que

conllevan a riesgos que pueden provocar peacuterdidas tangibles e intangibles las cuales se traducen

en peacuterdidas que en muchos de los casos por decir lo menos seraacuten monetarias

El portal espantildeol de estadiacutesticas statista muestra la cuota de mercado de los principales

sistemas operativos a nivel mundial a fecha de febrero de 2017 seguacuten el nuacutemero de instalaciones

(statista 2017) Windows 10 fue el segundo sistema operativo maacutes instalado con una cuota de

mercado de 253 Esto significa que alrededor de una de cada cuatro computadoras estaacute

gobernado por este sistema operativo Por su parte en el caso de Windows 7 el porcentaje se situacutea

por encima del 45 a pesar de que ya no se vende ninguacuten PC con este sistema operativo Hablando

de manera conjunta los sistemas operativos Windows cuentan con una cuota del mercado global

de 8857

La empresa de seguridad informaacutetica Britaacutenica Avecto informoacute en su Microsoft

Vulnerabilities Report 2017 (Avecto 2017) (reporte 2017 de vulnerabilidades de Windows) un

aumento de vulnerabilidades publicadas del 111 en los uacuteltimos 5 antildeos de las cuales 235 criacuteticas

5

fueron mitigadas removiendo permisos de administrador asiacute como otras muy importantes

enfocadas al Administrador de Cuentas de Seguridad (SAM Security Account Manager por sus

siglas en ingleacutes) la cual es una base de datos almacenada como un archivo del registro en Windows

y que almacena las contrasentildeas de los usuarios en un formato hash (Algoritmos que crean a partir

de una entrada una salida alfanumeacuterica de longitud fija)

6

13 Objetivos

131 Objetivo General A traveacutes de la implementacioacuten de un procedimiento de fuerza

bruta utilizando para ello un cluacutester de alto rendimiento asiacute como software de uso libre lograr

capacidad de procesamiento capaz de vulnerar un sistema de autenticacioacuten nivel C1

132 Objetivos Especiacuteficos

Analizar los diferentes niveles de seguridad de sistemas operativos

Analizar diferentes meacutetodos de criptoanaacutelisis para vulnerar el Administrador de

cuentas de seguridad

Estudiar las teacutecnicas de agrupamiento de computadoras (clustering) para la

obtencioacuten de mayor poder de procesamiento

Implementar un cluacutester de alto rendimiento en el Laboratorio de la Maestriacutea en

Sistemas Computacionales del Instituto Tecnoloacutegico de Acapulco para ejecutar

operaciones de coacutemputo distribuido

7

14 Justificacioacuten

Antes la seguridad de la informacioacuten se realizaba a traveacutes de medios fiacutesicos por ejemplo

una caja fuerte en la cual las personas resguardaban objetos o informacioacuten valiosa para ellos Con

la introduccioacuten de las computadoras y el uso de internet los usuarios comienzan a almacenar

informacioacuten importante dentro de sus equipos por lo que se considera indispensable el uso de

herramientas que brinden proteccioacuten a la informacioacuten que se encuentra resguardada dentro de

eacutestas Los usuarios informaacuteticos suelen enviar informacioacuten por la red en las empresas al realizar

traacutemites o enviar informes a socios jefes entre otros

El resguardo de informacioacuten siempre ha sido importante para los seres humanos con la

diferencia que anteriormente no se contaba con los avances tecnoloacutegicos que tenemos actualmente

puesto que con la introduccioacuten de internet y el uso de dispositivos electroacutenicos se tiene mayor

riesgo de la informacioacuten que en ellos se maneja

La proteccioacuten del contenido de los datos es una necesidad urgente en casi todos los aacutembitos

de la sociedad incluyendo los servicios puacuteblicos y privados por lo que la tecnologiacutea de la

seguridad de los sistemas de cifrado se encuentra de frente a verdaderos retos

15 Hipoacutetesis

A traveacutes de un de fuerza bruta como teacutecnica de criptoanaacutelisis y con la ayuda de una mayor

capacidad de procesamiento mediante la implementacioacuten de agrupamiento de computadoras

(cluacutester) de alto rendimiento seraacute posible encontrar alguna vulnerabilidad dentro del sistema de

administracioacuten de cuentas de seguridad de Windows server 2012

8

16 Alcances y Limitaciones

Esta tesis se centraraacute en el sistema operativo Windows como objeto de estudio al cual se

le realizaraacute el criptoanaacutelisis

La tesis se enfocaraacute en el meacutetodo Beowulf para realizar el agrupamiento de computadoras

asiacute como la distribucioacuten de software libre del sistema operativo Linux Rocks

El nuacutemero de equipos disponibles para poder realizar el agrupamiento es de 17

computadoras hasta lograr el poder de coacutemputo de 800 Gflops

17 Impacto Social Tecnoloacutegico Econoacutemico y Ambiental

La sostenibilidad del presente proyecto seraacute abordada a partir de los siguientes aspectos

171 Impacto social A veces se puede pensar que un cluacutester de alto rendimiento pudiera

no tener alguacuten impacto directo en el medio social pero si nos enfocamos a un punto de vista en

donde gracias a la capacidad de procesamiento de estas maacutequinas han sido parte fundamental en

el desarrollo de proyectos que inciden de manera directa en beneficio de la sociedad en la que

vivimos como lo es la medicina la fiacutesica quiacutemica

Este proyecto busca beneficiar a nuestra sociedad proveyendo su capacidad de

procesamiento en la buacutesqueda de alguna vulnerabilidad en el sistema operativo maacutes utilizado hoy

en diacutea como lo es Windows ademaacutes de que estaraacute disponible para la comunidad cientiacutefica y

9

estudiantil del Instituto Tecnoloacutegico de Acapulco para optimizar tiempo de caacutelculo en futuras

investigaciones

172 Impacto ambiental Green IT tambieacuten conocido como Green Computing o

traducido al espantildeol como Tecnologiacuteas Informaacuteticas Verdes es definido como el estudio y la

praacutectica de disentildear desarrollar usar y disponer de computadoras servidores y diferentes

perifeacutericos tales como monitores impresoras dispositivos de almacenamiento de redes y

comunicaciones eficientemente y efectivamente con un impacto miacutenimo o nulo en el medio

ambiente (Murugesan 2008)

Bajo la premisa anterior este proyecto hace uso de los equipos con los que cuenta

actualmente el laboratorio de la Maestriacutea en Sistemas Computacionales lo cual evitaraacute la

adquisicioacuten de equipo nuevo y por consecuencia desechar el equipo existente evitando desperdicio

electroacutenico Dicho equipo cuenta con un procesador Intel I3 de 4ta generacioacuten lo cual seguacuten el

portal electroacutenico Europa press

ldquoEsta nueva generacioacuten supone el mayor salto en cuanto ahorro energeacutetico de la historia

de Intel asiacute como una mejora en los graacuteficos y nuevas experiencias de usuariordquo (europa press

2013)

Teniendo como base estos dos puntos importantes como lo son la reutilizacioacuten de equipo

y utilizando procesadores de bajo consumo energeacutetico es como este proyecto busca contribuir de

manera positiva con el medio ambiente

10

173 Impacto econoacutemico Actualmente existe una gran necesidad de procesar grandes

cantidades de datos lo cual hace imprescindible disponer de maacutequinas con estas caracteriacutesticas sin

embargo su alta complejidad aunado al gran costo hace que en instituciones de caraacutecter puacuteblico

sea muy complicado conseguir recurso para este fin Sin embargo un cluacutester de alto rendimiento

reutilizaraacute equipo propio evitando asiacute gastos por concepto de adquisicioacuten de equipo siendo de

esta manera viable para instituciones de caraacutecter puacuteblico

18 Metodologiacutea a Utilizar

181 Anaacutelisis Despueacutes de analizar las diferentes metodologiacuteas de clustering se optoacute por

desarrollar e implementar un cluacutester de alto rendimiento (HPC)

182 Disentildeo

1821 Economiacutea Debido a las caracteriacutesticas del equipo con el cual cuenta el Laboratorios

de la Maestriacutea en Sistemas Computacionales los componentes utilizados para este proyecto son

considerados de uso comuacuten y de bajo costo lo cual los hace faacutecilmente reemplazables en caso de

fallo a un costo accesible El equipo es de la marca Acer Aspire modelos AXC-605-M021 lo cual

nos hace tener ventaja y respaldo del fabricante con respecto a hardware geneacuterico

1822 Instalaciones Un cluacutester requiere de un ambiente controlado Esto es una

habitacioacuten especial con sistema de enfriamiento capacidad suficiente de carga eleacutectrica control

de humedad y un ambiente libre de polvo Ademaacutes se deben considerar el peso del equipo sobre

el piso (ya sea falso o piso normal) Se recomienda colocarlo en los soacutetanos o en la plata baja de

edificios (Rocha Quezada Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

11

En el laboratorio de la Maestriacutea en Sistemas Computacionales se cuenta con espacio que

reuniacutea la mayoriacutea de las caracteriacutesticas requeridas para este proyecto

1823 Escalabilidad Un cluacutester debe ser faacutecilmente escalable y a su vez confiable Por

tal motivo se ha utilizado equipo de marca lo cual nos proporciona maacutes de confiabilidad en su

desempentildeo y a su vez facilidad de aumentar el nuacutemero de equipos si en un futuro fuese necesario

agrandar este proyecto Se armoacute un cluacutester de cinco computadoras con procesadores Intel Core I3

de 64 bits en cada nodo La memoria incluida y perifeacutericos son faacuteciles de adquirir en el mercado

1824 Red En la parte de redes se utilizoacute un switch fast Ethernet con una velocidad de 1

Gbps el cual tiene tazas de transferencia raacutepida y el costo es notablemente maacutes econoacutemico que

uno de fibra oacuteptica

El cableado seleccionado fue el estaacutendar UTP de cobre con la norma Gigabit Ethernet de

IEEE 8023ab con la categoriacutea de cableado 6e que soporta tazas de transferencia de datos de

1000Base T (1 Gbps)

1825 Software

ldquoEl sistema operativo debe constar con servicios dedicados para compartir y respaldar

archivos asiacute como capacidad de acceder a los datos de trabajo raacutepidamente El sistema operativo

debe tambieacuten proveer servicios de monitoreo y reporte de fallas en el sistemardquo (Rocha Quezada

Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

12

Existe una gran variedad de software para instalar cluacutester de alto rendimiento sin embargo

como se ha comentado con anterioridad el costo de adquisicioacuten debe ser accesible por tal motivo

se optoacute por una distribucioacuten con licencia GNU de Linux Rocks Cluster la cual es una distribucioacuten

sencilla de instalar y configurar en comparacioacuten con otras distribuciones analizadas dicha

distribucioacuten estaacute basada en CentOS que a su vez estaacute basada en la conocida distribucioacuten de Linux

Red Hat

1826 Almacenamiento Para este proyecto no se requeriraacute un gran espacio de

almacenamiento por tal motivo los equipos utilizados tanto maestro como esclavos mantuvieron

sus unidades de disco originales las cuales son de 1 TB de almacenamiento

183 Implementacioacuten La implementacioacuten del cluacutester de alto rendimiento fue realizada

dentro de las instalaciones del Laboratorio de la Maestriacutea en Sistemas Computacionales del

Instituto Tecnoloacutegico de Acapulco construido inicialmente para este proyecto de criptoanaacutelisis lo

cual requeriraacute suficiente capacidad de procesamiento para poder implementar ataques de fuerza

bruta a sistemas operativos Las caracteriacutesticas del cluacutester construido son

1831 Software El software instalado en cada uno de los nodos es el siguiente

bull Sistema operativo Rocks Cluacutester Linux 74 (64 bits)

bull Libreriacutea de manejo de mensajes Open-MPI 153

bull Software de monitoreo Ganglia

13

1832 Hardware El cluacutester estaacute compuesto de 17 equipos con las siguientes

caracteriacutesticas

bull Nodo Maestro y 16 Nodos Esclavos

- Procesador Intel Core I3 4150 (4 nuacutecleos) Memoria 6 GB Disco Duro SATA 1 TB

tarjeta de Red Gigabit Ethernet

El hardware adicional es el siguiente

bull Interconexioacuten de Red

bull Switch Cisco 26 puertos 1Gbps modelo SG200 Red interna

1833 Recursos totales del cluacutester

bull Nuacutecleos de unidades de procesamiento (cores) 68

bull Capacidad en memoria 92 GB

bull Capacidad en disco 17 TB

19 Aseguramiento Teacutecnico ndash Material

A continuacioacuten se muestra el desglose del equipo utilizado para la elaboracioacuten de un

cluacutester de alto rendimiento estos componentes consisten en Hardware y Software especializado

asiacute como los costos de produccioacuten y personal involucrados en la metodologiacutea y elaboracioacuten del

proyecto

Costos de Hardware

Costos de Software

14

191 Hardware En este punto se refleja el costo de los dispositivos y herramientas a nivel

fiacutesico las cuales sirvieron para la implementacioacuten del proyecto cluacutester de alto rendimiento Cabe

resaltar que el equipo utilizado forma parte del inventario actual del Laboratorio motivo por el

cual su utilizacioacuten no causoacute erogacioacuten alguna sin embargo la investigacioacuten de costos se realizoacute

con la finalidad que el lector pueda establecer comparativas y buscar alternativas en caso de ajuste

de presupuesto

1911 Equipo de coacutemputo El equipo de coacutemputo utilizado consta de diecisiete

computadoras las cuales serviraacuten una para Nodo Maestro y las dieciseacuteis restantes como Nodos

Esclavos

La descripcioacuten de estos equipos se muestra en la tabla a continuacioacuten mostrando los costos

de todos los equipos utilizados dentro del proyecto

15

Tabla 11 Costo del Proyecto

Modelo

Cantidad

Caracteriacutesticas

Costos

PC - Acer AXC-

605

17

Procesador Intel Core i3

Pantalla 156rdquo

Disco duro 1TB HDD

RAM 6GB

Salida HDMI

Tarjeta de graacuteficos INTEGRADA

Lector de CD

Los costos en el mercado de una PC de

escritorio con estas caracteriacutesticas tiene un

valor aproximado de $600000 pesos

(Moneda nacional Mexicana)

Switch Cisco

Gigabit Ethernet

1

Modelo SG200 de 26 puertos

Costo en el mercado alrededor de

$2000000 pesos MN

Total

12200000 pesos MN

16

Capiacutetulo 2 Estado del Arte

Tiacutetulo del Trabajo Introduccioacuten a la Criptografiacutea

Autor Gibraacuten Granados Paredes

Fecha Julio 2010

Lugar Ciudad de Meacutexico

Publicado en Coordinacioacuten de Publicaciones Digitales DGSCA-UNAM

httpwwwrevistaunammxvol7num7art55int55htm

Siacutentesis Cuando se desea tener seguridad hablando en aacutembitos informaacuteticos la

criptografiacutea es una herramienta muy uacutetil el autor lo entiende tambieacuten como un medio para

garantizar las propiedades de confidencialidad integridad y disponibilidad de los recursos de un

sistema

Con la criptografiacutea se puede garantizar las propiedades de integridad y confidencialidad

pero hay que saber coacutemo utilizarla para ello es importante tener claros los conceptos baacutesicos que

estaacuten detraacutes de los sistemas criptograacuteficos modernos Estos conceptos van desde entender queacute es

la criptografiacutea coacutemo estaacute clasificada entender el funcionamiento baacutesico de algunos sistemas de

cifrado y conocer coacutemo se forman los documentos digitales como firmas y sobres digitales

Resultados El autor realiza un viaje por un gran nuacutemero de conceptos utilizados en

criptografiacutea el inicio y la clasificacioacuten de la misma asiacute como la criptografiacutea claacutesica y moderna y

analiza de manera breve algunos meacutetodos de cifrado maacutes comunes

17

Tiacutetulo del Trabajo Criptoanaacutelisis sobre meacutetodos claacutesicos de cifrado

Autores Sebastiaacuten Goacutemez Juan David Arias Diego Agudelo

Fecha 2 de mayo 2013

Lugar Ciudad de Meacutexico

Publicado en Scientia et Technica Antildeo XVII No 50 abril de 2012

Siacutentesis Los algoritmos criptograacuteficos utilizados desde la antigua Roma hasta nuestros

diacuteas son meacutetodos que convierten un mensaje de texto plano a cifrado al proceso inverso se le

conoce como descifrar Este artiacuteculo realiza un estudio de algunas teacutecnicas de encriptacioacuten claacutesicas

del siglo pasado como lo son el cifrado de Cesar y el cifrado de Vigeneacutere asiacute como muestra

teacutecnicas baacutesicas y modernas de criptoanaacutelisis basadas en la teoriacutea de la informacioacuten y estadiacutestica

como lo son la entropiacutea y el ataque de maacutexima correlacioacuten Las teacutecnicas de criptoanaacutelisis descritas

anteriormente pueden ser usadas en otros meacutetodos de cifrado siempre y cuando esteacuten presentes las

mismas debilidades

Resultados Los autores implementaron en lenguajes de programacioacuten Python un

algoritmo para el caacutelculo de entropiacutea para diferentes longitudes de clave Para la implementacioacuten

de los algoritmos de cifrado y descifrado de Vigeneacutere y de maacutexima correlacioacuten utilizaron lenguaje

de programacioacuten C++ Se probaron los meacutetodos anteriormente descritos sobre textos planos de

diferentes longitudes logrando un resultado de 9385 de efectividad en promedio

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de dos de los

algoritmos de encriptacioacuten maacutes antiguos y baacutesicos pero sobre todo que conociendo los meacutetodos

de criptoanaacutelisis me permitiraacuten analizar debilidades y fortalezas de algoritmos

18

Tiacutetulo del Trabajo ULTRACOM Computacioacuten de Alto Rendimiento para Criptoanaacutelisis

Autor Antonio Castro Lechtaler Alejandro Repetto Martiacuten Bianchi Marcelo Cipriano

Alejandro Arroyo Arzubi Ceacutesar Cicerchia Eduardo Malvacio

Fecha octubre 2014

Lugar Buenos Aires Argentina

Publicado en XX Congreso Argentino de Ciencias de la Computacioacuten (Buenos Aires

2014)

Siacutentesis La generacioacuten de nuacutemeros primos fundamentales para la produccioacuten de claves

el anaacutelisis de secuencias pseudo-aleatorias los procesos de verificacioacuten y validacioacuten de algoritmos

de seguridad en un sentido geneacuterico requieren enormes cantidades de procesamiento Los

procesos relacionados con la matemaacutetica criptograacutefica se caracterizan por la alta necesidad de

coacutemputo El objetivo de ULTRACOM es desarrollar una computacioacuten distribuida multipropoacutesito

que permita como primera aplicacioacuten real el anaacutelisis la validacioacuten y la ejecucioacuten de pruebas de

estreacutes sobre sistemas criptograacuteficos El presente trabajo de investigacioacuten detalla el proceso de

desarrollo de ULTRACOM y muestra un ejemplo de su implementacioacuten en una versioacuten Beta Para

ello toman como entrada dos versiones del algoritmo Trivium Utilizando la misma

infraestructura y sin desarrollo extra se prueban grandes voluacutemenes de claves y vectores de

inicializacioacuten de los algoritmos en busca de secuencias deacutebiles de menor longitud que la de la

buscada

Resultados El equipo implementoacute una versioacuten beta de la plataforma ULTRACOM

comprobando la factibilidad y viabilidad teacutecnica de la generalizacioacuten de la infraestructura de

computacioacuten distribuida en grilla (malla) BOINC Este avance permite extender los horizontes de

BOINC y habilita la posibilidad de obtener la capacidad de coacutemputo de alto rendimiento a bajo

19

costo Concluyeron que ULTRACOM es un proyecto viable escalable y de alto impacto para la

evaluacioacuten y validacioacuten de algoritmos criptograacuteficos

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento y la

implementacioacuten de una arquitectura de computacioacuten distribuida y una vez siendo factible su

desarrollo utilizar su poder de coacutemputo atacando a traveacutes de un algoritmo un sistema criptograacutefico

20

Tiacutetulo del Trabajo Criptografiacutea Cuaacutentica

Autor M Baig

Fecha 2010

Lugar Barcelona Espantildea

Siacutentesis En este artiacuteculo el autor realiza una breve introduccioacuten a la criptografiacutea claacutesica y

la relacioacuten que existe con la teoriacutea de la informacioacuten de Shannon la cual asegura que el cifrado

digital simeacutetrico es secreto y perfecto siempre y cuando se cumplan los tres requisitos

1 La llave ha de ser aleatoria

2 La llave debe usarse soacutelo una vez

3 La llave ha de ser tan larga como el mensaje y de un solo uso debe de estar en posesioacuten

tanto del emisor como del receptor

El punto 3 es el maacutes complicado de cumplir debido a la forma de compartir la llave entre

el emisor y receptor

Maacutes adelante en el artiacuteculo se hace un anaacutelisis sobre otra teacutecnica de criptografiacutea que es el

cifrado digital asimeacutetrico en la que se estudia coacutemo funcionan las llaves privadas y puacuteblicas asiacute

como el meacutetodo de criptograacutefico RSA

Resultados

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento maacutes profundo de

los meacutetodos de criptografiacutea simeacutetricos y asimeacutetricos especiacuteficamente el algoritmo asimeacutetrico

RSA

21

Tiacutetulo del Trabajo La Criptografiacutea Maderista en la Revolucioacuten Mexicana (1910-1911)

Criptoanaacutelisis de una carta cifrada por Gabriel Leyva Solano

Autor Roberto Narvaacuteez

Fecha 2011

Lugar Meacutexico DF

Siacutentesis Este trabajo aborda temas relacionados con las comunicaciones secretas del

movimiento revolucionario comandado por Francisco I Madero a partir de 1910 Se compone de

dos partes la primera es una breve resentildea criacutetica de ejemplos criptograacuteficos del maderismo que

fueron generados entre 1910 y 1911 la segunda describe paso a paso el criptoanaacutelisis que aplicoacute

el autor Roberto Narvaacuteez para desencriptar una carta parcialmente cifrada de Gabriel Leyva Solano

a Francisco I Madero

Resultados El propoacutesito general uacuteltimo es contribuir al conocimiento de la criptografiacutea

mexicana en el siglo XX En lo particular se trata de poner a disposicioacuten de los estudiosos el

contenido completo de la carta de Leyva Solano por primera vez despueacutes de 100 antildeos y al mismo

tiempo someter a la criacutetica teacutecnica e histoacuterica el procedimiento criptoanaliacutetico puesto en operacioacuten

para recuperar el texto plano

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados en nuestro paiacutes sobre formas y meacutetodos de encriptacioacuten durante la Revolucioacuten

Mexicana incluso mucho antes de la 2ordf Guerra mundial momento donde se registroacute un auge

importante dentro de la criptografiacutea moderna

22

Tiacutetulo de Tesis Anaacutelisis de la programacioacuten concurrente sobre la cpu y gpu en el

desarrollo de fractal build

Autor Joseacute Vicente Anilema Guadalupe

Fecha 2012

Lugar Riobamba Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la geometriacutea euclidiana debido a que

el autor realiza una aplicacioacuten que crea paisajes fractales lo que significa crear un paisaje con una

misma figura geomeacutetrica Lo anterior se traduce en una necesidad de gran poder de coacutemputo para

realizar de una manera eficaz la tarea Dentro de la tesis el autor realiza diversos estudios

comparativos entre el procesamiento serializado realizado por una CPU (unidad central de

procesamiento) y procesamiento paralelizado realizado por una GPU (Unidad grafica de

procesamiento) a traveacutes de diversas herramientas para obtener el mejor aprovechamiento de los

recursos

Resultados El autor concluye que es necesario examinar los algoritmos a utilizar para que

estos puedan ser utilizados en coacutemputo paralelo Ademaacutes de que es necesario aprender ciertas

herramientas a utilizar para aprovechar al maacuteximo el coacutemputo distribuido y no desperdiciar el

poder de procesamiento muy superior que las GPUrsquos nos pueden brindar

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados para medir y comparar la velocidad de procesamiento de la unidad central de

procesamiento (CPU) y la unidad graacutefica de procesamiento (GPU) Asiacute como la medida en Flops

(Operaciones de punto flotante por segundo)

23

Tiacutetulo del Trabajo Arquitectura cluacutester de alto rendimiento utilizando herramientas de

software libre

Autores Leonardo Chiquiguanca Edyson Malla Freddy Ajila Rene Guamaacuten-Quincheacute

Fecha mayo 2015

Lugar Loja Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la gran cantidad de datos que tienen

que procesar las universidades puacuteblicas dentro de sus investigaciones realizadas en diferentes aacutereas

como la ingenieriacutea medicina etc y la carencia de recursos econoacutemicos para obtener

supercomputadoras que procesen dicha informacioacuten Los autores proponen dentro de su

investigacioacuten la utilizacioacuten de equipo de coacutemputo existente dentro de su universidad y por medio

de software libre realizar agrupamiento de computadoras para poder lograr el procesamiento de

grandes voluacutemenes de datos de una manera accesible

Resultados Los autores concluyen que la mejor arquitectura para el agrupamiento

(cluacutester) de computadoras en ambientes universitarios es la arquitectura Beowulf debido a que la

implementaron en hardware convencional existente dentro de su campus universitario y que

ademaacutes usaron software libre mencionando que el poder de coacutemputo logrado fue muy cercano al

de una supercomputadora

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de las teacutecnicas

utilizadas en ambientes universitarios para la realizacioacuten de agrupamiento de computadoras y

sobre todo la optimizacioacuten de costos para realizar dicha tarea y tener como finalidad el lograr

mayor capacidad de procesamiento

24

Tiacutetulo de Tesis Desarrollo de un algoritmo de cifrado simeacutetrico de resumen

Autores Jonathan Dave Orjuela Navarrete

Antildeo 2008

Lugar Bogotaacute DC

Siacutentesis Esta tesis realiza un estudio de varios meacutetodos de criptografiacutea simeacutetrica para

posteriormente utilizando diferentes foacutermulas matemaacuteticas crear un algoritmo criptograacutefico

nuevo Dentro de la tesis utiliza dos meacutetodos para realizar pruebas a su algoritmo criptoanaacutelisis

diferencial y criptoanaacutelisis basado en fallos de hardware Dentro de los cuales hace un estudio

detallado de las teacutecnicas y herramientas de criptoanaacutelisis realizado a su algoritmo

Resultados El autor concluye de manera positiva con la realizacioacuten del algoritmo y de

manera satisfactoria con la realizacioacuten de criptoanaacutelisis a su algoritmo pudiendo demostrar la

fortaleza del algoritmo a traveacutes de ejemplo de cifrado con textos claro muy parecido y su

conversioacuten a cadenas completamente diferentes

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de criptoanaacutelisis diferencial y criptoanaacutelisis basado en fallos de hardware para la

evaluacioacuten de algoritmos de cifrado simeacutetrico de textos claros

25

Tiacutetulo del Trabajo Firt step in a Pc cluster development with openMosix

Autores Javier Bilbao Gorka Garate

Antildeo 2008

Lugar Bilbao Spain

Siacutentesis En este trabajo se afirma que es posible hacer maacutequinas de alta capacidad de

caacutelculo mediante la interconexioacuten de equipos con redes de alta velocidad A este tipo de sistemas

se les llama sistemas distribuidos y hoy en diacutea es la tecnologiacutea maacutes utilizada para resolver

problemas que requieren una gran capacidad de caacutelculo La agrupacioacuten de computadoras permite

que varias computadoras trabajen juntas para resolver los problemas de informaacutetica comuacuten Este

artiacuteculo centra su estudio en uno de los diferentes meacutetodos de agrupamiento de computadoras

openMosix El trabajo tambieacuten evaluacutea el cluacutester por dos casos de estudio donde se mejora el

tiempo de ejecucioacuten de los problemas resueltos

Resultados El autor del artiacuteculo concluye con la realizacioacuten satisfactoria de agrupamiento

de computadoras bajo el meacutetodo openMosix el cual uacutenicamente permite agrupamiento de la forma

SSI (Single System Image) que se refiere a que uacutenicamente se puede realizar el agrupamiento con

todos los nodos ejecutando un mismo sistema operativo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras openMosix ventajas desventajas y dificultades para

su implementacioacuten

26

Tiacutetulo del Trabajo Disentildeo e implementacioacuten de un cluacutester tipo Beowulf para el desarrollo

de coacutemputo cientiacutefico avanzado

Autores Edgar Rubeacuten Gonzaacutelez Ramiacuterez Abimael Rodriacuteguez Saacutenchez

Antildeo 2008

Lugar Instituto Politeacutecnico Nacional Meacutexico DF

Siacutentesis Este trabajo de tesis ha desarrollado e implementado una herramienta

computacional llamada Cluster Beowulf para mejorar la programacioacuten paralela Comenzando

con la memoria compartida y distribuida el autor implemento el agrupamiento tipo Beowulf

pensando en procesamiento paralelo la optimizacioacuten de las fuentes informaacuteticas El disentildeo se

construye mediante una distribucioacuten Linux Fedora Core 6 a 64 bits utilizando todas las ventajas

que ofrece el estaacutendar Gigabyt Ethernet La programacioacuten paralela fue desarrollada en lenguaje C

tanto para MPI como para OPENMP

Resultados El autor del artiacuteculo concluye que de acuerdo con los resultados el tiempo

de procesamiento se redujo con el uso muacuteltiples nuacutecleos mejoroacute hasta ocho veces gracias al

multihilo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras Beowulf y su implementacioacuten en sistemas operativos

de uso libre Linux distribucioacuten Fedora 6

27

Marco Teoacuterico

21 Seguridad de la Informacioacuten

La Seguridad de la Informacioacuten consiste y hace referencia a la proteccioacuten de cualquier

amenaza para salvaguardar los activos fijos y en especial toda informacioacuten de la cual estaacute basada

la continuidad de las operaciones de la empresa sean estas ocasionadas dentro o fuera de la misma

con esto se logra disminuir los dantildeos y perjuicios que estas amenazas causariacutean a la organizacioacuten

y a la vez aumentar las oportunidades de servicio hacia otras empresas

La Seguridad de la informacioacuten se consigue mediante la implementacioacuten de controles

efectivos que pueden ser normas manual de funciones buenas praacutecticas procedimientos

estructuras organizativas funciones de software y hardware planes de contingencia y herramientas

que se encargan de proteger la privacidad e integridad de la informacioacuten que se almacena en un

sistema informaacutetico Estos controles necesitan continuamente ser establecidos monitoreados

revisados y mejorados en donde sea necesario para asegurar que se cumplan los objetivos

especiacuteficos de seguridad en cada aacuterea de negocio de la organizacioacuten

La seguridad informaacutetica es en realidad una rama de la seguridad de la informacioacuten aunque

de forma praacutectica algunos autores suelen utilizar de manera indistinta ambos teacuterminos

211 Objetivo de la seguridad de la informacioacuten En la seguridad de la informacioacuten

sabiendo que dichos procesos de seguridad permiten proteger el recurso maacutes importante y valioso

de una organizacioacuten partiendo como principio fundamental los procesos de aseguramiento el

28

objetivo del proceso de seguridad informaacutetica es obtener un nivel aceptable de seguridad ya que

la informacioacuten es lo maacutes valioso que tiene una institucioacuten o empresa por lo tanto esta debe ser

protegida para que no sea vulnerable y utilizada para fines maliciosos

212 Principios de la seguridad informaacutetica

Confidencialidad Los datos solo deben ser conocidos y accedidos por quienes esteacuten

autorizados durante su almacenamiento procesamiento o trasmisioacuten Verificar y certificar que solo

los usuarios con accesos autorizados puedan acceder a la informacioacuten

Integridad Los datos solo pueden ser modificados y eliminados por quienes esteacuten

autorizados para ello es decir los sistemas y aplicaciones solo deben ser operados por personal

autorizado

Disponibilidad Los sistemas que almacenan datos e informacioacuten deben garantizar su

acceso cuando asiacute se requiera por quienes tengan derecho a ello

213 Caracteriacutesticas de seguridad informaacutetica

Control Solo los usuarios autorizados deciden cuaacutendo y coacutemo permitir el acceso a la

informacioacuten

Auditoriacutea Establece las acciones cuaacutendo las implementa y quieacuten las realiza sobre el

sistema

Autenticidad Define que la informacioacuten necesaria es correcta utilizable y vaacutelida en tiempo

y forma

No Repudio Su funcioacuten es evitar que alguna entidad que envioacute o recibioacute informacioacuten

alegue que no lo hizo

29

214 Formas de Autenticacioacuten

Contrasentildea Una contrasentildea es un tipo de seguridad informaacutetica ya que es una serie de

caracteres secretos que permiten a un usuario tener acceso a un archivo equipo de coacutemputo o

programa y negar el acceso a usuarios no autorizados

Certificado digital Es un tipo de seguridad informaacutetica que permite la firma digital

electroacutenica que garantiza teacutecnica y legalmente la identidad de una persona en Internet

Autenticacioacuten HTTP Tipo de seguridad informaacutetica que delega la autenticacioacuten de

usuarios a un servidor a traveacutes de Kerberos

215 Ciber-seguridad Con los avances tecnoloacutegicos y la demanda que ha causado en ello

existe un elevado iacutendice de informacioacuten personal y empresarial que circula y se mantiene en la red

por la utilizacioacuten del internet esto permite que toda informacioacuten quede expuesta a cualquier ataque

de ciber-delincuentes los cuales buscan la manera de vulnerar cualquier sistema para espiar robar

informacioacuten o hacer dantildeo de cualquier tipo por lo que se ha visto la necesidad de tomar medidas

de seguridad para salvaguardar la informacioacuten ya que es muy importante

La ciberseguridad es la proteccioacuten de los sistemas conectados a Internet incluidos el

hardware el software y los datos de los ciberataques En un contexto informaacutetico la seguridad

comprende la ciberseguridad y la seguridad fiacutesica ambas son utilizadas por las empresas para

proteger contra el acceso no autorizado a los centros de datos y otros sistemas de coacutemputo El

objetivo de la ciberseguridad es limitar el riesgo y proteger los activos de Tecnologiacuteas de

Informacioacuten de los atacantes con intenciones maliciosas La seguridad de la informacioacuten estaacute

30

disentildeada para mantener la confidencialidad integridad y disponibilidad de los datos es un

subconjunto de la ciberseguridad

22 Criptografiacutea

La Criptografiacutea tambieacuten llamada ldquoescritura ocultardquo tradicionalmente en el aacutembito de

criptografiacutea es donde se ocupan las teacutecnicas de cifrado o codificacioacuten que permiten alterar el

contenido de cierta informacioacuten o mensajes con el fin de hacerlos ininteligibles a receptores o

personas no autorizadas (Meneacutendez-Barzanallana 17)

Actualmente la criptografiacutea se encarga de analizar algoritmos protocolos y sistemas que

son utilizados para proveer seguridad a las comunicaciones informacioacuten y a las entidades que se

comunican entre siacute

221 Tipos de Criptografiacuteas

2211 Tablas Hash Un hash o funcioacuten hash toma un grupo de caracteres (llamado clave)

y lo asigna a un valor de cierta longitud (llamado valor hash o hash) El valor hash es representativo

de la cadena de caracteres original pero normalmente es maacutes pequentildeo que el original

El hash tambieacuten es utilizado en el cifrado y descifrado de firmas digitales La funcioacuten hash

transforma la firma digital luego tanto el valor hash como la firma se enviacutean al receptor El

receptor utiliza la misma funcioacuten hash para generar el valor hash y luego lo compara con el recibido

31

en el mensaje Si los valores hash son los mismos es probable que el mensaje se haya transmitido

sin errores

Un ejemplo de una funcioacuten hash se llama plegado(folding) Esta toma un valor original lo

divide en varias partes luego agrega las partes y usa los uacuteltimos cuatro diacutegitos restantes como

valor o clave hash

2212 Tipos de algoritmos Hash

22121 SHA - 1 (Secure Hash Algorithm) Es un algoritmo criptograacutefico de Hash

publicado por el gobierno de los Estados Unidos Genera un valor Hash de 160 bits a partir de una

secuencia de longitud arbitraria Es considerado lo suficientemente seguro para aplicaciones

praacutecticas pero hay disponibles versiones maacutes robustas SHA - 256 SHA - 384 y SHA - 512 que

generan valores Hash de 256 384 y 512 bits respectivamente estas versiones reemplazaraacuten a SHA

- 1 mientras se siga trabajando sobre ellas (Borghello 2009)

22122 MD5 (Message Digest Algorithm) En criptografiacutea MD5 es una funcioacuten hash

criptograacutefica ampliamente utilizada con un valor hash de 128 bits Como estaacutendar de Internet (RFC

1321) MD5 se ha empleado en una amplia variedad de aplicaciones de seguridad y tambieacuten se

usa comuacutenmente para verificar la integridad de los archivos Un hash MD5 generalmente se

expresa como un nuacutemero hexadecimal de 32 diacutegitos

MD5 es una versioacuten reforzada de MD4 Al igual que MD4 el hash MD5 fue inventado por

el profesor Ronald Rivest del Massachusetts Institute of Technology (MIT) Ademaacutes MD5 se

32

utilizoacute como modelo para SHA-1 ya que comparten muchas caracteriacutesticas comunes MD5 y

SHA-1 son los dos algoritmos hash maacutes utilizados en la actualidad aunque el uso de MD5 ha

disminuido ya que ahora se considera roto (Borghello 2009)

22123 RIPEMD ndash 160 Es una funcioacuten hash criptograacutefica basada en la construccioacuten

Merkle-Damgaringrd (MD) Se usa en el estaacutendar de Bitcoin Es una versioacuten reforzada del algoritmo

RIPEMD que produce un resumen de hash de 128 bits mientras que el algoritmo RIPEMD-160

produce una salida de 160 bits La funcioacuten de compresioacuten consta de 80 etapas formadas por 5

bloques que se ejecutan 16 veces cada uno Este patroacuten se ejecuta dos veces con los resultados

combinados en la parte inferior utilizando la adicioacuten del moacutedulo 32 (Borghello 2009)

22124 Funcioacuten Merkle-Damgaringrd La construccioacuten MD es una metodologiacutea para crear

funciones hash resistentes a colisiones a partir de funciones de compresioacuten unidireccionales Ralph

Merkle la propuso en el antildeo de 1979 en ldquoA certified Digital Signaturerdquo posterior a este estudio

Ivan Damgaringrd demostroacute de manera independiente que la estructura era soacutelida (Merkle amp

Damgaringrd sf)

2213 Cifrado simeacutetrico Los cifrados simeacutetricos son los cifrados criptograacuteficos maacutes

antiguos y maacutes utilizados En un cifrado simeacutetrico la clave que descifra el texto cifrado es la

misma (o puede derivarse faacutecilmente) de la clave que cifra el texto claro Esta clave a menudo se

conoce como la clave secreta Los cifrados simeacutetricos maacutes utilizados son DES y AES

La problemaacutetica que surge es la seguridad de la clave

33

El emisor cifra el mensaje con una clave

Enviacutea el mensaje cifrado de tal manera que nadie puede descifrarlo sin dicha clave

El receptor obtiene la clave y entonces puede descifrar el mensaje con la misma clave

que recibioacute del emisor

Algunos algoritmos de este tipo son

22131 RC5 (Cifrado de Rivest) Es un algoritmo de cifrado de bloque de clave simeacutetrica

disentildeado por Ron Rivest en 1994 Se destaca por ser simple raacutepido (debido a que usa solo

operaciones de coacutemputo primitivas como XOR o shift) y ademaacutes por consumir menos memoria

RC5 es un cifrado de bloques y aborda dos bloques de palabras a la vez Dependiendo del

tamantildeo del bloque de texto sin formato nuacutemero de rondas y tamantildeo de clave se pueden definir

varias instancias de RC5 y cada instancia se denota como RC5-w r b donde w = tamantildeo de

palabra en bits r = nuacutemero de rondas y b = tamantildeo de la clave en bytes (Pawar 2016)

Como se ha mencionado RC5 utiliza bloques de 2 palabras el tamantildeo del bloque de texto

sin formato puede ser de 32 64 o 128 bits

22132 IDEA (International Data Encryption Algorithm) Baacutesicamente es un algoritmo

de cifrado de bloque simeacutetrico El algoritmo asimeacutetrico utiliza la misma clave para el cifrado y

descifrado Un cifrado de bloque divide el mensaje en bloques cada uno de una longitud fija y

luego cifra cada bloque de forma independiente

34

El tamantildeo de bloque tiacutepico es de 16 bytes de 128 bits Un cifrado de bloque generalmente

operaraacute en bloques o rondas donde se aplica parte de la clave a la ronda Despueacutes de un cierto

nuacutemero de rondas digamos entre 10 y 16 se termina con el texto cifrado para ese bloque

El bloque de texto cifrado tiene exactamente el mismo tamantildeo que el bloque de texto sin

formato 16 bytes Para cada ronda se trabaja en el bloque utilizando una parte de la clave de

cifrado a la que se le llama la clave redonda Muacuteltiples claves redondas se derivan de la clave de

cifrado utilizando para esto un programa de claves

La programacioacuten de claves es un algoritmo que cambia XOR multiplica y realiza otros

tipos de operaciones en la clave de cifrado original para obtener estas claves redondas Bueno si

tengo un bloque de 16 bytes y tengo una clave de 128 bits que tambieacuten es de 16 bytes (Educba

2019)

22133 DES (Data Encryption Standard) El algoritmo DES es el algoritmo de seguridad

maacutes popular Es un algoritmo simeacutetrico lo que significa que se utilizan las mismas claves para

cifrar descifrar datos confidenciales La longitud de la clave es de 8 bytes (64 bits) Entonces

para cifrar descifrar datos el algoritmo DES utiliza una clave de 8 bytes pero 1 byte (8 bits) para

la verificacioacuten de paridad Es un algoritmo de cifrado de bloque por lo tanto el tamantildeo del bloque

de datos del algoritmo DES es de 64 bits Para cifrar descifrar datos el algoritmo DES utiliza la

estructura Feistel Entonces utiliza una ronda para cifrar descifrar datos Aunque el tamantildeo del

35

bloque de datos es de 64 bits el nuacutemero de rondas seraacute de 16 rondas asiacute mismo utilizaraacute diferentes

subclaves para cada ronda por lo tanto el nuacutemero de subclaves seraacute de 16 subclaves

Como se puede observar la clave efectiva es de 56 bits por consiguiente se tiene 256

combinaciones posibles por lo que la fuerza bruta se hace casi imposible (Sanjoy 2015)

2214 Cifrado asimeacutetrico Los cifrados asimeacutetricos tambieacuten se conocen como cifrados

con claves puacuteblicas y privadas Usan dos claves una para el cifrado de mensajes y la otra durante

el descifrado

Un intruso puede encriptar cualquier mensaje usando la clave puacuteblica conocida Los

cifrados asimeacutetricos son por lo tanto vulnerables a los ataques de texto sin formato Los cifrados

con encriptacioacuten de clave puacuteblica deben proporcionar seguridad contra tales ataques Despueacutes de

encriptar dos mensajes con la misma clave puacuteblica el intruso no puede distinguir queacute texto cifrado

estaacute conectado con queacute texto plano Ademaacutes un observador que analiza dos mensajes encriptados

usando el mismo algoritmo y la misma clave puacuteblica no puede distinguir sus textos cifrados

(Kowalczyk 2015)

Los cifrados asimeacutetricos son mucho maacutes lentos que los cifrados simeacutetricos (generalmente

mil veces maacutes lentos) Es una praacutectica comuacuten usar el cifrado de clave puacuteblica solo para establecer

la conexioacuten segura y negociar la nueva clave secreta que luego se utilizaraacute para proteger la

comunicacioacuten mediante cifrado simeacutetrico Ejemplos de este cifrado son

36

22141 DSA (Digital Signature Algorithm - Algoritmo de Firma digital) Es un estaacutendar

del Gobierno Federal de los Estados Unidos para firmas digitales Fue propuesto por el Instituto

Nacional de Estaacutendares y Tecnologiacutea (NIST) en agosto de 1991 para ser usado en su Estaacutendar de

Firma Digital (DSS) en el antildeo de 1993

La primera parte del algoritmo DSA es la generacioacuten de clave puacuteblica y clave privada que

puede describirse como

Se elige un nuacutemero primo q que se llama divisor primo

Se elige otro nuacutemero primo p de modo que pndash1 mod q = 0 p seraacute llamado moacutedulo

primo

Ahora se elige un nuacutemero entero g tal que 1 ltg ltp g q mod p = 1 g = h ((p

ndash 1) q) mod p q tambieacuten se llama moacutedulo de orden multiplicativo de g moacutedulo p

Se elige un nuacutemero entero tal que 0 ltx ltq

Se calcula y como g x mod p

Se empaqueta la clave puacuteblica como p q g y

Por uacuteltimo se empaqueta la clave privada como p q g x

La segunda parte del algoritmo DSA es la generacioacuten de firma y la verificacioacuten de firma

Para generar una firma de mensaje el remitente puede seguir estos pasos

Se genera el resumen del mensaje h utilizando un algoritmo hash como SHA1

Se genera un nuacutemero aleatorio k tal que 0 ltk ltq

37

Se calcula r como (g k mod p) mod q Si r = 0 seleccione una k diferente

Ahora se calcula i de modo que k i mod q = 1 i se llama el inverso multiplicativo modular

de k moacutedulo q

Se calcula s = i (h + r x) mod q Si s = 0 se selecciona una k diferente

Por uacuteltimo se empaqueta la firma digital como r s (Yang 2019)

22142 RSA Encriptacioacuten RSA encriptacioacuten Rivest-Shamir-Adleman tipo de

criptografiacutea de clave puacuteblica ampliamente utilizada para la encriptacioacuten de datos de correo

electroacutenico y otras transacciones digitales a traveacutes de Internet RSA lleva el nombre de sus

inventores Ronald L Rivest Adi Shamir y Leonard M Adleman quienes lo crearon mientras

trabajaban en la facultad del Instituto Tecnoloacutegico de Massachusetts (Simmons 2019)

En el sistema RSA un usuario elige de manera secreta un par de nuacutemeros primos p y q tan

grandes que factorizar el producto n = pq estaacute mucho maacutes allaacute de las capacidades informaacuteticas

proyectadas para la vida uacutetil de los cifrados A partir del antildeo 2000 los estaacutendares de seguridad del

gobierno de EE UU exigen que el moacutedulo tenga un tamantildeo de 1024 bits es decir p y q deben

tener un tamantildeo de aproximadamente 155 diacutegitos decimales por lo que n es aproximadamente un

nuacutemero de 310 diacutegitos Dado que los nuacutemeros duros maacutes grandes que actualmente se pueden

factorizar son solo la mitad de este tamantildeo y dado que la dificultad de factorizar se duplica

aproximadamente por cada tres diacutegitos adicionales en el moacutedulo se cree que los moacutedulos de 310

diacutegitos estaacuten a salvo de factorizar durante varias deacutecadas

38

2215 Cifrado hiacutebrido Es una teacutecnica comuacuten que combina diferentes funciones

criptograacuteficas como el cifrado de bloque Con el cifrado hiacutebrido se pueden cifrar datos firmarlos

o agregar un MAC y enviarlos en un objeto seguro (como una cadena o archivo) a traveacutes de un

canal de comunicacioacuten inseguro (sin un acuerdo clave entre dos partes)

En el sistema de cifrado hiacutebrido el texto plano (sin formato) se divide en tokens Luego

se calcula la longitud de cada ficha Los tokens y sus longitudes se almacenan en una matriz

Posteriormente se aplica el algoritmo Ceacutesar anidado sugerido El texto producido se almacena en

una matriz n x m llamada A Luego la transposicioacuten de esta matriz At se calcula utilizando

nuestra versioacuten revisada del cifrado de transposicioacuten para resolver el problema de secuenciacioacuten

A continuacioacuten el algoritmo RSA revisado se aplica en la matriz producida En el paso final se

aplica el formato de datos textuales usando el coacutedigo ASCII para producir el texto cifrado El

proceso de descifrado se realiza de la misma manera pero en orden inverso (Nahar amp Abu Abbas

2010)

23 Criptoanaacutelisis

El criptoanaacutelisis es el proceso de estudiar sistemas criptograacuteficos para buscar debilidades

o fugas de informacioacuten En general se considera que el criptoanaacutelisis explora las debilidades de

las matemaacuteticas subyacentes de un sistema criptograacutefico pero tambieacuten incluye la buacutesqueda de

debilidades en la implementacioacuten como ataques de canal lateral o entradas de entropiacutea deacutebiles

39

Su funcioacuten es la de conseguir obtener el significado de mensajes creados por medio de

criptografiacutea El objetivo principal del criptoanaacutelisis es opuesto al de la criptografiacutea Tiene como

finalidad encontrar la debilidad de las diferentes teacutecnicas criptograacuteficas para explotarla y de esta

manera reducir o eliminar la seguridad de la teacutecnica criptograacutefica Cualquier intento de

criptoanaacutelisis puede ser llamado ataque Una vez que un atacante logra romper la seguridad que

una teacutecnica criptograacutefica aportaba al sistema se dice que dicho sistema ha sido roto y por lo tanto

dicho ataque tuvo eacutexito

El criptoanaacutelisis es la investigacioacuten de sistemas texto cifrado y cifrados para revelar el

significado oculto o los detalles del sistema mismo El objetivo de este tipo de estudio es descubrir

los aspectos ocultos incluso si la clave o el algoritmo principal no se pueden descifrar Se necesita

una combinacioacuten exitosa de persistencia matemaacuteticas intuicioacuten curiosidad y una computadora

que funcione para hacer un buen criptoanalista Este tipo de ruptura de coacutedigo es extremadamente

importante especialmente en el mundo tecnoloacutegicamente dependiente de hoy El criptoanaacutelisis es

constantemente realizado por criptoacutegrafos que intentan obtener informacioacuten valiosa y por aquellos

que intentan descifrar el coacutedigo para revelar secretos (Security Degree Hub 2017)

24 Niveles de seguridad

Los niveles de seguridad de sistemas operativos son otorgados de acuerdo con el sistema

operativo que esteacute utilizando la empresa o institucioacuten ya sea puacuteblica privada gubernamental o no

gubernamental En el manual ldquoTrusted Computer System Evaluation Criteriardquo (United States

40

Government Department of Defense 1983) el Departamento de Defensa de los Estados Unidos

define los siguientes niveles

241 Nivel D1 Este nivel es el maacutes bajo de seguridad por lo tanto la norma establece que

el sistema no es confiable Esta divisioacuten contiene solo una clase Estaacute reservado para aquellos

sistemas que han sido evaluados pero que no cumplen con los requisitos para un nivel de

evaluacioacuten superior

242 Nivel C1 Un sistema de nivel C1 cumple nominalmente los requisitos de seguridad

discrecionales al proporcionar separacioacuten de usuarios y datos Incorpora alguna forma de controles

creiacutebles capaces de imponer limitaciones de acceso de manera individual es decir aparentemente

adecuados para permitir que los usuarios puedan proteger la informacioacuten privada o del proyecto y

evitar que otros usuarios lean o destruyan accidentalmente sus datos Se espera que el entorno de

nivel C1 sea uno de los usuarios cooperantes que procesan datos con el mismo nivel de

sensibilidad Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten

de nivel C1 son

Control de acceso discrecional por ejemplo listas de control de acceso (ACL)

usuario grupo

Por lo general para usuarios que estaacuten en el mismo nivel de seguridad

Proteccioacuten de nombre de usuario y contrasentildea y base de datos de autorizaciones

seguras (ADB)

Sistema operativo protegido y modo de operaciones del sistema

Comprobacioacuten perioacutedica de integridad de TCB

41

Mecanismos de seguridad probados sin derivaciones obvias

Documentacioacuten para la seguridad del usuario

Documentacioacuten para la seguridad de la administracioacuten de sistemas

Documentacioacuten para pruebas de seguridad

Documentacioacuten de disentildeo TCB

Tiacutepicamente para usuarios en el mismo nivel de seguridad

La certificacioacuten C1 es rara Los sistemas de ejemplo son versiones anteriores de

Unix IBM RACF

243 Nivel C2 Los sistemas de esta clase imponen un control de acceso discrecional maacutes

fino que los sistemas (C1) lo que hace que los usuarios sean individualmente responsables de sus

acciones a traveacutes de procedimientos de inicio de sesioacuten auditoriacutea de eventos relevantes para la

seguridad y aislamiento de recursos Los siguientes son requisitos miacutenimos para los sistemas

asignados a una clasificacioacuten de nivel C2

La proteccioacuten de objetos puede ser para un solo usuario Por ejemplo a traveacutes de

una base de datos ACL

La autorizacioacuten de acceso solo puede ser asignada por usuarios autorizados

Proteccioacuten de reutilizacioacuten de objetos (Por ejemplo para evitar la reasignacioacuten de

objetos eliminados de manera segura)

Procedimientos obligatorios de identificacioacuten y autorizacioacuten para los usuarios (Por

ejemplo Usuario Contrasentildea)

Auditoriacutea completa de eventos de seguridad (es decir fecha hora evento usuario

eacutexito falla ID de terminal)

42

Modo de operacioacuten del sistema protegido

Proteccioacuten adicional para la autorizacioacuten y los datos de auditoriacutea

Documentacioacuten como C1 maacutes informacioacuten sobre el examen de la informacioacuten de

auditoriacutea

Esta es una de las certificaciones maacutes comunes Los sistemas operativos de ejemplo

son VMS IBM OS 400 Windows NT Novell NetWare 411 Oracle 7 DG AOS

VS II

244 Nivel B1 Los sistemas de este nivel requieren todas las caracteriacutesticas requeridas

para el nivel C2 Ademaacutes debe estar presente una declaracioacuten informal del modelo de poliacutetica de

seguridad etiquetado de datos y control de acceso obligatorio sobre sujetos y objetos nombrados

La capacidad debe existir para etiquetar con precisioacuten la informacioacuten exportada Cualquier falla

identificada por la prueba debe ser eliminada Los siguientes son requisitos miacutenimos para los

sistemas asignados a una clasificacioacuten de nivel B1

Etiquetado obligatorio de seguridad y acceso de todos los objetos (Por ejemplo

archivos procesos dispositivos)

Comprobacioacuten de integridad de etiquetas (Por ejemplo mantenimiento de etiquetas

de sensibilidad cuando se exportan datos)

Auditoriacutea de objetos etiquetados

Control de acceso obligatorio para todas las operaciones

Capacidad para especificar el nivel de seguridad impreso en salida legible para

humanos (Por ejemplo impresoras)

43

Capacidad para especificar el nivel de seguridad en cualquier salida legible por

maacutequina

Auditoriacutea mejorada

Proteccioacuten mejorada del sistema operativo

Documentacioacuten mejorada

Los sistemas operativos de ejemplo son HP-UX BLS Cray Research Trusted

Unicos 80 Digital SEVMS Harris CS SX SGI Trusted IRIX

245 Nivel B2 En los sistemas de nivel B2 el TCB se basa en un modelo de poliacutetica de

seguridad formal claramente definido y documentado que requiere que la aplicacioacuten de control de

acceso discrecional y obligatoria que se encuentra en los sistemas de nivel B1 se extienda a todos

los sujetos y objetos en el sistema Ademaacutes se abordan los canales encubiertos El TCB debe

estructurarse cuidadosamente en elementos criacuteticos para la proteccioacuten y no criacuteticos para la

proteccioacuten La interfaz TCB estaacute bien definida y el disentildeo y la implementacioacuten TCB le permiten

someterse a pruebas maacutes exhaustivas y una revisioacuten maacutes completa Se fortalecen los mecanismos

de autenticacioacuten se proporciona una gestioacuten confiable de las instalaciones en forma de soporte

para las funciones de administrador y operador del sistema y se imponen estrictos controles de

gestioacuten de la configuracioacuten El sistema es relativamente resistente a la penetracioacuten Los siguientes

son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de nivel B2

Notificacioacuten de cambios en el nivel de seguridad que afectan a los usuarios

interactivos

Etiquetas de dispositivos jeraacuterquicos

44

Acceso obligatorio a todos los objetos y dispositivos

Comunicaciones de ruta confiables entre usuario y sistema

Rastreo de canales de almacenamiento encubiertos

Modo de operaciones del sistema maacutes estricto en unidades independientes de varios

niveles

Anaacutelisis de canales encubiertos

Pruebas de seguridad mejoradas

Modelos formales de TCB

Versioacuten actualizacioacuten y anaacutelisis y revisioacuten de parches

Los sistemas de ejemplo son Honeywell Multics Cryptek VSLAN Trusted

XENIX

246 Nivel B3 El TCB debe satisfacer los requisitos del monitor de referencia para mediar

todos los accesos de los sujetos a los objetos ser a prueba de manipulaciones y ser lo

suficientemente pequentildeo como para ser sometido a anaacutelisis y pruebas Con este fin el TCB estaacute

estructurado para excluir el coacutedigo que no es esencial para la aplicacioacuten de la poliacutetica de seguridad

con una importante ingenieriacutea del sistema durante el disentildeo y la implementacioacuten del TCB dirigido

a minimizar su complejidad Se admite un administrador de seguridad los mecanismos de

auditoriacutea se ampliacutean para sentildealar eventos relevantes para la seguridad y se requieren

procedimientos de recuperacioacuten del sistema El sistema es altamente resistente a la penetracioacuten

Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de clase

(B3)

45

ACL adicionalmente basadas en grupos e identificadores

Acceso de ruta confiable y autenticacioacuten

Anaacutelisis automaacutetico de seguridad

Modelos TCB maacutes formales

Auditoriacutea de eventos de auditoriacutea de seguridad

Recuperacioacuten confiable despueacutes de la caiacuteda del sistema y documentacioacuten relevante

Cero defectos de disentildeo en TCB y defectos miacutenimos de implementacioacuten

El uacutenico sistema operativo con certificacioacuten B3 es Getronics Wang Federal XTS-

300

247 Nivel A1 Los sistemas en el nivel A1 son funcionalmente equivalentes a los del nivel

B3 en que no se agregan caracteriacutesticas arquitectoacutenicas adicionales ni requisitos de poliacuteticas La

caracteriacutestica distintiva de los sistemas en este nivel es el anaacutelisis derivado de la especificacioacuten

formal del disentildeo y las teacutecnicas de verificacioacuten y el alto grado resultante de seguridad de que el

TCB se implementa correctamente Esta garantiacutea es de naturaleza de desarrollo comenzando con

un modelo formal de la poliacutetica de seguridad y una especificacioacuten formal de alto nivel del disentildeo

Independientemente del lenguaje de especificacioacuten particular o del sistema de verificacioacuten

utilizado existen los siguientes criterios importantes para la verificacioacuten del disentildeo de nivel A1

Meacutetodos formales y prueba de integridad de TCB

Estos son los uacutenicos sistemas con certificacioacuten A1 Boeing MLS LAN Gemini

Trusted Network Processor Honeywell SCOMP (United States Government

Department of Defense 1983)

46

25 Sistemas Operativos

Un sistema operativo actuacutea como intermediario entre el usuario de una computadora y el

hardware de la computadora El propoacutesito de un sistema operativo es proporcionar un entorno en

el que un usuario pueda ejecutar programas de manera conveniente y eficiente

Un sistema operativo es un software que administra el hardware de la computadora El

hardware debe proporcionar mecanismos apropiados para garantizar el correcto funcionamiento

del sistema informaacutetico y para evitar que los programas del usuario interfieran con el correcto

funcionamiento del sistema (Carretero Peacuterez de Miguel Anasagasti Garciacutea Carballeira amp Peacuterez

Costoya 2001)

Un sistema operativo es un programa que controla la ejecucioacuten de programas de aplicacioacuten

y actuacutea como una interfaz entre el usuario de una computadora y el hardware de la computadora

Una definicioacuten maacutes comuacuten es que el sistema operativo es el uacutenico programa que se ejecuta

en todo momento en la computadora (generalmente llamado kernel) y todo lo demaacutes son

programas de aplicacioacuten

Un sistema operativo se ocupa de la asignacioacuten de recursos y servicios como memoria

procesadores dispositivos e informacioacuten El sistema operativo incluye los programas para

administrar estos recursos como un controlador de traacutefico un programador un moacutedulo de

administracioacuten de memoria programas de E S y un sistema de archivos (Pawar 2016)

47

251 Windows Sistema operativo de la empresa Microsoft es un conjunto de programas

que administra los recursos de una computadora Windows empieza a trabajar cuando se enciende

o inicializa el equipo para gestionar el hardware empezando desde los niveles maacutes baacutesicos

Es importante conocer que los sistemas operativos funcionan tanto en las computadoras

como en diferentes dispositivos electroacutenicos que usan microprocesadores En este caso Windows

su versioacuten estaacutendar funciona con computadoras Microsoft domina el mercado de los sistemas

operativos debido a su comodidad se puede decir que eacuteste sistema operativo se encuentra

instalado en el 887 de los equipos de coacutemputo que cuentan con acceso a Internet en todo el

mundo

Se pueden mencionar algunas aplicaciones principales (que eacutestas tambieacuten pueden ser

desinstaladas por los usuarios o actualizadas sin que el sistema operativo se dantildee o deje de

funcionar) se encuentran el procesador de texto WordPad el navegador Internet Explorer el

reproductor multimedia Windows Media y el editor de imaacutegenes Paint

La principal novedad que aportoacute Windows desde sus oriacutegenes fue la facilidad para usarlo

y el atractivo visual De hecho su nombre (ldquoventanasrdquo) se debe a la forma en que el sistema

presenta a los usuarios los recursos con los que cuenta su computadora lo que facilita las tareas

cotidianas Windows tambieacuten suele recibir varias criacuteticas por sus problemas de seguridad y por

otros fallos

48

252 Registro de Windows El registro es una base de datos jeraacuterquica que contiene datos

que son criacuteticos para el funcionamiento de Windows y las aplicaciones y servicios que se ejecutan

en Windows Los datos estaacuten estructurados en un formato de aacuterbol Cada nodo en el aacuterbol se llama

clave Cada clave puede contener subclaves y entradas de datos llamadas valores A veces la

presencia de una clave es el uacutenico dato que requiere una aplicacioacuten otras veces una aplicacioacuten

abre una clave y usa los valores asociados con la clave (Microsoft Inc 2019) Una clave puede

tener cualquier nuacutemero de valores y los valores pueden tener cualquier forma El registro es

utilizado por

Autenticacioacuten

Nuacutecleo (Kernel)

Controladores de dispositivos

Servicios

SAM

Las carpetas del sistema se almacenaraacuten en distintas rutas de acceso dependiendo de la

versioacuten de Windows con la que se esteacute trabajando a continuacioacuten cuatro de los cinco archivos

que maacutes interesan a esta investigacioacuten se encuentran en la siguiente ubicacioacuten SystemRoot

System32 Config dentro de las siguientes sub llaves

SAM - HKEY LOCAL MACHINE SAM

SECURITY - HKEY LOCAL MACHINE SECURITY

SOFTWARE - HKEY LOCAL MACHINE SOFTWARE

SYSTEM - HKEY LOCAL MACHINE SYSTEM

49

253 Administrador de cuentas de seguridad El administrador de cuentas de seguridad

(SAM por sus siglas en ingleacutes) es una base de datos en donde se encuentran las cuentas de

seguridad Esto es utilizado por Windows para administrar las cuentas de usuario y contrasentildeas en

el formato hash

Las contrasentildeas nunca se almacenan en formato de texto claro Se almacenan en formato

de hash para protegerlas de los ataques La base de datos SAM se implementa como un archivo de

registro y las obtiene del kernel de Windows y mantiene un bloqueo exclusivo al archivo SAM

esto quiere decir que el archivo tiene cierta medida de seguridad para el almacenamiento de las

contrasentildeas (Hernandez 2013)

No es posible copiar el archivo SAM a otra ubicacioacuten en el caso de los ataques en liacutenea

Dado que el archivo SAM estaacute bloqueado con un bloqueo exclusivo al sistema de archivos no

puede ser copiado o movido mientras se ejecuta Windows El bloqueo no iniciaraacute hasta que la

excepcioacuten de la pantalla azul haya sido inicializada o el sistema operativo haya sido apagado Sin

embargo los archivos en formato hash de contrasentildeas fuera de liacutenea estaacuten disponibles para los

ataques de fuerza bruta el contenido del archivo SAM puede ser copiado o descargado utilizando

diversas teacutecnicas

Un identificador de seguridad (SID) es un valor uacutenico de longitud variable utilizado para

identificar a un usuario Cada cuenta tiene un SID uacutenico emitido por una autoridad como un

controlador de dominio de Windows y almacenado en una base de datos de seguridad Cada vez

50

que un usuario inicia sesioacuten el sistema recupera el SID para ese usuario de la base de datos y lo

coloca en el token de acceso para ese usuario El sistema usa el SID en el token de acceso para

identificar al usuario en todas las interacciones posteriores con la seguridad de Windows Cuando

se ha usado un SID como identificador uacutenico para un usuario o grupo no se puede volver a usar

para identificar a otro usuario o grupo

La seguridad de Windows usa SID en los siguientes elementos de seguridad

En descriptores de seguridad para identificar al propietario de un objeto y grupo

primario

En las entradas de control de acceso para identificar al usuario para quien el acceso

estaacute permitido denegado o auditado

En tokens de acceso para identificar al usuario y los grupos a los que pertenece

2531 Identificador de Seguridad (SID Security Identifier)

S - 1 - 5 - 21 - 3983109318 - 554656936 - 3066752241 - 1000

S - indica que es un string de SID

1 - el nivel de revisioacuten

5 - el identificador de valor de autoridad o authority value no siempre seraacute 5 Entre otros

valores que se pueden encontrar estaacuten los siguientes

51

0 - sin autoridad

1 - autoridad global

2 - autoridad local

3 - autoridad de creador

4 - autoridad no uacutenica

5 - autoridad NT

9 - autoridad de administrador de recursos

21 - 3983109318 - 554656936 - 3066752241 - es el dominio en el que se encuentra el

sistema o el identificador local de la computadora

1000 - ID uacutenico para cada cuenta aquiacute se encuentra el RID (Relative Identifier) Nuacutemero

de longitud variable cualquier grupo o usuario que se cree de manera diferente a la predeterminada

recibiraacute un RID de 1000 o superior En el caso de que el valor sea 500 responde a que este SID

representa la cuenta de un administrador el valor de 500 siempre seraacute el mismo en cualquier cuenta

de administrador a su vez el valor 501 representa el SID de una cuenta Invitado (Guest)

(Hernandez 2013)

254 Autenticacioacuten NTML NTLM (NT LAN Manager) es un protocolo empleado por

muchos productos de Microsoft para realizar la autenticacioacuten desafiacuteorespuesta por lo tanto es el

esquema de autenticacioacuten que por defecto usa Firewall de Microsoft y tambieacuten los productos del

servidor proxy

52

Este software fue desarrollado para afrontar el problema del trabajo con Tecnologiacuteas Java

en un entorno orientado a Microsoft Puesto que no se basa en ninguna especificacioacuten oficial de

protocolo por lo tanto no hay garantiacutea de que funciona correctamente en todos los casos Tambieacuten

ha estado en algunas instalaciones de Windows donde funcionoacute con eacutexito

La Autenticacioacuten NTLM se compone de dos protocolos protocolo de autenticacioacuten NTLM

y protocolo de autenticacioacuten LM Estos protocolos utilizan una metodologiacutea de hash diferente para

almacenar contrasentildeas de los usuarios en la base de datos SAM (Hernandez 2013) (Meneacutendez-

Barzanallana 17)

26 LINUX (ROCKS)

Rocks es una distribucioacuten para cluacutester de Linux de coacutedigo abierto que permite a los usuarios

finales construir de manera maacutes amigable cluacutesteres computacionales y muros de visualizacioacuten en

mosaico Cientos de investigadores de todo el mundo han utilizado Rocks para implementar su

propio cluacutester

Desde mayo de 2000 el grupo Rocks ha abordado las dificultades de implementar cluacutesteres

manejables Encaminados hacia un objetivo crear cluacutesters de manera maacutes sencilla Por sencilla

significa faacutecil de implementar administrar actualizar y escalar Este objetivo impulsa a los

creadores de esta herramienta a ayudar a entregar el poder computacional de los cluacutesteres a una

amplia gama de usuarios cientiacuteficos Estaacute claro que poner a disposicioacuten de una amplia gama de

53

cientiacuteficos plataformas de computacioacuten paralelas estables y manejables ayudaraacute enormemente a

mejorar el estado del arte en herramientas paralelas (Rocksclusters 2010)

261 Escritorio De todos los escritorios disponibles para el sistema operativo Linux

GNOME ha logrado convertirse en el maacutes eficiente estable y confiable sin dejar de ser sencillo

de usar De hecho la mayoriacutea de los usuarios independientemente de su experiencia pueden

trabajar con GNOME casi sin esfuerzo

Los usuarios que son nuevos tanto en Linux como en GNOME hariacutean mejor en conocer

los entresijos del escritorio que hacen que Linux no solo sea faacutecil sino tambieacuten divertido

Un entorno de escritorio agrupa programas que trabajan juntos para formar un espacio de

trabajo informaacutetico cohesivo unificado transparente e interactivo para los usuarios O para

decirlo de manera maacutes simple el entorno de escritorio es la interfaz de usuario para el sistema

operativo En el caso de GNOME ese sistema operativo es Linux Sin un entorno de escritorio su

uacutenica alternativa es una sesioacuten de Shell (liacutenea de comandos) basada en texto (Wallen 2019)

262 Paquete de Oficina Una suite ofimaacutetica es una coleccioacuten de software creada por el

mismo proveedor y disentildeada para ser utilizada para tareas rutinarias dentro de una organizacioacuten

Por lo general una suite ofimaacutetica incluye aplicaciones como procesamiento de texto hojas de

caacutelculo presentacioacuten correo electroacutenico toma de notas base de datos colaboracioacuten y otros tipos

de software relacionados En la mayoriacutea de los casos cada aplicacioacuten en la suite ofimaacutetica se puede

instalar por separado y todas las aplicaciones dentro de la suite admiten la interoperabilidad entre

54

siacute Microsoft Office Suite Lotus Live Notes y LibreOffice son todas suites de oficina de uso

comuacuten

263 Organizador de archivos Es una funcioacuten avanzada disentildeada para agrupar y

renombrar archivos usando sus atributos del sistema o meta atributos

Cada archivo tiene atributos del sistema como la fecha (Acceso Creado y Modificado) el

tipo de archivo (definido por extensioacuten) y asociado con la aplicacioacuten registrada de ese tipo de

archivo Estos atributos se pueden usar para generar un nuevo nombre de archivo o carpeta (grupo)

para cada archivo con el mismo atributo Ademaacutes de los atributos del sistema algunos archivos

en su mayoriacutea medios o imaacutegenes pueden contener metacampos como el nombre del artista el

tiacutetulo el nombre del aacutelbum y otros El Organizador de archivos tambieacuten usa estos metacampos

para agrupar archivos en una carpeta con el mismo atributo Por lo tanto el organizador de archivos

opera reglas de organizacioacuten de archivos que definen la jerarquiacutea de agrupacioacuten de carpetas y las

reglas de cambio de nombre de archivos

Asiacute como el conocido ldquoexplorador de Windowsrdquo Linux integra un organizador de archivos

y carpetas llamado NAUTILUS para realizar tareas de manejo de archivos como mover copiar

renombrar crear carpetas y de esta manera administrar nuestros dispositivos de almacenamiento

55

27 Agrupamiento (Cluacutester) de Computadoras

El agrupamiento (cluacutester) de computadoras estaacute conformado por una coleccioacuten de

computadoras autoacutenomas interconectadas trabajando unidas como un solo recurso de computacioacuten

integrado El concepto de agrupamiento de computadoras nacioacute cuando los pioneros de la

supercomputacioacuten intentaban difundir diferentes procesos entre varias computadoras para luego

poder recoger los resultados que dichos procesos debiacutean producir Con un hardware maacutes barato y

faacutecil de conseguir se pudo perfilar que podriacutean conseguirse resultados muy parecidos a los

obtenidos con aquellas maacutequinas mucho maacutes costosas (Chirinov 2003)

Un agrupamiento de computadoras se puede definir como el trabajo realizado por dos o

maacutes computadoras que en conjunto se encargan de proveer una determinada solucioacuten Tiene como

finalidad agrupar el poder de coacutemputo de los nodos implicados para proporcionar una mayor

escalabilidad disponibilidad y fiabilidad (Branch Bedoya amp Mesa Muacutenera 2008)

La escalabilidad es la capacidad de un equipo para hacer frente a voluacutemenes de trabajo

cada vez mayores sin por ello dejar de prestar un nivel de rendimiento aceptable

La disponibilidad y la fiabilidad se encuentran bastante relacionadas aunque difieren

ligeramente en algunos aspectos La disponibilidad es la calidad de estar presente y listo para su

uso mientras que la fiabilidad es la probabilidad de un correcto funcionamiento

56

Entre los tipos de agrupamiento maacutes comunes se pueden encontrar de alta disponibilidad

(ambiente a prueba de fallas) coacutemputo de alto desempentildeo (los procesos o las tareas dadas se

presentan como un solo sistema virtual) y escalamiento horizontal (se utiliza para proporcionar

una sola interfaz a un conjunto de recursos que pueden aumentar o disminuir arbitrariamente su

tamantildeo en un cierto periodo de tiempo) (Gonzaacutelez Ramiacuterez amp Rodriacuteguez Saacutenchez 2008)

271 Beowulf Es una clase de computadora masivamente paralela de altas prestaciones

principalmente construida a base de agrupamiento de componentes hardware estaacutendar (Llorens amp

Pentildea 2002) Consta de un conjunto de nodos minimalistas unidos por un medio de

comunicaciones econoacutemico Esto quiere decir que tienen lo miacutenimo para ejecutar su funcioacuten de

hecho los nodos por siacute solos no son capaces de ejecutar siquiera un sistema operativo (Nievas

Pino amp Arroyo) Se puede ver como una supercomputadora paralela construida con hardware

comercial de faacutecil adquisicioacuten que posee como sistema operativo Linux Los cluacutesters Beowulf son

extremadamente poderosos pero no son para todas las personas Su principal desventaja es que

requieren software disentildeado para poder aprovechar los recursos del cluacutester (Lizaacuterraga 2002)

272 Mosix Seguacuten Peacuterez (2001) la arquitectura Mosix estaacute basada en la misma ideologiacutea

de la arquitectura Beowulf Se basa en un conjunto de parches aplicados al nuacutecleo (kernel) de Linux

y que asignan a todo el grupo de nodos un espacio de direcciones y de procesos comuacuten gracias al

cual los procesos migran de uno a otro con el fin de equilibrar favorablemente la carga del sistema

global Es una herramienta disentildeada para realizar balanceo de carga en el agrupamiento de forma

totalmente transparente de manera tal que los nodos se comportan como una sola maacutequina y asiacute

incrementar el aprovechamiento de cada uno de los nodos (Chaacutevez y otros 1999) La principal

57

ventaja de Mosix frente a Beowulf se basa precisamente en esto Mosix da mejores respuestas que

Beowulf frente a la caiacuteda o insercioacuten de nodos A parte de esto Mosix permite un cambio constante

de aplicacioacuten o incluso el correr aplicaciones independientes de forma simultaacutenea

273 OpenMosix OpenMosix es una extensioacuten del proyecto Mosix Seguacuten Chirinov

(2003) la idea de este modelo es que la distribucioacuten de tareas en el cluacutester la determina OpenMosix

de forma dinaacutemica conforme se van creando tareas Cuando un nodo estaacute demasiado cargado las

tareas que se estaacuten ejecutando pueden migrar a cualquier otro nodo del cluacutester Asiacute desde que se

ejecuta una tarea hasta que eacutesta muere podraacute migrar de un nodo a otro sin que el proceso sufra

mayores cambios

Ademaacutes OpenMosix funciona a nivel de kernel por tanto puede conseguir toda la

informacioacuten que necesite para decidir que tanto estaacute cargado un sistema y queacute pasos se deben

seguir para aumentar el rendimiento ademaacutes puede realizar maacutes funciones que cualquier

aplicacioacuten a nivel de usuario

Despueacutes de elegir el tipo de cluacutester a utilizar se procede a elegir los elementos baacutesicos que

se emplearaacuten para implementar el cluacutester capacidad de procesamiento memoria espacio del disco

de cada nodo asiacute como tambieacuten el ancho de banda de la comunicacioacuten entre los nodos Se deberaacute

decidir cuaacuteles son importantes basaacutendose en la variedad de aplicaciones que se piensen ejecutar

en el cluacutester y de la cantidad de dinero que se disponga para construirlo

58

Bajo estos mismos paraacutemetros se debe escoger tambieacuten el tipo de red que interconectaraacute

los nodos (Turner 2004)

Luego se debe escoger el sistema operativo a utilizar Esta eleccioacuten dependeraacute mucho de

la maacutequina que se escoja Linux es siempre una opcioacuten en cualquier maacutequina y es la eleccioacuten maacutes

comuacuten Muchas de las herramientas necesarias para la implementacioacuten de un cluacutester han sido

desarrolladas bajo Linux Pero existen cluacutesters corriendo bajo Windows NT UNIX Solaris y AIX

59

Capiacutetulo 3 Implementacioacuten de Cluacutester

31 Requisitos previos

Antes de iniciar la instalacioacuten del FrontEnd es necesario asegurarse que las conexiones de

red de los equipos junto con la configuracioacuten de la BIOS de cada uno sean las correctas

311 Conexioacuten de los equipos y acceso a la red

Un cluacutester de alto desempentildeo funciona como un uacutenico equipo el cuaacutel comparte los recursos

de los nodos esclavos con el nodo maestro para ello es esencial la existencia de una red interna de

alta velocidad por medio de la cual se realice la comunicacioacuten entre el nodo maestro y los nodos

esclavos como se muestra en la Figura 31 El nodo maestro necesitaraacute 2 tarjetas de red de alta

Figura 31 Esquema tiacutepico de configuracioacuten de un cluacutester (Fuente Elaboracioacuten propia)

60

velocidad una para la comunicacioacuten interna y otra para la comunicacioacuten con redes externas El

sistema operativo Rocks asigna automaacuteticamente la interface ldquoeth0rdquo a la red interna del cluacutester y

la interface ldquoeth1rdquo a la red externa En caso de que Rocks sea incapaz de determinar cuaacutel es la red

externa debido a la falta de conexioacuten a internet estas podriacutean ser asignadas de manera incorrecta

por tal motivo se sugiere asegurar el nombre de cada una de las interfaces

Dado que Rocks no permite volverlas a asignar una vez finalizada la instalacioacuten es

necesario volver a reinstalarlo para poder solucionar este inconveniente

312 Configuracioacuten de la BIOS Para evitar problemas durante la instalacioacuten conviene

configurar correctamente la Bios

3121 ATAIDE Mode Algunos sistemas operativos puede que no sean capaces de

reconocer el controlador del disco duro como es en el caso de esta distribucioacuten de Rocks usada

Para evitar complicaciones de tener que antildeadir el controlador a mano lo mejor es habilitar el modo

ldquoLegacyrdquo de controlador de disco duro

61

Para ello se accede a la Bios pulsando F2 al encender el equipo se situacutea en la pestantildea

ldquoAdvancedrdquo y se selecciona ldquoDrive Configurationrdquo como se muestra en la Figura 32

Figura 32 Imagen del Bios del equipo en la opcioacuten ldquodrive configurationrdquo (Fuente Elaboracioacuten propia)

Figura 33 Bios ATAIDE Legacy Mode (Fuente Elaboracioacuten propia)

62

Dentro del menuacute se tiene que seleccionar el Modo ldquoLegacyrdquo en la opcioacuten ldquoATAIDE

Moderdquo como se muestra en la Figura 33 y para salir se guardan los cambios con F10

3122 PXE Al momento de instalar un nodo puede ocurrir falla al arrancar y aparecer

bootsplash (Reboot and Select proper device) Para evitarlo es necesario habilitar la opcioacuten de

PXE para que tome los archivos de instalacioacuten del nodo maestro a traveacutes de la red interna

En la Bios se selecciona la pestantildea ldquoBootrdquo y dentro de ese mismo menuacute se deshabilita

ldquoSilent bootrdquo y se habilita la opcioacuten de ldquoPXE boot to lanrdquo como se muestra en la Figura 34

Finalmente hay que verificar que en la secuencia de arranque (Figura 35) como primer

dispositivo sea desde red para que de esta manera inicie desde el PXE

Figura 34 Bios Boot PXE (Fuente Elaboracioacuten propia)

63

Se guardan los cambios antes de salir

32 Instalacioacuten de Sistema Operativo Rocks

Una vez configurados los equipos se enciende el equipo que seraacute el nodo maestro

(FrontEnd) en el cuaacutel previamente se ha modificado la secuencia de inicio del boot desde la Bios

de modo que al insertar el CD de Rocks eacuteste procederaacute a iniciar la instalacioacuten con la siguiente

pantalla que se muestra a continuacioacuten

Figura 35 Bios Boot device prioriry (Fuente Elaboracioacuten propia)

64

Para iniciar la instalacioacuten uacutenicamente se selecciona la opcioacuten ldquoInstall CentOS 7rdquo como se

muestra en la Figura 36 dando asiacute comienzo al proceso de instalacioacuten Tras finalizar un proceso

de carga en memoria Rocks mostraraacute un formulario en entorno graacutefico mediante el cual

procederemos a configurar el FrontEnd

Esta primera pantalla se muestra coacutemo se desea realizar la instalacioacuten puede realizarse

por medio de la descarga del sistema operativo (se requiere internet) En este caso como se muestra

en la Figura 37 dado que previamente se descargoacute el DVD completo se seleccionoacute ldquoCDDVD

based rollsrdquo

Figura 36 Pantalla de Inicio de instalacioacuten de Rocks (Fuente Elaboracioacuten propia)

65

A continuacioacuten Figura 38 se selecciona de la lista de Rolls aquellos que se desean instalar

Figura 37 Pantalla de seleccioacuten de Rolls (Fuente Elaboracioacuten propia)

Figura 38 Listado de opciones de rolls para instalar (Fuente Elaboracioacuten propia)

66

Tras presionar el botoacuten ldquoSubmitrdquo la siguiente pantalla (Figura 39) muestra formulario en

el que hay que indicar la informacioacuten baacutesica del cluacutester entre las cuales aparecen

Fully-Qualified Host Name Nombre con el que se conoceraacute en la red externa el cluacutester

Cluster Name Nombre utilizado para ser identificado dentro de las herramientas del cluacutester

Certificate Organization Locality State and Country Organizacioacuten a la que pertenece el

cluacutester la localidad el estado y la ciudad

Contact URL and LattitudeLongitude Contacto direccioacuten web y posicioacuten GPS

Figura 39 Informacioacuten baacutesica del cluacutester a instalar (Fuente Elaboracioacuten propia)

67

Una vez que se ingresa la informacioacuten al cluacutester se presiona el botoacuten ldquoListordquo y

posteriormente se podraacute cambiar la configuracioacuten baacutesica de la red interna del cluacutester En este caso

Figura 310 se dejoacute el valor por defecto una IP de clase B (1011116)

El siguiente paso es la configuracioacuten de la red externa (para tener acceso a internet) En

este punto se introducen los datos de la red externa a la que se encuentra conectado el nodo

maestro como se muestra en la Figura 311

Figura 310 Configuracioacuten Ethernet de la red privada (Fuente Elaboracioacuten propia)

Figura 311 Configuracioacuten Ethernet de la red puacuteblica (Fuente Elaboracioacuten propia)

68

Para terminar de configurar la red externa como se muestra en la Figura 312 se ingresa la

direccioacuten IP del Gateway y los DNS (Servidor de nombre de dominio) que va a usar para el acceso

a internet

Se continuacutea con el resto del formulario donde se introduce la contrasentildea para el usuario

root tal y como se muestran en la Figura 313

Figura 312 Configuracioacuten de DNS y Gateway (Fuente Elaboracioacuten propia)

Figura 313 Ingresar contrasentildea de usuario root (Fuente Elaboracioacuten propia)

69

Paso siguiente se procede a seleccionar la zona horaria como se muestra en la Figura 314

donde se encuentra ubicado el cluacutester asiacute como un servidor de donde podraacute obtener la zona horaria

automaacuteticamente en este caso se dejoacute el valor por default

En el formulario de la Figura 315 se selecciona la forma de particionar el disco duro

(automaacutetica manual) una vez seleccionado daraacute comienzo al proceso de instalacioacuten de manera

Figura 314 Configuracioacuten horaria (Fuente Elaboracioacuten propia)

Figura 315 Particiones del disco duro (Fuente Elaboracioacuten propia)

70

desatendida Cuando ha concluido la instalacioacuten el equipo se reiniciaraacute y se requeriraacute iniciar con

el usuario root y la contrasentildea establecida previamente

321 Configuracioacuten del teclado Debido a que el teclado por defecto estaacute en idioma

ingleacutes podriacutea provocar problemas al momento de escribir la contrasentildea u otros comandos

Seguacuten las pruebas realizadas aunque se cambie la configuracioacuten del teclado desde el menuacute

de preferencias uacutenicamente se mantiene dentro de la sesioacuten desde la que se ha cambiado dicha

opcioacuten (lo cual implica que la contrasentildea de usuario hay que introducirla seguacuten la distribucioacuten

inglesa)

33 Instalacioacuten de los nodos

Previo a la instalacioacuten de los nodos esclavos cada uno de los equipos fueron configurados

desde la Bios para que arranquen desde la red (seccioacuten 3122) Para ir antildeadiendo los nodos solo

se tiene que introducir el siguiente comando desde nuestro FrontEnd

$insert-ethers

A continuacioacuten como se muestra en la Figura 316 apareceraacute una ventana en la pantalla

en la cual se seleccionaraacute la opcioacuten ldquoComputerdquo

71

Una vez realizado este paso se procede a encender los equipos que funcionaraacuten como

nodos esclavos uno a uno

Se sugiere esperar a que cada nuevo equipo encendido esteacute marcado con un asterisco antes

de proceder a encender el siguiente como se muestra en la Figura 317 De esta manera se asegura

que cada nuevo nodo antildeadido posea el nombre y numeracioacuten deseada

Figura 316 Pantalla para ingresar nodos (Fuente Elaboracioacuten propia)

Figura 317 Indicador de insercioacuten de nuevos nodos (Fuente Elaboracioacuten propia)

72

Puede darse el caso de que un nodo no sea detectado automaacuteticamente eso indica que se

ha omitido alguacuten paso o parte de la configuracioacuten realizada hasta el momento es incorrecta En ese

caso comprobar lo siguiente

Que el nodo esclavo este correctamente conectado a la red interna

Que el FrontEnd (nodo maestro) tenga correctamente configurada la red interna y externa

Que el PXE esteacute habilitado en la Bios del nodo esclavo

331 Administracioacuten de nodos Algunos de los comandos maacutes uacutetiles para para la gestioacuten

de los nodos son los siguientes

Eliminar un nodo de la lista

Reinstalar un nodo

Listar los nodos ya instalados

Acceder a un nodo

$rocks remove host nombre_nodo

$rocks remove host nombre_nodo

$rocks set host boot nombre_nodo action=install

$rocks set host boot nombre_nodo action=install

$rocks list host

$rocks list host

$ssh nombre_nodo

$ssh nombre_nodo

73

Ejecutar un comando de manera remota a un nodo

332 Creacioacuten de cuentas de usuario Para agregar a un usuario hay que realizar los

siguientes pasos

1 Creacioacuten de la cuenta

$useradd nombre_usuario

2 Asignacioacuten de una contrasentildea

$passwd nombre_usuario

3 Sincronizacioacuten de la cuenta de usuario con el resto de nodos

$rocks-user-sync

333 Configuracioacuten del directorio compartido El directorio share es compartido por el

FrontEnd y el resto de nodos se localiza dentro del FrontEnd en la carpeta exports siendo la

carpeta share un enlace simboacutelico a esta uacuteltima

Al principio es posible que no se sincronicen correctamente los archivos introducidos en el

directorio debido a que la carpeta inicialmente estaacute vaciacutea por lo que para solucionar este

inconveniente puede usarse el comando siguiente para reiniciar dicho servicio

$ssh nombre_nodo lsquocomandorsquo

$ssh nombre_nodo lsquocomandorsquo

$cd

$export fs ndashrv

service nfs restart

$cd

$export fs ndashrv

service nfs restart

74

34 Operaciones baacutesicas de Rocks

Comandos y aplicaciones esenciales para el manejo del cluacutester

Ver que rolls estaacuten instalados

$rocks list roll

Visualizar el estado del sistema Figura 318

$qstat ndashf

Probar el sistema de colas para distribuir tareas a los nodos

Para ello se prueba que el SGE del cluacutester funcione enviaacutendole una serie de trabajos

mediante el comando qsub

En primer lugar se crea un fichero (pruebapl) que tenga permisos de ejecucioacuten con el

siguiente contenido

Figura 318 Comando qstat ndashf (Fuente Elaboracioacuten propia)

75

usrbinperl

for(my $i=0$ilt30$i++) sleep(2) print okn

Y se ejecuta con el siguiente comando

$ for ((i=1ilt=10i+=1)) do qsub pruebapl done

Al ejecutarse se puede comprobar que los trabajos se han mandado Figura 319

Y al realizar de nuevo un ldquoqstat ndashfrdquo Figura 320 se observa coacutemo se van realizando

Figura 319 Enviacuteo de trabajos por medio del comando qsub (Fuente Elaboracioacuten propia)

Figura 320 Estado de los trabajos pendientes mostrados por qstat ndashf (Fuente Elaboracioacuten propia)

76

Para ver la carga de trabajo en el cluacutester de manera global y de forma graacutefica se tiene que

ingresar en un navegador web en la siguiente direccioacuten httplocalhostganglia apareceraacute la

Figura 321

Figura 321 Visualizacioacuten de la distribucioacuten de cargas en el cluacutester usando la herramienta Ganglia (Fuente Elaboracioacuten propia)

77

Capiacutetulo 4 Metodologiacutea y Resultados

Una vez finalizada la instalacioacuten y puesta en operacioacuten del equipo se analizaron diferentes

metodologiacuteas de trabajo lo que implicoacute un trabajo arduo debido a que existen complicaciones

cuando se buscan temas relacionados a vulnerar sistemas operativos La realizacioacuten de este

proyecto estaacute basado en la metodologiacutea de Joshua Picolet ldquoCracking Methodologyrdquo (Picolet

2017)

41 Obtener Archivo hash

Se pueden vulnerar contrasentildeas de Windows de diferentes maneras Una de ellas es

mediante el acceso al archivo del Administrador de cuentas de seguridad (SAM) el cual se detalla

en el apartado 253 a traveacutes de la obtencioacuten de las contrasentildeas del sistema en su forma hash por

medio de herramientas diferentes Alternativamente las contrasentildeas se pueden leer desde la

memoria lo que tiene el beneficio adicional de recuperar las contrasentildeas en texto plano y evitar el

requisito de descifrado Para comprender los formatos que se observan cuando se descarguen

hashes del sistema de Windows se requiere una breve descripcioacuten de los diferentes formatos de

almacenamiento

Originalmente las contrasentildeas de Windows de menos de 15 caracteres se almacenaban en

el formato hash de Lan Manager (LM) Algunos sistemas operativos como Windows 2000 XP y

Server 2003 continuacutean usando estos hashes a menos que esteacuten deshabilitados por el usuario

Ocasionalmente un sistema operativo como Windows Vista puede almacenar el hash LM para la

compatibilidad con otros sistemas Seguacuten analistas incluye varias vulnerabilidades como dividir

78

la contrasentildea en dos bloques y permitir que cada uno se descifre de forma independiente Mediante

el uso de tablas Rainbow es trivial descifrar una contrasentildea almacenada en un hash LM

independientemente de la complejidad Este hash se almacena con la misma contrasentildea calculada

en el formato de hash NT como el que se muestra en el siguiente ejemplo

Ejemplo de un hash NTLM con el componente LM y NT

Administrator500611D6F6E763B902934544489FCC9192BB71ED1E7F2B60ED5A2

EDD28379D45C91

Los sistemas operativos Windows maacutes recientes como el Windows 8 y 10 usan el hash NT

En teacuterminos simples no hay una debilidad significativa en este hash que lo diferencie de cualquier

otra funcioacuten hash criptograacutefica Se requieren meacutetodos de descifrado como lo es la fuerza bruta o

ataque de diccionario para recuperar la contrasentildea si uacutenicamente se almacena en el formato NT

Ejemplo de un hash NTLM uacutenicamente con el componente NT (como se ve en los sistemas

Windows mas recientes

Administrator500NOPASSWORDEC054D40119570A4663

4350291AF0F72

Es importante sentildealar que la cadena NO PASSWORD es variable seguacuten la herramienta

que se utilice Otras pueden presentar esta informacioacuten como ceros rellenos o comuacutenmente puede

79

ver la cadena ldquoAAD3B435B51404EEAAD3B435B51404EErdquo en lugar de ninguna contrasentildea

Esto significa que el hash LM estaacute vaciacuteo y no estaacute almacenado

El archivo hash se encuentran en el directorio ldquoWindows System32 configrdquo y se

necesitan ambos archivos SAM y SYSTEM Ademaacutes tambieacuten se encuentran en el archivo de

registro HKEY_LOCAL_MACHINE SAM al que no se puede acceder durante el tiempo de

ejecucioacuten Finalmente las copias de seguridad se pueden encontrar a menudo en ldquoWindows

Repairrdquo (Peleus 2019)

Para extraer el archivo hash de un sistema operativo con un nivel de seguridad C1 existen

diferentes meacutetodos en esta ocasioacuten se procederaacute a iniciar el equipo objetivo con una distribucioacuten

de Linux desde una memoria USB como se muestra en la figura 41 para de esta manera ingresar

al directorio CWINDOWSSystem32Config directorio de ubicacioacuten de los archivos SAM y

SYSTEM que son los necesarios para obtener el archivo hash (Caballero 2018)

Figura 41 Arranque con LiveUSB KaliLinux (Fuente Elaboracioacuten propia)

80

42 Dar Formato al Hash

En este punto es donde se tiene que identificar el algoritmo con el que fueron encriptados

los archivos SAM y SYSTEM que se han obtenido en el punto anterior con la finalidad de

seleccionar el tratamiento que se les daraacute El algoritmo de encriptacioacuten del archivo SAM de

Windows 10 es NTLM y ademaacutes estaacute almacenado en un formato binario (ByteBleeder 2017) por

lo que fue necesario instalar la herramienta con licencia GNU samdump2 para obtener la syskey y

de esta manera poder extraer los hash desde el archivo SAM de Windows

En la figura 42 se han obtenido los hashes del archivo SAM donde se puede observar que

los usuarios Administrador e Invitado estaacuten deshabilitados ademaacutes de que existen tres cuentas de

usuario activas las cuales son Gad prueba y usuarioprueba cada una con su contrasentildea cifrada

en formato NTLM a la derecha del nombre de usuario la cuenta usuarioprueba fue a la que se le

realizoacute el anaacutelisis que se detalla posteriormente

43 Evaluar la fuerza del Hash

En criptografiacutea se dice que un algoritmo criptograacutefico se rompe si por alguacuten meacutetodo se

consigue reducir su fortaleza es decir reducir por ejemplo su entropiacutea de los 2256 bits teoacutericos a

Figura 42 Resultado de la ejecucioacuten de la herramienta samdump2 (Fuente Elaboracioacuten propia)

81

tan soacutelo 2255 por ejemplo El hecho de que se encuentre una colisioacuten no implica necesariamente

que un algoritmo se haya roto pues podriacutea haber sido realizado mediante fuerza bruta pero puede

ser una causa

Un ataque de colisioacuten significa que encuentro dos entradas diferentes que producen el

mismo resultado de un hash particular Este es generalmente el tipo de ataque maacutes faacutecil Es el tipo

de ataque que se conoce desde hace varios antildeos contra MD5

Dado que una utilidad importante de las funciones hash estaacute en las firmas digitales

encontrar colisiones puede facilitar falsificar firmas digitales Es decir dos mensajes distintos que

tengan un mismo resumen tienen ademaacutes la misma firma y un atacante puede reemplazar un

mensaje por el otro Un ejemplo de este ataque fue demostrado en 2008 por un grupo de

investigadores en Aacutemsterdam los cuales falsificaron un certificado raiacutez mediante el uso de un

ataque de colisioacuten contra el algoritmo MD5 (Preukschat 2015)

Un ataque previo a la imagen generalmente es mucho maacutes difiacutecil es encontrar otra entrada

que produzca el mismo resultado que un hash que ya se conoce

Para tratar de aclarar la diferencia aquiacute en un ataque de colisioacuten encuentro dos entradas A

y B que producen el mismo resultado En un ataque de preimagen comienzo a partir de alguacuten

resultado conocido X y encuentro una entrada que produciraacute X como resultado (Coffin 2015)

82

Para realizar esta evaluacioacuten se tomoacute como base la tabla del apeacutendice Hash craking

benchmark (Picolet 2017) el objetivo es observar el comportamiento y velocidad del Hash

mencionado cuando fue sometido a pruebas de criptoanaacutelisis Si se trata de un Hash lento se deberaacute

ser maacutes selectivo en queacute tipos de diccionarios y meacutetodos de criptoanaacutelisis se le debe aplicar Si es

un Hash raacutepido se puede ser maacutes libre con la estrategia de criptoanaacutelisis Este estudio busca

realizar una prueba de criptoanaacutelisis mostrando las diferencias entre el poder de procesamiento de

un cluacutester de 17 nodos contra una computadora personal por lo que no necesariamente se

implementaraacute el meacutetodo oacuteptimo para la realizacioacuten del criptoanaacutelisis

44 Calcular la capacidad del equipo

Con la informacioacuten de la evaluacioacuten de la fuerza del Hash obtenida en el apartado anterior en

este apartado se tiene que establecer la capacidad de la plataforma o plataformas que realizaraacuten

el criptoanaacutelisis

Para conocer la capacidad de procesamiento del cluacutester de alto rendimiento se utilizoacute la

herramienta Linpack Benchmark HPL es una implementacioacuten portaacutetil del Benchmark de alto

rendimiento LINPACK para equipos de coacutemputo distribuido Actualmente se utiliza para obtener

varios resultados en la lista actual de Top500 de HP cluacutesters (Dongarra 2010)

El Linpack Benchmark (HPL del Ingleacutes High-Performance Linpack Bench-mark) es un

software que resuelve un sistema lineal aleatorio de doble precisioacuten aritmeacutetica (64 bits) en equipos

de memoria distribuida El rendimiento muestra el nuacutemero de operaciones de punto flotante por

segundo logradas por el sistema (Petitet Whaley Dongarra amp Cleary 2008)

83

El HPL fue desarrollado en el Argone National Laboratory por Jack Don-garra en 1976 y

es uno de los maacutes usados en sistemas cientiacuteficos y de ingenieriacutea para el caacutelculo de prestaciones

Las principales caracteriacutesticas del algoritmo utilizado por el HPL son

Distribucioacuten ciacuteclica de datos de bloques de dos dimensiones

Variante derecha de la factorizacioacuten LU con pivoteo parcial (Teacutecnica de pivoteo

Dicta que el elemento pivote que debe escogerse es el mayor absolutamente de cada

columna)

Factorizacioacuten recursiva con pivoteo y reenviacuteo de columna

Distintas topologiacuteas virtuales de reenviacuteos

Algoritmo de reduccioacuten de reenviacuteo para ancho de banda (Castelloacute Gimeno 2014)

La resolucioacuten del sistema de ecuaciones se realiza del siguiente modo

1 Se crea un sistema de ecuaciones

(1)

119860119909 = 119887

(2)

119860 isin 119877119899119909119899

(3)

119909 119887 isin 119877119899

84

HPL calcula que la solucioacuten para un sistema de ecuaciones lineales se puede generalizar

como 119860119909 = 119887 donde 119860 es una matriz 119873 119909 119873 cuyos valores se generan aleatoriamente

119909 119910 119887 son vectores de tamantildeo 119873 Como se muestra en la Figura 43

2 Primero se calcula la factorizacioacuten 119871119880 con pivoteo parcial de los coeficientes 119899 y 119899 + 1

de la matriz [119860 119887]

(4)

119875119903[119860 119887] = [[119871119880] 119910]

(5)

119875119903 119871 119880 isin 119877119899119909119899

(6)

119910 isin 119877119899

El primer paso es la factorizacioacuten de la matriz 119860 en una matriz triangular superior 119880

y una matriz triangular inferior 119871 tal que 119860 = 119871119880 La factorizacioacuten se usa para calcular

el vector solucioacuten 119909

3 Una vez el pivoteo (representado por la permutacioacuten de la matriz 119875119903) y la factorizacioacuten

inferior se aplican sobre 119887 la solucioacuten se obtiene en un paso resolviendo el sistema

superior triangular

Figura 43 Sistema de Ecuaciones tipo 119860119909 = 119887 (Fuente Elaboracioacuten propia)

85

(7)

119880119909 = 119910

La matriz triangular inferior izquierda y el conjunto de pivotes no se devuelven en el

resultado Para la estabilidad numeacuterica el algoritmo de factorizacioacuten utiliza un pivote parcial de

fila

La implementacioacuten paralela de Linpack divide la matriz 119860 119873 119909 119873 en una cuadriacutecula de

procesos 119875 119909 119876 bidimensional y luego la divide en subgrupos de mosaicos 119873119861 119909 119873119861 (Petitet

Whaley Dongarra amp Cleary 2008)

Utilizando la herramienta HPL en esta investigacioacuten se obtuvieron los siguientes

resultados

La prueba abordoacute el ajuste de 119873 y la eficiencia obtenida en comparacioacuten con el rendimiento

maacuteximo Se determinoacute un valor para 119873 = 800000 aleatoriamente para ejecutar HPL en todo el

cluacutester Sin embargo el tiempo fue excesivo por lo tanto se determinoacute que este tamantildeo del

problema fue demasiado grande para el cluacutester Al realizar otros experimentos con valores maacutes

pequentildeos de 119873 se obtuvieron mejores resultados de rendimiento La Tabla 41 muestra el

rendimiento de HPL en GFlops para 119873 = 300000 400000 y 500000 Como se puede observar

en la Tabla 41 se obtuvo el mejor resultado de rendimiento 850 GFlops para 119873 = 500000 para

valores mayores de 119873 la distribucioacuten de cargas del cluacutester empieza a sobrepasar su capacidad como

se muestra en la Figura 44 y la vez su rendimiento disminuye Esto ocurre porque la cantidad de

memoria utilizada con las memorias intermedias de comunicacioacuten MPI es mayor de lo esperado

Por lo tanto es necesario dejar maacutes del 20 de la memoria para el sistema (Petitet Whaley

86

Dongarra amp Cleary 2008) Tambieacuten se realizaron pruebas usando solo un nodo de coacutemputo y el

rendimiento fue de 34 GFlops para 119873 = 20000

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia)

Analizando la eficiencia obtenida para la ejecucioacuten de un solo nodo cuando 119873 = 20000

se obtuvo el 823 del rendimiento maacuteximo (el rendimiento maacuteximo para un solo nodo es 477

Gflops) Para todo el cluacutester el rendimiento maacuteximo seriacutea 119879119898119886119909 = 477 119909 17 =

8109 119866119891119897119900119901119904 aproximadamente

Figura 44 Distribucioacuten de cargas del cluacutester

0

500

1000

300000 400000 500000

Gflops

Gflops

87

La Figura 44 titulada ldquoDistribucioacuten de cargas del cluacutesterrdquo muestra la imagen de la

herramienta Ganglia de manera graacutefica a traveacutes de cuadros que variacutean de color dependiendo de la

carga que tenga cada uno de los nodos al momento de implementar la herramienta HPL De manera

inicial indica que el cluacutester tiene un total de 17 equipos de 4 cores cada uno eso da un total de 68

cores trabajando sin equipos inactivos Muestra tambieacuten una sobrecarga en el cluacutester y un

porcentaje promedio de 100 de uso en la uacuteltima hora

45 Establecer Estrategia

Esto significa uacutenicamente que en este apartado se realizaraacute una guiacutea baacutesica para procesar

los hashes obtenidos sin perder de vista que cada escenario a criptoanalizar es uacutenico en funcioacuten

de las circunstancias externas Como ya se ha mencionado anteriormente esta estrategia de

criptoanaacutelisis se ha planteado implementar dos meacutetodos los cuales son Fuerza Bruta y ataque de

diccionario sin importar si son o no los oacuteptimos debido a que se realizaraacute una comparativa de

capacidad de procesamiento

451 Fuerza Bruta Una vez que se han intentado varios meacutetodos y han fallado se puede

iniciar un ataque de fuerza bruta estaacutendar poniendo especial atencioacuten en la cantidad de siacutembolos

del alfabeto que puede usar el equipo a analizar Por encima de 8 caracteres esto generalmente no

tiene sentido debido a limitaciones de hardware y entropiacutea (complejidad de la contrasentildea) Una

contrasentildea de Windows seguacuten Microsoft (Microsoft Inc 2019) una contrasentildea de Windows debe

estaacute formada por

88

26 Caracteres mayuacutesculas de la ldquoArdquo a la ldquoZrdquo

26 Caracteres minuacutesculas de la ldquoardquo a la ldquozrdquo

10 Diacutegitos de base 10 (0 a 9)

32 Caracteres especiales (~$^amp_-+=|()[]ltgt)

94 Caracteres alfanumeacutericos en total

4511 Cantidad de combinaciones posibles Si se usa una clave numeacuterica (nuacutemeros del 0

al 9) existen 10 posibilidades de 4 diacutegitos de longitud que es la extensioacuten por defecto de los

teleacutefonos celulares Para 4 diacutegitos las combinaciones posibles seriacutean 10 mil 104 = 10000

(Labaca Castro 2014)

Por otro lado si tomamos un alfabeto de 26 letras mayuacutesculas y 26 minuacutesculas 10 nuacutemeros

y 10 caracteres especiales en total tenemos 72 diferentes posibilidades para un uacutenico caraacutecter Eso

significa que las combinaciones para una contrasentildea de 4 caracteres seriacutean 724 = 26873856

Baacutesicamente maacutes de 26 millones de combinaciones en una clave de 4 caracteres contra 10 mil en

una clave de 4 diacutegitos numeacutericos En este estudio se utiliza la contrasentildea de bloqueo descrita en el

apartado anterior que es de 94 combinaciones para cada caraacutecter teniendo una longitud de 7

caracteres por lo tanto seraacuten 947 = 64847759000000 de posibles combinaciones que

nuestros equipos deben explorar para obtener la contrasentildea correcta

Como se mencionoacute en el apartado 42 el usuario sobre el cual se realizoacute el criptoanaacutelisis

fue usuarioprueba el cual constaba de una contrasentildea de longitud 7 caracteres la cual despueacutes

de realizado el anaacutelisis y como se puede observar en la Figura 45

89

1 Anaacutelisis a usuario usuarioprueba

2 Nuacutemero de nodos en operacioacuten 17

3 Nuacutemero de procesos ejecutaacutendose de forma paralela 68

4 Tiempo de duracioacuten del anaacutelisis en el cluacutester 122727 horas

5 Contrasentildea criptoanalizada Pass7

Asiacute mismo en la Tabla 42 se muestra el resultado final y el tiempo de duracioacuten del

criptoanaacutelisis realizado al archivo SAM con el cluacutester y la computadora personal

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Horas)

1 (PC) 4 1075316

17 (Cluacutester) 68 122727

1

2

3

4 5

Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester (Fuente Elaboracioacuten propia)

90

452 Diccionario Meacutetodo empleado para romper la seguridad de los sistemas basados en

contrasentildeas (password) en la que el atacante intenta dar con la clave adecuada probando todas (o

casi todas) las palabras posibles ingresadas previamente en un diccionario idiomaacutetico

Generalmente se emplean programas especiales que se encargan de ello

Este meacutetodo suele ser maacutes eficiente que el meacutetodo de fuerza bruta debido a que muchas

usuarios casi siempre suelen utilizar contrasentildeas con una o varias palabras existentes en su lengua

para que la contrasentildea no sea olvidada faacutecilmente y sea sencilla de recordar esto no es una praacutectica

recomendable (Alegsa 2018)

Para realizar este meacutetodo se utilizoacute un diccionario descargado de internet el cual contiene

10000000 de posibles contrasentildeas (g0tmi1k 2018)

Ademaacutes se ejecutoacute un programa creado en lenguaje C (Anexo 1) a traveacutes de la

implementacioacuten de las libreriacuteas MPI y open MPI propias de la arquitectura de cluacutester de

computadoras Este programa fue ejecutado en los mismos equipos descritos anteriormente para

obtener todos los nuacutemeros primos encontrados dentro de un intervalo dado En este caso el

intervalo dado fue de 10000000 con los siguientes resultados mostrados en la Tabla 43

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos (Fuente Elaboracioacuten

propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Segs)

1 (PC) 4 5078

17 (Cluacutester) 68 00013

91

453 Analizar los resultados Posterior a realizar el criptoanaacutelisis y descifrar con eacutexito

una cantidad suficiente de hashes se analizan los resultados en busca de pistas o patrones Este

anaacutelisis puede ayudar a tener eacutexito en cualquier hash restante

454 Personalizar ataques Tomando como base el anaacutelisis de resultados realizado

previamente se disentildearaacuten diversas estrategias personalizadas que aprovechen las vulnerabilidades

conocidas o patrones Los ejemplos seriacutean ataques de maacutescara personalizados o reglas para

adaptarse al comportamiento o las preferencias del usuario objetivo

92

Conclusioacuten

El trabajo de investigacioacuten presentado parte de la necesidad de buscar alternativas para

explotar al maacuteximo la capacidad de procesamiento del equipo de coacutemputo que existe actualmente

dentro del inventario del Instituto Tecnoloacutegico de Acapulco asiacute como proveer una plataforma que

coadyuve a la investigacioacuten dentro del Instituto a traveacutes de implementar un cluacutester de coacutemputo

con capacidad para realizar proyectos en el aacuterea de ingenieriacutea y matemaacuteticas con el fin de optimizar

el tiempo de ejecucioacuten lo cual en un futuro se veraacute reflejado en ventajas para el desarrollo de la

regioacuten

La revisioacuten y anaacutelisis de informacioacuten en relacioacuten a cluacutesters es muy interesante pero a la

vez es compleja dado que involucra diferentes aspectos durante su evolucioacuten asiacute como diversas

metodologiacuteas para su formacioacuten e implementacioacuten Se considera de suma importancia para este

trabajo las revisiones efectuadas ya que son la base para la propuesta entregada

De acuerdo a las especificaciones teacutecnicas de los equipos informaacuteticos existentes dentro

del laboratorio de la Maestriacutea en Sistemas Computacionales y una vez que se realizoacute el anaacutelisis

de varios casos de eacutexito se propuso la metodologiacutea para implementacioacuten de un cluacutester homogeacuteneo

tipo Beowolf Este meacutetodo estaacute basado en otros que ya se han implementado bajo realidades

acadeacutemicas similares rescatando las etapas maacutes importantes de cada uno y complementaacutendolo con

los aportes personales se consideroacute que fue el oacuteptimo debido a que se implementoacute con hardware

convencional y herramientas de uso libre

93

El hecho de haber seleccionado un meacutetodo adecuado permitioacute superar gran parte los

problemas que presentaban las metodologiacuteas que fueron analizadas simplificoacute la implementacioacuten

del cluacutester y permitioacute el poder alcanzar una mayor estabilidad en su desempentildeo desde su etapa

inicial fue importante conocer el resultado en cada una de las etapas de implementacioacuten para

asegurar su desenvolvimiento en el futuro

Para integrar los equipos independientes a la arquitectura cluacutester se realizoacute el disentildeo de

una topologiacutea de red Gigabit Ethernet tipo estrella con un direccionamiento IP estaacutetico la

configuracioacuten de protocolos de comunicacioacuten remota sin autenticacioacuten la comparticioacuten de

archivos en red y la utilizacioacuten de aplicaciones de licencia GPL que permiten obtener el

funcionamiento similar a la de una supercomputadora

Haciendo uso de libreriacuteas de paso de mensajes (MPI) y el software John the Ripper para el

descifrado de contrasentildeas la arquitectura cluacutester implementada alcanzoacute una eficiencia de 885

de rendimiento en comparacioacuten con los recursos computacionales de un solo equipo con las

caracteriacutesticas de un nodo Ademaacutes otros de los proyectos ejecutados en la arquitectura cluacutester

para probar el rendimiento fue la ejecucioacuten de un programa para la deteccioacuten de nuacutemeros primos

dentro de un archivo de 10000000 de nuacutemeros obteniendo una eficiencia de maacutes de 99 gracias

a la distribucioacuten de tareas que proporcionan las libreriacuteas de paso de mensajes (MPI) dentro de la

arquitectura cluacutester

Con la implementacioacuten de la arquitectura cluacutester el laboratorio de la Maestriacutea en Sistemas

Computacionales podraacute dar soluciones potentes eficientes y econoacutemicas en los entornos de

94

investigacioacuten mejorando la capacidad de procesamiento en aplicaciones como evaluacioacuten de

algoritmos compresioacuten de archivos renderizacioacuten de imaacutegenes anaacutelisis de datos (big data) en un

tiempo relativamente bajo ideal para las necesidades educativas

La experiencia obtenida al realizar esta investigacioacuten y propuesta ha sido enriquecedora

tanto por la obtencioacuten de conocimiento en base a la historia evolucioacuten y arquitectura de cluacutesters

asiacute como la programacioacuten paralela y sus ventajas en diferentes proyectos desarrollados en todo el

mundo Igualmente la comparacioacuten entre cada uno de los modelos y meacutetodos resulta interesante

dado que existe un sinnuacutemero de ejemplos con caracteriacutesticas diferentes pero baacutesicamente con un

mismo objetivo final

Trabajo Futuro

El cluacutester implementado en el Laboratorio de la Maestriacutea en Sistemas computacionales del

Instituto Tecnoloacutegico de Acapulco puede ser utilizado en gran cantidad de aplicaciones dentro de

las diferentes aacutereas de investigacioacuten del Instituto asiacute como estar disponible para el Departamento

de Posgrado e Investigacioacuten como apoyo durante la realizacioacuten de tareas y proyectos dentro de las

aacutereas de Desarrollo de Sistemas Inteligentes asiacute como de Tecnologiacuteas Web

Propuesta de Trabajo a Futuro

Durante la realizacioacuten de este proyecto se observoacute la necesidad que existe dentro del

departamento de Investigacioacuten y Posgrado de equipos de alta capacidad de procesamiento para

realizar de una manera maacutes eficiente las investigaciones que se estaacuten llevando a cabo Una de ellas

es el ldquoSistema de apoyo al diagnoacutestico oportuno de Retinopatiacutea Diabeacuteticardquo en la cual a traveacutes del

entrenamiento de una red neuronal se clasificaraacuten y evaluaraacuten un nuacutemero de 3000 imaacutegenes para

95

demostrar la presencia de dicha enfermedad en pacientes del Instituto Estatal de Oftalmologiacutea

Actualmente se ha realizado una prueba de entrenamiento de dicha red neuronal con 70 imaacutegenes

obteniendo como resultado un tiempo clasificacioacuten y evaluacioacuten de 301532 horas en un equipo

con un procesador Core I7 con 8 GB en memoria RAM

96

Bibliografiacutea

Alegsa (01 de 01 de 2018) Alegsa Diccionario Informaacutetico Recuperado el 07 de 2019 de

Alegsa httpwwwalegsacomarDicataque_por_diccionariophp

Avecto (2017) Avecto Limited Recuperado el 10 de 08 de 2018 de AVECTO a Bomgar

Company wwwavectocom

Borghello C (2009) Seguridad de la Informacioacuten Recuperado el 11 de 2018 de Criptografiacutea de

la A-Z httpswwwsegu-infocomarproyectosp1_hashhtm

Branch Bedoya J amp Mesa Muacutenera A (Diciembre de 2008) Implementacioacuten de un cluster

homogeacuteneo para la resolucioacuten de problemas de alta complejidad computacional Avances

en Sistemas e Informaacutetica 5(3)

ByteBleeder (02 de 06 de 2017) Practical guide to NTLM Relaying in 2017 Obtenido de Github

httpsbyt3bl33d3rgithubiopractical-guide-to-ntlm-relaying-in-2017-aka-getting-a-

foothold-in-under-5-minuteshtml

Caballero A (26 de 06 de 2018) Hacking Eacutetico Recuperado el 03 de 2019 de John The Ripper

httpwwwreydescomdq=Recuperar_la_Contrasena_del_Administrador_utilizando_s

amdump2_y_John_The_Ripper

Carretero Peacuterez J de Miguel Anasagasti P Garciacutea Carballeira F amp Peacuterez Costoya F (2001)

Sistemas Operativos Una visioacuten aplicada (C F Madrid Ed) Madrid Espantildea

McGRAW-HillInteramericana

Castelloacute Gimeno A (30 de 07 de 2014) Universitat Jaume Recuperado el 10 de 2019 de

Evaluacioacuten de prestaciones mediante laaplicacioacuten HPL de clusters utilizandorCUDA

97

httprepositoriujiesxmluibitstreamhandle10234115082TFM_2014_CastelloGimen

oApdfsequence=1ampisAllowed=y

Chaacutevez J Echeverriacutea C Correa M Vaacutezquez E Suaacuterez M Maacutermol X Diacuteaz G (07 de

1999) Centro de Caacutelculo Cientiacutefico Recuperado el 01 de 05 de 2018 de Universidad de

Los Andes httpwwwcecalculavedocumentaciontutorialesbeowulfinformehtml

Chirinov R (2003) Nfinite9000 SL Recuperado el 26 de 04 de 2018 de Noticias 3D

httpswwwnoticias3dcomarticuloaspidarticulo=248amppag=4

Coffin J (23 de 07 de 2015) Quora Recuperado el 15 de 08 de 2019 de

httpswwwquoracomWhat-does-it-mean-when-a-hashing-algorithm-has-been-broken

Dongarra J (2010) Top500 Super computer sites Recuperado el 07 de 2019 de http

wwwtop500org

Educba (01 de 01 de 2019) Recuperado el 10 de 2019 de Educbaorg

httpswwweducbacomidea-algorithm

europa press (04 de 06 de 2013) Portal Tic Recuperado el 18 de 11 de 2018 de Europa Press

httpswwweuropapressesportalticgadgetsnoticia-cuarta-generacion-intel-core-mayor-

salto-cuanto-ahorro-energetico-20130604174722html

g0tmi1k (2018) github Recuperado el 05 de 2019 de github

httpsgithubcomdanielmiesslerSecListsblobmasterPasswordsCommon-

Credentials10-million-password-list-top-1000000txt

Gonzaacutelez Agudelo D (2014) El riesgo y la falta de politicas de seguridad informaacutetica una

amenaza en las empresas certificadas basc Recuperado el 20 de 05 de 2018 de

Universidad Militar Nueva Granada

httpsrepositoryunimilitareducobitstream10654122511ENSAYO20FINALpdf

98

Gonzaacutelez Ramiacuterez E amp Rodriacuteguez Saacutenchez A (2008) Disentildeo e implementacioacuten de un cluster

tipo BEOWULF para el desarrollo de coacutemputo cientiacutefico avanzado CdMx Mexico

Hernandez M (2013) Forensics Mexico Recuperado el 07 de 2018 de La importancia del

registro de Windows parte 1 httpforensicsmexicoblogspotcom201309la-

importancia-del-registro-de-windowshtml

Kowalczyk C (01 de 2015) Crypto-IT Recuperado el 11 de 2018 de Crypto-IT

httpwwwcrypto-itnetengasymmetricindexhtml

Labaca Castro R (13 de 06 de 2014) We live security Recuperado el 2019 de 08 de 07 de

Welivesecuritybyeset httpswwwwelivesecuritycomla-es20140613matematica-

claves-numerica-alfanumerica

Lizaacuterraga C (2002) Departamento de Fiacutesica Recuperado el 12 de 03 de 2018 de Universidad

de Sonora httpclustersfisicausonmx

Llorens E amp Pentildea M (2002) Recuperado el 04 de 2018 de Departament dArquitectura de

Computadors httppersonalsacupceduenricPFCBeowulfbeowulfhtml

Meneacutendez-Barzanallana R (07 de 08 de 17) Universidad de Murcia Recuperado el 11 de 2018

de Informaacutetica Aplicada a las Ciencias Sociales

httpswwwumesdocenciabarzanaIACCSSCriptografiahtml

Merkle R amp Damgaringrd I (sf) Numerenturorg Recuperado el 06 de 2019 de Para computar -

numerenturorg httpnumerenturorgfuncion-merkle-damgard

Microsoft Inc (02 de 05 de 2019) wwwmicrosoftcom Obtenido de Password must meet

complexity requirements httpsdocsmicrosoftcomes-eswindowssecuritythreat-

protectionsecurity-policy-settingspassword-must-meet-complexity-requirements

99

Mifsud E (26 de 03 de 2012) Introduccioacuten a la seguridad informaacutetica Recuperado el 07 de 05

de 2018 de Ministerio de educacioacuten cultura y deportes Gobierno de Espantildea

httprecursosticeducacionesobservatoriowebessoftwaresoftware-general1040-

introduccion-a-la-seguridad-informaticashowall=1

Murugesan S (01 de 02 de 2008) Researchgate doi101109MITP200810

Nahar K amp Abu Abbas O (01 de 2010) Researchgate Recuperado el 07 de 2019 de

Researchgate

httpswwwresearchgatenetpublication315492522_Hybrid_Cipher_System

Nievas F Pino O amp Arroyo R (sf) Los clusters como Plataforma de Procesamiento Paralelo

Recuperado el 25 de 04 de 2018 de

httpusuarioslycoseslacaraocultadescargasClusters_definitivo pdf

Pawar S (2016) A computer science portal for geeks Recuperado el 10 de 2018 de

Geeksforgeeks httpswwwgeeksforgeeksorgrc5-encryption-algorithm

Peleus (2019) NETSEC Recuperado el 08 de 2019 de httpsnetsecwsp=314

Peacuterez Tavera I (2014) Obtenido de Universidad Autonoma del Estado de Hidalgo

httpswwwuaehedumxscigeboletinprepa4n2e4html

Peacuterez M (2001) Recuperado el 15 de 04 de 2018 de

httpwwwdragonesorgBibliotecaArticulosArquitecturaParalela2pdf

Petitet A Whaley R C Dongarra J amp Cleary A (2008) HPL - A Portable Implementation of

the High-Performance Linpack Benchmark for Distributed-Memory Computers

Recuperado el 07 de 2019 de httpwwwnetliborgbenchmarkhpl

Picolet J (2017) Hash Crack Password Cracking Manual (Vol 2) Createspace Independent

Pub

100

Preukschat A (23 de 02 de 2015) Oro y Finanzas Recuperado el 07 de 2019 de

httpswwworoyfinanzascom201502que-es-colision-criptografia-bitcoin

Robbins D (2008) OpenMosix Recuperado el 22 de 04 de 2018 de the openMosix Project

httpopenmosixsourceforgenetintroduction_to_openmosixhtml

Rocha Quezada J d Botello Rionda S Vargas Feacutelix J M amp Munguiacutea Torres I A (Sep-Dic

de 2011) Disentildeo e implementacioacuten de un cluacutester de coacutemputo de alto rendimiento Acta

Universitaria 21(3) 24-33 Recuperado el 1 de 12 de 2018

Rocksclusters (01 de 01 de 2010) httpwwwrocksclustersorg Recuperado el 01 de 06 de 2018

de httpwwwrocksclustersorg httpwwwrocksclustersorg

Sanjoy K (01 de 01 de 2015) DZone Recuperado el 15 de 06 de 2019 de DZone

httpsdzonecomarticlessecurity-algorithms-des-algorithm

Security Degree Hub (01 de 2017) Security Degree Hub Recuperado el 13 de 02 de 2019 de

Security Degree Hub httpswwwsecuritydegreehubcomwhat-is-cryptanalysis

Simmons G (01 de 01 de 2019) Encyclopedia Britannica Recuperado el 08 de 2019 de

Encyclopedia Britannica httpswwwbritannicacomtopicRSA-encryption

statista (09 de 2017) Statista Obtenido de Statista Co httpsesstatistacom

Turner D (2004) Recuperado el 12 de 02 de 2018 de Ames Lab

httpwwwsclameslabgovProjectsparrallel_computingpara_intohtml

United States Government Department of Defense (1983) Trusted Computer System Evaluation

Criteria Rainbow Series

Universidad Internacional de Valencia (09 de Septiembre de 2016) Nuestros

expertosTecnologiacutea Recuperado el 27 de Abril de 2018 de Universidad Internacional de

Valencia httpswwwuniversidadviuesla-seguridad-informatica-puede-ayudarme

101

Wallen J (19 de 01 de 2019) Lifewire Recuperado el 13 de 06 de 2019 de Lifewire

httpswwwlifewirecomgnome-3-desktop-4175640

Yang H (01 de 02 de 2019) Herong Yang Recuperado el 15 de 06 de 2019 de Cryptography

Tutorials httpwwwherongyangcomCryptographyDSA-Introduction-What-Is-DSA-

Digital-Signature-Algorithmhtml

102

Anexo 1

Programa en Lenguaje C para la obtencioacuten de nuacutemeros primos utilizando libreriacuteas mpi

include ltcstdlibgt

include ltiostreamgt

include ltiomanipgt

include ltcmathgt

include ltctimegt

include mpih

using namespace std

int main ( int argc char argv[] )

int prime_number ( int n int id int p )

void timestamp ( )

int main ( int argc char argv[] )

int i

int id

int master = 0

int n

int n_factor

int n_hi

int n_lo

int p

int primes

int primes_part

double wtime

n_lo = 1

n_hi = 10000000

n_factor = 2

MPIInit ( argc argv )

p = MPICOMM_WORLDGet_size ( )

id = MPICOMM_WORLDGet_rank ( )

if ( id == master )

cout ltlt n

cout ltlt Cuenta primosn

cout ltlt C++MPI versionn

cout ltlt n

cout ltlt Programa para contar cantidad de primos para un N dadon

cout ltlt Corriendo en ltlt p ltlt procesosn

cout ltlt n

103

cout ltlt N S Tiempon

cout ltlt n

n = n_lo

while ( n lt= n_hi )

if ( id == master )

wtime = MPIWtime ( )

MPICOMM_WORLDBcast ( ampn 1 MPIINT master )

primes_part = prime_number ( n id p )

MPICOMM_WORLDReduce ( ampprimes_part ampprimes 1 MPIINT

MPISUM

master )

if ( id == master )

wtime = MPIWtime ( ) - wtime

cout ltlt ltlt setw(8) ltlt n

ltlt ltlt setw(8) ltlt primes

ltlt ltlt setw(14) ltlt wtime ltlt n

n = n n_factor

MPIFinalize ( )

if ( id == master )

cout ltlt n

cout ltlt PRIME_MPI - Procesos maestron

cout ltlt Finalizacion del calculo normaln

return 0

int prime_number ( int n int id int p )

int i

int j

int prime

int total

104

total = 0

for ( i = 2 + id i lt= n i = i + p )

prime = 1

for ( j = 2 j lt i j++ )

if ( ( i j ) == 0 )

prime = 0

break

total = total + prime

return total

void timestamp ( )

define TIME_SIZE 40

static char time_buffer[TIME_SIZE]

const struct tm tm

size_t len

time_t now

now = time ( NULL )

tm = localtime ( ampnow )

len = strftime ( time_buffer TIME_SIZE d B Y IMS p tm )

cout ltlt time_buffer ltlt n

return

undef TIME_SIZE

Page 13: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios

1

Capiacutetulo 1 Introduccioacuten

11 Antecedentes del problema

Sin lugar a duda una de las herramientas maacutes importantes producida en el siglo XX ha sido

la computadora la cual ha provocado cambios vertiginosos en la sociedad y en el progreso de la

misma En la actualidad el entorno estaacute praacutecticamente controlado por las nuevas tecnologiacuteas que

a medida que transcurre el tiempo avanzan sin liacutemites y en ocasiones son utilizadas

incorrectamente provocando dantildeos de grandes dimensiones

Los trascendentales cambios operados en el mundo moderno caracterizados por su

constante desarrollo la acelerada globalizacioacuten de la economiacutea la acentuada dependencia a

almacenar grandes voluacutemenes de informacioacuten y los sistemas que la proveen aunado a grandes

inversiones de las empresas en conocimiento actual y futuro en sistemas de informacioacuten ademaacutes

del potencial que poseen las tecnologiacuteas para cambiar draacutesticamente las organizaciones y las

praacutecticas de negocio asiacute como crear nuevas oportunidades disentildear nuevas estructuras tecnoloacutegicas

basadas en informacioacuten la convierte en un activo codiciable Tales avances hacen permanente el

riesgo en las tecnologiacuteas y nos llevan a pensar en la problemaacutetica sobre la seguridad informaacutetica

La proteccioacuten de datos documentos y control de acceso a la informacioacuten es un tema que

cada diacutea toma maacutes fuerza en las grandes compantildeiacuteas debido a las diferentes praacutecticas de

especialistas tecnoloacutegicos como los son los hackers y crackers que roban informacioacuten vital para

posteriormente sacar provecho de ella

2

ldquoDesde la aparicioacuten de los grandes sistemas aislados hasta nuestros diacuteas en los que el

trabajo en red es lo habitual los problemas derivados de la seguridad de la informacioacuten han ido

tambieacuten cambiando evolucionando pero estaacuten ahiacute y las soluciones han tenido que ir adaptaacutendose

a los nuevos requerimientos teacutecnicos Aumenta la sofisticacioacuten en el ataque y ello aumenta la

complejidad de la solucioacuten pero la esencia es la mismardquo (Mifsud 2012)

Dentro del mundo actual la informacioacuten es denominada un activo importante de una

institucioacuten la cual debe ser protegida para evitar su peacuterdida modificacioacuten o el uso inadecuado de

su contenido

El extraviacuteo o el mal uso de informacioacuten que para alguien es confidencial genera dantildeos y

repercusiones directas relacionadas a la integridad disponibilidad y confidencialidad de los

archivos y a su vez a los duentildeos de dicha informacioacuten

ldquoLa seguridad informaacutetica se distingue por tener dos propoacutesitos de seguridad la Seguridad

de la Informacioacuten y la Proteccioacuten de Datos estos se diferencian debido a que los datos son valores

numeacutericos que soportan la informacioacuten mientras que la informacioacuten es aquello que tiene un

significado para nosotrosrdquo (Gonzaacutelez Agudelo 2014)

La seguridad informaacutetica consiste en asegurar que los recursos del sistema de informacioacuten

(material informaacutetico o programas) de una organizacioacuten sean utilizados de la manera que se decidioacute

3

inicialmente y que el acceso a la informacioacuten alliacute contenida asiacute como su modificacioacuten soacutelo sea

posible a las personas que se encuentren acreditadas y dentro de los liacutemites de su autorizacioacuten

Actualmente hay mucha informacioacuten circulando en internet por ejemplo correos

electroacutenicos publicaciones en Twitter Facebook videos fotos comercio electroacutenico secretos de

estado militares o industriales Lamentablemente dicha red es puacuteblica e insegura dentro de la cual

existen usuarios bien intencionados y muchos mal intencionados Diariamente encontramos

noticias de sitios con intrusiones mal intencionadas (hackeados) clonacioacuten de tarjeta de creacutedito o

imaacutegenes adulteradas Todo lo anterior motiva la necesidad de proteger la informacioacuten a traveacutes de

mecanismos que impidan a los usuarios no autorizados acceder a dicha informacioacuten

4

12 Planteamiento del Problema

Los sistemas de informacioacuten actuales estaacuten relacionados completamente con la exposicioacuten

de su informacioacuten a entidades externas que son ajenas a la organizacioacuten o delegacioacuten a la que

pertenecen

Cuando no se conoce el alcance que tienen los sistemas informaacuteticos ni lo vulnerables que

pueden ser si son expuestos a Internet por los mismos empleados de la organizacioacuten puede darse

ldquofugardquo de informacioacuten hacia el exterior esto los hace vulnerables a eventos y amenazas que

conllevan a riesgos que pueden provocar peacuterdidas tangibles e intangibles las cuales se traducen

en peacuterdidas que en muchos de los casos por decir lo menos seraacuten monetarias

El portal espantildeol de estadiacutesticas statista muestra la cuota de mercado de los principales

sistemas operativos a nivel mundial a fecha de febrero de 2017 seguacuten el nuacutemero de instalaciones

(statista 2017) Windows 10 fue el segundo sistema operativo maacutes instalado con una cuota de

mercado de 253 Esto significa que alrededor de una de cada cuatro computadoras estaacute

gobernado por este sistema operativo Por su parte en el caso de Windows 7 el porcentaje se situacutea

por encima del 45 a pesar de que ya no se vende ninguacuten PC con este sistema operativo Hablando

de manera conjunta los sistemas operativos Windows cuentan con una cuota del mercado global

de 8857

La empresa de seguridad informaacutetica Britaacutenica Avecto informoacute en su Microsoft

Vulnerabilities Report 2017 (Avecto 2017) (reporte 2017 de vulnerabilidades de Windows) un

aumento de vulnerabilidades publicadas del 111 en los uacuteltimos 5 antildeos de las cuales 235 criacuteticas

5

fueron mitigadas removiendo permisos de administrador asiacute como otras muy importantes

enfocadas al Administrador de Cuentas de Seguridad (SAM Security Account Manager por sus

siglas en ingleacutes) la cual es una base de datos almacenada como un archivo del registro en Windows

y que almacena las contrasentildeas de los usuarios en un formato hash (Algoritmos que crean a partir

de una entrada una salida alfanumeacuterica de longitud fija)

6

13 Objetivos

131 Objetivo General A traveacutes de la implementacioacuten de un procedimiento de fuerza

bruta utilizando para ello un cluacutester de alto rendimiento asiacute como software de uso libre lograr

capacidad de procesamiento capaz de vulnerar un sistema de autenticacioacuten nivel C1

132 Objetivos Especiacuteficos

Analizar los diferentes niveles de seguridad de sistemas operativos

Analizar diferentes meacutetodos de criptoanaacutelisis para vulnerar el Administrador de

cuentas de seguridad

Estudiar las teacutecnicas de agrupamiento de computadoras (clustering) para la

obtencioacuten de mayor poder de procesamiento

Implementar un cluacutester de alto rendimiento en el Laboratorio de la Maestriacutea en

Sistemas Computacionales del Instituto Tecnoloacutegico de Acapulco para ejecutar

operaciones de coacutemputo distribuido

7

14 Justificacioacuten

Antes la seguridad de la informacioacuten se realizaba a traveacutes de medios fiacutesicos por ejemplo

una caja fuerte en la cual las personas resguardaban objetos o informacioacuten valiosa para ellos Con

la introduccioacuten de las computadoras y el uso de internet los usuarios comienzan a almacenar

informacioacuten importante dentro de sus equipos por lo que se considera indispensable el uso de

herramientas que brinden proteccioacuten a la informacioacuten que se encuentra resguardada dentro de

eacutestas Los usuarios informaacuteticos suelen enviar informacioacuten por la red en las empresas al realizar

traacutemites o enviar informes a socios jefes entre otros

El resguardo de informacioacuten siempre ha sido importante para los seres humanos con la

diferencia que anteriormente no se contaba con los avances tecnoloacutegicos que tenemos actualmente

puesto que con la introduccioacuten de internet y el uso de dispositivos electroacutenicos se tiene mayor

riesgo de la informacioacuten que en ellos se maneja

La proteccioacuten del contenido de los datos es una necesidad urgente en casi todos los aacutembitos

de la sociedad incluyendo los servicios puacuteblicos y privados por lo que la tecnologiacutea de la

seguridad de los sistemas de cifrado se encuentra de frente a verdaderos retos

15 Hipoacutetesis

A traveacutes de un de fuerza bruta como teacutecnica de criptoanaacutelisis y con la ayuda de una mayor

capacidad de procesamiento mediante la implementacioacuten de agrupamiento de computadoras

(cluacutester) de alto rendimiento seraacute posible encontrar alguna vulnerabilidad dentro del sistema de

administracioacuten de cuentas de seguridad de Windows server 2012

8

16 Alcances y Limitaciones

Esta tesis se centraraacute en el sistema operativo Windows como objeto de estudio al cual se

le realizaraacute el criptoanaacutelisis

La tesis se enfocaraacute en el meacutetodo Beowulf para realizar el agrupamiento de computadoras

asiacute como la distribucioacuten de software libre del sistema operativo Linux Rocks

El nuacutemero de equipos disponibles para poder realizar el agrupamiento es de 17

computadoras hasta lograr el poder de coacutemputo de 800 Gflops

17 Impacto Social Tecnoloacutegico Econoacutemico y Ambiental

La sostenibilidad del presente proyecto seraacute abordada a partir de los siguientes aspectos

171 Impacto social A veces se puede pensar que un cluacutester de alto rendimiento pudiera

no tener alguacuten impacto directo en el medio social pero si nos enfocamos a un punto de vista en

donde gracias a la capacidad de procesamiento de estas maacutequinas han sido parte fundamental en

el desarrollo de proyectos que inciden de manera directa en beneficio de la sociedad en la que

vivimos como lo es la medicina la fiacutesica quiacutemica

Este proyecto busca beneficiar a nuestra sociedad proveyendo su capacidad de

procesamiento en la buacutesqueda de alguna vulnerabilidad en el sistema operativo maacutes utilizado hoy

en diacutea como lo es Windows ademaacutes de que estaraacute disponible para la comunidad cientiacutefica y

9

estudiantil del Instituto Tecnoloacutegico de Acapulco para optimizar tiempo de caacutelculo en futuras

investigaciones

172 Impacto ambiental Green IT tambieacuten conocido como Green Computing o

traducido al espantildeol como Tecnologiacuteas Informaacuteticas Verdes es definido como el estudio y la

praacutectica de disentildear desarrollar usar y disponer de computadoras servidores y diferentes

perifeacutericos tales como monitores impresoras dispositivos de almacenamiento de redes y

comunicaciones eficientemente y efectivamente con un impacto miacutenimo o nulo en el medio

ambiente (Murugesan 2008)

Bajo la premisa anterior este proyecto hace uso de los equipos con los que cuenta

actualmente el laboratorio de la Maestriacutea en Sistemas Computacionales lo cual evitaraacute la

adquisicioacuten de equipo nuevo y por consecuencia desechar el equipo existente evitando desperdicio

electroacutenico Dicho equipo cuenta con un procesador Intel I3 de 4ta generacioacuten lo cual seguacuten el

portal electroacutenico Europa press

ldquoEsta nueva generacioacuten supone el mayor salto en cuanto ahorro energeacutetico de la historia

de Intel asiacute como una mejora en los graacuteficos y nuevas experiencias de usuariordquo (europa press

2013)

Teniendo como base estos dos puntos importantes como lo son la reutilizacioacuten de equipo

y utilizando procesadores de bajo consumo energeacutetico es como este proyecto busca contribuir de

manera positiva con el medio ambiente

10

173 Impacto econoacutemico Actualmente existe una gran necesidad de procesar grandes

cantidades de datos lo cual hace imprescindible disponer de maacutequinas con estas caracteriacutesticas sin

embargo su alta complejidad aunado al gran costo hace que en instituciones de caraacutecter puacuteblico

sea muy complicado conseguir recurso para este fin Sin embargo un cluacutester de alto rendimiento

reutilizaraacute equipo propio evitando asiacute gastos por concepto de adquisicioacuten de equipo siendo de

esta manera viable para instituciones de caraacutecter puacuteblico

18 Metodologiacutea a Utilizar

181 Anaacutelisis Despueacutes de analizar las diferentes metodologiacuteas de clustering se optoacute por

desarrollar e implementar un cluacutester de alto rendimiento (HPC)

182 Disentildeo

1821 Economiacutea Debido a las caracteriacutesticas del equipo con el cual cuenta el Laboratorios

de la Maestriacutea en Sistemas Computacionales los componentes utilizados para este proyecto son

considerados de uso comuacuten y de bajo costo lo cual los hace faacutecilmente reemplazables en caso de

fallo a un costo accesible El equipo es de la marca Acer Aspire modelos AXC-605-M021 lo cual

nos hace tener ventaja y respaldo del fabricante con respecto a hardware geneacuterico

1822 Instalaciones Un cluacutester requiere de un ambiente controlado Esto es una

habitacioacuten especial con sistema de enfriamiento capacidad suficiente de carga eleacutectrica control

de humedad y un ambiente libre de polvo Ademaacutes se deben considerar el peso del equipo sobre

el piso (ya sea falso o piso normal) Se recomienda colocarlo en los soacutetanos o en la plata baja de

edificios (Rocha Quezada Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

11

En el laboratorio de la Maestriacutea en Sistemas Computacionales se cuenta con espacio que

reuniacutea la mayoriacutea de las caracteriacutesticas requeridas para este proyecto

1823 Escalabilidad Un cluacutester debe ser faacutecilmente escalable y a su vez confiable Por

tal motivo se ha utilizado equipo de marca lo cual nos proporciona maacutes de confiabilidad en su

desempentildeo y a su vez facilidad de aumentar el nuacutemero de equipos si en un futuro fuese necesario

agrandar este proyecto Se armoacute un cluacutester de cinco computadoras con procesadores Intel Core I3

de 64 bits en cada nodo La memoria incluida y perifeacutericos son faacuteciles de adquirir en el mercado

1824 Red En la parte de redes se utilizoacute un switch fast Ethernet con una velocidad de 1

Gbps el cual tiene tazas de transferencia raacutepida y el costo es notablemente maacutes econoacutemico que

uno de fibra oacuteptica

El cableado seleccionado fue el estaacutendar UTP de cobre con la norma Gigabit Ethernet de

IEEE 8023ab con la categoriacutea de cableado 6e que soporta tazas de transferencia de datos de

1000Base T (1 Gbps)

1825 Software

ldquoEl sistema operativo debe constar con servicios dedicados para compartir y respaldar

archivos asiacute como capacidad de acceder a los datos de trabajo raacutepidamente El sistema operativo

debe tambieacuten proveer servicios de monitoreo y reporte de fallas en el sistemardquo (Rocha Quezada

Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

12

Existe una gran variedad de software para instalar cluacutester de alto rendimiento sin embargo

como se ha comentado con anterioridad el costo de adquisicioacuten debe ser accesible por tal motivo

se optoacute por una distribucioacuten con licencia GNU de Linux Rocks Cluster la cual es una distribucioacuten

sencilla de instalar y configurar en comparacioacuten con otras distribuciones analizadas dicha

distribucioacuten estaacute basada en CentOS que a su vez estaacute basada en la conocida distribucioacuten de Linux

Red Hat

1826 Almacenamiento Para este proyecto no se requeriraacute un gran espacio de

almacenamiento por tal motivo los equipos utilizados tanto maestro como esclavos mantuvieron

sus unidades de disco originales las cuales son de 1 TB de almacenamiento

183 Implementacioacuten La implementacioacuten del cluacutester de alto rendimiento fue realizada

dentro de las instalaciones del Laboratorio de la Maestriacutea en Sistemas Computacionales del

Instituto Tecnoloacutegico de Acapulco construido inicialmente para este proyecto de criptoanaacutelisis lo

cual requeriraacute suficiente capacidad de procesamiento para poder implementar ataques de fuerza

bruta a sistemas operativos Las caracteriacutesticas del cluacutester construido son

1831 Software El software instalado en cada uno de los nodos es el siguiente

bull Sistema operativo Rocks Cluacutester Linux 74 (64 bits)

bull Libreriacutea de manejo de mensajes Open-MPI 153

bull Software de monitoreo Ganglia

13

1832 Hardware El cluacutester estaacute compuesto de 17 equipos con las siguientes

caracteriacutesticas

bull Nodo Maestro y 16 Nodos Esclavos

- Procesador Intel Core I3 4150 (4 nuacutecleos) Memoria 6 GB Disco Duro SATA 1 TB

tarjeta de Red Gigabit Ethernet

El hardware adicional es el siguiente

bull Interconexioacuten de Red

bull Switch Cisco 26 puertos 1Gbps modelo SG200 Red interna

1833 Recursos totales del cluacutester

bull Nuacutecleos de unidades de procesamiento (cores) 68

bull Capacidad en memoria 92 GB

bull Capacidad en disco 17 TB

19 Aseguramiento Teacutecnico ndash Material

A continuacioacuten se muestra el desglose del equipo utilizado para la elaboracioacuten de un

cluacutester de alto rendimiento estos componentes consisten en Hardware y Software especializado

asiacute como los costos de produccioacuten y personal involucrados en la metodologiacutea y elaboracioacuten del

proyecto

Costos de Hardware

Costos de Software

14

191 Hardware En este punto se refleja el costo de los dispositivos y herramientas a nivel

fiacutesico las cuales sirvieron para la implementacioacuten del proyecto cluacutester de alto rendimiento Cabe

resaltar que el equipo utilizado forma parte del inventario actual del Laboratorio motivo por el

cual su utilizacioacuten no causoacute erogacioacuten alguna sin embargo la investigacioacuten de costos se realizoacute

con la finalidad que el lector pueda establecer comparativas y buscar alternativas en caso de ajuste

de presupuesto

1911 Equipo de coacutemputo El equipo de coacutemputo utilizado consta de diecisiete

computadoras las cuales serviraacuten una para Nodo Maestro y las dieciseacuteis restantes como Nodos

Esclavos

La descripcioacuten de estos equipos se muestra en la tabla a continuacioacuten mostrando los costos

de todos los equipos utilizados dentro del proyecto

15

Tabla 11 Costo del Proyecto

Modelo

Cantidad

Caracteriacutesticas

Costos

PC - Acer AXC-

605

17

Procesador Intel Core i3

Pantalla 156rdquo

Disco duro 1TB HDD

RAM 6GB

Salida HDMI

Tarjeta de graacuteficos INTEGRADA

Lector de CD

Los costos en el mercado de una PC de

escritorio con estas caracteriacutesticas tiene un

valor aproximado de $600000 pesos

(Moneda nacional Mexicana)

Switch Cisco

Gigabit Ethernet

1

Modelo SG200 de 26 puertos

Costo en el mercado alrededor de

$2000000 pesos MN

Total

12200000 pesos MN

16

Capiacutetulo 2 Estado del Arte

Tiacutetulo del Trabajo Introduccioacuten a la Criptografiacutea

Autor Gibraacuten Granados Paredes

Fecha Julio 2010

Lugar Ciudad de Meacutexico

Publicado en Coordinacioacuten de Publicaciones Digitales DGSCA-UNAM

httpwwwrevistaunammxvol7num7art55int55htm

Siacutentesis Cuando se desea tener seguridad hablando en aacutembitos informaacuteticos la

criptografiacutea es una herramienta muy uacutetil el autor lo entiende tambieacuten como un medio para

garantizar las propiedades de confidencialidad integridad y disponibilidad de los recursos de un

sistema

Con la criptografiacutea se puede garantizar las propiedades de integridad y confidencialidad

pero hay que saber coacutemo utilizarla para ello es importante tener claros los conceptos baacutesicos que

estaacuten detraacutes de los sistemas criptograacuteficos modernos Estos conceptos van desde entender queacute es

la criptografiacutea coacutemo estaacute clasificada entender el funcionamiento baacutesico de algunos sistemas de

cifrado y conocer coacutemo se forman los documentos digitales como firmas y sobres digitales

Resultados El autor realiza un viaje por un gran nuacutemero de conceptos utilizados en

criptografiacutea el inicio y la clasificacioacuten de la misma asiacute como la criptografiacutea claacutesica y moderna y

analiza de manera breve algunos meacutetodos de cifrado maacutes comunes

17

Tiacutetulo del Trabajo Criptoanaacutelisis sobre meacutetodos claacutesicos de cifrado

Autores Sebastiaacuten Goacutemez Juan David Arias Diego Agudelo

Fecha 2 de mayo 2013

Lugar Ciudad de Meacutexico

Publicado en Scientia et Technica Antildeo XVII No 50 abril de 2012

Siacutentesis Los algoritmos criptograacuteficos utilizados desde la antigua Roma hasta nuestros

diacuteas son meacutetodos que convierten un mensaje de texto plano a cifrado al proceso inverso se le

conoce como descifrar Este artiacuteculo realiza un estudio de algunas teacutecnicas de encriptacioacuten claacutesicas

del siglo pasado como lo son el cifrado de Cesar y el cifrado de Vigeneacutere asiacute como muestra

teacutecnicas baacutesicas y modernas de criptoanaacutelisis basadas en la teoriacutea de la informacioacuten y estadiacutestica

como lo son la entropiacutea y el ataque de maacutexima correlacioacuten Las teacutecnicas de criptoanaacutelisis descritas

anteriormente pueden ser usadas en otros meacutetodos de cifrado siempre y cuando esteacuten presentes las

mismas debilidades

Resultados Los autores implementaron en lenguajes de programacioacuten Python un

algoritmo para el caacutelculo de entropiacutea para diferentes longitudes de clave Para la implementacioacuten

de los algoritmos de cifrado y descifrado de Vigeneacutere y de maacutexima correlacioacuten utilizaron lenguaje

de programacioacuten C++ Se probaron los meacutetodos anteriormente descritos sobre textos planos de

diferentes longitudes logrando un resultado de 9385 de efectividad en promedio

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de dos de los

algoritmos de encriptacioacuten maacutes antiguos y baacutesicos pero sobre todo que conociendo los meacutetodos

de criptoanaacutelisis me permitiraacuten analizar debilidades y fortalezas de algoritmos

18

Tiacutetulo del Trabajo ULTRACOM Computacioacuten de Alto Rendimiento para Criptoanaacutelisis

Autor Antonio Castro Lechtaler Alejandro Repetto Martiacuten Bianchi Marcelo Cipriano

Alejandro Arroyo Arzubi Ceacutesar Cicerchia Eduardo Malvacio

Fecha octubre 2014

Lugar Buenos Aires Argentina

Publicado en XX Congreso Argentino de Ciencias de la Computacioacuten (Buenos Aires

2014)

Siacutentesis La generacioacuten de nuacutemeros primos fundamentales para la produccioacuten de claves

el anaacutelisis de secuencias pseudo-aleatorias los procesos de verificacioacuten y validacioacuten de algoritmos

de seguridad en un sentido geneacuterico requieren enormes cantidades de procesamiento Los

procesos relacionados con la matemaacutetica criptograacutefica se caracterizan por la alta necesidad de

coacutemputo El objetivo de ULTRACOM es desarrollar una computacioacuten distribuida multipropoacutesito

que permita como primera aplicacioacuten real el anaacutelisis la validacioacuten y la ejecucioacuten de pruebas de

estreacutes sobre sistemas criptograacuteficos El presente trabajo de investigacioacuten detalla el proceso de

desarrollo de ULTRACOM y muestra un ejemplo de su implementacioacuten en una versioacuten Beta Para

ello toman como entrada dos versiones del algoritmo Trivium Utilizando la misma

infraestructura y sin desarrollo extra se prueban grandes voluacutemenes de claves y vectores de

inicializacioacuten de los algoritmos en busca de secuencias deacutebiles de menor longitud que la de la

buscada

Resultados El equipo implementoacute una versioacuten beta de la plataforma ULTRACOM

comprobando la factibilidad y viabilidad teacutecnica de la generalizacioacuten de la infraestructura de

computacioacuten distribuida en grilla (malla) BOINC Este avance permite extender los horizontes de

BOINC y habilita la posibilidad de obtener la capacidad de coacutemputo de alto rendimiento a bajo

19

costo Concluyeron que ULTRACOM es un proyecto viable escalable y de alto impacto para la

evaluacioacuten y validacioacuten de algoritmos criptograacuteficos

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento y la

implementacioacuten de una arquitectura de computacioacuten distribuida y una vez siendo factible su

desarrollo utilizar su poder de coacutemputo atacando a traveacutes de un algoritmo un sistema criptograacutefico

20

Tiacutetulo del Trabajo Criptografiacutea Cuaacutentica

Autor M Baig

Fecha 2010

Lugar Barcelona Espantildea

Siacutentesis En este artiacuteculo el autor realiza una breve introduccioacuten a la criptografiacutea claacutesica y

la relacioacuten que existe con la teoriacutea de la informacioacuten de Shannon la cual asegura que el cifrado

digital simeacutetrico es secreto y perfecto siempre y cuando se cumplan los tres requisitos

1 La llave ha de ser aleatoria

2 La llave debe usarse soacutelo una vez

3 La llave ha de ser tan larga como el mensaje y de un solo uso debe de estar en posesioacuten

tanto del emisor como del receptor

El punto 3 es el maacutes complicado de cumplir debido a la forma de compartir la llave entre

el emisor y receptor

Maacutes adelante en el artiacuteculo se hace un anaacutelisis sobre otra teacutecnica de criptografiacutea que es el

cifrado digital asimeacutetrico en la que se estudia coacutemo funcionan las llaves privadas y puacuteblicas asiacute

como el meacutetodo de criptograacutefico RSA

Resultados

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento maacutes profundo de

los meacutetodos de criptografiacutea simeacutetricos y asimeacutetricos especiacuteficamente el algoritmo asimeacutetrico

RSA

21

Tiacutetulo del Trabajo La Criptografiacutea Maderista en la Revolucioacuten Mexicana (1910-1911)

Criptoanaacutelisis de una carta cifrada por Gabriel Leyva Solano

Autor Roberto Narvaacuteez

Fecha 2011

Lugar Meacutexico DF

Siacutentesis Este trabajo aborda temas relacionados con las comunicaciones secretas del

movimiento revolucionario comandado por Francisco I Madero a partir de 1910 Se compone de

dos partes la primera es una breve resentildea criacutetica de ejemplos criptograacuteficos del maderismo que

fueron generados entre 1910 y 1911 la segunda describe paso a paso el criptoanaacutelisis que aplicoacute

el autor Roberto Narvaacuteez para desencriptar una carta parcialmente cifrada de Gabriel Leyva Solano

a Francisco I Madero

Resultados El propoacutesito general uacuteltimo es contribuir al conocimiento de la criptografiacutea

mexicana en el siglo XX En lo particular se trata de poner a disposicioacuten de los estudiosos el

contenido completo de la carta de Leyva Solano por primera vez despueacutes de 100 antildeos y al mismo

tiempo someter a la criacutetica teacutecnica e histoacuterica el procedimiento criptoanaliacutetico puesto en operacioacuten

para recuperar el texto plano

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados en nuestro paiacutes sobre formas y meacutetodos de encriptacioacuten durante la Revolucioacuten

Mexicana incluso mucho antes de la 2ordf Guerra mundial momento donde se registroacute un auge

importante dentro de la criptografiacutea moderna

22

Tiacutetulo de Tesis Anaacutelisis de la programacioacuten concurrente sobre la cpu y gpu en el

desarrollo de fractal build

Autor Joseacute Vicente Anilema Guadalupe

Fecha 2012

Lugar Riobamba Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la geometriacutea euclidiana debido a que

el autor realiza una aplicacioacuten que crea paisajes fractales lo que significa crear un paisaje con una

misma figura geomeacutetrica Lo anterior se traduce en una necesidad de gran poder de coacutemputo para

realizar de una manera eficaz la tarea Dentro de la tesis el autor realiza diversos estudios

comparativos entre el procesamiento serializado realizado por una CPU (unidad central de

procesamiento) y procesamiento paralelizado realizado por una GPU (Unidad grafica de

procesamiento) a traveacutes de diversas herramientas para obtener el mejor aprovechamiento de los

recursos

Resultados El autor concluye que es necesario examinar los algoritmos a utilizar para que

estos puedan ser utilizados en coacutemputo paralelo Ademaacutes de que es necesario aprender ciertas

herramientas a utilizar para aprovechar al maacuteximo el coacutemputo distribuido y no desperdiciar el

poder de procesamiento muy superior que las GPUrsquos nos pueden brindar

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados para medir y comparar la velocidad de procesamiento de la unidad central de

procesamiento (CPU) y la unidad graacutefica de procesamiento (GPU) Asiacute como la medida en Flops

(Operaciones de punto flotante por segundo)

23

Tiacutetulo del Trabajo Arquitectura cluacutester de alto rendimiento utilizando herramientas de

software libre

Autores Leonardo Chiquiguanca Edyson Malla Freddy Ajila Rene Guamaacuten-Quincheacute

Fecha mayo 2015

Lugar Loja Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la gran cantidad de datos que tienen

que procesar las universidades puacuteblicas dentro de sus investigaciones realizadas en diferentes aacutereas

como la ingenieriacutea medicina etc y la carencia de recursos econoacutemicos para obtener

supercomputadoras que procesen dicha informacioacuten Los autores proponen dentro de su

investigacioacuten la utilizacioacuten de equipo de coacutemputo existente dentro de su universidad y por medio

de software libre realizar agrupamiento de computadoras para poder lograr el procesamiento de

grandes voluacutemenes de datos de una manera accesible

Resultados Los autores concluyen que la mejor arquitectura para el agrupamiento

(cluacutester) de computadoras en ambientes universitarios es la arquitectura Beowulf debido a que la

implementaron en hardware convencional existente dentro de su campus universitario y que

ademaacutes usaron software libre mencionando que el poder de coacutemputo logrado fue muy cercano al

de una supercomputadora

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de las teacutecnicas

utilizadas en ambientes universitarios para la realizacioacuten de agrupamiento de computadoras y

sobre todo la optimizacioacuten de costos para realizar dicha tarea y tener como finalidad el lograr

mayor capacidad de procesamiento

24

Tiacutetulo de Tesis Desarrollo de un algoritmo de cifrado simeacutetrico de resumen

Autores Jonathan Dave Orjuela Navarrete

Antildeo 2008

Lugar Bogotaacute DC

Siacutentesis Esta tesis realiza un estudio de varios meacutetodos de criptografiacutea simeacutetrica para

posteriormente utilizando diferentes foacutermulas matemaacuteticas crear un algoritmo criptograacutefico

nuevo Dentro de la tesis utiliza dos meacutetodos para realizar pruebas a su algoritmo criptoanaacutelisis

diferencial y criptoanaacutelisis basado en fallos de hardware Dentro de los cuales hace un estudio

detallado de las teacutecnicas y herramientas de criptoanaacutelisis realizado a su algoritmo

Resultados El autor concluye de manera positiva con la realizacioacuten del algoritmo y de

manera satisfactoria con la realizacioacuten de criptoanaacutelisis a su algoritmo pudiendo demostrar la

fortaleza del algoritmo a traveacutes de ejemplo de cifrado con textos claro muy parecido y su

conversioacuten a cadenas completamente diferentes

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de criptoanaacutelisis diferencial y criptoanaacutelisis basado en fallos de hardware para la

evaluacioacuten de algoritmos de cifrado simeacutetrico de textos claros

25

Tiacutetulo del Trabajo Firt step in a Pc cluster development with openMosix

Autores Javier Bilbao Gorka Garate

Antildeo 2008

Lugar Bilbao Spain

Siacutentesis En este trabajo se afirma que es posible hacer maacutequinas de alta capacidad de

caacutelculo mediante la interconexioacuten de equipos con redes de alta velocidad A este tipo de sistemas

se les llama sistemas distribuidos y hoy en diacutea es la tecnologiacutea maacutes utilizada para resolver

problemas que requieren una gran capacidad de caacutelculo La agrupacioacuten de computadoras permite

que varias computadoras trabajen juntas para resolver los problemas de informaacutetica comuacuten Este

artiacuteculo centra su estudio en uno de los diferentes meacutetodos de agrupamiento de computadoras

openMosix El trabajo tambieacuten evaluacutea el cluacutester por dos casos de estudio donde se mejora el

tiempo de ejecucioacuten de los problemas resueltos

Resultados El autor del artiacuteculo concluye con la realizacioacuten satisfactoria de agrupamiento

de computadoras bajo el meacutetodo openMosix el cual uacutenicamente permite agrupamiento de la forma

SSI (Single System Image) que se refiere a que uacutenicamente se puede realizar el agrupamiento con

todos los nodos ejecutando un mismo sistema operativo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras openMosix ventajas desventajas y dificultades para

su implementacioacuten

26

Tiacutetulo del Trabajo Disentildeo e implementacioacuten de un cluacutester tipo Beowulf para el desarrollo

de coacutemputo cientiacutefico avanzado

Autores Edgar Rubeacuten Gonzaacutelez Ramiacuterez Abimael Rodriacuteguez Saacutenchez

Antildeo 2008

Lugar Instituto Politeacutecnico Nacional Meacutexico DF

Siacutentesis Este trabajo de tesis ha desarrollado e implementado una herramienta

computacional llamada Cluster Beowulf para mejorar la programacioacuten paralela Comenzando

con la memoria compartida y distribuida el autor implemento el agrupamiento tipo Beowulf

pensando en procesamiento paralelo la optimizacioacuten de las fuentes informaacuteticas El disentildeo se

construye mediante una distribucioacuten Linux Fedora Core 6 a 64 bits utilizando todas las ventajas

que ofrece el estaacutendar Gigabyt Ethernet La programacioacuten paralela fue desarrollada en lenguaje C

tanto para MPI como para OPENMP

Resultados El autor del artiacuteculo concluye que de acuerdo con los resultados el tiempo

de procesamiento se redujo con el uso muacuteltiples nuacutecleos mejoroacute hasta ocho veces gracias al

multihilo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras Beowulf y su implementacioacuten en sistemas operativos

de uso libre Linux distribucioacuten Fedora 6

27

Marco Teoacuterico

21 Seguridad de la Informacioacuten

La Seguridad de la Informacioacuten consiste y hace referencia a la proteccioacuten de cualquier

amenaza para salvaguardar los activos fijos y en especial toda informacioacuten de la cual estaacute basada

la continuidad de las operaciones de la empresa sean estas ocasionadas dentro o fuera de la misma

con esto se logra disminuir los dantildeos y perjuicios que estas amenazas causariacutean a la organizacioacuten

y a la vez aumentar las oportunidades de servicio hacia otras empresas

La Seguridad de la informacioacuten se consigue mediante la implementacioacuten de controles

efectivos que pueden ser normas manual de funciones buenas praacutecticas procedimientos

estructuras organizativas funciones de software y hardware planes de contingencia y herramientas

que se encargan de proteger la privacidad e integridad de la informacioacuten que se almacena en un

sistema informaacutetico Estos controles necesitan continuamente ser establecidos monitoreados

revisados y mejorados en donde sea necesario para asegurar que se cumplan los objetivos

especiacuteficos de seguridad en cada aacuterea de negocio de la organizacioacuten

La seguridad informaacutetica es en realidad una rama de la seguridad de la informacioacuten aunque

de forma praacutectica algunos autores suelen utilizar de manera indistinta ambos teacuterminos

211 Objetivo de la seguridad de la informacioacuten En la seguridad de la informacioacuten

sabiendo que dichos procesos de seguridad permiten proteger el recurso maacutes importante y valioso

de una organizacioacuten partiendo como principio fundamental los procesos de aseguramiento el

28

objetivo del proceso de seguridad informaacutetica es obtener un nivel aceptable de seguridad ya que

la informacioacuten es lo maacutes valioso que tiene una institucioacuten o empresa por lo tanto esta debe ser

protegida para que no sea vulnerable y utilizada para fines maliciosos

212 Principios de la seguridad informaacutetica

Confidencialidad Los datos solo deben ser conocidos y accedidos por quienes esteacuten

autorizados durante su almacenamiento procesamiento o trasmisioacuten Verificar y certificar que solo

los usuarios con accesos autorizados puedan acceder a la informacioacuten

Integridad Los datos solo pueden ser modificados y eliminados por quienes esteacuten

autorizados para ello es decir los sistemas y aplicaciones solo deben ser operados por personal

autorizado

Disponibilidad Los sistemas que almacenan datos e informacioacuten deben garantizar su

acceso cuando asiacute se requiera por quienes tengan derecho a ello

213 Caracteriacutesticas de seguridad informaacutetica

Control Solo los usuarios autorizados deciden cuaacutendo y coacutemo permitir el acceso a la

informacioacuten

Auditoriacutea Establece las acciones cuaacutendo las implementa y quieacuten las realiza sobre el

sistema

Autenticidad Define que la informacioacuten necesaria es correcta utilizable y vaacutelida en tiempo

y forma

No Repudio Su funcioacuten es evitar que alguna entidad que envioacute o recibioacute informacioacuten

alegue que no lo hizo

29

214 Formas de Autenticacioacuten

Contrasentildea Una contrasentildea es un tipo de seguridad informaacutetica ya que es una serie de

caracteres secretos que permiten a un usuario tener acceso a un archivo equipo de coacutemputo o

programa y negar el acceso a usuarios no autorizados

Certificado digital Es un tipo de seguridad informaacutetica que permite la firma digital

electroacutenica que garantiza teacutecnica y legalmente la identidad de una persona en Internet

Autenticacioacuten HTTP Tipo de seguridad informaacutetica que delega la autenticacioacuten de

usuarios a un servidor a traveacutes de Kerberos

215 Ciber-seguridad Con los avances tecnoloacutegicos y la demanda que ha causado en ello

existe un elevado iacutendice de informacioacuten personal y empresarial que circula y se mantiene en la red

por la utilizacioacuten del internet esto permite que toda informacioacuten quede expuesta a cualquier ataque

de ciber-delincuentes los cuales buscan la manera de vulnerar cualquier sistema para espiar robar

informacioacuten o hacer dantildeo de cualquier tipo por lo que se ha visto la necesidad de tomar medidas

de seguridad para salvaguardar la informacioacuten ya que es muy importante

La ciberseguridad es la proteccioacuten de los sistemas conectados a Internet incluidos el

hardware el software y los datos de los ciberataques En un contexto informaacutetico la seguridad

comprende la ciberseguridad y la seguridad fiacutesica ambas son utilizadas por las empresas para

proteger contra el acceso no autorizado a los centros de datos y otros sistemas de coacutemputo El

objetivo de la ciberseguridad es limitar el riesgo y proteger los activos de Tecnologiacuteas de

Informacioacuten de los atacantes con intenciones maliciosas La seguridad de la informacioacuten estaacute

30

disentildeada para mantener la confidencialidad integridad y disponibilidad de los datos es un

subconjunto de la ciberseguridad

22 Criptografiacutea

La Criptografiacutea tambieacuten llamada ldquoescritura ocultardquo tradicionalmente en el aacutembito de

criptografiacutea es donde se ocupan las teacutecnicas de cifrado o codificacioacuten que permiten alterar el

contenido de cierta informacioacuten o mensajes con el fin de hacerlos ininteligibles a receptores o

personas no autorizadas (Meneacutendez-Barzanallana 17)

Actualmente la criptografiacutea se encarga de analizar algoritmos protocolos y sistemas que

son utilizados para proveer seguridad a las comunicaciones informacioacuten y a las entidades que se

comunican entre siacute

221 Tipos de Criptografiacuteas

2211 Tablas Hash Un hash o funcioacuten hash toma un grupo de caracteres (llamado clave)

y lo asigna a un valor de cierta longitud (llamado valor hash o hash) El valor hash es representativo

de la cadena de caracteres original pero normalmente es maacutes pequentildeo que el original

El hash tambieacuten es utilizado en el cifrado y descifrado de firmas digitales La funcioacuten hash

transforma la firma digital luego tanto el valor hash como la firma se enviacutean al receptor El

receptor utiliza la misma funcioacuten hash para generar el valor hash y luego lo compara con el recibido

31

en el mensaje Si los valores hash son los mismos es probable que el mensaje se haya transmitido

sin errores

Un ejemplo de una funcioacuten hash se llama plegado(folding) Esta toma un valor original lo

divide en varias partes luego agrega las partes y usa los uacuteltimos cuatro diacutegitos restantes como

valor o clave hash

2212 Tipos de algoritmos Hash

22121 SHA - 1 (Secure Hash Algorithm) Es un algoritmo criptograacutefico de Hash

publicado por el gobierno de los Estados Unidos Genera un valor Hash de 160 bits a partir de una

secuencia de longitud arbitraria Es considerado lo suficientemente seguro para aplicaciones

praacutecticas pero hay disponibles versiones maacutes robustas SHA - 256 SHA - 384 y SHA - 512 que

generan valores Hash de 256 384 y 512 bits respectivamente estas versiones reemplazaraacuten a SHA

- 1 mientras se siga trabajando sobre ellas (Borghello 2009)

22122 MD5 (Message Digest Algorithm) En criptografiacutea MD5 es una funcioacuten hash

criptograacutefica ampliamente utilizada con un valor hash de 128 bits Como estaacutendar de Internet (RFC

1321) MD5 se ha empleado en una amplia variedad de aplicaciones de seguridad y tambieacuten se

usa comuacutenmente para verificar la integridad de los archivos Un hash MD5 generalmente se

expresa como un nuacutemero hexadecimal de 32 diacutegitos

MD5 es una versioacuten reforzada de MD4 Al igual que MD4 el hash MD5 fue inventado por

el profesor Ronald Rivest del Massachusetts Institute of Technology (MIT) Ademaacutes MD5 se

32

utilizoacute como modelo para SHA-1 ya que comparten muchas caracteriacutesticas comunes MD5 y

SHA-1 son los dos algoritmos hash maacutes utilizados en la actualidad aunque el uso de MD5 ha

disminuido ya que ahora se considera roto (Borghello 2009)

22123 RIPEMD ndash 160 Es una funcioacuten hash criptograacutefica basada en la construccioacuten

Merkle-Damgaringrd (MD) Se usa en el estaacutendar de Bitcoin Es una versioacuten reforzada del algoritmo

RIPEMD que produce un resumen de hash de 128 bits mientras que el algoritmo RIPEMD-160

produce una salida de 160 bits La funcioacuten de compresioacuten consta de 80 etapas formadas por 5

bloques que se ejecutan 16 veces cada uno Este patroacuten se ejecuta dos veces con los resultados

combinados en la parte inferior utilizando la adicioacuten del moacutedulo 32 (Borghello 2009)

22124 Funcioacuten Merkle-Damgaringrd La construccioacuten MD es una metodologiacutea para crear

funciones hash resistentes a colisiones a partir de funciones de compresioacuten unidireccionales Ralph

Merkle la propuso en el antildeo de 1979 en ldquoA certified Digital Signaturerdquo posterior a este estudio

Ivan Damgaringrd demostroacute de manera independiente que la estructura era soacutelida (Merkle amp

Damgaringrd sf)

2213 Cifrado simeacutetrico Los cifrados simeacutetricos son los cifrados criptograacuteficos maacutes

antiguos y maacutes utilizados En un cifrado simeacutetrico la clave que descifra el texto cifrado es la

misma (o puede derivarse faacutecilmente) de la clave que cifra el texto claro Esta clave a menudo se

conoce como la clave secreta Los cifrados simeacutetricos maacutes utilizados son DES y AES

La problemaacutetica que surge es la seguridad de la clave

33

El emisor cifra el mensaje con una clave

Enviacutea el mensaje cifrado de tal manera que nadie puede descifrarlo sin dicha clave

El receptor obtiene la clave y entonces puede descifrar el mensaje con la misma clave

que recibioacute del emisor

Algunos algoritmos de este tipo son

22131 RC5 (Cifrado de Rivest) Es un algoritmo de cifrado de bloque de clave simeacutetrica

disentildeado por Ron Rivest en 1994 Se destaca por ser simple raacutepido (debido a que usa solo

operaciones de coacutemputo primitivas como XOR o shift) y ademaacutes por consumir menos memoria

RC5 es un cifrado de bloques y aborda dos bloques de palabras a la vez Dependiendo del

tamantildeo del bloque de texto sin formato nuacutemero de rondas y tamantildeo de clave se pueden definir

varias instancias de RC5 y cada instancia se denota como RC5-w r b donde w = tamantildeo de

palabra en bits r = nuacutemero de rondas y b = tamantildeo de la clave en bytes (Pawar 2016)

Como se ha mencionado RC5 utiliza bloques de 2 palabras el tamantildeo del bloque de texto

sin formato puede ser de 32 64 o 128 bits

22132 IDEA (International Data Encryption Algorithm) Baacutesicamente es un algoritmo

de cifrado de bloque simeacutetrico El algoritmo asimeacutetrico utiliza la misma clave para el cifrado y

descifrado Un cifrado de bloque divide el mensaje en bloques cada uno de una longitud fija y

luego cifra cada bloque de forma independiente

34

El tamantildeo de bloque tiacutepico es de 16 bytes de 128 bits Un cifrado de bloque generalmente

operaraacute en bloques o rondas donde se aplica parte de la clave a la ronda Despueacutes de un cierto

nuacutemero de rondas digamos entre 10 y 16 se termina con el texto cifrado para ese bloque

El bloque de texto cifrado tiene exactamente el mismo tamantildeo que el bloque de texto sin

formato 16 bytes Para cada ronda se trabaja en el bloque utilizando una parte de la clave de

cifrado a la que se le llama la clave redonda Muacuteltiples claves redondas se derivan de la clave de

cifrado utilizando para esto un programa de claves

La programacioacuten de claves es un algoritmo que cambia XOR multiplica y realiza otros

tipos de operaciones en la clave de cifrado original para obtener estas claves redondas Bueno si

tengo un bloque de 16 bytes y tengo una clave de 128 bits que tambieacuten es de 16 bytes (Educba

2019)

22133 DES (Data Encryption Standard) El algoritmo DES es el algoritmo de seguridad

maacutes popular Es un algoritmo simeacutetrico lo que significa que se utilizan las mismas claves para

cifrar descifrar datos confidenciales La longitud de la clave es de 8 bytes (64 bits) Entonces

para cifrar descifrar datos el algoritmo DES utiliza una clave de 8 bytes pero 1 byte (8 bits) para

la verificacioacuten de paridad Es un algoritmo de cifrado de bloque por lo tanto el tamantildeo del bloque

de datos del algoritmo DES es de 64 bits Para cifrar descifrar datos el algoritmo DES utiliza la

estructura Feistel Entonces utiliza una ronda para cifrar descifrar datos Aunque el tamantildeo del

35

bloque de datos es de 64 bits el nuacutemero de rondas seraacute de 16 rondas asiacute mismo utilizaraacute diferentes

subclaves para cada ronda por lo tanto el nuacutemero de subclaves seraacute de 16 subclaves

Como se puede observar la clave efectiva es de 56 bits por consiguiente se tiene 256

combinaciones posibles por lo que la fuerza bruta se hace casi imposible (Sanjoy 2015)

2214 Cifrado asimeacutetrico Los cifrados asimeacutetricos tambieacuten se conocen como cifrados

con claves puacuteblicas y privadas Usan dos claves una para el cifrado de mensajes y la otra durante

el descifrado

Un intruso puede encriptar cualquier mensaje usando la clave puacuteblica conocida Los

cifrados asimeacutetricos son por lo tanto vulnerables a los ataques de texto sin formato Los cifrados

con encriptacioacuten de clave puacuteblica deben proporcionar seguridad contra tales ataques Despueacutes de

encriptar dos mensajes con la misma clave puacuteblica el intruso no puede distinguir queacute texto cifrado

estaacute conectado con queacute texto plano Ademaacutes un observador que analiza dos mensajes encriptados

usando el mismo algoritmo y la misma clave puacuteblica no puede distinguir sus textos cifrados

(Kowalczyk 2015)

Los cifrados asimeacutetricos son mucho maacutes lentos que los cifrados simeacutetricos (generalmente

mil veces maacutes lentos) Es una praacutectica comuacuten usar el cifrado de clave puacuteblica solo para establecer

la conexioacuten segura y negociar la nueva clave secreta que luego se utilizaraacute para proteger la

comunicacioacuten mediante cifrado simeacutetrico Ejemplos de este cifrado son

36

22141 DSA (Digital Signature Algorithm - Algoritmo de Firma digital) Es un estaacutendar

del Gobierno Federal de los Estados Unidos para firmas digitales Fue propuesto por el Instituto

Nacional de Estaacutendares y Tecnologiacutea (NIST) en agosto de 1991 para ser usado en su Estaacutendar de

Firma Digital (DSS) en el antildeo de 1993

La primera parte del algoritmo DSA es la generacioacuten de clave puacuteblica y clave privada que

puede describirse como

Se elige un nuacutemero primo q que se llama divisor primo

Se elige otro nuacutemero primo p de modo que pndash1 mod q = 0 p seraacute llamado moacutedulo

primo

Ahora se elige un nuacutemero entero g tal que 1 ltg ltp g q mod p = 1 g = h ((p

ndash 1) q) mod p q tambieacuten se llama moacutedulo de orden multiplicativo de g moacutedulo p

Se elige un nuacutemero entero tal que 0 ltx ltq

Se calcula y como g x mod p

Se empaqueta la clave puacuteblica como p q g y

Por uacuteltimo se empaqueta la clave privada como p q g x

La segunda parte del algoritmo DSA es la generacioacuten de firma y la verificacioacuten de firma

Para generar una firma de mensaje el remitente puede seguir estos pasos

Se genera el resumen del mensaje h utilizando un algoritmo hash como SHA1

Se genera un nuacutemero aleatorio k tal que 0 ltk ltq

37

Se calcula r como (g k mod p) mod q Si r = 0 seleccione una k diferente

Ahora se calcula i de modo que k i mod q = 1 i se llama el inverso multiplicativo modular

de k moacutedulo q

Se calcula s = i (h + r x) mod q Si s = 0 se selecciona una k diferente

Por uacuteltimo se empaqueta la firma digital como r s (Yang 2019)

22142 RSA Encriptacioacuten RSA encriptacioacuten Rivest-Shamir-Adleman tipo de

criptografiacutea de clave puacuteblica ampliamente utilizada para la encriptacioacuten de datos de correo

electroacutenico y otras transacciones digitales a traveacutes de Internet RSA lleva el nombre de sus

inventores Ronald L Rivest Adi Shamir y Leonard M Adleman quienes lo crearon mientras

trabajaban en la facultad del Instituto Tecnoloacutegico de Massachusetts (Simmons 2019)

En el sistema RSA un usuario elige de manera secreta un par de nuacutemeros primos p y q tan

grandes que factorizar el producto n = pq estaacute mucho maacutes allaacute de las capacidades informaacuteticas

proyectadas para la vida uacutetil de los cifrados A partir del antildeo 2000 los estaacutendares de seguridad del

gobierno de EE UU exigen que el moacutedulo tenga un tamantildeo de 1024 bits es decir p y q deben

tener un tamantildeo de aproximadamente 155 diacutegitos decimales por lo que n es aproximadamente un

nuacutemero de 310 diacutegitos Dado que los nuacutemeros duros maacutes grandes que actualmente se pueden

factorizar son solo la mitad de este tamantildeo y dado que la dificultad de factorizar se duplica

aproximadamente por cada tres diacutegitos adicionales en el moacutedulo se cree que los moacutedulos de 310

diacutegitos estaacuten a salvo de factorizar durante varias deacutecadas

38

2215 Cifrado hiacutebrido Es una teacutecnica comuacuten que combina diferentes funciones

criptograacuteficas como el cifrado de bloque Con el cifrado hiacutebrido se pueden cifrar datos firmarlos

o agregar un MAC y enviarlos en un objeto seguro (como una cadena o archivo) a traveacutes de un

canal de comunicacioacuten inseguro (sin un acuerdo clave entre dos partes)

En el sistema de cifrado hiacutebrido el texto plano (sin formato) se divide en tokens Luego

se calcula la longitud de cada ficha Los tokens y sus longitudes se almacenan en una matriz

Posteriormente se aplica el algoritmo Ceacutesar anidado sugerido El texto producido se almacena en

una matriz n x m llamada A Luego la transposicioacuten de esta matriz At se calcula utilizando

nuestra versioacuten revisada del cifrado de transposicioacuten para resolver el problema de secuenciacioacuten

A continuacioacuten el algoritmo RSA revisado se aplica en la matriz producida En el paso final se

aplica el formato de datos textuales usando el coacutedigo ASCII para producir el texto cifrado El

proceso de descifrado se realiza de la misma manera pero en orden inverso (Nahar amp Abu Abbas

2010)

23 Criptoanaacutelisis

El criptoanaacutelisis es el proceso de estudiar sistemas criptograacuteficos para buscar debilidades

o fugas de informacioacuten En general se considera que el criptoanaacutelisis explora las debilidades de

las matemaacuteticas subyacentes de un sistema criptograacutefico pero tambieacuten incluye la buacutesqueda de

debilidades en la implementacioacuten como ataques de canal lateral o entradas de entropiacutea deacutebiles

39

Su funcioacuten es la de conseguir obtener el significado de mensajes creados por medio de

criptografiacutea El objetivo principal del criptoanaacutelisis es opuesto al de la criptografiacutea Tiene como

finalidad encontrar la debilidad de las diferentes teacutecnicas criptograacuteficas para explotarla y de esta

manera reducir o eliminar la seguridad de la teacutecnica criptograacutefica Cualquier intento de

criptoanaacutelisis puede ser llamado ataque Una vez que un atacante logra romper la seguridad que

una teacutecnica criptograacutefica aportaba al sistema se dice que dicho sistema ha sido roto y por lo tanto

dicho ataque tuvo eacutexito

El criptoanaacutelisis es la investigacioacuten de sistemas texto cifrado y cifrados para revelar el

significado oculto o los detalles del sistema mismo El objetivo de este tipo de estudio es descubrir

los aspectos ocultos incluso si la clave o el algoritmo principal no se pueden descifrar Se necesita

una combinacioacuten exitosa de persistencia matemaacuteticas intuicioacuten curiosidad y una computadora

que funcione para hacer un buen criptoanalista Este tipo de ruptura de coacutedigo es extremadamente

importante especialmente en el mundo tecnoloacutegicamente dependiente de hoy El criptoanaacutelisis es

constantemente realizado por criptoacutegrafos que intentan obtener informacioacuten valiosa y por aquellos

que intentan descifrar el coacutedigo para revelar secretos (Security Degree Hub 2017)

24 Niveles de seguridad

Los niveles de seguridad de sistemas operativos son otorgados de acuerdo con el sistema

operativo que esteacute utilizando la empresa o institucioacuten ya sea puacuteblica privada gubernamental o no

gubernamental En el manual ldquoTrusted Computer System Evaluation Criteriardquo (United States

40

Government Department of Defense 1983) el Departamento de Defensa de los Estados Unidos

define los siguientes niveles

241 Nivel D1 Este nivel es el maacutes bajo de seguridad por lo tanto la norma establece que

el sistema no es confiable Esta divisioacuten contiene solo una clase Estaacute reservado para aquellos

sistemas que han sido evaluados pero que no cumplen con los requisitos para un nivel de

evaluacioacuten superior

242 Nivel C1 Un sistema de nivel C1 cumple nominalmente los requisitos de seguridad

discrecionales al proporcionar separacioacuten de usuarios y datos Incorpora alguna forma de controles

creiacutebles capaces de imponer limitaciones de acceso de manera individual es decir aparentemente

adecuados para permitir que los usuarios puedan proteger la informacioacuten privada o del proyecto y

evitar que otros usuarios lean o destruyan accidentalmente sus datos Se espera que el entorno de

nivel C1 sea uno de los usuarios cooperantes que procesan datos con el mismo nivel de

sensibilidad Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten

de nivel C1 son

Control de acceso discrecional por ejemplo listas de control de acceso (ACL)

usuario grupo

Por lo general para usuarios que estaacuten en el mismo nivel de seguridad

Proteccioacuten de nombre de usuario y contrasentildea y base de datos de autorizaciones

seguras (ADB)

Sistema operativo protegido y modo de operaciones del sistema

Comprobacioacuten perioacutedica de integridad de TCB

41

Mecanismos de seguridad probados sin derivaciones obvias

Documentacioacuten para la seguridad del usuario

Documentacioacuten para la seguridad de la administracioacuten de sistemas

Documentacioacuten para pruebas de seguridad

Documentacioacuten de disentildeo TCB

Tiacutepicamente para usuarios en el mismo nivel de seguridad

La certificacioacuten C1 es rara Los sistemas de ejemplo son versiones anteriores de

Unix IBM RACF

243 Nivel C2 Los sistemas de esta clase imponen un control de acceso discrecional maacutes

fino que los sistemas (C1) lo que hace que los usuarios sean individualmente responsables de sus

acciones a traveacutes de procedimientos de inicio de sesioacuten auditoriacutea de eventos relevantes para la

seguridad y aislamiento de recursos Los siguientes son requisitos miacutenimos para los sistemas

asignados a una clasificacioacuten de nivel C2

La proteccioacuten de objetos puede ser para un solo usuario Por ejemplo a traveacutes de

una base de datos ACL

La autorizacioacuten de acceso solo puede ser asignada por usuarios autorizados

Proteccioacuten de reutilizacioacuten de objetos (Por ejemplo para evitar la reasignacioacuten de

objetos eliminados de manera segura)

Procedimientos obligatorios de identificacioacuten y autorizacioacuten para los usuarios (Por

ejemplo Usuario Contrasentildea)

Auditoriacutea completa de eventos de seguridad (es decir fecha hora evento usuario

eacutexito falla ID de terminal)

42

Modo de operacioacuten del sistema protegido

Proteccioacuten adicional para la autorizacioacuten y los datos de auditoriacutea

Documentacioacuten como C1 maacutes informacioacuten sobre el examen de la informacioacuten de

auditoriacutea

Esta es una de las certificaciones maacutes comunes Los sistemas operativos de ejemplo

son VMS IBM OS 400 Windows NT Novell NetWare 411 Oracle 7 DG AOS

VS II

244 Nivel B1 Los sistemas de este nivel requieren todas las caracteriacutesticas requeridas

para el nivel C2 Ademaacutes debe estar presente una declaracioacuten informal del modelo de poliacutetica de

seguridad etiquetado de datos y control de acceso obligatorio sobre sujetos y objetos nombrados

La capacidad debe existir para etiquetar con precisioacuten la informacioacuten exportada Cualquier falla

identificada por la prueba debe ser eliminada Los siguientes son requisitos miacutenimos para los

sistemas asignados a una clasificacioacuten de nivel B1

Etiquetado obligatorio de seguridad y acceso de todos los objetos (Por ejemplo

archivos procesos dispositivos)

Comprobacioacuten de integridad de etiquetas (Por ejemplo mantenimiento de etiquetas

de sensibilidad cuando se exportan datos)

Auditoriacutea de objetos etiquetados

Control de acceso obligatorio para todas las operaciones

Capacidad para especificar el nivel de seguridad impreso en salida legible para

humanos (Por ejemplo impresoras)

43

Capacidad para especificar el nivel de seguridad en cualquier salida legible por

maacutequina

Auditoriacutea mejorada

Proteccioacuten mejorada del sistema operativo

Documentacioacuten mejorada

Los sistemas operativos de ejemplo son HP-UX BLS Cray Research Trusted

Unicos 80 Digital SEVMS Harris CS SX SGI Trusted IRIX

245 Nivel B2 En los sistemas de nivel B2 el TCB se basa en un modelo de poliacutetica de

seguridad formal claramente definido y documentado que requiere que la aplicacioacuten de control de

acceso discrecional y obligatoria que se encuentra en los sistemas de nivel B1 se extienda a todos

los sujetos y objetos en el sistema Ademaacutes se abordan los canales encubiertos El TCB debe

estructurarse cuidadosamente en elementos criacuteticos para la proteccioacuten y no criacuteticos para la

proteccioacuten La interfaz TCB estaacute bien definida y el disentildeo y la implementacioacuten TCB le permiten

someterse a pruebas maacutes exhaustivas y una revisioacuten maacutes completa Se fortalecen los mecanismos

de autenticacioacuten se proporciona una gestioacuten confiable de las instalaciones en forma de soporte

para las funciones de administrador y operador del sistema y se imponen estrictos controles de

gestioacuten de la configuracioacuten El sistema es relativamente resistente a la penetracioacuten Los siguientes

son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de nivel B2

Notificacioacuten de cambios en el nivel de seguridad que afectan a los usuarios

interactivos

Etiquetas de dispositivos jeraacuterquicos

44

Acceso obligatorio a todos los objetos y dispositivos

Comunicaciones de ruta confiables entre usuario y sistema

Rastreo de canales de almacenamiento encubiertos

Modo de operaciones del sistema maacutes estricto en unidades independientes de varios

niveles

Anaacutelisis de canales encubiertos

Pruebas de seguridad mejoradas

Modelos formales de TCB

Versioacuten actualizacioacuten y anaacutelisis y revisioacuten de parches

Los sistemas de ejemplo son Honeywell Multics Cryptek VSLAN Trusted

XENIX

246 Nivel B3 El TCB debe satisfacer los requisitos del monitor de referencia para mediar

todos los accesos de los sujetos a los objetos ser a prueba de manipulaciones y ser lo

suficientemente pequentildeo como para ser sometido a anaacutelisis y pruebas Con este fin el TCB estaacute

estructurado para excluir el coacutedigo que no es esencial para la aplicacioacuten de la poliacutetica de seguridad

con una importante ingenieriacutea del sistema durante el disentildeo y la implementacioacuten del TCB dirigido

a minimizar su complejidad Se admite un administrador de seguridad los mecanismos de

auditoriacutea se ampliacutean para sentildealar eventos relevantes para la seguridad y se requieren

procedimientos de recuperacioacuten del sistema El sistema es altamente resistente a la penetracioacuten

Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de clase

(B3)

45

ACL adicionalmente basadas en grupos e identificadores

Acceso de ruta confiable y autenticacioacuten

Anaacutelisis automaacutetico de seguridad

Modelos TCB maacutes formales

Auditoriacutea de eventos de auditoriacutea de seguridad

Recuperacioacuten confiable despueacutes de la caiacuteda del sistema y documentacioacuten relevante

Cero defectos de disentildeo en TCB y defectos miacutenimos de implementacioacuten

El uacutenico sistema operativo con certificacioacuten B3 es Getronics Wang Federal XTS-

300

247 Nivel A1 Los sistemas en el nivel A1 son funcionalmente equivalentes a los del nivel

B3 en que no se agregan caracteriacutesticas arquitectoacutenicas adicionales ni requisitos de poliacuteticas La

caracteriacutestica distintiva de los sistemas en este nivel es el anaacutelisis derivado de la especificacioacuten

formal del disentildeo y las teacutecnicas de verificacioacuten y el alto grado resultante de seguridad de que el

TCB se implementa correctamente Esta garantiacutea es de naturaleza de desarrollo comenzando con

un modelo formal de la poliacutetica de seguridad y una especificacioacuten formal de alto nivel del disentildeo

Independientemente del lenguaje de especificacioacuten particular o del sistema de verificacioacuten

utilizado existen los siguientes criterios importantes para la verificacioacuten del disentildeo de nivel A1

Meacutetodos formales y prueba de integridad de TCB

Estos son los uacutenicos sistemas con certificacioacuten A1 Boeing MLS LAN Gemini

Trusted Network Processor Honeywell SCOMP (United States Government

Department of Defense 1983)

46

25 Sistemas Operativos

Un sistema operativo actuacutea como intermediario entre el usuario de una computadora y el

hardware de la computadora El propoacutesito de un sistema operativo es proporcionar un entorno en

el que un usuario pueda ejecutar programas de manera conveniente y eficiente

Un sistema operativo es un software que administra el hardware de la computadora El

hardware debe proporcionar mecanismos apropiados para garantizar el correcto funcionamiento

del sistema informaacutetico y para evitar que los programas del usuario interfieran con el correcto

funcionamiento del sistema (Carretero Peacuterez de Miguel Anasagasti Garciacutea Carballeira amp Peacuterez

Costoya 2001)

Un sistema operativo es un programa que controla la ejecucioacuten de programas de aplicacioacuten

y actuacutea como una interfaz entre el usuario de una computadora y el hardware de la computadora

Una definicioacuten maacutes comuacuten es que el sistema operativo es el uacutenico programa que se ejecuta

en todo momento en la computadora (generalmente llamado kernel) y todo lo demaacutes son

programas de aplicacioacuten

Un sistema operativo se ocupa de la asignacioacuten de recursos y servicios como memoria

procesadores dispositivos e informacioacuten El sistema operativo incluye los programas para

administrar estos recursos como un controlador de traacutefico un programador un moacutedulo de

administracioacuten de memoria programas de E S y un sistema de archivos (Pawar 2016)

47

251 Windows Sistema operativo de la empresa Microsoft es un conjunto de programas

que administra los recursos de una computadora Windows empieza a trabajar cuando se enciende

o inicializa el equipo para gestionar el hardware empezando desde los niveles maacutes baacutesicos

Es importante conocer que los sistemas operativos funcionan tanto en las computadoras

como en diferentes dispositivos electroacutenicos que usan microprocesadores En este caso Windows

su versioacuten estaacutendar funciona con computadoras Microsoft domina el mercado de los sistemas

operativos debido a su comodidad se puede decir que eacuteste sistema operativo se encuentra

instalado en el 887 de los equipos de coacutemputo que cuentan con acceso a Internet en todo el

mundo

Se pueden mencionar algunas aplicaciones principales (que eacutestas tambieacuten pueden ser

desinstaladas por los usuarios o actualizadas sin que el sistema operativo se dantildee o deje de

funcionar) se encuentran el procesador de texto WordPad el navegador Internet Explorer el

reproductor multimedia Windows Media y el editor de imaacutegenes Paint

La principal novedad que aportoacute Windows desde sus oriacutegenes fue la facilidad para usarlo

y el atractivo visual De hecho su nombre (ldquoventanasrdquo) se debe a la forma en que el sistema

presenta a los usuarios los recursos con los que cuenta su computadora lo que facilita las tareas

cotidianas Windows tambieacuten suele recibir varias criacuteticas por sus problemas de seguridad y por

otros fallos

48

252 Registro de Windows El registro es una base de datos jeraacuterquica que contiene datos

que son criacuteticos para el funcionamiento de Windows y las aplicaciones y servicios que se ejecutan

en Windows Los datos estaacuten estructurados en un formato de aacuterbol Cada nodo en el aacuterbol se llama

clave Cada clave puede contener subclaves y entradas de datos llamadas valores A veces la

presencia de una clave es el uacutenico dato que requiere una aplicacioacuten otras veces una aplicacioacuten

abre una clave y usa los valores asociados con la clave (Microsoft Inc 2019) Una clave puede

tener cualquier nuacutemero de valores y los valores pueden tener cualquier forma El registro es

utilizado por

Autenticacioacuten

Nuacutecleo (Kernel)

Controladores de dispositivos

Servicios

SAM

Las carpetas del sistema se almacenaraacuten en distintas rutas de acceso dependiendo de la

versioacuten de Windows con la que se esteacute trabajando a continuacioacuten cuatro de los cinco archivos

que maacutes interesan a esta investigacioacuten se encuentran en la siguiente ubicacioacuten SystemRoot

System32 Config dentro de las siguientes sub llaves

SAM - HKEY LOCAL MACHINE SAM

SECURITY - HKEY LOCAL MACHINE SECURITY

SOFTWARE - HKEY LOCAL MACHINE SOFTWARE

SYSTEM - HKEY LOCAL MACHINE SYSTEM

49

253 Administrador de cuentas de seguridad El administrador de cuentas de seguridad

(SAM por sus siglas en ingleacutes) es una base de datos en donde se encuentran las cuentas de

seguridad Esto es utilizado por Windows para administrar las cuentas de usuario y contrasentildeas en

el formato hash

Las contrasentildeas nunca se almacenan en formato de texto claro Se almacenan en formato

de hash para protegerlas de los ataques La base de datos SAM se implementa como un archivo de

registro y las obtiene del kernel de Windows y mantiene un bloqueo exclusivo al archivo SAM

esto quiere decir que el archivo tiene cierta medida de seguridad para el almacenamiento de las

contrasentildeas (Hernandez 2013)

No es posible copiar el archivo SAM a otra ubicacioacuten en el caso de los ataques en liacutenea

Dado que el archivo SAM estaacute bloqueado con un bloqueo exclusivo al sistema de archivos no

puede ser copiado o movido mientras se ejecuta Windows El bloqueo no iniciaraacute hasta que la

excepcioacuten de la pantalla azul haya sido inicializada o el sistema operativo haya sido apagado Sin

embargo los archivos en formato hash de contrasentildeas fuera de liacutenea estaacuten disponibles para los

ataques de fuerza bruta el contenido del archivo SAM puede ser copiado o descargado utilizando

diversas teacutecnicas

Un identificador de seguridad (SID) es un valor uacutenico de longitud variable utilizado para

identificar a un usuario Cada cuenta tiene un SID uacutenico emitido por una autoridad como un

controlador de dominio de Windows y almacenado en una base de datos de seguridad Cada vez

50

que un usuario inicia sesioacuten el sistema recupera el SID para ese usuario de la base de datos y lo

coloca en el token de acceso para ese usuario El sistema usa el SID en el token de acceso para

identificar al usuario en todas las interacciones posteriores con la seguridad de Windows Cuando

se ha usado un SID como identificador uacutenico para un usuario o grupo no se puede volver a usar

para identificar a otro usuario o grupo

La seguridad de Windows usa SID en los siguientes elementos de seguridad

En descriptores de seguridad para identificar al propietario de un objeto y grupo

primario

En las entradas de control de acceso para identificar al usuario para quien el acceso

estaacute permitido denegado o auditado

En tokens de acceso para identificar al usuario y los grupos a los que pertenece

2531 Identificador de Seguridad (SID Security Identifier)

S - 1 - 5 - 21 - 3983109318 - 554656936 - 3066752241 - 1000

S - indica que es un string de SID

1 - el nivel de revisioacuten

5 - el identificador de valor de autoridad o authority value no siempre seraacute 5 Entre otros

valores que se pueden encontrar estaacuten los siguientes

51

0 - sin autoridad

1 - autoridad global

2 - autoridad local

3 - autoridad de creador

4 - autoridad no uacutenica

5 - autoridad NT

9 - autoridad de administrador de recursos

21 - 3983109318 - 554656936 - 3066752241 - es el dominio en el que se encuentra el

sistema o el identificador local de la computadora

1000 - ID uacutenico para cada cuenta aquiacute se encuentra el RID (Relative Identifier) Nuacutemero

de longitud variable cualquier grupo o usuario que se cree de manera diferente a la predeterminada

recibiraacute un RID de 1000 o superior En el caso de que el valor sea 500 responde a que este SID

representa la cuenta de un administrador el valor de 500 siempre seraacute el mismo en cualquier cuenta

de administrador a su vez el valor 501 representa el SID de una cuenta Invitado (Guest)

(Hernandez 2013)

254 Autenticacioacuten NTML NTLM (NT LAN Manager) es un protocolo empleado por

muchos productos de Microsoft para realizar la autenticacioacuten desafiacuteorespuesta por lo tanto es el

esquema de autenticacioacuten que por defecto usa Firewall de Microsoft y tambieacuten los productos del

servidor proxy

52

Este software fue desarrollado para afrontar el problema del trabajo con Tecnologiacuteas Java

en un entorno orientado a Microsoft Puesto que no se basa en ninguna especificacioacuten oficial de

protocolo por lo tanto no hay garantiacutea de que funciona correctamente en todos los casos Tambieacuten

ha estado en algunas instalaciones de Windows donde funcionoacute con eacutexito

La Autenticacioacuten NTLM se compone de dos protocolos protocolo de autenticacioacuten NTLM

y protocolo de autenticacioacuten LM Estos protocolos utilizan una metodologiacutea de hash diferente para

almacenar contrasentildeas de los usuarios en la base de datos SAM (Hernandez 2013) (Meneacutendez-

Barzanallana 17)

26 LINUX (ROCKS)

Rocks es una distribucioacuten para cluacutester de Linux de coacutedigo abierto que permite a los usuarios

finales construir de manera maacutes amigable cluacutesteres computacionales y muros de visualizacioacuten en

mosaico Cientos de investigadores de todo el mundo han utilizado Rocks para implementar su

propio cluacutester

Desde mayo de 2000 el grupo Rocks ha abordado las dificultades de implementar cluacutesteres

manejables Encaminados hacia un objetivo crear cluacutesters de manera maacutes sencilla Por sencilla

significa faacutecil de implementar administrar actualizar y escalar Este objetivo impulsa a los

creadores de esta herramienta a ayudar a entregar el poder computacional de los cluacutesteres a una

amplia gama de usuarios cientiacuteficos Estaacute claro que poner a disposicioacuten de una amplia gama de

53

cientiacuteficos plataformas de computacioacuten paralelas estables y manejables ayudaraacute enormemente a

mejorar el estado del arte en herramientas paralelas (Rocksclusters 2010)

261 Escritorio De todos los escritorios disponibles para el sistema operativo Linux

GNOME ha logrado convertirse en el maacutes eficiente estable y confiable sin dejar de ser sencillo

de usar De hecho la mayoriacutea de los usuarios independientemente de su experiencia pueden

trabajar con GNOME casi sin esfuerzo

Los usuarios que son nuevos tanto en Linux como en GNOME hariacutean mejor en conocer

los entresijos del escritorio que hacen que Linux no solo sea faacutecil sino tambieacuten divertido

Un entorno de escritorio agrupa programas que trabajan juntos para formar un espacio de

trabajo informaacutetico cohesivo unificado transparente e interactivo para los usuarios O para

decirlo de manera maacutes simple el entorno de escritorio es la interfaz de usuario para el sistema

operativo En el caso de GNOME ese sistema operativo es Linux Sin un entorno de escritorio su

uacutenica alternativa es una sesioacuten de Shell (liacutenea de comandos) basada en texto (Wallen 2019)

262 Paquete de Oficina Una suite ofimaacutetica es una coleccioacuten de software creada por el

mismo proveedor y disentildeada para ser utilizada para tareas rutinarias dentro de una organizacioacuten

Por lo general una suite ofimaacutetica incluye aplicaciones como procesamiento de texto hojas de

caacutelculo presentacioacuten correo electroacutenico toma de notas base de datos colaboracioacuten y otros tipos

de software relacionados En la mayoriacutea de los casos cada aplicacioacuten en la suite ofimaacutetica se puede

instalar por separado y todas las aplicaciones dentro de la suite admiten la interoperabilidad entre

54

siacute Microsoft Office Suite Lotus Live Notes y LibreOffice son todas suites de oficina de uso

comuacuten

263 Organizador de archivos Es una funcioacuten avanzada disentildeada para agrupar y

renombrar archivos usando sus atributos del sistema o meta atributos

Cada archivo tiene atributos del sistema como la fecha (Acceso Creado y Modificado) el

tipo de archivo (definido por extensioacuten) y asociado con la aplicacioacuten registrada de ese tipo de

archivo Estos atributos se pueden usar para generar un nuevo nombre de archivo o carpeta (grupo)

para cada archivo con el mismo atributo Ademaacutes de los atributos del sistema algunos archivos

en su mayoriacutea medios o imaacutegenes pueden contener metacampos como el nombre del artista el

tiacutetulo el nombre del aacutelbum y otros El Organizador de archivos tambieacuten usa estos metacampos

para agrupar archivos en una carpeta con el mismo atributo Por lo tanto el organizador de archivos

opera reglas de organizacioacuten de archivos que definen la jerarquiacutea de agrupacioacuten de carpetas y las

reglas de cambio de nombre de archivos

Asiacute como el conocido ldquoexplorador de Windowsrdquo Linux integra un organizador de archivos

y carpetas llamado NAUTILUS para realizar tareas de manejo de archivos como mover copiar

renombrar crear carpetas y de esta manera administrar nuestros dispositivos de almacenamiento

55

27 Agrupamiento (Cluacutester) de Computadoras

El agrupamiento (cluacutester) de computadoras estaacute conformado por una coleccioacuten de

computadoras autoacutenomas interconectadas trabajando unidas como un solo recurso de computacioacuten

integrado El concepto de agrupamiento de computadoras nacioacute cuando los pioneros de la

supercomputacioacuten intentaban difundir diferentes procesos entre varias computadoras para luego

poder recoger los resultados que dichos procesos debiacutean producir Con un hardware maacutes barato y

faacutecil de conseguir se pudo perfilar que podriacutean conseguirse resultados muy parecidos a los

obtenidos con aquellas maacutequinas mucho maacutes costosas (Chirinov 2003)

Un agrupamiento de computadoras se puede definir como el trabajo realizado por dos o

maacutes computadoras que en conjunto se encargan de proveer una determinada solucioacuten Tiene como

finalidad agrupar el poder de coacutemputo de los nodos implicados para proporcionar una mayor

escalabilidad disponibilidad y fiabilidad (Branch Bedoya amp Mesa Muacutenera 2008)

La escalabilidad es la capacidad de un equipo para hacer frente a voluacutemenes de trabajo

cada vez mayores sin por ello dejar de prestar un nivel de rendimiento aceptable

La disponibilidad y la fiabilidad se encuentran bastante relacionadas aunque difieren

ligeramente en algunos aspectos La disponibilidad es la calidad de estar presente y listo para su

uso mientras que la fiabilidad es la probabilidad de un correcto funcionamiento

56

Entre los tipos de agrupamiento maacutes comunes se pueden encontrar de alta disponibilidad

(ambiente a prueba de fallas) coacutemputo de alto desempentildeo (los procesos o las tareas dadas se

presentan como un solo sistema virtual) y escalamiento horizontal (se utiliza para proporcionar

una sola interfaz a un conjunto de recursos que pueden aumentar o disminuir arbitrariamente su

tamantildeo en un cierto periodo de tiempo) (Gonzaacutelez Ramiacuterez amp Rodriacuteguez Saacutenchez 2008)

271 Beowulf Es una clase de computadora masivamente paralela de altas prestaciones

principalmente construida a base de agrupamiento de componentes hardware estaacutendar (Llorens amp

Pentildea 2002) Consta de un conjunto de nodos minimalistas unidos por un medio de

comunicaciones econoacutemico Esto quiere decir que tienen lo miacutenimo para ejecutar su funcioacuten de

hecho los nodos por siacute solos no son capaces de ejecutar siquiera un sistema operativo (Nievas

Pino amp Arroyo) Se puede ver como una supercomputadora paralela construida con hardware

comercial de faacutecil adquisicioacuten que posee como sistema operativo Linux Los cluacutesters Beowulf son

extremadamente poderosos pero no son para todas las personas Su principal desventaja es que

requieren software disentildeado para poder aprovechar los recursos del cluacutester (Lizaacuterraga 2002)

272 Mosix Seguacuten Peacuterez (2001) la arquitectura Mosix estaacute basada en la misma ideologiacutea

de la arquitectura Beowulf Se basa en un conjunto de parches aplicados al nuacutecleo (kernel) de Linux

y que asignan a todo el grupo de nodos un espacio de direcciones y de procesos comuacuten gracias al

cual los procesos migran de uno a otro con el fin de equilibrar favorablemente la carga del sistema

global Es una herramienta disentildeada para realizar balanceo de carga en el agrupamiento de forma

totalmente transparente de manera tal que los nodos se comportan como una sola maacutequina y asiacute

incrementar el aprovechamiento de cada uno de los nodos (Chaacutevez y otros 1999) La principal

57

ventaja de Mosix frente a Beowulf se basa precisamente en esto Mosix da mejores respuestas que

Beowulf frente a la caiacuteda o insercioacuten de nodos A parte de esto Mosix permite un cambio constante

de aplicacioacuten o incluso el correr aplicaciones independientes de forma simultaacutenea

273 OpenMosix OpenMosix es una extensioacuten del proyecto Mosix Seguacuten Chirinov

(2003) la idea de este modelo es que la distribucioacuten de tareas en el cluacutester la determina OpenMosix

de forma dinaacutemica conforme se van creando tareas Cuando un nodo estaacute demasiado cargado las

tareas que se estaacuten ejecutando pueden migrar a cualquier otro nodo del cluacutester Asiacute desde que se

ejecuta una tarea hasta que eacutesta muere podraacute migrar de un nodo a otro sin que el proceso sufra

mayores cambios

Ademaacutes OpenMosix funciona a nivel de kernel por tanto puede conseguir toda la

informacioacuten que necesite para decidir que tanto estaacute cargado un sistema y queacute pasos se deben

seguir para aumentar el rendimiento ademaacutes puede realizar maacutes funciones que cualquier

aplicacioacuten a nivel de usuario

Despueacutes de elegir el tipo de cluacutester a utilizar se procede a elegir los elementos baacutesicos que

se emplearaacuten para implementar el cluacutester capacidad de procesamiento memoria espacio del disco

de cada nodo asiacute como tambieacuten el ancho de banda de la comunicacioacuten entre los nodos Se deberaacute

decidir cuaacuteles son importantes basaacutendose en la variedad de aplicaciones que se piensen ejecutar

en el cluacutester y de la cantidad de dinero que se disponga para construirlo

58

Bajo estos mismos paraacutemetros se debe escoger tambieacuten el tipo de red que interconectaraacute

los nodos (Turner 2004)

Luego se debe escoger el sistema operativo a utilizar Esta eleccioacuten dependeraacute mucho de

la maacutequina que se escoja Linux es siempre una opcioacuten en cualquier maacutequina y es la eleccioacuten maacutes

comuacuten Muchas de las herramientas necesarias para la implementacioacuten de un cluacutester han sido

desarrolladas bajo Linux Pero existen cluacutesters corriendo bajo Windows NT UNIX Solaris y AIX

59

Capiacutetulo 3 Implementacioacuten de Cluacutester

31 Requisitos previos

Antes de iniciar la instalacioacuten del FrontEnd es necesario asegurarse que las conexiones de

red de los equipos junto con la configuracioacuten de la BIOS de cada uno sean las correctas

311 Conexioacuten de los equipos y acceso a la red

Un cluacutester de alto desempentildeo funciona como un uacutenico equipo el cuaacutel comparte los recursos

de los nodos esclavos con el nodo maestro para ello es esencial la existencia de una red interna de

alta velocidad por medio de la cual se realice la comunicacioacuten entre el nodo maestro y los nodos

esclavos como se muestra en la Figura 31 El nodo maestro necesitaraacute 2 tarjetas de red de alta

Figura 31 Esquema tiacutepico de configuracioacuten de un cluacutester (Fuente Elaboracioacuten propia)

60

velocidad una para la comunicacioacuten interna y otra para la comunicacioacuten con redes externas El

sistema operativo Rocks asigna automaacuteticamente la interface ldquoeth0rdquo a la red interna del cluacutester y

la interface ldquoeth1rdquo a la red externa En caso de que Rocks sea incapaz de determinar cuaacutel es la red

externa debido a la falta de conexioacuten a internet estas podriacutean ser asignadas de manera incorrecta

por tal motivo se sugiere asegurar el nombre de cada una de las interfaces

Dado que Rocks no permite volverlas a asignar una vez finalizada la instalacioacuten es

necesario volver a reinstalarlo para poder solucionar este inconveniente

312 Configuracioacuten de la BIOS Para evitar problemas durante la instalacioacuten conviene

configurar correctamente la Bios

3121 ATAIDE Mode Algunos sistemas operativos puede que no sean capaces de

reconocer el controlador del disco duro como es en el caso de esta distribucioacuten de Rocks usada

Para evitar complicaciones de tener que antildeadir el controlador a mano lo mejor es habilitar el modo

ldquoLegacyrdquo de controlador de disco duro

61

Para ello se accede a la Bios pulsando F2 al encender el equipo se situacutea en la pestantildea

ldquoAdvancedrdquo y se selecciona ldquoDrive Configurationrdquo como se muestra en la Figura 32

Figura 32 Imagen del Bios del equipo en la opcioacuten ldquodrive configurationrdquo (Fuente Elaboracioacuten propia)

Figura 33 Bios ATAIDE Legacy Mode (Fuente Elaboracioacuten propia)

62

Dentro del menuacute se tiene que seleccionar el Modo ldquoLegacyrdquo en la opcioacuten ldquoATAIDE

Moderdquo como se muestra en la Figura 33 y para salir se guardan los cambios con F10

3122 PXE Al momento de instalar un nodo puede ocurrir falla al arrancar y aparecer

bootsplash (Reboot and Select proper device) Para evitarlo es necesario habilitar la opcioacuten de

PXE para que tome los archivos de instalacioacuten del nodo maestro a traveacutes de la red interna

En la Bios se selecciona la pestantildea ldquoBootrdquo y dentro de ese mismo menuacute se deshabilita

ldquoSilent bootrdquo y se habilita la opcioacuten de ldquoPXE boot to lanrdquo como se muestra en la Figura 34

Finalmente hay que verificar que en la secuencia de arranque (Figura 35) como primer

dispositivo sea desde red para que de esta manera inicie desde el PXE

Figura 34 Bios Boot PXE (Fuente Elaboracioacuten propia)

63

Se guardan los cambios antes de salir

32 Instalacioacuten de Sistema Operativo Rocks

Una vez configurados los equipos se enciende el equipo que seraacute el nodo maestro

(FrontEnd) en el cuaacutel previamente se ha modificado la secuencia de inicio del boot desde la Bios

de modo que al insertar el CD de Rocks eacuteste procederaacute a iniciar la instalacioacuten con la siguiente

pantalla que se muestra a continuacioacuten

Figura 35 Bios Boot device prioriry (Fuente Elaboracioacuten propia)

64

Para iniciar la instalacioacuten uacutenicamente se selecciona la opcioacuten ldquoInstall CentOS 7rdquo como se

muestra en la Figura 36 dando asiacute comienzo al proceso de instalacioacuten Tras finalizar un proceso

de carga en memoria Rocks mostraraacute un formulario en entorno graacutefico mediante el cual

procederemos a configurar el FrontEnd

Esta primera pantalla se muestra coacutemo se desea realizar la instalacioacuten puede realizarse

por medio de la descarga del sistema operativo (se requiere internet) En este caso como se muestra

en la Figura 37 dado que previamente se descargoacute el DVD completo se seleccionoacute ldquoCDDVD

based rollsrdquo

Figura 36 Pantalla de Inicio de instalacioacuten de Rocks (Fuente Elaboracioacuten propia)

65

A continuacioacuten Figura 38 se selecciona de la lista de Rolls aquellos que se desean instalar

Figura 37 Pantalla de seleccioacuten de Rolls (Fuente Elaboracioacuten propia)

Figura 38 Listado de opciones de rolls para instalar (Fuente Elaboracioacuten propia)

66

Tras presionar el botoacuten ldquoSubmitrdquo la siguiente pantalla (Figura 39) muestra formulario en

el que hay que indicar la informacioacuten baacutesica del cluacutester entre las cuales aparecen

Fully-Qualified Host Name Nombre con el que se conoceraacute en la red externa el cluacutester

Cluster Name Nombre utilizado para ser identificado dentro de las herramientas del cluacutester

Certificate Organization Locality State and Country Organizacioacuten a la que pertenece el

cluacutester la localidad el estado y la ciudad

Contact URL and LattitudeLongitude Contacto direccioacuten web y posicioacuten GPS

Figura 39 Informacioacuten baacutesica del cluacutester a instalar (Fuente Elaboracioacuten propia)

67

Una vez que se ingresa la informacioacuten al cluacutester se presiona el botoacuten ldquoListordquo y

posteriormente se podraacute cambiar la configuracioacuten baacutesica de la red interna del cluacutester En este caso

Figura 310 se dejoacute el valor por defecto una IP de clase B (1011116)

El siguiente paso es la configuracioacuten de la red externa (para tener acceso a internet) En

este punto se introducen los datos de la red externa a la que se encuentra conectado el nodo

maestro como se muestra en la Figura 311

Figura 310 Configuracioacuten Ethernet de la red privada (Fuente Elaboracioacuten propia)

Figura 311 Configuracioacuten Ethernet de la red puacuteblica (Fuente Elaboracioacuten propia)

68

Para terminar de configurar la red externa como se muestra en la Figura 312 se ingresa la

direccioacuten IP del Gateway y los DNS (Servidor de nombre de dominio) que va a usar para el acceso

a internet

Se continuacutea con el resto del formulario donde se introduce la contrasentildea para el usuario

root tal y como se muestran en la Figura 313

Figura 312 Configuracioacuten de DNS y Gateway (Fuente Elaboracioacuten propia)

Figura 313 Ingresar contrasentildea de usuario root (Fuente Elaboracioacuten propia)

69

Paso siguiente se procede a seleccionar la zona horaria como se muestra en la Figura 314

donde se encuentra ubicado el cluacutester asiacute como un servidor de donde podraacute obtener la zona horaria

automaacuteticamente en este caso se dejoacute el valor por default

En el formulario de la Figura 315 se selecciona la forma de particionar el disco duro

(automaacutetica manual) una vez seleccionado daraacute comienzo al proceso de instalacioacuten de manera

Figura 314 Configuracioacuten horaria (Fuente Elaboracioacuten propia)

Figura 315 Particiones del disco duro (Fuente Elaboracioacuten propia)

70

desatendida Cuando ha concluido la instalacioacuten el equipo se reiniciaraacute y se requeriraacute iniciar con

el usuario root y la contrasentildea establecida previamente

321 Configuracioacuten del teclado Debido a que el teclado por defecto estaacute en idioma

ingleacutes podriacutea provocar problemas al momento de escribir la contrasentildea u otros comandos

Seguacuten las pruebas realizadas aunque se cambie la configuracioacuten del teclado desde el menuacute

de preferencias uacutenicamente se mantiene dentro de la sesioacuten desde la que se ha cambiado dicha

opcioacuten (lo cual implica que la contrasentildea de usuario hay que introducirla seguacuten la distribucioacuten

inglesa)

33 Instalacioacuten de los nodos

Previo a la instalacioacuten de los nodos esclavos cada uno de los equipos fueron configurados

desde la Bios para que arranquen desde la red (seccioacuten 3122) Para ir antildeadiendo los nodos solo

se tiene que introducir el siguiente comando desde nuestro FrontEnd

$insert-ethers

A continuacioacuten como se muestra en la Figura 316 apareceraacute una ventana en la pantalla

en la cual se seleccionaraacute la opcioacuten ldquoComputerdquo

71

Una vez realizado este paso se procede a encender los equipos que funcionaraacuten como

nodos esclavos uno a uno

Se sugiere esperar a que cada nuevo equipo encendido esteacute marcado con un asterisco antes

de proceder a encender el siguiente como se muestra en la Figura 317 De esta manera se asegura

que cada nuevo nodo antildeadido posea el nombre y numeracioacuten deseada

Figura 316 Pantalla para ingresar nodos (Fuente Elaboracioacuten propia)

Figura 317 Indicador de insercioacuten de nuevos nodos (Fuente Elaboracioacuten propia)

72

Puede darse el caso de que un nodo no sea detectado automaacuteticamente eso indica que se

ha omitido alguacuten paso o parte de la configuracioacuten realizada hasta el momento es incorrecta En ese

caso comprobar lo siguiente

Que el nodo esclavo este correctamente conectado a la red interna

Que el FrontEnd (nodo maestro) tenga correctamente configurada la red interna y externa

Que el PXE esteacute habilitado en la Bios del nodo esclavo

331 Administracioacuten de nodos Algunos de los comandos maacutes uacutetiles para para la gestioacuten

de los nodos son los siguientes

Eliminar un nodo de la lista

Reinstalar un nodo

Listar los nodos ya instalados

Acceder a un nodo

$rocks remove host nombre_nodo

$rocks remove host nombre_nodo

$rocks set host boot nombre_nodo action=install

$rocks set host boot nombre_nodo action=install

$rocks list host

$rocks list host

$ssh nombre_nodo

$ssh nombre_nodo

73

Ejecutar un comando de manera remota a un nodo

332 Creacioacuten de cuentas de usuario Para agregar a un usuario hay que realizar los

siguientes pasos

1 Creacioacuten de la cuenta

$useradd nombre_usuario

2 Asignacioacuten de una contrasentildea

$passwd nombre_usuario

3 Sincronizacioacuten de la cuenta de usuario con el resto de nodos

$rocks-user-sync

333 Configuracioacuten del directorio compartido El directorio share es compartido por el

FrontEnd y el resto de nodos se localiza dentro del FrontEnd en la carpeta exports siendo la

carpeta share un enlace simboacutelico a esta uacuteltima

Al principio es posible que no se sincronicen correctamente los archivos introducidos en el

directorio debido a que la carpeta inicialmente estaacute vaciacutea por lo que para solucionar este

inconveniente puede usarse el comando siguiente para reiniciar dicho servicio

$ssh nombre_nodo lsquocomandorsquo

$ssh nombre_nodo lsquocomandorsquo

$cd

$export fs ndashrv

service nfs restart

$cd

$export fs ndashrv

service nfs restart

74

34 Operaciones baacutesicas de Rocks

Comandos y aplicaciones esenciales para el manejo del cluacutester

Ver que rolls estaacuten instalados

$rocks list roll

Visualizar el estado del sistema Figura 318

$qstat ndashf

Probar el sistema de colas para distribuir tareas a los nodos

Para ello se prueba que el SGE del cluacutester funcione enviaacutendole una serie de trabajos

mediante el comando qsub

En primer lugar se crea un fichero (pruebapl) que tenga permisos de ejecucioacuten con el

siguiente contenido

Figura 318 Comando qstat ndashf (Fuente Elaboracioacuten propia)

75

usrbinperl

for(my $i=0$ilt30$i++) sleep(2) print okn

Y se ejecuta con el siguiente comando

$ for ((i=1ilt=10i+=1)) do qsub pruebapl done

Al ejecutarse se puede comprobar que los trabajos se han mandado Figura 319

Y al realizar de nuevo un ldquoqstat ndashfrdquo Figura 320 se observa coacutemo se van realizando

Figura 319 Enviacuteo de trabajos por medio del comando qsub (Fuente Elaboracioacuten propia)

Figura 320 Estado de los trabajos pendientes mostrados por qstat ndashf (Fuente Elaboracioacuten propia)

76

Para ver la carga de trabajo en el cluacutester de manera global y de forma graacutefica se tiene que

ingresar en un navegador web en la siguiente direccioacuten httplocalhostganglia apareceraacute la

Figura 321

Figura 321 Visualizacioacuten de la distribucioacuten de cargas en el cluacutester usando la herramienta Ganglia (Fuente Elaboracioacuten propia)

77

Capiacutetulo 4 Metodologiacutea y Resultados

Una vez finalizada la instalacioacuten y puesta en operacioacuten del equipo se analizaron diferentes

metodologiacuteas de trabajo lo que implicoacute un trabajo arduo debido a que existen complicaciones

cuando se buscan temas relacionados a vulnerar sistemas operativos La realizacioacuten de este

proyecto estaacute basado en la metodologiacutea de Joshua Picolet ldquoCracking Methodologyrdquo (Picolet

2017)

41 Obtener Archivo hash

Se pueden vulnerar contrasentildeas de Windows de diferentes maneras Una de ellas es

mediante el acceso al archivo del Administrador de cuentas de seguridad (SAM) el cual se detalla

en el apartado 253 a traveacutes de la obtencioacuten de las contrasentildeas del sistema en su forma hash por

medio de herramientas diferentes Alternativamente las contrasentildeas se pueden leer desde la

memoria lo que tiene el beneficio adicional de recuperar las contrasentildeas en texto plano y evitar el

requisito de descifrado Para comprender los formatos que se observan cuando se descarguen

hashes del sistema de Windows se requiere una breve descripcioacuten de los diferentes formatos de

almacenamiento

Originalmente las contrasentildeas de Windows de menos de 15 caracteres se almacenaban en

el formato hash de Lan Manager (LM) Algunos sistemas operativos como Windows 2000 XP y

Server 2003 continuacutean usando estos hashes a menos que esteacuten deshabilitados por el usuario

Ocasionalmente un sistema operativo como Windows Vista puede almacenar el hash LM para la

compatibilidad con otros sistemas Seguacuten analistas incluye varias vulnerabilidades como dividir

78

la contrasentildea en dos bloques y permitir que cada uno se descifre de forma independiente Mediante

el uso de tablas Rainbow es trivial descifrar una contrasentildea almacenada en un hash LM

independientemente de la complejidad Este hash se almacena con la misma contrasentildea calculada

en el formato de hash NT como el que se muestra en el siguiente ejemplo

Ejemplo de un hash NTLM con el componente LM y NT

Administrator500611D6F6E763B902934544489FCC9192BB71ED1E7F2B60ED5A2

EDD28379D45C91

Los sistemas operativos Windows maacutes recientes como el Windows 8 y 10 usan el hash NT

En teacuterminos simples no hay una debilidad significativa en este hash que lo diferencie de cualquier

otra funcioacuten hash criptograacutefica Se requieren meacutetodos de descifrado como lo es la fuerza bruta o

ataque de diccionario para recuperar la contrasentildea si uacutenicamente se almacena en el formato NT

Ejemplo de un hash NTLM uacutenicamente con el componente NT (como se ve en los sistemas

Windows mas recientes

Administrator500NOPASSWORDEC054D40119570A4663

4350291AF0F72

Es importante sentildealar que la cadena NO PASSWORD es variable seguacuten la herramienta

que se utilice Otras pueden presentar esta informacioacuten como ceros rellenos o comuacutenmente puede

79

ver la cadena ldquoAAD3B435B51404EEAAD3B435B51404EErdquo en lugar de ninguna contrasentildea

Esto significa que el hash LM estaacute vaciacuteo y no estaacute almacenado

El archivo hash se encuentran en el directorio ldquoWindows System32 configrdquo y se

necesitan ambos archivos SAM y SYSTEM Ademaacutes tambieacuten se encuentran en el archivo de

registro HKEY_LOCAL_MACHINE SAM al que no se puede acceder durante el tiempo de

ejecucioacuten Finalmente las copias de seguridad se pueden encontrar a menudo en ldquoWindows

Repairrdquo (Peleus 2019)

Para extraer el archivo hash de un sistema operativo con un nivel de seguridad C1 existen

diferentes meacutetodos en esta ocasioacuten se procederaacute a iniciar el equipo objetivo con una distribucioacuten

de Linux desde una memoria USB como se muestra en la figura 41 para de esta manera ingresar

al directorio CWINDOWSSystem32Config directorio de ubicacioacuten de los archivos SAM y

SYSTEM que son los necesarios para obtener el archivo hash (Caballero 2018)

Figura 41 Arranque con LiveUSB KaliLinux (Fuente Elaboracioacuten propia)

80

42 Dar Formato al Hash

En este punto es donde se tiene que identificar el algoritmo con el que fueron encriptados

los archivos SAM y SYSTEM que se han obtenido en el punto anterior con la finalidad de

seleccionar el tratamiento que se les daraacute El algoritmo de encriptacioacuten del archivo SAM de

Windows 10 es NTLM y ademaacutes estaacute almacenado en un formato binario (ByteBleeder 2017) por

lo que fue necesario instalar la herramienta con licencia GNU samdump2 para obtener la syskey y

de esta manera poder extraer los hash desde el archivo SAM de Windows

En la figura 42 se han obtenido los hashes del archivo SAM donde se puede observar que

los usuarios Administrador e Invitado estaacuten deshabilitados ademaacutes de que existen tres cuentas de

usuario activas las cuales son Gad prueba y usuarioprueba cada una con su contrasentildea cifrada

en formato NTLM a la derecha del nombre de usuario la cuenta usuarioprueba fue a la que se le

realizoacute el anaacutelisis que se detalla posteriormente

43 Evaluar la fuerza del Hash

En criptografiacutea se dice que un algoritmo criptograacutefico se rompe si por alguacuten meacutetodo se

consigue reducir su fortaleza es decir reducir por ejemplo su entropiacutea de los 2256 bits teoacutericos a

Figura 42 Resultado de la ejecucioacuten de la herramienta samdump2 (Fuente Elaboracioacuten propia)

81

tan soacutelo 2255 por ejemplo El hecho de que se encuentre una colisioacuten no implica necesariamente

que un algoritmo se haya roto pues podriacutea haber sido realizado mediante fuerza bruta pero puede

ser una causa

Un ataque de colisioacuten significa que encuentro dos entradas diferentes que producen el

mismo resultado de un hash particular Este es generalmente el tipo de ataque maacutes faacutecil Es el tipo

de ataque que se conoce desde hace varios antildeos contra MD5

Dado que una utilidad importante de las funciones hash estaacute en las firmas digitales

encontrar colisiones puede facilitar falsificar firmas digitales Es decir dos mensajes distintos que

tengan un mismo resumen tienen ademaacutes la misma firma y un atacante puede reemplazar un

mensaje por el otro Un ejemplo de este ataque fue demostrado en 2008 por un grupo de

investigadores en Aacutemsterdam los cuales falsificaron un certificado raiacutez mediante el uso de un

ataque de colisioacuten contra el algoritmo MD5 (Preukschat 2015)

Un ataque previo a la imagen generalmente es mucho maacutes difiacutecil es encontrar otra entrada

que produzca el mismo resultado que un hash que ya se conoce

Para tratar de aclarar la diferencia aquiacute en un ataque de colisioacuten encuentro dos entradas A

y B que producen el mismo resultado En un ataque de preimagen comienzo a partir de alguacuten

resultado conocido X y encuentro una entrada que produciraacute X como resultado (Coffin 2015)

82

Para realizar esta evaluacioacuten se tomoacute como base la tabla del apeacutendice Hash craking

benchmark (Picolet 2017) el objetivo es observar el comportamiento y velocidad del Hash

mencionado cuando fue sometido a pruebas de criptoanaacutelisis Si se trata de un Hash lento se deberaacute

ser maacutes selectivo en queacute tipos de diccionarios y meacutetodos de criptoanaacutelisis se le debe aplicar Si es

un Hash raacutepido se puede ser maacutes libre con la estrategia de criptoanaacutelisis Este estudio busca

realizar una prueba de criptoanaacutelisis mostrando las diferencias entre el poder de procesamiento de

un cluacutester de 17 nodos contra una computadora personal por lo que no necesariamente se

implementaraacute el meacutetodo oacuteptimo para la realizacioacuten del criptoanaacutelisis

44 Calcular la capacidad del equipo

Con la informacioacuten de la evaluacioacuten de la fuerza del Hash obtenida en el apartado anterior en

este apartado se tiene que establecer la capacidad de la plataforma o plataformas que realizaraacuten

el criptoanaacutelisis

Para conocer la capacidad de procesamiento del cluacutester de alto rendimiento se utilizoacute la

herramienta Linpack Benchmark HPL es una implementacioacuten portaacutetil del Benchmark de alto

rendimiento LINPACK para equipos de coacutemputo distribuido Actualmente se utiliza para obtener

varios resultados en la lista actual de Top500 de HP cluacutesters (Dongarra 2010)

El Linpack Benchmark (HPL del Ingleacutes High-Performance Linpack Bench-mark) es un

software que resuelve un sistema lineal aleatorio de doble precisioacuten aritmeacutetica (64 bits) en equipos

de memoria distribuida El rendimiento muestra el nuacutemero de operaciones de punto flotante por

segundo logradas por el sistema (Petitet Whaley Dongarra amp Cleary 2008)

83

El HPL fue desarrollado en el Argone National Laboratory por Jack Don-garra en 1976 y

es uno de los maacutes usados en sistemas cientiacuteficos y de ingenieriacutea para el caacutelculo de prestaciones

Las principales caracteriacutesticas del algoritmo utilizado por el HPL son

Distribucioacuten ciacuteclica de datos de bloques de dos dimensiones

Variante derecha de la factorizacioacuten LU con pivoteo parcial (Teacutecnica de pivoteo

Dicta que el elemento pivote que debe escogerse es el mayor absolutamente de cada

columna)

Factorizacioacuten recursiva con pivoteo y reenviacuteo de columna

Distintas topologiacuteas virtuales de reenviacuteos

Algoritmo de reduccioacuten de reenviacuteo para ancho de banda (Castelloacute Gimeno 2014)

La resolucioacuten del sistema de ecuaciones se realiza del siguiente modo

1 Se crea un sistema de ecuaciones

(1)

119860119909 = 119887

(2)

119860 isin 119877119899119909119899

(3)

119909 119887 isin 119877119899

84

HPL calcula que la solucioacuten para un sistema de ecuaciones lineales se puede generalizar

como 119860119909 = 119887 donde 119860 es una matriz 119873 119909 119873 cuyos valores se generan aleatoriamente

119909 119910 119887 son vectores de tamantildeo 119873 Como se muestra en la Figura 43

2 Primero se calcula la factorizacioacuten 119871119880 con pivoteo parcial de los coeficientes 119899 y 119899 + 1

de la matriz [119860 119887]

(4)

119875119903[119860 119887] = [[119871119880] 119910]

(5)

119875119903 119871 119880 isin 119877119899119909119899

(6)

119910 isin 119877119899

El primer paso es la factorizacioacuten de la matriz 119860 en una matriz triangular superior 119880

y una matriz triangular inferior 119871 tal que 119860 = 119871119880 La factorizacioacuten se usa para calcular

el vector solucioacuten 119909

3 Una vez el pivoteo (representado por la permutacioacuten de la matriz 119875119903) y la factorizacioacuten

inferior se aplican sobre 119887 la solucioacuten se obtiene en un paso resolviendo el sistema

superior triangular

Figura 43 Sistema de Ecuaciones tipo 119860119909 = 119887 (Fuente Elaboracioacuten propia)

85

(7)

119880119909 = 119910

La matriz triangular inferior izquierda y el conjunto de pivotes no se devuelven en el

resultado Para la estabilidad numeacuterica el algoritmo de factorizacioacuten utiliza un pivote parcial de

fila

La implementacioacuten paralela de Linpack divide la matriz 119860 119873 119909 119873 en una cuadriacutecula de

procesos 119875 119909 119876 bidimensional y luego la divide en subgrupos de mosaicos 119873119861 119909 119873119861 (Petitet

Whaley Dongarra amp Cleary 2008)

Utilizando la herramienta HPL en esta investigacioacuten se obtuvieron los siguientes

resultados

La prueba abordoacute el ajuste de 119873 y la eficiencia obtenida en comparacioacuten con el rendimiento

maacuteximo Se determinoacute un valor para 119873 = 800000 aleatoriamente para ejecutar HPL en todo el

cluacutester Sin embargo el tiempo fue excesivo por lo tanto se determinoacute que este tamantildeo del

problema fue demasiado grande para el cluacutester Al realizar otros experimentos con valores maacutes

pequentildeos de 119873 se obtuvieron mejores resultados de rendimiento La Tabla 41 muestra el

rendimiento de HPL en GFlops para 119873 = 300000 400000 y 500000 Como se puede observar

en la Tabla 41 se obtuvo el mejor resultado de rendimiento 850 GFlops para 119873 = 500000 para

valores mayores de 119873 la distribucioacuten de cargas del cluacutester empieza a sobrepasar su capacidad como

se muestra en la Figura 44 y la vez su rendimiento disminuye Esto ocurre porque la cantidad de

memoria utilizada con las memorias intermedias de comunicacioacuten MPI es mayor de lo esperado

Por lo tanto es necesario dejar maacutes del 20 de la memoria para el sistema (Petitet Whaley

86

Dongarra amp Cleary 2008) Tambieacuten se realizaron pruebas usando solo un nodo de coacutemputo y el

rendimiento fue de 34 GFlops para 119873 = 20000

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia)

Analizando la eficiencia obtenida para la ejecucioacuten de un solo nodo cuando 119873 = 20000

se obtuvo el 823 del rendimiento maacuteximo (el rendimiento maacuteximo para un solo nodo es 477

Gflops) Para todo el cluacutester el rendimiento maacuteximo seriacutea 119879119898119886119909 = 477 119909 17 =

8109 119866119891119897119900119901119904 aproximadamente

Figura 44 Distribucioacuten de cargas del cluacutester

0

500

1000

300000 400000 500000

Gflops

Gflops

87

La Figura 44 titulada ldquoDistribucioacuten de cargas del cluacutesterrdquo muestra la imagen de la

herramienta Ganglia de manera graacutefica a traveacutes de cuadros que variacutean de color dependiendo de la

carga que tenga cada uno de los nodos al momento de implementar la herramienta HPL De manera

inicial indica que el cluacutester tiene un total de 17 equipos de 4 cores cada uno eso da un total de 68

cores trabajando sin equipos inactivos Muestra tambieacuten una sobrecarga en el cluacutester y un

porcentaje promedio de 100 de uso en la uacuteltima hora

45 Establecer Estrategia

Esto significa uacutenicamente que en este apartado se realizaraacute una guiacutea baacutesica para procesar

los hashes obtenidos sin perder de vista que cada escenario a criptoanalizar es uacutenico en funcioacuten

de las circunstancias externas Como ya se ha mencionado anteriormente esta estrategia de

criptoanaacutelisis se ha planteado implementar dos meacutetodos los cuales son Fuerza Bruta y ataque de

diccionario sin importar si son o no los oacuteptimos debido a que se realizaraacute una comparativa de

capacidad de procesamiento

451 Fuerza Bruta Una vez que se han intentado varios meacutetodos y han fallado se puede

iniciar un ataque de fuerza bruta estaacutendar poniendo especial atencioacuten en la cantidad de siacutembolos

del alfabeto que puede usar el equipo a analizar Por encima de 8 caracteres esto generalmente no

tiene sentido debido a limitaciones de hardware y entropiacutea (complejidad de la contrasentildea) Una

contrasentildea de Windows seguacuten Microsoft (Microsoft Inc 2019) una contrasentildea de Windows debe

estaacute formada por

88

26 Caracteres mayuacutesculas de la ldquoArdquo a la ldquoZrdquo

26 Caracteres minuacutesculas de la ldquoardquo a la ldquozrdquo

10 Diacutegitos de base 10 (0 a 9)

32 Caracteres especiales (~$^amp_-+=|()[]ltgt)

94 Caracteres alfanumeacutericos en total

4511 Cantidad de combinaciones posibles Si se usa una clave numeacuterica (nuacutemeros del 0

al 9) existen 10 posibilidades de 4 diacutegitos de longitud que es la extensioacuten por defecto de los

teleacutefonos celulares Para 4 diacutegitos las combinaciones posibles seriacutean 10 mil 104 = 10000

(Labaca Castro 2014)

Por otro lado si tomamos un alfabeto de 26 letras mayuacutesculas y 26 minuacutesculas 10 nuacutemeros

y 10 caracteres especiales en total tenemos 72 diferentes posibilidades para un uacutenico caraacutecter Eso

significa que las combinaciones para una contrasentildea de 4 caracteres seriacutean 724 = 26873856

Baacutesicamente maacutes de 26 millones de combinaciones en una clave de 4 caracteres contra 10 mil en

una clave de 4 diacutegitos numeacutericos En este estudio se utiliza la contrasentildea de bloqueo descrita en el

apartado anterior que es de 94 combinaciones para cada caraacutecter teniendo una longitud de 7

caracteres por lo tanto seraacuten 947 = 64847759000000 de posibles combinaciones que

nuestros equipos deben explorar para obtener la contrasentildea correcta

Como se mencionoacute en el apartado 42 el usuario sobre el cual se realizoacute el criptoanaacutelisis

fue usuarioprueba el cual constaba de una contrasentildea de longitud 7 caracteres la cual despueacutes

de realizado el anaacutelisis y como se puede observar en la Figura 45

89

1 Anaacutelisis a usuario usuarioprueba

2 Nuacutemero de nodos en operacioacuten 17

3 Nuacutemero de procesos ejecutaacutendose de forma paralela 68

4 Tiempo de duracioacuten del anaacutelisis en el cluacutester 122727 horas

5 Contrasentildea criptoanalizada Pass7

Asiacute mismo en la Tabla 42 se muestra el resultado final y el tiempo de duracioacuten del

criptoanaacutelisis realizado al archivo SAM con el cluacutester y la computadora personal

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Horas)

1 (PC) 4 1075316

17 (Cluacutester) 68 122727

1

2

3

4 5

Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester (Fuente Elaboracioacuten propia)

90

452 Diccionario Meacutetodo empleado para romper la seguridad de los sistemas basados en

contrasentildeas (password) en la que el atacante intenta dar con la clave adecuada probando todas (o

casi todas) las palabras posibles ingresadas previamente en un diccionario idiomaacutetico

Generalmente se emplean programas especiales que se encargan de ello

Este meacutetodo suele ser maacutes eficiente que el meacutetodo de fuerza bruta debido a que muchas

usuarios casi siempre suelen utilizar contrasentildeas con una o varias palabras existentes en su lengua

para que la contrasentildea no sea olvidada faacutecilmente y sea sencilla de recordar esto no es una praacutectica

recomendable (Alegsa 2018)

Para realizar este meacutetodo se utilizoacute un diccionario descargado de internet el cual contiene

10000000 de posibles contrasentildeas (g0tmi1k 2018)

Ademaacutes se ejecutoacute un programa creado en lenguaje C (Anexo 1) a traveacutes de la

implementacioacuten de las libreriacuteas MPI y open MPI propias de la arquitectura de cluacutester de

computadoras Este programa fue ejecutado en los mismos equipos descritos anteriormente para

obtener todos los nuacutemeros primos encontrados dentro de un intervalo dado En este caso el

intervalo dado fue de 10000000 con los siguientes resultados mostrados en la Tabla 43

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos (Fuente Elaboracioacuten

propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Segs)

1 (PC) 4 5078

17 (Cluacutester) 68 00013

91

453 Analizar los resultados Posterior a realizar el criptoanaacutelisis y descifrar con eacutexito

una cantidad suficiente de hashes se analizan los resultados en busca de pistas o patrones Este

anaacutelisis puede ayudar a tener eacutexito en cualquier hash restante

454 Personalizar ataques Tomando como base el anaacutelisis de resultados realizado

previamente se disentildearaacuten diversas estrategias personalizadas que aprovechen las vulnerabilidades

conocidas o patrones Los ejemplos seriacutean ataques de maacutescara personalizados o reglas para

adaptarse al comportamiento o las preferencias del usuario objetivo

92

Conclusioacuten

El trabajo de investigacioacuten presentado parte de la necesidad de buscar alternativas para

explotar al maacuteximo la capacidad de procesamiento del equipo de coacutemputo que existe actualmente

dentro del inventario del Instituto Tecnoloacutegico de Acapulco asiacute como proveer una plataforma que

coadyuve a la investigacioacuten dentro del Instituto a traveacutes de implementar un cluacutester de coacutemputo

con capacidad para realizar proyectos en el aacuterea de ingenieriacutea y matemaacuteticas con el fin de optimizar

el tiempo de ejecucioacuten lo cual en un futuro se veraacute reflejado en ventajas para el desarrollo de la

regioacuten

La revisioacuten y anaacutelisis de informacioacuten en relacioacuten a cluacutesters es muy interesante pero a la

vez es compleja dado que involucra diferentes aspectos durante su evolucioacuten asiacute como diversas

metodologiacuteas para su formacioacuten e implementacioacuten Se considera de suma importancia para este

trabajo las revisiones efectuadas ya que son la base para la propuesta entregada

De acuerdo a las especificaciones teacutecnicas de los equipos informaacuteticos existentes dentro

del laboratorio de la Maestriacutea en Sistemas Computacionales y una vez que se realizoacute el anaacutelisis

de varios casos de eacutexito se propuso la metodologiacutea para implementacioacuten de un cluacutester homogeacuteneo

tipo Beowolf Este meacutetodo estaacute basado en otros que ya se han implementado bajo realidades

acadeacutemicas similares rescatando las etapas maacutes importantes de cada uno y complementaacutendolo con

los aportes personales se consideroacute que fue el oacuteptimo debido a que se implementoacute con hardware

convencional y herramientas de uso libre

93

El hecho de haber seleccionado un meacutetodo adecuado permitioacute superar gran parte los

problemas que presentaban las metodologiacuteas que fueron analizadas simplificoacute la implementacioacuten

del cluacutester y permitioacute el poder alcanzar una mayor estabilidad en su desempentildeo desde su etapa

inicial fue importante conocer el resultado en cada una de las etapas de implementacioacuten para

asegurar su desenvolvimiento en el futuro

Para integrar los equipos independientes a la arquitectura cluacutester se realizoacute el disentildeo de

una topologiacutea de red Gigabit Ethernet tipo estrella con un direccionamiento IP estaacutetico la

configuracioacuten de protocolos de comunicacioacuten remota sin autenticacioacuten la comparticioacuten de

archivos en red y la utilizacioacuten de aplicaciones de licencia GPL que permiten obtener el

funcionamiento similar a la de una supercomputadora

Haciendo uso de libreriacuteas de paso de mensajes (MPI) y el software John the Ripper para el

descifrado de contrasentildeas la arquitectura cluacutester implementada alcanzoacute una eficiencia de 885

de rendimiento en comparacioacuten con los recursos computacionales de un solo equipo con las

caracteriacutesticas de un nodo Ademaacutes otros de los proyectos ejecutados en la arquitectura cluacutester

para probar el rendimiento fue la ejecucioacuten de un programa para la deteccioacuten de nuacutemeros primos

dentro de un archivo de 10000000 de nuacutemeros obteniendo una eficiencia de maacutes de 99 gracias

a la distribucioacuten de tareas que proporcionan las libreriacuteas de paso de mensajes (MPI) dentro de la

arquitectura cluacutester

Con la implementacioacuten de la arquitectura cluacutester el laboratorio de la Maestriacutea en Sistemas

Computacionales podraacute dar soluciones potentes eficientes y econoacutemicas en los entornos de

94

investigacioacuten mejorando la capacidad de procesamiento en aplicaciones como evaluacioacuten de

algoritmos compresioacuten de archivos renderizacioacuten de imaacutegenes anaacutelisis de datos (big data) en un

tiempo relativamente bajo ideal para las necesidades educativas

La experiencia obtenida al realizar esta investigacioacuten y propuesta ha sido enriquecedora

tanto por la obtencioacuten de conocimiento en base a la historia evolucioacuten y arquitectura de cluacutesters

asiacute como la programacioacuten paralela y sus ventajas en diferentes proyectos desarrollados en todo el

mundo Igualmente la comparacioacuten entre cada uno de los modelos y meacutetodos resulta interesante

dado que existe un sinnuacutemero de ejemplos con caracteriacutesticas diferentes pero baacutesicamente con un

mismo objetivo final

Trabajo Futuro

El cluacutester implementado en el Laboratorio de la Maestriacutea en Sistemas computacionales del

Instituto Tecnoloacutegico de Acapulco puede ser utilizado en gran cantidad de aplicaciones dentro de

las diferentes aacutereas de investigacioacuten del Instituto asiacute como estar disponible para el Departamento

de Posgrado e Investigacioacuten como apoyo durante la realizacioacuten de tareas y proyectos dentro de las

aacutereas de Desarrollo de Sistemas Inteligentes asiacute como de Tecnologiacuteas Web

Propuesta de Trabajo a Futuro

Durante la realizacioacuten de este proyecto se observoacute la necesidad que existe dentro del

departamento de Investigacioacuten y Posgrado de equipos de alta capacidad de procesamiento para

realizar de una manera maacutes eficiente las investigaciones que se estaacuten llevando a cabo Una de ellas

es el ldquoSistema de apoyo al diagnoacutestico oportuno de Retinopatiacutea Diabeacuteticardquo en la cual a traveacutes del

entrenamiento de una red neuronal se clasificaraacuten y evaluaraacuten un nuacutemero de 3000 imaacutegenes para

95

demostrar la presencia de dicha enfermedad en pacientes del Instituto Estatal de Oftalmologiacutea

Actualmente se ha realizado una prueba de entrenamiento de dicha red neuronal con 70 imaacutegenes

obteniendo como resultado un tiempo clasificacioacuten y evaluacioacuten de 301532 horas en un equipo

con un procesador Core I7 con 8 GB en memoria RAM

96

Bibliografiacutea

Alegsa (01 de 01 de 2018) Alegsa Diccionario Informaacutetico Recuperado el 07 de 2019 de

Alegsa httpwwwalegsacomarDicataque_por_diccionariophp

Avecto (2017) Avecto Limited Recuperado el 10 de 08 de 2018 de AVECTO a Bomgar

Company wwwavectocom

Borghello C (2009) Seguridad de la Informacioacuten Recuperado el 11 de 2018 de Criptografiacutea de

la A-Z httpswwwsegu-infocomarproyectosp1_hashhtm

Branch Bedoya J amp Mesa Muacutenera A (Diciembre de 2008) Implementacioacuten de un cluster

homogeacuteneo para la resolucioacuten de problemas de alta complejidad computacional Avances

en Sistemas e Informaacutetica 5(3)

ByteBleeder (02 de 06 de 2017) Practical guide to NTLM Relaying in 2017 Obtenido de Github

httpsbyt3bl33d3rgithubiopractical-guide-to-ntlm-relaying-in-2017-aka-getting-a-

foothold-in-under-5-minuteshtml

Caballero A (26 de 06 de 2018) Hacking Eacutetico Recuperado el 03 de 2019 de John The Ripper

httpwwwreydescomdq=Recuperar_la_Contrasena_del_Administrador_utilizando_s

amdump2_y_John_The_Ripper

Carretero Peacuterez J de Miguel Anasagasti P Garciacutea Carballeira F amp Peacuterez Costoya F (2001)

Sistemas Operativos Una visioacuten aplicada (C F Madrid Ed) Madrid Espantildea

McGRAW-HillInteramericana

Castelloacute Gimeno A (30 de 07 de 2014) Universitat Jaume Recuperado el 10 de 2019 de

Evaluacioacuten de prestaciones mediante laaplicacioacuten HPL de clusters utilizandorCUDA

97

httprepositoriujiesxmluibitstreamhandle10234115082TFM_2014_CastelloGimen

oApdfsequence=1ampisAllowed=y

Chaacutevez J Echeverriacutea C Correa M Vaacutezquez E Suaacuterez M Maacutermol X Diacuteaz G (07 de

1999) Centro de Caacutelculo Cientiacutefico Recuperado el 01 de 05 de 2018 de Universidad de

Los Andes httpwwwcecalculavedocumentaciontutorialesbeowulfinformehtml

Chirinov R (2003) Nfinite9000 SL Recuperado el 26 de 04 de 2018 de Noticias 3D

httpswwwnoticias3dcomarticuloaspidarticulo=248amppag=4

Coffin J (23 de 07 de 2015) Quora Recuperado el 15 de 08 de 2019 de

httpswwwquoracomWhat-does-it-mean-when-a-hashing-algorithm-has-been-broken

Dongarra J (2010) Top500 Super computer sites Recuperado el 07 de 2019 de http

wwwtop500org

Educba (01 de 01 de 2019) Recuperado el 10 de 2019 de Educbaorg

httpswwweducbacomidea-algorithm

europa press (04 de 06 de 2013) Portal Tic Recuperado el 18 de 11 de 2018 de Europa Press

httpswwweuropapressesportalticgadgetsnoticia-cuarta-generacion-intel-core-mayor-

salto-cuanto-ahorro-energetico-20130604174722html

g0tmi1k (2018) github Recuperado el 05 de 2019 de github

httpsgithubcomdanielmiesslerSecListsblobmasterPasswordsCommon-

Credentials10-million-password-list-top-1000000txt

Gonzaacutelez Agudelo D (2014) El riesgo y la falta de politicas de seguridad informaacutetica una

amenaza en las empresas certificadas basc Recuperado el 20 de 05 de 2018 de

Universidad Militar Nueva Granada

httpsrepositoryunimilitareducobitstream10654122511ENSAYO20FINALpdf

98

Gonzaacutelez Ramiacuterez E amp Rodriacuteguez Saacutenchez A (2008) Disentildeo e implementacioacuten de un cluster

tipo BEOWULF para el desarrollo de coacutemputo cientiacutefico avanzado CdMx Mexico

Hernandez M (2013) Forensics Mexico Recuperado el 07 de 2018 de La importancia del

registro de Windows parte 1 httpforensicsmexicoblogspotcom201309la-

importancia-del-registro-de-windowshtml

Kowalczyk C (01 de 2015) Crypto-IT Recuperado el 11 de 2018 de Crypto-IT

httpwwwcrypto-itnetengasymmetricindexhtml

Labaca Castro R (13 de 06 de 2014) We live security Recuperado el 2019 de 08 de 07 de

Welivesecuritybyeset httpswwwwelivesecuritycomla-es20140613matematica-

claves-numerica-alfanumerica

Lizaacuterraga C (2002) Departamento de Fiacutesica Recuperado el 12 de 03 de 2018 de Universidad

de Sonora httpclustersfisicausonmx

Llorens E amp Pentildea M (2002) Recuperado el 04 de 2018 de Departament dArquitectura de

Computadors httppersonalsacupceduenricPFCBeowulfbeowulfhtml

Meneacutendez-Barzanallana R (07 de 08 de 17) Universidad de Murcia Recuperado el 11 de 2018

de Informaacutetica Aplicada a las Ciencias Sociales

httpswwwumesdocenciabarzanaIACCSSCriptografiahtml

Merkle R amp Damgaringrd I (sf) Numerenturorg Recuperado el 06 de 2019 de Para computar -

numerenturorg httpnumerenturorgfuncion-merkle-damgard

Microsoft Inc (02 de 05 de 2019) wwwmicrosoftcom Obtenido de Password must meet

complexity requirements httpsdocsmicrosoftcomes-eswindowssecuritythreat-

protectionsecurity-policy-settingspassword-must-meet-complexity-requirements

99

Mifsud E (26 de 03 de 2012) Introduccioacuten a la seguridad informaacutetica Recuperado el 07 de 05

de 2018 de Ministerio de educacioacuten cultura y deportes Gobierno de Espantildea

httprecursosticeducacionesobservatoriowebessoftwaresoftware-general1040-

introduccion-a-la-seguridad-informaticashowall=1

Murugesan S (01 de 02 de 2008) Researchgate doi101109MITP200810

Nahar K amp Abu Abbas O (01 de 2010) Researchgate Recuperado el 07 de 2019 de

Researchgate

httpswwwresearchgatenetpublication315492522_Hybrid_Cipher_System

Nievas F Pino O amp Arroyo R (sf) Los clusters como Plataforma de Procesamiento Paralelo

Recuperado el 25 de 04 de 2018 de

httpusuarioslycoseslacaraocultadescargasClusters_definitivo pdf

Pawar S (2016) A computer science portal for geeks Recuperado el 10 de 2018 de

Geeksforgeeks httpswwwgeeksforgeeksorgrc5-encryption-algorithm

Peleus (2019) NETSEC Recuperado el 08 de 2019 de httpsnetsecwsp=314

Peacuterez Tavera I (2014) Obtenido de Universidad Autonoma del Estado de Hidalgo

httpswwwuaehedumxscigeboletinprepa4n2e4html

Peacuterez M (2001) Recuperado el 15 de 04 de 2018 de

httpwwwdragonesorgBibliotecaArticulosArquitecturaParalela2pdf

Petitet A Whaley R C Dongarra J amp Cleary A (2008) HPL - A Portable Implementation of

the High-Performance Linpack Benchmark for Distributed-Memory Computers

Recuperado el 07 de 2019 de httpwwwnetliborgbenchmarkhpl

Picolet J (2017) Hash Crack Password Cracking Manual (Vol 2) Createspace Independent

Pub

100

Preukschat A (23 de 02 de 2015) Oro y Finanzas Recuperado el 07 de 2019 de

httpswwworoyfinanzascom201502que-es-colision-criptografia-bitcoin

Robbins D (2008) OpenMosix Recuperado el 22 de 04 de 2018 de the openMosix Project

httpopenmosixsourceforgenetintroduction_to_openmosixhtml

Rocha Quezada J d Botello Rionda S Vargas Feacutelix J M amp Munguiacutea Torres I A (Sep-Dic

de 2011) Disentildeo e implementacioacuten de un cluacutester de coacutemputo de alto rendimiento Acta

Universitaria 21(3) 24-33 Recuperado el 1 de 12 de 2018

Rocksclusters (01 de 01 de 2010) httpwwwrocksclustersorg Recuperado el 01 de 06 de 2018

de httpwwwrocksclustersorg httpwwwrocksclustersorg

Sanjoy K (01 de 01 de 2015) DZone Recuperado el 15 de 06 de 2019 de DZone

httpsdzonecomarticlessecurity-algorithms-des-algorithm

Security Degree Hub (01 de 2017) Security Degree Hub Recuperado el 13 de 02 de 2019 de

Security Degree Hub httpswwwsecuritydegreehubcomwhat-is-cryptanalysis

Simmons G (01 de 01 de 2019) Encyclopedia Britannica Recuperado el 08 de 2019 de

Encyclopedia Britannica httpswwwbritannicacomtopicRSA-encryption

statista (09 de 2017) Statista Obtenido de Statista Co httpsesstatistacom

Turner D (2004) Recuperado el 12 de 02 de 2018 de Ames Lab

httpwwwsclameslabgovProjectsparrallel_computingpara_intohtml

United States Government Department of Defense (1983) Trusted Computer System Evaluation

Criteria Rainbow Series

Universidad Internacional de Valencia (09 de Septiembre de 2016) Nuestros

expertosTecnologiacutea Recuperado el 27 de Abril de 2018 de Universidad Internacional de

Valencia httpswwwuniversidadviuesla-seguridad-informatica-puede-ayudarme

101

Wallen J (19 de 01 de 2019) Lifewire Recuperado el 13 de 06 de 2019 de Lifewire

httpswwwlifewirecomgnome-3-desktop-4175640

Yang H (01 de 02 de 2019) Herong Yang Recuperado el 15 de 06 de 2019 de Cryptography

Tutorials httpwwwherongyangcomCryptographyDSA-Introduction-What-Is-DSA-

Digital-Signature-Algorithmhtml

102

Anexo 1

Programa en Lenguaje C para la obtencioacuten de nuacutemeros primos utilizando libreriacuteas mpi

include ltcstdlibgt

include ltiostreamgt

include ltiomanipgt

include ltcmathgt

include ltctimegt

include mpih

using namespace std

int main ( int argc char argv[] )

int prime_number ( int n int id int p )

void timestamp ( )

int main ( int argc char argv[] )

int i

int id

int master = 0

int n

int n_factor

int n_hi

int n_lo

int p

int primes

int primes_part

double wtime

n_lo = 1

n_hi = 10000000

n_factor = 2

MPIInit ( argc argv )

p = MPICOMM_WORLDGet_size ( )

id = MPICOMM_WORLDGet_rank ( )

if ( id == master )

cout ltlt n

cout ltlt Cuenta primosn

cout ltlt C++MPI versionn

cout ltlt n

cout ltlt Programa para contar cantidad de primos para un N dadon

cout ltlt Corriendo en ltlt p ltlt procesosn

cout ltlt n

103

cout ltlt N S Tiempon

cout ltlt n

n = n_lo

while ( n lt= n_hi )

if ( id == master )

wtime = MPIWtime ( )

MPICOMM_WORLDBcast ( ampn 1 MPIINT master )

primes_part = prime_number ( n id p )

MPICOMM_WORLDReduce ( ampprimes_part ampprimes 1 MPIINT

MPISUM

master )

if ( id == master )

wtime = MPIWtime ( ) - wtime

cout ltlt ltlt setw(8) ltlt n

ltlt ltlt setw(8) ltlt primes

ltlt ltlt setw(14) ltlt wtime ltlt n

n = n n_factor

MPIFinalize ( )

if ( id == master )

cout ltlt n

cout ltlt PRIME_MPI - Procesos maestron

cout ltlt Finalizacion del calculo normaln

return 0

int prime_number ( int n int id int p )

int i

int j

int prime

int total

104

total = 0

for ( i = 2 + id i lt= n i = i + p )

prime = 1

for ( j = 2 j lt i j++ )

if ( ( i j ) == 0 )

prime = 0

break

total = total + prime

return total

void timestamp ( )

define TIME_SIZE 40

static char time_buffer[TIME_SIZE]

const struct tm tm

size_t len

time_t now

now = time ( NULL )

tm = localtime ( ampnow )

len = strftime ( time_buffer TIME_SIZE d B Y IMS p tm )

cout ltlt time_buffer ltlt n

return

undef TIME_SIZE

Page 14: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios

2

ldquoDesde la aparicioacuten de los grandes sistemas aislados hasta nuestros diacuteas en los que el

trabajo en red es lo habitual los problemas derivados de la seguridad de la informacioacuten han ido

tambieacuten cambiando evolucionando pero estaacuten ahiacute y las soluciones han tenido que ir adaptaacutendose

a los nuevos requerimientos teacutecnicos Aumenta la sofisticacioacuten en el ataque y ello aumenta la

complejidad de la solucioacuten pero la esencia es la mismardquo (Mifsud 2012)

Dentro del mundo actual la informacioacuten es denominada un activo importante de una

institucioacuten la cual debe ser protegida para evitar su peacuterdida modificacioacuten o el uso inadecuado de

su contenido

El extraviacuteo o el mal uso de informacioacuten que para alguien es confidencial genera dantildeos y

repercusiones directas relacionadas a la integridad disponibilidad y confidencialidad de los

archivos y a su vez a los duentildeos de dicha informacioacuten

ldquoLa seguridad informaacutetica se distingue por tener dos propoacutesitos de seguridad la Seguridad

de la Informacioacuten y la Proteccioacuten de Datos estos se diferencian debido a que los datos son valores

numeacutericos que soportan la informacioacuten mientras que la informacioacuten es aquello que tiene un

significado para nosotrosrdquo (Gonzaacutelez Agudelo 2014)

La seguridad informaacutetica consiste en asegurar que los recursos del sistema de informacioacuten

(material informaacutetico o programas) de una organizacioacuten sean utilizados de la manera que se decidioacute

3

inicialmente y que el acceso a la informacioacuten alliacute contenida asiacute como su modificacioacuten soacutelo sea

posible a las personas que se encuentren acreditadas y dentro de los liacutemites de su autorizacioacuten

Actualmente hay mucha informacioacuten circulando en internet por ejemplo correos

electroacutenicos publicaciones en Twitter Facebook videos fotos comercio electroacutenico secretos de

estado militares o industriales Lamentablemente dicha red es puacuteblica e insegura dentro de la cual

existen usuarios bien intencionados y muchos mal intencionados Diariamente encontramos

noticias de sitios con intrusiones mal intencionadas (hackeados) clonacioacuten de tarjeta de creacutedito o

imaacutegenes adulteradas Todo lo anterior motiva la necesidad de proteger la informacioacuten a traveacutes de

mecanismos que impidan a los usuarios no autorizados acceder a dicha informacioacuten

4

12 Planteamiento del Problema

Los sistemas de informacioacuten actuales estaacuten relacionados completamente con la exposicioacuten

de su informacioacuten a entidades externas que son ajenas a la organizacioacuten o delegacioacuten a la que

pertenecen

Cuando no se conoce el alcance que tienen los sistemas informaacuteticos ni lo vulnerables que

pueden ser si son expuestos a Internet por los mismos empleados de la organizacioacuten puede darse

ldquofugardquo de informacioacuten hacia el exterior esto los hace vulnerables a eventos y amenazas que

conllevan a riesgos que pueden provocar peacuterdidas tangibles e intangibles las cuales se traducen

en peacuterdidas que en muchos de los casos por decir lo menos seraacuten monetarias

El portal espantildeol de estadiacutesticas statista muestra la cuota de mercado de los principales

sistemas operativos a nivel mundial a fecha de febrero de 2017 seguacuten el nuacutemero de instalaciones

(statista 2017) Windows 10 fue el segundo sistema operativo maacutes instalado con una cuota de

mercado de 253 Esto significa que alrededor de una de cada cuatro computadoras estaacute

gobernado por este sistema operativo Por su parte en el caso de Windows 7 el porcentaje se situacutea

por encima del 45 a pesar de que ya no se vende ninguacuten PC con este sistema operativo Hablando

de manera conjunta los sistemas operativos Windows cuentan con una cuota del mercado global

de 8857

La empresa de seguridad informaacutetica Britaacutenica Avecto informoacute en su Microsoft

Vulnerabilities Report 2017 (Avecto 2017) (reporte 2017 de vulnerabilidades de Windows) un

aumento de vulnerabilidades publicadas del 111 en los uacuteltimos 5 antildeos de las cuales 235 criacuteticas

5

fueron mitigadas removiendo permisos de administrador asiacute como otras muy importantes

enfocadas al Administrador de Cuentas de Seguridad (SAM Security Account Manager por sus

siglas en ingleacutes) la cual es una base de datos almacenada como un archivo del registro en Windows

y que almacena las contrasentildeas de los usuarios en un formato hash (Algoritmos que crean a partir

de una entrada una salida alfanumeacuterica de longitud fija)

6

13 Objetivos

131 Objetivo General A traveacutes de la implementacioacuten de un procedimiento de fuerza

bruta utilizando para ello un cluacutester de alto rendimiento asiacute como software de uso libre lograr

capacidad de procesamiento capaz de vulnerar un sistema de autenticacioacuten nivel C1

132 Objetivos Especiacuteficos

Analizar los diferentes niveles de seguridad de sistemas operativos

Analizar diferentes meacutetodos de criptoanaacutelisis para vulnerar el Administrador de

cuentas de seguridad

Estudiar las teacutecnicas de agrupamiento de computadoras (clustering) para la

obtencioacuten de mayor poder de procesamiento

Implementar un cluacutester de alto rendimiento en el Laboratorio de la Maestriacutea en

Sistemas Computacionales del Instituto Tecnoloacutegico de Acapulco para ejecutar

operaciones de coacutemputo distribuido

7

14 Justificacioacuten

Antes la seguridad de la informacioacuten se realizaba a traveacutes de medios fiacutesicos por ejemplo

una caja fuerte en la cual las personas resguardaban objetos o informacioacuten valiosa para ellos Con

la introduccioacuten de las computadoras y el uso de internet los usuarios comienzan a almacenar

informacioacuten importante dentro de sus equipos por lo que se considera indispensable el uso de

herramientas que brinden proteccioacuten a la informacioacuten que se encuentra resguardada dentro de

eacutestas Los usuarios informaacuteticos suelen enviar informacioacuten por la red en las empresas al realizar

traacutemites o enviar informes a socios jefes entre otros

El resguardo de informacioacuten siempre ha sido importante para los seres humanos con la

diferencia que anteriormente no se contaba con los avances tecnoloacutegicos que tenemos actualmente

puesto que con la introduccioacuten de internet y el uso de dispositivos electroacutenicos se tiene mayor

riesgo de la informacioacuten que en ellos se maneja

La proteccioacuten del contenido de los datos es una necesidad urgente en casi todos los aacutembitos

de la sociedad incluyendo los servicios puacuteblicos y privados por lo que la tecnologiacutea de la

seguridad de los sistemas de cifrado se encuentra de frente a verdaderos retos

15 Hipoacutetesis

A traveacutes de un de fuerza bruta como teacutecnica de criptoanaacutelisis y con la ayuda de una mayor

capacidad de procesamiento mediante la implementacioacuten de agrupamiento de computadoras

(cluacutester) de alto rendimiento seraacute posible encontrar alguna vulnerabilidad dentro del sistema de

administracioacuten de cuentas de seguridad de Windows server 2012

8

16 Alcances y Limitaciones

Esta tesis se centraraacute en el sistema operativo Windows como objeto de estudio al cual se

le realizaraacute el criptoanaacutelisis

La tesis se enfocaraacute en el meacutetodo Beowulf para realizar el agrupamiento de computadoras

asiacute como la distribucioacuten de software libre del sistema operativo Linux Rocks

El nuacutemero de equipos disponibles para poder realizar el agrupamiento es de 17

computadoras hasta lograr el poder de coacutemputo de 800 Gflops

17 Impacto Social Tecnoloacutegico Econoacutemico y Ambiental

La sostenibilidad del presente proyecto seraacute abordada a partir de los siguientes aspectos

171 Impacto social A veces se puede pensar que un cluacutester de alto rendimiento pudiera

no tener alguacuten impacto directo en el medio social pero si nos enfocamos a un punto de vista en

donde gracias a la capacidad de procesamiento de estas maacutequinas han sido parte fundamental en

el desarrollo de proyectos que inciden de manera directa en beneficio de la sociedad en la que

vivimos como lo es la medicina la fiacutesica quiacutemica

Este proyecto busca beneficiar a nuestra sociedad proveyendo su capacidad de

procesamiento en la buacutesqueda de alguna vulnerabilidad en el sistema operativo maacutes utilizado hoy

en diacutea como lo es Windows ademaacutes de que estaraacute disponible para la comunidad cientiacutefica y

9

estudiantil del Instituto Tecnoloacutegico de Acapulco para optimizar tiempo de caacutelculo en futuras

investigaciones

172 Impacto ambiental Green IT tambieacuten conocido como Green Computing o

traducido al espantildeol como Tecnologiacuteas Informaacuteticas Verdes es definido como el estudio y la

praacutectica de disentildear desarrollar usar y disponer de computadoras servidores y diferentes

perifeacutericos tales como monitores impresoras dispositivos de almacenamiento de redes y

comunicaciones eficientemente y efectivamente con un impacto miacutenimo o nulo en el medio

ambiente (Murugesan 2008)

Bajo la premisa anterior este proyecto hace uso de los equipos con los que cuenta

actualmente el laboratorio de la Maestriacutea en Sistemas Computacionales lo cual evitaraacute la

adquisicioacuten de equipo nuevo y por consecuencia desechar el equipo existente evitando desperdicio

electroacutenico Dicho equipo cuenta con un procesador Intel I3 de 4ta generacioacuten lo cual seguacuten el

portal electroacutenico Europa press

ldquoEsta nueva generacioacuten supone el mayor salto en cuanto ahorro energeacutetico de la historia

de Intel asiacute como una mejora en los graacuteficos y nuevas experiencias de usuariordquo (europa press

2013)

Teniendo como base estos dos puntos importantes como lo son la reutilizacioacuten de equipo

y utilizando procesadores de bajo consumo energeacutetico es como este proyecto busca contribuir de

manera positiva con el medio ambiente

10

173 Impacto econoacutemico Actualmente existe una gran necesidad de procesar grandes

cantidades de datos lo cual hace imprescindible disponer de maacutequinas con estas caracteriacutesticas sin

embargo su alta complejidad aunado al gran costo hace que en instituciones de caraacutecter puacuteblico

sea muy complicado conseguir recurso para este fin Sin embargo un cluacutester de alto rendimiento

reutilizaraacute equipo propio evitando asiacute gastos por concepto de adquisicioacuten de equipo siendo de

esta manera viable para instituciones de caraacutecter puacuteblico

18 Metodologiacutea a Utilizar

181 Anaacutelisis Despueacutes de analizar las diferentes metodologiacuteas de clustering se optoacute por

desarrollar e implementar un cluacutester de alto rendimiento (HPC)

182 Disentildeo

1821 Economiacutea Debido a las caracteriacutesticas del equipo con el cual cuenta el Laboratorios

de la Maestriacutea en Sistemas Computacionales los componentes utilizados para este proyecto son

considerados de uso comuacuten y de bajo costo lo cual los hace faacutecilmente reemplazables en caso de

fallo a un costo accesible El equipo es de la marca Acer Aspire modelos AXC-605-M021 lo cual

nos hace tener ventaja y respaldo del fabricante con respecto a hardware geneacuterico

1822 Instalaciones Un cluacutester requiere de un ambiente controlado Esto es una

habitacioacuten especial con sistema de enfriamiento capacidad suficiente de carga eleacutectrica control

de humedad y un ambiente libre de polvo Ademaacutes se deben considerar el peso del equipo sobre

el piso (ya sea falso o piso normal) Se recomienda colocarlo en los soacutetanos o en la plata baja de

edificios (Rocha Quezada Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

11

En el laboratorio de la Maestriacutea en Sistemas Computacionales se cuenta con espacio que

reuniacutea la mayoriacutea de las caracteriacutesticas requeridas para este proyecto

1823 Escalabilidad Un cluacutester debe ser faacutecilmente escalable y a su vez confiable Por

tal motivo se ha utilizado equipo de marca lo cual nos proporciona maacutes de confiabilidad en su

desempentildeo y a su vez facilidad de aumentar el nuacutemero de equipos si en un futuro fuese necesario

agrandar este proyecto Se armoacute un cluacutester de cinco computadoras con procesadores Intel Core I3

de 64 bits en cada nodo La memoria incluida y perifeacutericos son faacuteciles de adquirir en el mercado

1824 Red En la parte de redes se utilizoacute un switch fast Ethernet con una velocidad de 1

Gbps el cual tiene tazas de transferencia raacutepida y el costo es notablemente maacutes econoacutemico que

uno de fibra oacuteptica

El cableado seleccionado fue el estaacutendar UTP de cobre con la norma Gigabit Ethernet de

IEEE 8023ab con la categoriacutea de cableado 6e que soporta tazas de transferencia de datos de

1000Base T (1 Gbps)

1825 Software

ldquoEl sistema operativo debe constar con servicios dedicados para compartir y respaldar

archivos asiacute como capacidad de acceder a los datos de trabajo raacutepidamente El sistema operativo

debe tambieacuten proveer servicios de monitoreo y reporte de fallas en el sistemardquo (Rocha Quezada

Botello Rionda Vargas Feacutelix amp Munguiacutea Torres 2011)

12

Existe una gran variedad de software para instalar cluacutester de alto rendimiento sin embargo

como se ha comentado con anterioridad el costo de adquisicioacuten debe ser accesible por tal motivo

se optoacute por una distribucioacuten con licencia GNU de Linux Rocks Cluster la cual es una distribucioacuten

sencilla de instalar y configurar en comparacioacuten con otras distribuciones analizadas dicha

distribucioacuten estaacute basada en CentOS que a su vez estaacute basada en la conocida distribucioacuten de Linux

Red Hat

1826 Almacenamiento Para este proyecto no se requeriraacute un gran espacio de

almacenamiento por tal motivo los equipos utilizados tanto maestro como esclavos mantuvieron

sus unidades de disco originales las cuales son de 1 TB de almacenamiento

183 Implementacioacuten La implementacioacuten del cluacutester de alto rendimiento fue realizada

dentro de las instalaciones del Laboratorio de la Maestriacutea en Sistemas Computacionales del

Instituto Tecnoloacutegico de Acapulco construido inicialmente para este proyecto de criptoanaacutelisis lo

cual requeriraacute suficiente capacidad de procesamiento para poder implementar ataques de fuerza

bruta a sistemas operativos Las caracteriacutesticas del cluacutester construido son

1831 Software El software instalado en cada uno de los nodos es el siguiente

bull Sistema operativo Rocks Cluacutester Linux 74 (64 bits)

bull Libreriacutea de manejo de mensajes Open-MPI 153

bull Software de monitoreo Ganglia

13

1832 Hardware El cluacutester estaacute compuesto de 17 equipos con las siguientes

caracteriacutesticas

bull Nodo Maestro y 16 Nodos Esclavos

- Procesador Intel Core I3 4150 (4 nuacutecleos) Memoria 6 GB Disco Duro SATA 1 TB

tarjeta de Red Gigabit Ethernet

El hardware adicional es el siguiente

bull Interconexioacuten de Red

bull Switch Cisco 26 puertos 1Gbps modelo SG200 Red interna

1833 Recursos totales del cluacutester

bull Nuacutecleos de unidades de procesamiento (cores) 68

bull Capacidad en memoria 92 GB

bull Capacidad en disco 17 TB

19 Aseguramiento Teacutecnico ndash Material

A continuacioacuten se muestra el desglose del equipo utilizado para la elaboracioacuten de un

cluacutester de alto rendimiento estos componentes consisten en Hardware y Software especializado

asiacute como los costos de produccioacuten y personal involucrados en la metodologiacutea y elaboracioacuten del

proyecto

Costos de Hardware

Costos de Software

14

191 Hardware En este punto se refleja el costo de los dispositivos y herramientas a nivel

fiacutesico las cuales sirvieron para la implementacioacuten del proyecto cluacutester de alto rendimiento Cabe

resaltar que el equipo utilizado forma parte del inventario actual del Laboratorio motivo por el

cual su utilizacioacuten no causoacute erogacioacuten alguna sin embargo la investigacioacuten de costos se realizoacute

con la finalidad que el lector pueda establecer comparativas y buscar alternativas en caso de ajuste

de presupuesto

1911 Equipo de coacutemputo El equipo de coacutemputo utilizado consta de diecisiete

computadoras las cuales serviraacuten una para Nodo Maestro y las dieciseacuteis restantes como Nodos

Esclavos

La descripcioacuten de estos equipos se muestra en la tabla a continuacioacuten mostrando los costos

de todos los equipos utilizados dentro del proyecto

15

Tabla 11 Costo del Proyecto

Modelo

Cantidad

Caracteriacutesticas

Costos

PC - Acer AXC-

605

17

Procesador Intel Core i3

Pantalla 156rdquo

Disco duro 1TB HDD

RAM 6GB

Salida HDMI

Tarjeta de graacuteficos INTEGRADA

Lector de CD

Los costos en el mercado de una PC de

escritorio con estas caracteriacutesticas tiene un

valor aproximado de $600000 pesos

(Moneda nacional Mexicana)

Switch Cisco

Gigabit Ethernet

1

Modelo SG200 de 26 puertos

Costo en el mercado alrededor de

$2000000 pesos MN

Total

12200000 pesos MN

16

Capiacutetulo 2 Estado del Arte

Tiacutetulo del Trabajo Introduccioacuten a la Criptografiacutea

Autor Gibraacuten Granados Paredes

Fecha Julio 2010

Lugar Ciudad de Meacutexico

Publicado en Coordinacioacuten de Publicaciones Digitales DGSCA-UNAM

httpwwwrevistaunammxvol7num7art55int55htm

Siacutentesis Cuando se desea tener seguridad hablando en aacutembitos informaacuteticos la

criptografiacutea es una herramienta muy uacutetil el autor lo entiende tambieacuten como un medio para

garantizar las propiedades de confidencialidad integridad y disponibilidad de los recursos de un

sistema

Con la criptografiacutea se puede garantizar las propiedades de integridad y confidencialidad

pero hay que saber coacutemo utilizarla para ello es importante tener claros los conceptos baacutesicos que

estaacuten detraacutes de los sistemas criptograacuteficos modernos Estos conceptos van desde entender queacute es

la criptografiacutea coacutemo estaacute clasificada entender el funcionamiento baacutesico de algunos sistemas de

cifrado y conocer coacutemo se forman los documentos digitales como firmas y sobres digitales

Resultados El autor realiza un viaje por un gran nuacutemero de conceptos utilizados en

criptografiacutea el inicio y la clasificacioacuten de la misma asiacute como la criptografiacutea claacutesica y moderna y

analiza de manera breve algunos meacutetodos de cifrado maacutes comunes

17

Tiacutetulo del Trabajo Criptoanaacutelisis sobre meacutetodos claacutesicos de cifrado

Autores Sebastiaacuten Goacutemez Juan David Arias Diego Agudelo

Fecha 2 de mayo 2013

Lugar Ciudad de Meacutexico

Publicado en Scientia et Technica Antildeo XVII No 50 abril de 2012

Siacutentesis Los algoritmos criptograacuteficos utilizados desde la antigua Roma hasta nuestros

diacuteas son meacutetodos que convierten un mensaje de texto plano a cifrado al proceso inverso se le

conoce como descifrar Este artiacuteculo realiza un estudio de algunas teacutecnicas de encriptacioacuten claacutesicas

del siglo pasado como lo son el cifrado de Cesar y el cifrado de Vigeneacutere asiacute como muestra

teacutecnicas baacutesicas y modernas de criptoanaacutelisis basadas en la teoriacutea de la informacioacuten y estadiacutestica

como lo son la entropiacutea y el ataque de maacutexima correlacioacuten Las teacutecnicas de criptoanaacutelisis descritas

anteriormente pueden ser usadas en otros meacutetodos de cifrado siempre y cuando esteacuten presentes las

mismas debilidades

Resultados Los autores implementaron en lenguajes de programacioacuten Python un

algoritmo para el caacutelculo de entropiacutea para diferentes longitudes de clave Para la implementacioacuten

de los algoritmos de cifrado y descifrado de Vigeneacutere y de maacutexima correlacioacuten utilizaron lenguaje

de programacioacuten C++ Se probaron los meacutetodos anteriormente descritos sobre textos planos de

diferentes longitudes logrando un resultado de 9385 de efectividad en promedio

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de dos de los

algoritmos de encriptacioacuten maacutes antiguos y baacutesicos pero sobre todo que conociendo los meacutetodos

de criptoanaacutelisis me permitiraacuten analizar debilidades y fortalezas de algoritmos

18

Tiacutetulo del Trabajo ULTRACOM Computacioacuten de Alto Rendimiento para Criptoanaacutelisis

Autor Antonio Castro Lechtaler Alejandro Repetto Martiacuten Bianchi Marcelo Cipriano

Alejandro Arroyo Arzubi Ceacutesar Cicerchia Eduardo Malvacio

Fecha octubre 2014

Lugar Buenos Aires Argentina

Publicado en XX Congreso Argentino de Ciencias de la Computacioacuten (Buenos Aires

2014)

Siacutentesis La generacioacuten de nuacutemeros primos fundamentales para la produccioacuten de claves

el anaacutelisis de secuencias pseudo-aleatorias los procesos de verificacioacuten y validacioacuten de algoritmos

de seguridad en un sentido geneacuterico requieren enormes cantidades de procesamiento Los

procesos relacionados con la matemaacutetica criptograacutefica se caracterizan por la alta necesidad de

coacutemputo El objetivo de ULTRACOM es desarrollar una computacioacuten distribuida multipropoacutesito

que permita como primera aplicacioacuten real el anaacutelisis la validacioacuten y la ejecucioacuten de pruebas de

estreacutes sobre sistemas criptograacuteficos El presente trabajo de investigacioacuten detalla el proceso de

desarrollo de ULTRACOM y muestra un ejemplo de su implementacioacuten en una versioacuten Beta Para

ello toman como entrada dos versiones del algoritmo Trivium Utilizando la misma

infraestructura y sin desarrollo extra se prueban grandes voluacutemenes de claves y vectores de

inicializacioacuten de los algoritmos en busca de secuencias deacutebiles de menor longitud que la de la

buscada

Resultados El equipo implementoacute una versioacuten beta de la plataforma ULTRACOM

comprobando la factibilidad y viabilidad teacutecnica de la generalizacioacuten de la infraestructura de

computacioacuten distribuida en grilla (malla) BOINC Este avance permite extender los horizontes de

BOINC y habilita la posibilidad de obtener la capacidad de coacutemputo de alto rendimiento a bajo

19

costo Concluyeron que ULTRACOM es un proyecto viable escalable y de alto impacto para la

evaluacioacuten y validacioacuten de algoritmos criptograacuteficos

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento y la

implementacioacuten de una arquitectura de computacioacuten distribuida y una vez siendo factible su

desarrollo utilizar su poder de coacutemputo atacando a traveacutes de un algoritmo un sistema criptograacutefico

20

Tiacutetulo del Trabajo Criptografiacutea Cuaacutentica

Autor M Baig

Fecha 2010

Lugar Barcelona Espantildea

Siacutentesis En este artiacuteculo el autor realiza una breve introduccioacuten a la criptografiacutea claacutesica y

la relacioacuten que existe con la teoriacutea de la informacioacuten de Shannon la cual asegura que el cifrado

digital simeacutetrico es secreto y perfecto siempre y cuando se cumplan los tres requisitos

1 La llave ha de ser aleatoria

2 La llave debe usarse soacutelo una vez

3 La llave ha de ser tan larga como el mensaje y de un solo uso debe de estar en posesioacuten

tanto del emisor como del receptor

El punto 3 es el maacutes complicado de cumplir debido a la forma de compartir la llave entre

el emisor y receptor

Maacutes adelante en el artiacuteculo se hace un anaacutelisis sobre otra teacutecnica de criptografiacutea que es el

cifrado digital asimeacutetrico en la que se estudia coacutemo funcionan las llaves privadas y puacuteblicas asiacute

como el meacutetodo de criptograacutefico RSA

Resultados

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento maacutes profundo de

los meacutetodos de criptografiacutea simeacutetricos y asimeacutetricos especiacuteficamente el algoritmo asimeacutetrico

RSA

21

Tiacutetulo del Trabajo La Criptografiacutea Maderista en la Revolucioacuten Mexicana (1910-1911)

Criptoanaacutelisis de una carta cifrada por Gabriel Leyva Solano

Autor Roberto Narvaacuteez

Fecha 2011

Lugar Meacutexico DF

Siacutentesis Este trabajo aborda temas relacionados con las comunicaciones secretas del

movimiento revolucionario comandado por Francisco I Madero a partir de 1910 Se compone de

dos partes la primera es una breve resentildea criacutetica de ejemplos criptograacuteficos del maderismo que

fueron generados entre 1910 y 1911 la segunda describe paso a paso el criptoanaacutelisis que aplicoacute

el autor Roberto Narvaacuteez para desencriptar una carta parcialmente cifrada de Gabriel Leyva Solano

a Francisco I Madero

Resultados El propoacutesito general uacuteltimo es contribuir al conocimiento de la criptografiacutea

mexicana en el siglo XX En lo particular se trata de poner a disposicioacuten de los estudiosos el

contenido completo de la carta de Leyva Solano por primera vez despueacutes de 100 antildeos y al mismo

tiempo someter a la criacutetica teacutecnica e histoacuterica el procedimiento criptoanaliacutetico puesto en operacioacuten

para recuperar el texto plano

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados en nuestro paiacutes sobre formas y meacutetodos de encriptacioacuten durante la Revolucioacuten

Mexicana incluso mucho antes de la 2ordf Guerra mundial momento donde se registroacute un auge

importante dentro de la criptografiacutea moderna

22

Tiacutetulo de Tesis Anaacutelisis de la programacioacuten concurrente sobre la cpu y gpu en el

desarrollo de fractal build

Autor Joseacute Vicente Anilema Guadalupe

Fecha 2012

Lugar Riobamba Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la geometriacutea euclidiana debido a que

el autor realiza una aplicacioacuten que crea paisajes fractales lo que significa crear un paisaje con una

misma figura geomeacutetrica Lo anterior se traduce en una necesidad de gran poder de coacutemputo para

realizar de una manera eficaz la tarea Dentro de la tesis el autor realiza diversos estudios

comparativos entre el procesamiento serializado realizado por una CPU (unidad central de

procesamiento) y procesamiento paralelizado realizado por una GPU (Unidad grafica de

procesamiento) a traveacutes de diversas herramientas para obtener el mejor aprovechamiento de los

recursos

Resultados El autor concluye que es necesario examinar los algoritmos a utilizar para que

estos puedan ser utilizados en coacutemputo paralelo Ademaacutes de que es necesario aprender ciertas

herramientas a utilizar para aprovechar al maacuteximo el coacutemputo distribuido y no desperdiciar el

poder de procesamiento muy superior que las GPUrsquos nos pueden brindar

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de la teacutecnicas y

estudios realizados para medir y comparar la velocidad de procesamiento de la unidad central de

procesamiento (CPU) y la unidad graacutefica de procesamiento (GPU) Asiacute como la medida en Flops

(Operaciones de punto flotante por segundo)

23

Tiacutetulo del Trabajo Arquitectura cluacutester de alto rendimiento utilizando herramientas de

software libre

Autores Leonardo Chiquiguanca Edyson Malla Freddy Ajila Rene Guamaacuten-Quincheacute

Fecha mayo 2015

Lugar Loja Ecuador

Siacutentesis Este trabajo aborda temas relacionados con la gran cantidad de datos que tienen

que procesar las universidades puacuteblicas dentro de sus investigaciones realizadas en diferentes aacutereas

como la ingenieriacutea medicina etc y la carencia de recursos econoacutemicos para obtener

supercomputadoras que procesen dicha informacioacuten Los autores proponen dentro de su

investigacioacuten la utilizacioacuten de equipo de coacutemputo existente dentro de su universidad y por medio

de software libre realizar agrupamiento de computadoras para poder lograr el procesamiento de

grandes voluacutemenes de datos de una manera accesible

Resultados Los autores concluyen que la mejor arquitectura para el agrupamiento

(cluacutester) de computadoras en ambientes universitarios es la arquitectura Beowulf debido a que la

implementaron en hardware convencional existente dentro de su campus universitario y que

ademaacutes usaron software libre mencionando que el poder de coacutemputo logrado fue muy cercano al

de una supercomputadora

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento de las teacutecnicas

utilizadas en ambientes universitarios para la realizacioacuten de agrupamiento de computadoras y

sobre todo la optimizacioacuten de costos para realizar dicha tarea y tener como finalidad el lograr

mayor capacidad de procesamiento

24

Tiacutetulo de Tesis Desarrollo de un algoritmo de cifrado simeacutetrico de resumen

Autores Jonathan Dave Orjuela Navarrete

Antildeo 2008

Lugar Bogotaacute DC

Siacutentesis Esta tesis realiza un estudio de varios meacutetodos de criptografiacutea simeacutetrica para

posteriormente utilizando diferentes foacutermulas matemaacuteticas crear un algoritmo criptograacutefico

nuevo Dentro de la tesis utiliza dos meacutetodos para realizar pruebas a su algoritmo criptoanaacutelisis

diferencial y criptoanaacutelisis basado en fallos de hardware Dentro de los cuales hace un estudio

detallado de las teacutecnicas y herramientas de criptoanaacutelisis realizado a su algoritmo

Resultados El autor concluye de manera positiva con la realizacioacuten del algoritmo y de

manera satisfactoria con la realizacioacuten de criptoanaacutelisis a su algoritmo pudiendo demostrar la

fortaleza del algoritmo a traveacutes de ejemplo de cifrado con textos claro muy parecido y su

conversioacuten a cadenas completamente diferentes

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de criptoanaacutelisis diferencial y criptoanaacutelisis basado en fallos de hardware para la

evaluacioacuten de algoritmos de cifrado simeacutetrico de textos claros

25

Tiacutetulo del Trabajo Firt step in a Pc cluster development with openMosix

Autores Javier Bilbao Gorka Garate

Antildeo 2008

Lugar Bilbao Spain

Siacutentesis En este trabajo se afirma que es posible hacer maacutequinas de alta capacidad de

caacutelculo mediante la interconexioacuten de equipos con redes de alta velocidad A este tipo de sistemas

se les llama sistemas distribuidos y hoy en diacutea es la tecnologiacutea maacutes utilizada para resolver

problemas que requieren una gran capacidad de caacutelculo La agrupacioacuten de computadoras permite

que varias computadoras trabajen juntas para resolver los problemas de informaacutetica comuacuten Este

artiacuteculo centra su estudio en uno de los diferentes meacutetodos de agrupamiento de computadoras

openMosix El trabajo tambieacuten evaluacutea el cluacutester por dos casos de estudio donde se mejora el

tiempo de ejecucioacuten de los problemas resueltos

Resultados El autor del artiacuteculo concluye con la realizacioacuten satisfactoria de agrupamiento

de computadoras bajo el meacutetodo openMosix el cual uacutenicamente permite agrupamiento de la forma

SSI (Single System Image) que se refiere a que uacutenicamente se puede realizar el agrupamiento con

todos los nodos ejecutando un mismo sistema operativo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras openMosix ventajas desventajas y dificultades para

su implementacioacuten

26

Tiacutetulo del Trabajo Disentildeo e implementacioacuten de un cluacutester tipo Beowulf para el desarrollo

de coacutemputo cientiacutefico avanzado

Autores Edgar Rubeacuten Gonzaacutelez Ramiacuterez Abimael Rodriacuteguez Saacutenchez

Antildeo 2008

Lugar Instituto Politeacutecnico Nacional Meacutexico DF

Siacutentesis Este trabajo de tesis ha desarrollado e implementado una herramienta

computacional llamada Cluster Beowulf para mejorar la programacioacuten paralela Comenzando

con la memoria compartida y distribuida el autor implemento el agrupamiento tipo Beowulf

pensando en procesamiento paralelo la optimizacioacuten de las fuentes informaacuteticas El disentildeo se

construye mediante una distribucioacuten Linux Fedora Core 6 a 64 bits utilizando todas las ventajas

que ofrece el estaacutendar Gigabyt Ethernet La programacioacuten paralela fue desarrollada en lenguaje C

tanto para MPI como para OPENMP

Resultados El autor del artiacuteculo concluye que de acuerdo con los resultados el tiempo

de procesamiento se redujo con el uso muacuteltiples nuacutecleos mejoroacute hasta ocho veces gracias al

multihilo

Conclusioacuten Este artiacuteculo aporta para mi investigacioacuten el conocimiento a fondo de los

meacutetodos de agrupamiento de computadoras Beowulf y su implementacioacuten en sistemas operativos

de uso libre Linux distribucioacuten Fedora 6

27

Marco Teoacuterico

21 Seguridad de la Informacioacuten

La Seguridad de la Informacioacuten consiste y hace referencia a la proteccioacuten de cualquier

amenaza para salvaguardar los activos fijos y en especial toda informacioacuten de la cual estaacute basada

la continuidad de las operaciones de la empresa sean estas ocasionadas dentro o fuera de la misma

con esto se logra disminuir los dantildeos y perjuicios que estas amenazas causariacutean a la organizacioacuten

y a la vez aumentar las oportunidades de servicio hacia otras empresas

La Seguridad de la informacioacuten se consigue mediante la implementacioacuten de controles

efectivos que pueden ser normas manual de funciones buenas praacutecticas procedimientos

estructuras organizativas funciones de software y hardware planes de contingencia y herramientas

que se encargan de proteger la privacidad e integridad de la informacioacuten que se almacena en un

sistema informaacutetico Estos controles necesitan continuamente ser establecidos monitoreados

revisados y mejorados en donde sea necesario para asegurar que se cumplan los objetivos

especiacuteficos de seguridad en cada aacuterea de negocio de la organizacioacuten

La seguridad informaacutetica es en realidad una rama de la seguridad de la informacioacuten aunque

de forma praacutectica algunos autores suelen utilizar de manera indistinta ambos teacuterminos

211 Objetivo de la seguridad de la informacioacuten En la seguridad de la informacioacuten

sabiendo que dichos procesos de seguridad permiten proteger el recurso maacutes importante y valioso

de una organizacioacuten partiendo como principio fundamental los procesos de aseguramiento el

28

objetivo del proceso de seguridad informaacutetica es obtener un nivel aceptable de seguridad ya que

la informacioacuten es lo maacutes valioso que tiene una institucioacuten o empresa por lo tanto esta debe ser

protegida para que no sea vulnerable y utilizada para fines maliciosos

212 Principios de la seguridad informaacutetica

Confidencialidad Los datos solo deben ser conocidos y accedidos por quienes esteacuten

autorizados durante su almacenamiento procesamiento o trasmisioacuten Verificar y certificar que solo

los usuarios con accesos autorizados puedan acceder a la informacioacuten

Integridad Los datos solo pueden ser modificados y eliminados por quienes esteacuten

autorizados para ello es decir los sistemas y aplicaciones solo deben ser operados por personal

autorizado

Disponibilidad Los sistemas que almacenan datos e informacioacuten deben garantizar su

acceso cuando asiacute se requiera por quienes tengan derecho a ello

213 Caracteriacutesticas de seguridad informaacutetica

Control Solo los usuarios autorizados deciden cuaacutendo y coacutemo permitir el acceso a la

informacioacuten

Auditoriacutea Establece las acciones cuaacutendo las implementa y quieacuten las realiza sobre el

sistema

Autenticidad Define que la informacioacuten necesaria es correcta utilizable y vaacutelida en tiempo

y forma

No Repudio Su funcioacuten es evitar que alguna entidad que envioacute o recibioacute informacioacuten

alegue que no lo hizo

29

214 Formas de Autenticacioacuten

Contrasentildea Una contrasentildea es un tipo de seguridad informaacutetica ya que es una serie de

caracteres secretos que permiten a un usuario tener acceso a un archivo equipo de coacutemputo o

programa y negar el acceso a usuarios no autorizados

Certificado digital Es un tipo de seguridad informaacutetica que permite la firma digital

electroacutenica que garantiza teacutecnica y legalmente la identidad de una persona en Internet

Autenticacioacuten HTTP Tipo de seguridad informaacutetica que delega la autenticacioacuten de

usuarios a un servidor a traveacutes de Kerberos

215 Ciber-seguridad Con los avances tecnoloacutegicos y la demanda que ha causado en ello

existe un elevado iacutendice de informacioacuten personal y empresarial que circula y se mantiene en la red

por la utilizacioacuten del internet esto permite que toda informacioacuten quede expuesta a cualquier ataque

de ciber-delincuentes los cuales buscan la manera de vulnerar cualquier sistema para espiar robar

informacioacuten o hacer dantildeo de cualquier tipo por lo que se ha visto la necesidad de tomar medidas

de seguridad para salvaguardar la informacioacuten ya que es muy importante

La ciberseguridad es la proteccioacuten de los sistemas conectados a Internet incluidos el

hardware el software y los datos de los ciberataques En un contexto informaacutetico la seguridad

comprende la ciberseguridad y la seguridad fiacutesica ambas son utilizadas por las empresas para

proteger contra el acceso no autorizado a los centros de datos y otros sistemas de coacutemputo El

objetivo de la ciberseguridad es limitar el riesgo y proteger los activos de Tecnologiacuteas de

Informacioacuten de los atacantes con intenciones maliciosas La seguridad de la informacioacuten estaacute

30

disentildeada para mantener la confidencialidad integridad y disponibilidad de los datos es un

subconjunto de la ciberseguridad

22 Criptografiacutea

La Criptografiacutea tambieacuten llamada ldquoescritura ocultardquo tradicionalmente en el aacutembito de

criptografiacutea es donde se ocupan las teacutecnicas de cifrado o codificacioacuten que permiten alterar el

contenido de cierta informacioacuten o mensajes con el fin de hacerlos ininteligibles a receptores o

personas no autorizadas (Meneacutendez-Barzanallana 17)

Actualmente la criptografiacutea se encarga de analizar algoritmos protocolos y sistemas que

son utilizados para proveer seguridad a las comunicaciones informacioacuten y a las entidades que se

comunican entre siacute

221 Tipos de Criptografiacuteas

2211 Tablas Hash Un hash o funcioacuten hash toma un grupo de caracteres (llamado clave)

y lo asigna a un valor de cierta longitud (llamado valor hash o hash) El valor hash es representativo

de la cadena de caracteres original pero normalmente es maacutes pequentildeo que el original

El hash tambieacuten es utilizado en el cifrado y descifrado de firmas digitales La funcioacuten hash

transforma la firma digital luego tanto el valor hash como la firma se enviacutean al receptor El

receptor utiliza la misma funcioacuten hash para generar el valor hash y luego lo compara con el recibido

31

en el mensaje Si los valores hash son los mismos es probable que el mensaje se haya transmitido

sin errores

Un ejemplo de una funcioacuten hash se llama plegado(folding) Esta toma un valor original lo

divide en varias partes luego agrega las partes y usa los uacuteltimos cuatro diacutegitos restantes como

valor o clave hash

2212 Tipos de algoritmos Hash

22121 SHA - 1 (Secure Hash Algorithm) Es un algoritmo criptograacutefico de Hash

publicado por el gobierno de los Estados Unidos Genera un valor Hash de 160 bits a partir de una

secuencia de longitud arbitraria Es considerado lo suficientemente seguro para aplicaciones

praacutecticas pero hay disponibles versiones maacutes robustas SHA - 256 SHA - 384 y SHA - 512 que

generan valores Hash de 256 384 y 512 bits respectivamente estas versiones reemplazaraacuten a SHA

- 1 mientras se siga trabajando sobre ellas (Borghello 2009)

22122 MD5 (Message Digest Algorithm) En criptografiacutea MD5 es una funcioacuten hash

criptograacutefica ampliamente utilizada con un valor hash de 128 bits Como estaacutendar de Internet (RFC

1321) MD5 se ha empleado en una amplia variedad de aplicaciones de seguridad y tambieacuten se

usa comuacutenmente para verificar la integridad de los archivos Un hash MD5 generalmente se

expresa como un nuacutemero hexadecimal de 32 diacutegitos

MD5 es una versioacuten reforzada de MD4 Al igual que MD4 el hash MD5 fue inventado por

el profesor Ronald Rivest del Massachusetts Institute of Technology (MIT) Ademaacutes MD5 se

32

utilizoacute como modelo para SHA-1 ya que comparten muchas caracteriacutesticas comunes MD5 y

SHA-1 son los dos algoritmos hash maacutes utilizados en la actualidad aunque el uso de MD5 ha

disminuido ya que ahora se considera roto (Borghello 2009)

22123 RIPEMD ndash 160 Es una funcioacuten hash criptograacutefica basada en la construccioacuten

Merkle-Damgaringrd (MD) Se usa en el estaacutendar de Bitcoin Es una versioacuten reforzada del algoritmo

RIPEMD que produce un resumen de hash de 128 bits mientras que el algoritmo RIPEMD-160

produce una salida de 160 bits La funcioacuten de compresioacuten consta de 80 etapas formadas por 5

bloques que se ejecutan 16 veces cada uno Este patroacuten se ejecuta dos veces con los resultados

combinados en la parte inferior utilizando la adicioacuten del moacutedulo 32 (Borghello 2009)

22124 Funcioacuten Merkle-Damgaringrd La construccioacuten MD es una metodologiacutea para crear

funciones hash resistentes a colisiones a partir de funciones de compresioacuten unidireccionales Ralph

Merkle la propuso en el antildeo de 1979 en ldquoA certified Digital Signaturerdquo posterior a este estudio

Ivan Damgaringrd demostroacute de manera independiente que la estructura era soacutelida (Merkle amp

Damgaringrd sf)

2213 Cifrado simeacutetrico Los cifrados simeacutetricos son los cifrados criptograacuteficos maacutes

antiguos y maacutes utilizados En un cifrado simeacutetrico la clave que descifra el texto cifrado es la

misma (o puede derivarse faacutecilmente) de la clave que cifra el texto claro Esta clave a menudo se

conoce como la clave secreta Los cifrados simeacutetricos maacutes utilizados son DES y AES

La problemaacutetica que surge es la seguridad de la clave

33

El emisor cifra el mensaje con una clave

Enviacutea el mensaje cifrado de tal manera que nadie puede descifrarlo sin dicha clave

El receptor obtiene la clave y entonces puede descifrar el mensaje con la misma clave

que recibioacute del emisor

Algunos algoritmos de este tipo son

22131 RC5 (Cifrado de Rivest) Es un algoritmo de cifrado de bloque de clave simeacutetrica

disentildeado por Ron Rivest en 1994 Se destaca por ser simple raacutepido (debido a que usa solo

operaciones de coacutemputo primitivas como XOR o shift) y ademaacutes por consumir menos memoria

RC5 es un cifrado de bloques y aborda dos bloques de palabras a la vez Dependiendo del

tamantildeo del bloque de texto sin formato nuacutemero de rondas y tamantildeo de clave se pueden definir

varias instancias de RC5 y cada instancia se denota como RC5-w r b donde w = tamantildeo de

palabra en bits r = nuacutemero de rondas y b = tamantildeo de la clave en bytes (Pawar 2016)

Como se ha mencionado RC5 utiliza bloques de 2 palabras el tamantildeo del bloque de texto

sin formato puede ser de 32 64 o 128 bits

22132 IDEA (International Data Encryption Algorithm) Baacutesicamente es un algoritmo

de cifrado de bloque simeacutetrico El algoritmo asimeacutetrico utiliza la misma clave para el cifrado y

descifrado Un cifrado de bloque divide el mensaje en bloques cada uno de una longitud fija y

luego cifra cada bloque de forma independiente

34

El tamantildeo de bloque tiacutepico es de 16 bytes de 128 bits Un cifrado de bloque generalmente

operaraacute en bloques o rondas donde se aplica parte de la clave a la ronda Despueacutes de un cierto

nuacutemero de rondas digamos entre 10 y 16 se termina con el texto cifrado para ese bloque

El bloque de texto cifrado tiene exactamente el mismo tamantildeo que el bloque de texto sin

formato 16 bytes Para cada ronda se trabaja en el bloque utilizando una parte de la clave de

cifrado a la que se le llama la clave redonda Muacuteltiples claves redondas se derivan de la clave de

cifrado utilizando para esto un programa de claves

La programacioacuten de claves es un algoritmo que cambia XOR multiplica y realiza otros

tipos de operaciones en la clave de cifrado original para obtener estas claves redondas Bueno si

tengo un bloque de 16 bytes y tengo una clave de 128 bits que tambieacuten es de 16 bytes (Educba

2019)

22133 DES (Data Encryption Standard) El algoritmo DES es el algoritmo de seguridad

maacutes popular Es un algoritmo simeacutetrico lo que significa que se utilizan las mismas claves para

cifrar descifrar datos confidenciales La longitud de la clave es de 8 bytes (64 bits) Entonces

para cifrar descifrar datos el algoritmo DES utiliza una clave de 8 bytes pero 1 byte (8 bits) para

la verificacioacuten de paridad Es un algoritmo de cifrado de bloque por lo tanto el tamantildeo del bloque

de datos del algoritmo DES es de 64 bits Para cifrar descifrar datos el algoritmo DES utiliza la

estructura Feistel Entonces utiliza una ronda para cifrar descifrar datos Aunque el tamantildeo del

35

bloque de datos es de 64 bits el nuacutemero de rondas seraacute de 16 rondas asiacute mismo utilizaraacute diferentes

subclaves para cada ronda por lo tanto el nuacutemero de subclaves seraacute de 16 subclaves

Como se puede observar la clave efectiva es de 56 bits por consiguiente se tiene 256

combinaciones posibles por lo que la fuerza bruta se hace casi imposible (Sanjoy 2015)

2214 Cifrado asimeacutetrico Los cifrados asimeacutetricos tambieacuten se conocen como cifrados

con claves puacuteblicas y privadas Usan dos claves una para el cifrado de mensajes y la otra durante

el descifrado

Un intruso puede encriptar cualquier mensaje usando la clave puacuteblica conocida Los

cifrados asimeacutetricos son por lo tanto vulnerables a los ataques de texto sin formato Los cifrados

con encriptacioacuten de clave puacuteblica deben proporcionar seguridad contra tales ataques Despueacutes de

encriptar dos mensajes con la misma clave puacuteblica el intruso no puede distinguir queacute texto cifrado

estaacute conectado con queacute texto plano Ademaacutes un observador que analiza dos mensajes encriptados

usando el mismo algoritmo y la misma clave puacuteblica no puede distinguir sus textos cifrados

(Kowalczyk 2015)

Los cifrados asimeacutetricos son mucho maacutes lentos que los cifrados simeacutetricos (generalmente

mil veces maacutes lentos) Es una praacutectica comuacuten usar el cifrado de clave puacuteblica solo para establecer

la conexioacuten segura y negociar la nueva clave secreta que luego se utilizaraacute para proteger la

comunicacioacuten mediante cifrado simeacutetrico Ejemplos de este cifrado son

36

22141 DSA (Digital Signature Algorithm - Algoritmo de Firma digital) Es un estaacutendar

del Gobierno Federal de los Estados Unidos para firmas digitales Fue propuesto por el Instituto

Nacional de Estaacutendares y Tecnologiacutea (NIST) en agosto de 1991 para ser usado en su Estaacutendar de

Firma Digital (DSS) en el antildeo de 1993

La primera parte del algoritmo DSA es la generacioacuten de clave puacuteblica y clave privada que

puede describirse como

Se elige un nuacutemero primo q que se llama divisor primo

Se elige otro nuacutemero primo p de modo que pndash1 mod q = 0 p seraacute llamado moacutedulo

primo

Ahora se elige un nuacutemero entero g tal que 1 ltg ltp g q mod p = 1 g = h ((p

ndash 1) q) mod p q tambieacuten se llama moacutedulo de orden multiplicativo de g moacutedulo p

Se elige un nuacutemero entero tal que 0 ltx ltq

Se calcula y como g x mod p

Se empaqueta la clave puacuteblica como p q g y

Por uacuteltimo se empaqueta la clave privada como p q g x

La segunda parte del algoritmo DSA es la generacioacuten de firma y la verificacioacuten de firma

Para generar una firma de mensaje el remitente puede seguir estos pasos

Se genera el resumen del mensaje h utilizando un algoritmo hash como SHA1

Se genera un nuacutemero aleatorio k tal que 0 ltk ltq

37

Se calcula r como (g k mod p) mod q Si r = 0 seleccione una k diferente

Ahora se calcula i de modo que k i mod q = 1 i se llama el inverso multiplicativo modular

de k moacutedulo q

Se calcula s = i (h + r x) mod q Si s = 0 se selecciona una k diferente

Por uacuteltimo se empaqueta la firma digital como r s (Yang 2019)

22142 RSA Encriptacioacuten RSA encriptacioacuten Rivest-Shamir-Adleman tipo de

criptografiacutea de clave puacuteblica ampliamente utilizada para la encriptacioacuten de datos de correo

electroacutenico y otras transacciones digitales a traveacutes de Internet RSA lleva el nombre de sus

inventores Ronald L Rivest Adi Shamir y Leonard M Adleman quienes lo crearon mientras

trabajaban en la facultad del Instituto Tecnoloacutegico de Massachusetts (Simmons 2019)

En el sistema RSA un usuario elige de manera secreta un par de nuacutemeros primos p y q tan

grandes que factorizar el producto n = pq estaacute mucho maacutes allaacute de las capacidades informaacuteticas

proyectadas para la vida uacutetil de los cifrados A partir del antildeo 2000 los estaacutendares de seguridad del

gobierno de EE UU exigen que el moacutedulo tenga un tamantildeo de 1024 bits es decir p y q deben

tener un tamantildeo de aproximadamente 155 diacutegitos decimales por lo que n es aproximadamente un

nuacutemero de 310 diacutegitos Dado que los nuacutemeros duros maacutes grandes que actualmente se pueden

factorizar son solo la mitad de este tamantildeo y dado que la dificultad de factorizar se duplica

aproximadamente por cada tres diacutegitos adicionales en el moacutedulo se cree que los moacutedulos de 310

diacutegitos estaacuten a salvo de factorizar durante varias deacutecadas

38

2215 Cifrado hiacutebrido Es una teacutecnica comuacuten que combina diferentes funciones

criptograacuteficas como el cifrado de bloque Con el cifrado hiacutebrido se pueden cifrar datos firmarlos

o agregar un MAC y enviarlos en un objeto seguro (como una cadena o archivo) a traveacutes de un

canal de comunicacioacuten inseguro (sin un acuerdo clave entre dos partes)

En el sistema de cifrado hiacutebrido el texto plano (sin formato) se divide en tokens Luego

se calcula la longitud de cada ficha Los tokens y sus longitudes se almacenan en una matriz

Posteriormente se aplica el algoritmo Ceacutesar anidado sugerido El texto producido se almacena en

una matriz n x m llamada A Luego la transposicioacuten de esta matriz At se calcula utilizando

nuestra versioacuten revisada del cifrado de transposicioacuten para resolver el problema de secuenciacioacuten

A continuacioacuten el algoritmo RSA revisado se aplica en la matriz producida En el paso final se

aplica el formato de datos textuales usando el coacutedigo ASCII para producir el texto cifrado El

proceso de descifrado se realiza de la misma manera pero en orden inverso (Nahar amp Abu Abbas

2010)

23 Criptoanaacutelisis

El criptoanaacutelisis es el proceso de estudiar sistemas criptograacuteficos para buscar debilidades

o fugas de informacioacuten En general se considera que el criptoanaacutelisis explora las debilidades de

las matemaacuteticas subyacentes de un sistema criptograacutefico pero tambieacuten incluye la buacutesqueda de

debilidades en la implementacioacuten como ataques de canal lateral o entradas de entropiacutea deacutebiles

39

Su funcioacuten es la de conseguir obtener el significado de mensajes creados por medio de

criptografiacutea El objetivo principal del criptoanaacutelisis es opuesto al de la criptografiacutea Tiene como

finalidad encontrar la debilidad de las diferentes teacutecnicas criptograacuteficas para explotarla y de esta

manera reducir o eliminar la seguridad de la teacutecnica criptograacutefica Cualquier intento de

criptoanaacutelisis puede ser llamado ataque Una vez que un atacante logra romper la seguridad que

una teacutecnica criptograacutefica aportaba al sistema se dice que dicho sistema ha sido roto y por lo tanto

dicho ataque tuvo eacutexito

El criptoanaacutelisis es la investigacioacuten de sistemas texto cifrado y cifrados para revelar el

significado oculto o los detalles del sistema mismo El objetivo de este tipo de estudio es descubrir

los aspectos ocultos incluso si la clave o el algoritmo principal no se pueden descifrar Se necesita

una combinacioacuten exitosa de persistencia matemaacuteticas intuicioacuten curiosidad y una computadora

que funcione para hacer un buen criptoanalista Este tipo de ruptura de coacutedigo es extremadamente

importante especialmente en el mundo tecnoloacutegicamente dependiente de hoy El criptoanaacutelisis es

constantemente realizado por criptoacutegrafos que intentan obtener informacioacuten valiosa y por aquellos

que intentan descifrar el coacutedigo para revelar secretos (Security Degree Hub 2017)

24 Niveles de seguridad

Los niveles de seguridad de sistemas operativos son otorgados de acuerdo con el sistema

operativo que esteacute utilizando la empresa o institucioacuten ya sea puacuteblica privada gubernamental o no

gubernamental En el manual ldquoTrusted Computer System Evaluation Criteriardquo (United States

40

Government Department of Defense 1983) el Departamento de Defensa de los Estados Unidos

define los siguientes niveles

241 Nivel D1 Este nivel es el maacutes bajo de seguridad por lo tanto la norma establece que

el sistema no es confiable Esta divisioacuten contiene solo una clase Estaacute reservado para aquellos

sistemas que han sido evaluados pero que no cumplen con los requisitos para un nivel de

evaluacioacuten superior

242 Nivel C1 Un sistema de nivel C1 cumple nominalmente los requisitos de seguridad

discrecionales al proporcionar separacioacuten de usuarios y datos Incorpora alguna forma de controles

creiacutebles capaces de imponer limitaciones de acceso de manera individual es decir aparentemente

adecuados para permitir que los usuarios puedan proteger la informacioacuten privada o del proyecto y

evitar que otros usuarios lean o destruyan accidentalmente sus datos Se espera que el entorno de

nivel C1 sea uno de los usuarios cooperantes que procesan datos con el mismo nivel de

sensibilidad Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten

de nivel C1 son

Control de acceso discrecional por ejemplo listas de control de acceso (ACL)

usuario grupo

Por lo general para usuarios que estaacuten en el mismo nivel de seguridad

Proteccioacuten de nombre de usuario y contrasentildea y base de datos de autorizaciones

seguras (ADB)

Sistema operativo protegido y modo de operaciones del sistema

Comprobacioacuten perioacutedica de integridad de TCB

41

Mecanismos de seguridad probados sin derivaciones obvias

Documentacioacuten para la seguridad del usuario

Documentacioacuten para la seguridad de la administracioacuten de sistemas

Documentacioacuten para pruebas de seguridad

Documentacioacuten de disentildeo TCB

Tiacutepicamente para usuarios en el mismo nivel de seguridad

La certificacioacuten C1 es rara Los sistemas de ejemplo son versiones anteriores de

Unix IBM RACF

243 Nivel C2 Los sistemas de esta clase imponen un control de acceso discrecional maacutes

fino que los sistemas (C1) lo que hace que los usuarios sean individualmente responsables de sus

acciones a traveacutes de procedimientos de inicio de sesioacuten auditoriacutea de eventos relevantes para la

seguridad y aislamiento de recursos Los siguientes son requisitos miacutenimos para los sistemas

asignados a una clasificacioacuten de nivel C2

La proteccioacuten de objetos puede ser para un solo usuario Por ejemplo a traveacutes de

una base de datos ACL

La autorizacioacuten de acceso solo puede ser asignada por usuarios autorizados

Proteccioacuten de reutilizacioacuten de objetos (Por ejemplo para evitar la reasignacioacuten de

objetos eliminados de manera segura)

Procedimientos obligatorios de identificacioacuten y autorizacioacuten para los usuarios (Por

ejemplo Usuario Contrasentildea)

Auditoriacutea completa de eventos de seguridad (es decir fecha hora evento usuario

eacutexito falla ID de terminal)

42

Modo de operacioacuten del sistema protegido

Proteccioacuten adicional para la autorizacioacuten y los datos de auditoriacutea

Documentacioacuten como C1 maacutes informacioacuten sobre el examen de la informacioacuten de

auditoriacutea

Esta es una de las certificaciones maacutes comunes Los sistemas operativos de ejemplo

son VMS IBM OS 400 Windows NT Novell NetWare 411 Oracle 7 DG AOS

VS II

244 Nivel B1 Los sistemas de este nivel requieren todas las caracteriacutesticas requeridas

para el nivel C2 Ademaacutes debe estar presente una declaracioacuten informal del modelo de poliacutetica de

seguridad etiquetado de datos y control de acceso obligatorio sobre sujetos y objetos nombrados

La capacidad debe existir para etiquetar con precisioacuten la informacioacuten exportada Cualquier falla

identificada por la prueba debe ser eliminada Los siguientes son requisitos miacutenimos para los

sistemas asignados a una clasificacioacuten de nivel B1

Etiquetado obligatorio de seguridad y acceso de todos los objetos (Por ejemplo

archivos procesos dispositivos)

Comprobacioacuten de integridad de etiquetas (Por ejemplo mantenimiento de etiquetas

de sensibilidad cuando se exportan datos)

Auditoriacutea de objetos etiquetados

Control de acceso obligatorio para todas las operaciones

Capacidad para especificar el nivel de seguridad impreso en salida legible para

humanos (Por ejemplo impresoras)

43

Capacidad para especificar el nivel de seguridad en cualquier salida legible por

maacutequina

Auditoriacutea mejorada

Proteccioacuten mejorada del sistema operativo

Documentacioacuten mejorada

Los sistemas operativos de ejemplo son HP-UX BLS Cray Research Trusted

Unicos 80 Digital SEVMS Harris CS SX SGI Trusted IRIX

245 Nivel B2 En los sistemas de nivel B2 el TCB se basa en un modelo de poliacutetica de

seguridad formal claramente definido y documentado que requiere que la aplicacioacuten de control de

acceso discrecional y obligatoria que se encuentra en los sistemas de nivel B1 se extienda a todos

los sujetos y objetos en el sistema Ademaacutes se abordan los canales encubiertos El TCB debe

estructurarse cuidadosamente en elementos criacuteticos para la proteccioacuten y no criacuteticos para la

proteccioacuten La interfaz TCB estaacute bien definida y el disentildeo y la implementacioacuten TCB le permiten

someterse a pruebas maacutes exhaustivas y una revisioacuten maacutes completa Se fortalecen los mecanismos

de autenticacioacuten se proporciona una gestioacuten confiable de las instalaciones en forma de soporte

para las funciones de administrador y operador del sistema y se imponen estrictos controles de

gestioacuten de la configuracioacuten El sistema es relativamente resistente a la penetracioacuten Los siguientes

son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de nivel B2

Notificacioacuten de cambios en el nivel de seguridad que afectan a los usuarios

interactivos

Etiquetas de dispositivos jeraacuterquicos

44

Acceso obligatorio a todos los objetos y dispositivos

Comunicaciones de ruta confiables entre usuario y sistema

Rastreo de canales de almacenamiento encubiertos

Modo de operaciones del sistema maacutes estricto en unidades independientes de varios

niveles

Anaacutelisis de canales encubiertos

Pruebas de seguridad mejoradas

Modelos formales de TCB

Versioacuten actualizacioacuten y anaacutelisis y revisioacuten de parches

Los sistemas de ejemplo son Honeywell Multics Cryptek VSLAN Trusted

XENIX

246 Nivel B3 El TCB debe satisfacer los requisitos del monitor de referencia para mediar

todos los accesos de los sujetos a los objetos ser a prueba de manipulaciones y ser lo

suficientemente pequentildeo como para ser sometido a anaacutelisis y pruebas Con este fin el TCB estaacute

estructurado para excluir el coacutedigo que no es esencial para la aplicacioacuten de la poliacutetica de seguridad

con una importante ingenieriacutea del sistema durante el disentildeo y la implementacioacuten del TCB dirigido

a minimizar su complejidad Se admite un administrador de seguridad los mecanismos de

auditoriacutea se ampliacutean para sentildealar eventos relevantes para la seguridad y se requieren

procedimientos de recuperacioacuten del sistema El sistema es altamente resistente a la penetracioacuten

Los siguientes son requisitos miacutenimos para los sistemas asignados a una clasificacioacuten de clase

(B3)

45

ACL adicionalmente basadas en grupos e identificadores

Acceso de ruta confiable y autenticacioacuten

Anaacutelisis automaacutetico de seguridad

Modelos TCB maacutes formales

Auditoriacutea de eventos de auditoriacutea de seguridad

Recuperacioacuten confiable despueacutes de la caiacuteda del sistema y documentacioacuten relevante

Cero defectos de disentildeo en TCB y defectos miacutenimos de implementacioacuten

El uacutenico sistema operativo con certificacioacuten B3 es Getronics Wang Federal XTS-

300

247 Nivel A1 Los sistemas en el nivel A1 son funcionalmente equivalentes a los del nivel

B3 en que no se agregan caracteriacutesticas arquitectoacutenicas adicionales ni requisitos de poliacuteticas La

caracteriacutestica distintiva de los sistemas en este nivel es el anaacutelisis derivado de la especificacioacuten

formal del disentildeo y las teacutecnicas de verificacioacuten y el alto grado resultante de seguridad de que el

TCB se implementa correctamente Esta garantiacutea es de naturaleza de desarrollo comenzando con

un modelo formal de la poliacutetica de seguridad y una especificacioacuten formal de alto nivel del disentildeo

Independientemente del lenguaje de especificacioacuten particular o del sistema de verificacioacuten

utilizado existen los siguientes criterios importantes para la verificacioacuten del disentildeo de nivel A1

Meacutetodos formales y prueba de integridad de TCB

Estos son los uacutenicos sistemas con certificacioacuten A1 Boeing MLS LAN Gemini

Trusted Network Processor Honeywell SCOMP (United States Government

Department of Defense 1983)

46

25 Sistemas Operativos

Un sistema operativo actuacutea como intermediario entre el usuario de una computadora y el

hardware de la computadora El propoacutesito de un sistema operativo es proporcionar un entorno en

el que un usuario pueda ejecutar programas de manera conveniente y eficiente

Un sistema operativo es un software que administra el hardware de la computadora El

hardware debe proporcionar mecanismos apropiados para garantizar el correcto funcionamiento

del sistema informaacutetico y para evitar que los programas del usuario interfieran con el correcto

funcionamiento del sistema (Carretero Peacuterez de Miguel Anasagasti Garciacutea Carballeira amp Peacuterez

Costoya 2001)

Un sistema operativo es un programa que controla la ejecucioacuten de programas de aplicacioacuten

y actuacutea como una interfaz entre el usuario de una computadora y el hardware de la computadora

Una definicioacuten maacutes comuacuten es que el sistema operativo es el uacutenico programa que se ejecuta

en todo momento en la computadora (generalmente llamado kernel) y todo lo demaacutes son

programas de aplicacioacuten

Un sistema operativo se ocupa de la asignacioacuten de recursos y servicios como memoria

procesadores dispositivos e informacioacuten El sistema operativo incluye los programas para

administrar estos recursos como un controlador de traacutefico un programador un moacutedulo de

administracioacuten de memoria programas de E S y un sistema de archivos (Pawar 2016)

47

251 Windows Sistema operativo de la empresa Microsoft es un conjunto de programas

que administra los recursos de una computadora Windows empieza a trabajar cuando se enciende

o inicializa el equipo para gestionar el hardware empezando desde los niveles maacutes baacutesicos

Es importante conocer que los sistemas operativos funcionan tanto en las computadoras

como en diferentes dispositivos electroacutenicos que usan microprocesadores En este caso Windows

su versioacuten estaacutendar funciona con computadoras Microsoft domina el mercado de los sistemas

operativos debido a su comodidad se puede decir que eacuteste sistema operativo se encuentra

instalado en el 887 de los equipos de coacutemputo que cuentan con acceso a Internet en todo el

mundo

Se pueden mencionar algunas aplicaciones principales (que eacutestas tambieacuten pueden ser

desinstaladas por los usuarios o actualizadas sin que el sistema operativo se dantildee o deje de

funcionar) se encuentran el procesador de texto WordPad el navegador Internet Explorer el

reproductor multimedia Windows Media y el editor de imaacutegenes Paint

La principal novedad que aportoacute Windows desde sus oriacutegenes fue la facilidad para usarlo

y el atractivo visual De hecho su nombre (ldquoventanasrdquo) se debe a la forma en que el sistema

presenta a los usuarios los recursos con los que cuenta su computadora lo que facilita las tareas

cotidianas Windows tambieacuten suele recibir varias criacuteticas por sus problemas de seguridad y por

otros fallos

48

252 Registro de Windows El registro es una base de datos jeraacuterquica que contiene datos

que son criacuteticos para el funcionamiento de Windows y las aplicaciones y servicios que se ejecutan

en Windows Los datos estaacuten estructurados en un formato de aacuterbol Cada nodo en el aacuterbol se llama

clave Cada clave puede contener subclaves y entradas de datos llamadas valores A veces la

presencia de una clave es el uacutenico dato que requiere una aplicacioacuten otras veces una aplicacioacuten

abre una clave y usa los valores asociados con la clave (Microsoft Inc 2019) Una clave puede

tener cualquier nuacutemero de valores y los valores pueden tener cualquier forma El registro es

utilizado por

Autenticacioacuten

Nuacutecleo (Kernel)

Controladores de dispositivos

Servicios

SAM

Las carpetas del sistema se almacenaraacuten en distintas rutas de acceso dependiendo de la

versioacuten de Windows con la que se esteacute trabajando a continuacioacuten cuatro de los cinco archivos

que maacutes interesan a esta investigacioacuten se encuentran en la siguiente ubicacioacuten SystemRoot

System32 Config dentro de las siguientes sub llaves

SAM - HKEY LOCAL MACHINE SAM

SECURITY - HKEY LOCAL MACHINE SECURITY

SOFTWARE - HKEY LOCAL MACHINE SOFTWARE

SYSTEM - HKEY LOCAL MACHINE SYSTEM

49

253 Administrador de cuentas de seguridad El administrador de cuentas de seguridad

(SAM por sus siglas en ingleacutes) es una base de datos en donde se encuentran las cuentas de

seguridad Esto es utilizado por Windows para administrar las cuentas de usuario y contrasentildeas en

el formato hash

Las contrasentildeas nunca se almacenan en formato de texto claro Se almacenan en formato

de hash para protegerlas de los ataques La base de datos SAM se implementa como un archivo de

registro y las obtiene del kernel de Windows y mantiene un bloqueo exclusivo al archivo SAM

esto quiere decir que el archivo tiene cierta medida de seguridad para el almacenamiento de las

contrasentildeas (Hernandez 2013)

No es posible copiar el archivo SAM a otra ubicacioacuten en el caso de los ataques en liacutenea

Dado que el archivo SAM estaacute bloqueado con un bloqueo exclusivo al sistema de archivos no

puede ser copiado o movido mientras se ejecuta Windows El bloqueo no iniciaraacute hasta que la

excepcioacuten de la pantalla azul haya sido inicializada o el sistema operativo haya sido apagado Sin

embargo los archivos en formato hash de contrasentildeas fuera de liacutenea estaacuten disponibles para los

ataques de fuerza bruta el contenido del archivo SAM puede ser copiado o descargado utilizando

diversas teacutecnicas

Un identificador de seguridad (SID) es un valor uacutenico de longitud variable utilizado para

identificar a un usuario Cada cuenta tiene un SID uacutenico emitido por una autoridad como un

controlador de dominio de Windows y almacenado en una base de datos de seguridad Cada vez

50

que un usuario inicia sesioacuten el sistema recupera el SID para ese usuario de la base de datos y lo

coloca en el token de acceso para ese usuario El sistema usa el SID en el token de acceso para

identificar al usuario en todas las interacciones posteriores con la seguridad de Windows Cuando

se ha usado un SID como identificador uacutenico para un usuario o grupo no se puede volver a usar

para identificar a otro usuario o grupo

La seguridad de Windows usa SID en los siguientes elementos de seguridad

En descriptores de seguridad para identificar al propietario de un objeto y grupo

primario

En las entradas de control de acceso para identificar al usuario para quien el acceso

estaacute permitido denegado o auditado

En tokens de acceso para identificar al usuario y los grupos a los que pertenece

2531 Identificador de Seguridad (SID Security Identifier)

S - 1 - 5 - 21 - 3983109318 - 554656936 - 3066752241 - 1000

S - indica que es un string de SID

1 - el nivel de revisioacuten

5 - el identificador de valor de autoridad o authority value no siempre seraacute 5 Entre otros

valores que se pueden encontrar estaacuten los siguientes

51

0 - sin autoridad

1 - autoridad global

2 - autoridad local

3 - autoridad de creador

4 - autoridad no uacutenica

5 - autoridad NT

9 - autoridad de administrador de recursos

21 - 3983109318 - 554656936 - 3066752241 - es el dominio en el que se encuentra el

sistema o el identificador local de la computadora

1000 - ID uacutenico para cada cuenta aquiacute se encuentra el RID (Relative Identifier) Nuacutemero

de longitud variable cualquier grupo o usuario que se cree de manera diferente a la predeterminada

recibiraacute un RID de 1000 o superior En el caso de que el valor sea 500 responde a que este SID

representa la cuenta de un administrador el valor de 500 siempre seraacute el mismo en cualquier cuenta

de administrador a su vez el valor 501 representa el SID de una cuenta Invitado (Guest)

(Hernandez 2013)

254 Autenticacioacuten NTML NTLM (NT LAN Manager) es un protocolo empleado por

muchos productos de Microsoft para realizar la autenticacioacuten desafiacuteorespuesta por lo tanto es el

esquema de autenticacioacuten que por defecto usa Firewall de Microsoft y tambieacuten los productos del

servidor proxy

52

Este software fue desarrollado para afrontar el problema del trabajo con Tecnologiacuteas Java

en un entorno orientado a Microsoft Puesto que no se basa en ninguna especificacioacuten oficial de

protocolo por lo tanto no hay garantiacutea de que funciona correctamente en todos los casos Tambieacuten

ha estado en algunas instalaciones de Windows donde funcionoacute con eacutexito

La Autenticacioacuten NTLM se compone de dos protocolos protocolo de autenticacioacuten NTLM

y protocolo de autenticacioacuten LM Estos protocolos utilizan una metodologiacutea de hash diferente para

almacenar contrasentildeas de los usuarios en la base de datos SAM (Hernandez 2013) (Meneacutendez-

Barzanallana 17)

26 LINUX (ROCKS)

Rocks es una distribucioacuten para cluacutester de Linux de coacutedigo abierto que permite a los usuarios

finales construir de manera maacutes amigable cluacutesteres computacionales y muros de visualizacioacuten en

mosaico Cientos de investigadores de todo el mundo han utilizado Rocks para implementar su

propio cluacutester

Desde mayo de 2000 el grupo Rocks ha abordado las dificultades de implementar cluacutesteres

manejables Encaminados hacia un objetivo crear cluacutesters de manera maacutes sencilla Por sencilla

significa faacutecil de implementar administrar actualizar y escalar Este objetivo impulsa a los

creadores de esta herramienta a ayudar a entregar el poder computacional de los cluacutesteres a una

amplia gama de usuarios cientiacuteficos Estaacute claro que poner a disposicioacuten de una amplia gama de

53

cientiacuteficos plataformas de computacioacuten paralelas estables y manejables ayudaraacute enormemente a

mejorar el estado del arte en herramientas paralelas (Rocksclusters 2010)

261 Escritorio De todos los escritorios disponibles para el sistema operativo Linux

GNOME ha logrado convertirse en el maacutes eficiente estable y confiable sin dejar de ser sencillo

de usar De hecho la mayoriacutea de los usuarios independientemente de su experiencia pueden

trabajar con GNOME casi sin esfuerzo

Los usuarios que son nuevos tanto en Linux como en GNOME hariacutean mejor en conocer

los entresijos del escritorio que hacen que Linux no solo sea faacutecil sino tambieacuten divertido

Un entorno de escritorio agrupa programas que trabajan juntos para formar un espacio de

trabajo informaacutetico cohesivo unificado transparente e interactivo para los usuarios O para

decirlo de manera maacutes simple el entorno de escritorio es la interfaz de usuario para el sistema

operativo En el caso de GNOME ese sistema operativo es Linux Sin un entorno de escritorio su

uacutenica alternativa es una sesioacuten de Shell (liacutenea de comandos) basada en texto (Wallen 2019)

262 Paquete de Oficina Una suite ofimaacutetica es una coleccioacuten de software creada por el

mismo proveedor y disentildeada para ser utilizada para tareas rutinarias dentro de una organizacioacuten

Por lo general una suite ofimaacutetica incluye aplicaciones como procesamiento de texto hojas de

caacutelculo presentacioacuten correo electroacutenico toma de notas base de datos colaboracioacuten y otros tipos

de software relacionados En la mayoriacutea de los casos cada aplicacioacuten en la suite ofimaacutetica se puede

instalar por separado y todas las aplicaciones dentro de la suite admiten la interoperabilidad entre

54

siacute Microsoft Office Suite Lotus Live Notes y LibreOffice son todas suites de oficina de uso

comuacuten

263 Organizador de archivos Es una funcioacuten avanzada disentildeada para agrupar y

renombrar archivos usando sus atributos del sistema o meta atributos

Cada archivo tiene atributos del sistema como la fecha (Acceso Creado y Modificado) el

tipo de archivo (definido por extensioacuten) y asociado con la aplicacioacuten registrada de ese tipo de

archivo Estos atributos se pueden usar para generar un nuevo nombre de archivo o carpeta (grupo)

para cada archivo con el mismo atributo Ademaacutes de los atributos del sistema algunos archivos

en su mayoriacutea medios o imaacutegenes pueden contener metacampos como el nombre del artista el

tiacutetulo el nombre del aacutelbum y otros El Organizador de archivos tambieacuten usa estos metacampos

para agrupar archivos en una carpeta con el mismo atributo Por lo tanto el organizador de archivos

opera reglas de organizacioacuten de archivos que definen la jerarquiacutea de agrupacioacuten de carpetas y las

reglas de cambio de nombre de archivos

Asiacute como el conocido ldquoexplorador de Windowsrdquo Linux integra un organizador de archivos

y carpetas llamado NAUTILUS para realizar tareas de manejo de archivos como mover copiar

renombrar crear carpetas y de esta manera administrar nuestros dispositivos de almacenamiento

55

27 Agrupamiento (Cluacutester) de Computadoras

El agrupamiento (cluacutester) de computadoras estaacute conformado por una coleccioacuten de

computadoras autoacutenomas interconectadas trabajando unidas como un solo recurso de computacioacuten

integrado El concepto de agrupamiento de computadoras nacioacute cuando los pioneros de la

supercomputacioacuten intentaban difundir diferentes procesos entre varias computadoras para luego

poder recoger los resultados que dichos procesos debiacutean producir Con un hardware maacutes barato y

faacutecil de conseguir se pudo perfilar que podriacutean conseguirse resultados muy parecidos a los

obtenidos con aquellas maacutequinas mucho maacutes costosas (Chirinov 2003)

Un agrupamiento de computadoras se puede definir como el trabajo realizado por dos o

maacutes computadoras que en conjunto se encargan de proveer una determinada solucioacuten Tiene como

finalidad agrupar el poder de coacutemputo de los nodos implicados para proporcionar una mayor

escalabilidad disponibilidad y fiabilidad (Branch Bedoya amp Mesa Muacutenera 2008)

La escalabilidad es la capacidad de un equipo para hacer frente a voluacutemenes de trabajo

cada vez mayores sin por ello dejar de prestar un nivel de rendimiento aceptable

La disponibilidad y la fiabilidad se encuentran bastante relacionadas aunque difieren

ligeramente en algunos aspectos La disponibilidad es la calidad de estar presente y listo para su

uso mientras que la fiabilidad es la probabilidad de un correcto funcionamiento

56

Entre los tipos de agrupamiento maacutes comunes se pueden encontrar de alta disponibilidad

(ambiente a prueba de fallas) coacutemputo de alto desempentildeo (los procesos o las tareas dadas se

presentan como un solo sistema virtual) y escalamiento horizontal (se utiliza para proporcionar

una sola interfaz a un conjunto de recursos que pueden aumentar o disminuir arbitrariamente su

tamantildeo en un cierto periodo de tiempo) (Gonzaacutelez Ramiacuterez amp Rodriacuteguez Saacutenchez 2008)

271 Beowulf Es una clase de computadora masivamente paralela de altas prestaciones

principalmente construida a base de agrupamiento de componentes hardware estaacutendar (Llorens amp

Pentildea 2002) Consta de un conjunto de nodos minimalistas unidos por un medio de

comunicaciones econoacutemico Esto quiere decir que tienen lo miacutenimo para ejecutar su funcioacuten de

hecho los nodos por siacute solos no son capaces de ejecutar siquiera un sistema operativo (Nievas

Pino amp Arroyo) Se puede ver como una supercomputadora paralela construida con hardware

comercial de faacutecil adquisicioacuten que posee como sistema operativo Linux Los cluacutesters Beowulf son

extremadamente poderosos pero no son para todas las personas Su principal desventaja es que

requieren software disentildeado para poder aprovechar los recursos del cluacutester (Lizaacuterraga 2002)

272 Mosix Seguacuten Peacuterez (2001) la arquitectura Mosix estaacute basada en la misma ideologiacutea

de la arquitectura Beowulf Se basa en un conjunto de parches aplicados al nuacutecleo (kernel) de Linux

y que asignan a todo el grupo de nodos un espacio de direcciones y de procesos comuacuten gracias al

cual los procesos migran de uno a otro con el fin de equilibrar favorablemente la carga del sistema

global Es una herramienta disentildeada para realizar balanceo de carga en el agrupamiento de forma

totalmente transparente de manera tal que los nodos se comportan como una sola maacutequina y asiacute

incrementar el aprovechamiento de cada uno de los nodos (Chaacutevez y otros 1999) La principal

57

ventaja de Mosix frente a Beowulf se basa precisamente en esto Mosix da mejores respuestas que

Beowulf frente a la caiacuteda o insercioacuten de nodos A parte de esto Mosix permite un cambio constante

de aplicacioacuten o incluso el correr aplicaciones independientes de forma simultaacutenea

273 OpenMosix OpenMosix es una extensioacuten del proyecto Mosix Seguacuten Chirinov

(2003) la idea de este modelo es que la distribucioacuten de tareas en el cluacutester la determina OpenMosix

de forma dinaacutemica conforme se van creando tareas Cuando un nodo estaacute demasiado cargado las

tareas que se estaacuten ejecutando pueden migrar a cualquier otro nodo del cluacutester Asiacute desde que se

ejecuta una tarea hasta que eacutesta muere podraacute migrar de un nodo a otro sin que el proceso sufra

mayores cambios

Ademaacutes OpenMosix funciona a nivel de kernel por tanto puede conseguir toda la

informacioacuten que necesite para decidir que tanto estaacute cargado un sistema y queacute pasos se deben

seguir para aumentar el rendimiento ademaacutes puede realizar maacutes funciones que cualquier

aplicacioacuten a nivel de usuario

Despueacutes de elegir el tipo de cluacutester a utilizar se procede a elegir los elementos baacutesicos que

se emplearaacuten para implementar el cluacutester capacidad de procesamiento memoria espacio del disco

de cada nodo asiacute como tambieacuten el ancho de banda de la comunicacioacuten entre los nodos Se deberaacute

decidir cuaacuteles son importantes basaacutendose en la variedad de aplicaciones que se piensen ejecutar

en el cluacutester y de la cantidad de dinero que se disponga para construirlo

58

Bajo estos mismos paraacutemetros se debe escoger tambieacuten el tipo de red que interconectaraacute

los nodos (Turner 2004)

Luego se debe escoger el sistema operativo a utilizar Esta eleccioacuten dependeraacute mucho de

la maacutequina que se escoja Linux es siempre una opcioacuten en cualquier maacutequina y es la eleccioacuten maacutes

comuacuten Muchas de las herramientas necesarias para la implementacioacuten de un cluacutester han sido

desarrolladas bajo Linux Pero existen cluacutesters corriendo bajo Windows NT UNIX Solaris y AIX

59

Capiacutetulo 3 Implementacioacuten de Cluacutester

31 Requisitos previos

Antes de iniciar la instalacioacuten del FrontEnd es necesario asegurarse que las conexiones de

red de los equipos junto con la configuracioacuten de la BIOS de cada uno sean las correctas

311 Conexioacuten de los equipos y acceso a la red

Un cluacutester de alto desempentildeo funciona como un uacutenico equipo el cuaacutel comparte los recursos

de los nodos esclavos con el nodo maestro para ello es esencial la existencia de una red interna de

alta velocidad por medio de la cual se realice la comunicacioacuten entre el nodo maestro y los nodos

esclavos como se muestra en la Figura 31 El nodo maestro necesitaraacute 2 tarjetas de red de alta

Figura 31 Esquema tiacutepico de configuracioacuten de un cluacutester (Fuente Elaboracioacuten propia)

60

velocidad una para la comunicacioacuten interna y otra para la comunicacioacuten con redes externas El

sistema operativo Rocks asigna automaacuteticamente la interface ldquoeth0rdquo a la red interna del cluacutester y

la interface ldquoeth1rdquo a la red externa En caso de que Rocks sea incapaz de determinar cuaacutel es la red

externa debido a la falta de conexioacuten a internet estas podriacutean ser asignadas de manera incorrecta

por tal motivo se sugiere asegurar el nombre de cada una de las interfaces

Dado que Rocks no permite volverlas a asignar una vez finalizada la instalacioacuten es

necesario volver a reinstalarlo para poder solucionar este inconveniente

312 Configuracioacuten de la BIOS Para evitar problemas durante la instalacioacuten conviene

configurar correctamente la Bios

3121 ATAIDE Mode Algunos sistemas operativos puede que no sean capaces de

reconocer el controlador del disco duro como es en el caso de esta distribucioacuten de Rocks usada

Para evitar complicaciones de tener que antildeadir el controlador a mano lo mejor es habilitar el modo

ldquoLegacyrdquo de controlador de disco duro

61

Para ello se accede a la Bios pulsando F2 al encender el equipo se situacutea en la pestantildea

ldquoAdvancedrdquo y se selecciona ldquoDrive Configurationrdquo como se muestra en la Figura 32

Figura 32 Imagen del Bios del equipo en la opcioacuten ldquodrive configurationrdquo (Fuente Elaboracioacuten propia)

Figura 33 Bios ATAIDE Legacy Mode (Fuente Elaboracioacuten propia)

62

Dentro del menuacute se tiene que seleccionar el Modo ldquoLegacyrdquo en la opcioacuten ldquoATAIDE

Moderdquo como se muestra en la Figura 33 y para salir se guardan los cambios con F10

3122 PXE Al momento de instalar un nodo puede ocurrir falla al arrancar y aparecer

bootsplash (Reboot and Select proper device) Para evitarlo es necesario habilitar la opcioacuten de

PXE para que tome los archivos de instalacioacuten del nodo maestro a traveacutes de la red interna

En la Bios se selecciona la pestantildea ldquoBootrdquo y dentro de ese mismo menuacute se deshabilita

ldquoSilent bootrdquo y se habilita la opcioacuten de ldquoPXE boot to lanrdquo como se muestra en la Figura 34

Finalmente hay que verificar que en la secuencia de arranque (Figura 35) como primer

dispositivo sea desde red para que de esta manera inicie desde el PXE

Figura 34 Bios Boot PXE (Fuente Elaboracioacuten propia)

63

Se guardan los cambios antes de salir

32 Instalacioacuten de Sistema Operativo Rocks

Una vez configurados los equipos se enciende el equipo que seraacute el nodo maestro

(FrontEnd) en el cuaacutel previamente se ha modificado la secuencia de inicio del boot desde la Bios

de modo que al insertar el CD de Rocks eacuteste procederaacute a iniciar la instalacioacuten con la siguiente

pantalla que se muestra a continuacioacuten

Figura 35 Bios Boot device prioriry (Fuente Elaboracioacuten propia)

64

Para iniciar la instalacioacuten uacutenicamente se selecciona la opcioacuten ldquoInstall CentOS 7rdquo como se

muestra en la Figura 36 dando asiacute comienzo al proceso de instalacioacuten Tras finalizar un proceso

de carga en memoria Rocks mostraraacute un formulario en entorno graacutefico mediante el cual

procederemos a configurar el FrontEnd

Esta primera pantalla se muestra coacutemo se desea realizar la instalacioacuten puede realizarse

por medio de la descarga del sistema operativo (se requiere internet) En este caso como se muestra

en la Figura 37 dado que previamente se descargoacute el DVD completo se seleccionoacute ldquoCDDVD

based rollsrdquo

Figura 36 Pantalla de Inicio de instalacioacuten de Rocks (Fuente Elaboracioacuten propia)

65

A continuacioacuten Figura 38 se selecciona de la lista de Rolls aquellos que se desean instalar

Figura 37 Pantalla de seleccioacuten de Rolls (Fuente Elaboracioacuten propia)

Figura 38 Listado de opciones de rolls para instalar (Fuente Elaboracioacuten propia)

66

Tras presionar el botoacuten ldquoSubmitrdquo la siguiente pantalla (Figura 39) muestra formulario en

el que hay que indicar la informacioacuten baacutesica del cluacutester entre las cuales aparecen

Fully-Qualified Host Name Nombre con el que se conoceraacute en la red externa el cluacutester

Cluster Name Nombre utilizado para ser identificado dentro de las herramientas del cluacutester

Certificate Organization Locality State and Country Organizacioacuten a la que pertenece el

cluacutester la localidad el estado y la ciudad

Contact URL and LattitudeLongitude Contacto direccioacuten web y posicioacuten GPS

Figura 39 Informacioacuten baacutesica del cluacutester a instalar (Fuente Elaboracioacuten propia)

67

Una vez que se ingresa la informacioacuten al cluacutester se presiona el botoacuten ldquoListordquo y

posteriormente se podraacute cambiar la configuracioacuten baacutesica de la red interna del cluacutester En este caso

Figura 310 se dejoacute el valor por defecto una IP de clase B (1011116)

El siguiente paso es la configuracioacuten de la red externa (para tener acceso a internet) En

este punto se introducen los datos de la red externa a la que se encuentra conectado el nodo

maestro como se muestra en la Figura 311

Figura 310 Configuracioacuten Ethernet de la red privada (Fuente Elaboracioacuten propia)

Figura 311 Configuracioacuten Ethernet de la red puacuteblica (Fuente Elaboracioacuten propia)

68

Para terminar de configurar la red externa como se muestra en la Figura 312 se ingresa la

direccioacuten IP del Gateway y los DNS (Servidor de nombre de dominio) que va a usar para el acceso

a internet

Se continuacutea con el resto del formulario donde se introduce la contrasentildea para el usuario

root tal y como se muestran en la Figura 313

Figura 312 Configuracioacuten de DNS y Gateway (Fuente Elaboracioacuten propia)

Figura 313 Ingresar contrasentildea de usuario root (Fuente Elaboracioacuten propia)

69

Paso siguiente se procede a seleccionar la zona horaria como se muestra en la Figura 314

donde se encuentra ubicado el cluacutester asiacute como un servidor de donde podraacute obtener la zona horaria

automaacuteticamente en este caso se dejoacute el valor por default

En el formulario de la Figura 315 se selecciona la forma de particionar el disco duro

(automaacutetica manual) una vez seleccionado daraacute comienzo al proceso de instalacioacuten de manera

Figura 314 Configuracioacuten horaria (Fuente Elaboracioacuten propia)

Figura 315 Particiones del disco duro (Fuente Elaboracioacuten propia)

70

desatendida Cuando ha concluido la instalacioacuten el equipo se reiniciaraacute y se requeriraacute iniciar con

el usuario root y la contrasentildea establecida previamente

321 Configuracioacuten del teclado Debido a que el teclado por defecto estaacute en idioma

ingleacutes podriacutea provocar problemas al momento de escribir la contrasentildea u otros comandos

Seguacuten las pruebas realizadas aunque se cambie la configuracioacuten del teclado desde el menuacute

de preferencias uacutenicamente se mantiene dentro de la sesioacuten desde la que se ha cambiado dicha

opcioacuten (lo cual implica que la contrasentildea de usuario hay que introducirla seguacuten la distribucioacuten

inglesa)

33 Instalacioacuten de los nodos

Previo a la instalacioacuten de los nodos esclavos cada uno de los equipos fueron configurados

desde la Bios para que arranquen desde la red (seccioacuten 3122) Para ir antildeadiendo los nodos solo

se tiene que introducir el siguiente comando desde nuestro FrontEnd

$insert-ethers

A continuacioacuten como se muestra en la Figura 316 apareceraacute una ventana en la pantalla

en la cual se seleccionaraacute la opcioacuten ldquoComputerdquo

71

Una vez realizado este paso se procede a encender los equipos que funcionaraacuten como

nodos esclavos uno a uno

Se sugiere esperar a que cada nuevo equipo encendido esteacute marcado con un asterisco antes

de proceder a encender el siguiente como se muestra en la Figura 317 De esta manera se asegura

que cada nuevo nodo antildeadido posea el nombre y numeracioacuten deseada

Figura 316 Pantalla para ingresar nodos (Fuente Elaboracioacuten propia)

Figura 317 Indicador de insercioacuten de nuevos nodos (Fuente Elaboracioacuten propia)

72

Puede darse el caso de que un nodo no sea detectado automaacuteticamente eso indica que se

ha omitido alguacuten paso o parte de la configuracioacuten realizada hasta el momento es incorrecta En ese

caso comprobar lo siguiente

Que el nodo esclavo este correctamente conectado a la red interna

Que el FrontEnd (nodo maestro) tenga correctamente configurada la red interna y externa

Que el PXE esteacute habilitado en la Bios del nodo esclavo

331 Administracioacuten de nodos Algunos de los comandos maacutes uacutetiles para para la gestioacuten

de los nodos son los siguientes

Eliminar un nodo de la lista

Reinstalar un nodo

Listar los nodos ya instalados

Acceder a un nodo

$rocks remove host nombre_nodo

$rocks remove host nombre_nodo

$rocks set host boot nombre_nodo action=install

$rocks set host boot nombre_nodo action=install

$rocks list host

$rocks list host

$ssh nombre_nodo

$ssh nombre_nodo

73

Ejecutar un comando de manera remota a un nodo

332 Creacioacuten de cuentas de usuario Para agregar a un usuario hay que realizar los

siguientes pasos

1 Creacioacuten de la cuenta

$useradd nombre_usuario

2 Asignacioacuten de una contrasentildea

$passwd nombre_usuario

3 Sincronizacioacuten de la cuenta de usuario con el resto de nodos

$rocks-user-sync

333 Configuracioacuten del directorio compartido El directorio share es compartido por el

FrontEnd y el resto de nodos se localiza dentro del FrontEnd en la carpeta exports siendo la

carpeta share un enlace simboacutelico a esta uacuteltima

Al principio es posible que no se sincronicen correctamente los archivos introducidos en el

directorio debido a que la carpeta inicialmente estaacute vaciacutea por lo que para solucionar este

inconveniente puede usarse el comando siguiente para reiniciar dicho servicio

$ssh nombre_nodo lsquocomandorsquo

$ssh nombre_nodo lsquocomandorsquo

$cd

$export fs ndashrv

service nfs restart

$cd

$export fs ndashrv

service nfs restart

74

34 Operaciones baacutesicas de Rocks

Comandos y aplicaciones esenciales para el manejo del cluacutester

Ver que rolls estaacuten instalados

$rocks list roll

Visualizar el estado del sistema Figura 318

$qstat ndashf

Probar el sistema de colas para distribuir tareas a los nodos

Para ello se prueba que el SGE del cluacutester funcione enviaacutendole una serie de trabajos

mediante el comando qsub

En primer lugar se crea un fichero (pruebapl) que tenga permisos de ejecucioacuten con el

siguiente contenido

Figura 318 Comando qstat ndashf (Fuente Elaboracioacuten propia)

75

usrbinperl

for(my $i=0$ilt30$i++) sleep(2) print okn

Y se ejecuta con el siguiente comando

$ for ((i=1ilt=10i+=1)) do qsub pruebapl done

Al ejecutarse se puede comprobar que los trabajos se han mandado Figura 319

Y al realizar de nuevo un ldquoqstat ndashfrdquo Figura 320 se observa coacutemo se van realizando

Figura 319 Enviacuteo de trabajos por medio del comando qsub (Fuente Elaboracioacuten propia)

Figura 320 Estado de los trabajos pendientes mostrados por qstat ndashf (Fuente Elaboracioacuten propia)

76

Para ver la carga de trabajo en el cluacutester de manera global y de forma graacutefica se tiene que

ingresar en un navegador web en la siguiente direccioacuten httplocalhostganglia apareceraacute la

Figura 321

Figura 321 Visualizacioacuten de la distribucioacuten de cargas en el cluacutester usando la herramienta Ganglia (Fuente Elaboracioacuten propia)

77

Capiacutetulo 4 Metodologiacutea y Resultados

Una vez finalizada la instalacioacuten y puesta en operacioacuten del equipo se analizaron diferentes

metodologiacuteas de trabajo lo que implicoacute un trabajo arduo debido a que existen complicaciones

cuando se buscan temas relacionados a vulnerar sistemas operativos La realizacioacuten de este

proyecto estaacute basado en la metodologiacutea de Joshua Picolet ldquoCracking Methodologyrdquo (Picolet

2017)

41 Obtener Archivo hash

Se pueden vulnerar contrasentildeas de Windows de diferentes maneras Una de ellas es

mediante el acceso al archivo del Administrador de cuentas de seguridad (SAM) el cual se detalla

en el apartado 253 a traveacutes de la obtencioacuten de las contrasentildeas del sistema en su forma hash por

medio de herramientas diferentes Alternativamente las contrasentildeas se pueden leer desde la

memoria lo que tiene el beneficio adicional de recuperar las contrasentildeas en texto plano y evitar el

requisito de descifrado Para comprender los formatos que se observan cuando se descarguen

hashes del sistema de Windows se requiere una breve descripcioacuten de los diferentes formatos de

almacenamiento

Originalmente las contrasentildeas de Windows de menos de 15 caracteres se almacenaban en

el formato hash de Lan Manager (LM) Algunos sistemas operativos como Windows 2000 XP y

Server 2003 continuacutean usando estos hashes a menos que esteacuten deshabilitados por el usuario

Ocasionalmente un sistema operativo como Windows Vista puede almacenar el hash LM para la

compatibilidad con otros sistemas Seguacuten analistas incluye varias vulnerabilidades como dividir

78

la contrasentildea en dos bloques y permitir que cada uno se descifre de forma independiente Mediante

el uso de tablas Rainbow es trivial descifrar una contrasentildea almacenada en un hash LM

independientemente de la complejidad Este hash se almacena con la misma contrasentildea calculada

en el formato de hash NT como el que se muestra en el siguiente ejemplo

Ejemplo de un hash NTLM con el componente LM y NT

Administrator500611D6F6E763B902934544489FCC9192BB71ED1E7F2B60ED5A2

EDD28379D45C91

Los sistemas operativos Windows maacutes recientes como el Windows 8 y 10 usan el hash NT

En teacuterminos simples no hay una debilidad significativa en este hash que lo diferencie de cualquier

otra funcioacuten hash criptograacutefica Se requieren meacutetodos de descifrado como lo es la fuerza bruta o

ataque de diccionario para recuperar la contrasentildea si uacutenicamente se almacena en el formato NT

Ejemplo de un hash NTLM uacutenicamente con el componente NT (como se ve en los sistemas

Windows mas recientes

Administrator500NOPASSWORDEC054D40119570A4663

4350291AF0F72

Es importante sentildealar que la cadena NO PASSWORD es variable seguacuten la herramienta

que se utilice Otras pueden presentar esta informacioacuten como ceros rellenos o comuacutenmente puede

79

ver la cadena ldquoAAD3B435B51404EEAAD3B435B51404EErdquo en lugar de ninguna contrasentildea

Esto significa que el hash LM estaacute vaciacuteo y no estaacute almacenado

El archivo hash se encuentran en el directorio ldquoWindows System32 configrdquo y se

necesitan ambos archivos SAM y SYSTEM Ademaacutes tambieacuten se encuentran en el archivo de

registro HKEY_LOCAL_MACHINE SAM al que no se puede acceder durante el tiempo de

ejecucioacuten Finalmente las copias de seguridad se pueden encontrar a menudo en ldquoWindows

Repairrdquo (Peleus 2019)

Para extraer el archivo hash de un sistema operativo con un nivel de seguridad C1 existen

diferentes meacutetodos en esta ocasioacuten se procederaacute a iniciar el equipo objetivo con una distribucioacuten

de Linux desde una memoria USB como se muestra en la figura 41 para de esta manera ingresar

al directorio CWINDOWSSystem32Config directorio de ubicacioacuten de los archivos SAM y

SYSTEM que son los necesarios para obtener el archivo hash (Caballero 2018)

Figura 41 Arranque con LiveUSB KaliLinux (Fuente Elaboracioacuten propia)

80

42 Dar Formato al Hash

En este punto es donde se tiene que identificar el algoritmo con el que fueron encriptados

los archivos SAM y SYSTEM que se han obtenido en el punto anterior con la finalidad de

seleccionar el tratamiento que se les daraacute El algoritmo de encriptacioacuten del archivo SAM de

Windows 10 es NTLM y ademaacutes estaacute almacenado en un formato binario (ByteBleeder 2017) por

lo que fue necesario instalar la herramienta con licencia GNU samdump2 para obtener la syskey y

de esta manera poder extraer los hash desde el archivo SAM de Windows

En la figura 42 se han obtenido los hashes del archivo SAM donde se puede observar que

los usuarios Administrador e Invitado estaacuten deshabilitados ademaacutes de que existen tres cuentas de

usuario activas las cuales son Gad prueba y usuarioprueba cada una con su contrasentildea cifrada

en formato NTLM a la derecha del nombre de usuario la cuenta usuarioprueba fue a la que se le

realizoacute el anaacutelisis que se detalla posteriormente

43 Evaluar la fuerza del Hash

En criptografiacutea se dice que un algoritmo criptograacutefico se rompe si por alguacuten meacutetodo se

consigue reducir su fortaleza es decir reducir por ejemplo su entropiacutea de los 2256 bits teoacutericos a

Figura 42 Resultado de la ejecucioacuten de la herramienta samdump2 (Fuente Elaboracioacuten propia)

81

tan soacutelo 2255 por ejemplo El hecho de que se encuentre una colisioacuten no implica necesariamente

que un algoritmo se haya roto pues podriacutea haber sido realizado mediante fuerza bruta pero puede

ser una causa

Un ataque de colisioacuten significa que encuentro dos entradas diferentes que producen el

mismo resultado de un hash particular Este es generalmente el tipo de ataque maacutes faacutecil Es el tipo

de ataque que se conoce desde hace varios antildeos contra MD5

Dado que una utilidad importante de las funciones hash estaacute en las firmas digitales

encontrar colisiones puede facilitar falsificar firmas digitales Es decir dos mensajes distintos que

tengan un mismo resumen tienen ademaacutes la misma firma y un atacante puede reemplazar un

mensaje por el otro Un ejemplo de este ataque fue demostrado en 2008 por un grupo de

investigadores en Aacutemsterdam los cuales falsificaron un certificado raiacutez mediante el uso de un

ataque de colisioacuten contra el algoritmo MD5 (Preukschat 2015)

Un ataque previo a la imagen generalmente es mucho maacutes difiacutecil es encontrar otra entrada

que produzca el mismo resultado que un hash que ya se conoce

Para tratar de aclarar la diferencia aquiacute en un ataque de colisioacuten encuentro dos entradas A

y B que producen el mismo resultado En un ataque de preimagen comienzo a partir de alguacuten

resultado conocido X y encuentro una entrada que produciraacute X como resultado (Coffin 2015)

82

Para realizar esta evaluacioacuten se tomoacute como base la tabla del apeacutendice Hash craking

benchmark (Picolet 2017) el objetivo es observar el comportamiento y velocidad del Hash

mencionado cuando fue sometido a pruebas de criptoanaacutelisis Si se trata de un Hash lento se deberaacute

ser maacutes selectivo en queacute tipos de diccionarios y meacutetodos de criptoanaacutelisis se le debe aplicar Si es

un Hash raacutepido se puede ser maacutes libre con la estrategia de criptoanaacutelisis Este estudio busca

realizar una prueba de criptoanaacutelisis mostrando las diferencias entre el poder de procesamiento de

un cluacutester de 17 nodos contra una computadora personal por lo que no necesariamente se

implementaraacute el meacutetodo oacuteptimo para la realizacioacuten del criptoanaacutelisis

44 Calcular la capacidad del equipo

Con la informacioacuten de la evaluacioacuten de la fuerza del Hash obtenida en el apartado anterior en

este apartado se tiene que establecer la capacidad de la plataforma o plataformas que realizaraacuten

el criptoanaacutelisis

Para conocer la capacidad de procesamiento del cluacutester de alto rendimiento se utilizoacute la

herramienta Linpack Benchmark HPL es una implementacioacuten portaacutetil del Benchmark de alto

rendimiento LINPACK para equipos de coacutemputo distribuido Actualmente se utiliza para obtener

varios resultados en la lista actual de Top500 de HP cluacutesters (Dongarra 2010)

El Linpack Benchmark (HPL del Ingleacutes High-Performance Linpack Bench-mark) es un

software que resuelve un sistema lineal aleatorio de doble precisioacuten aritmeacutetica (64 bits) en equipos

de memoria distribuida El rendimiento muestra el nuacutemero de operaciones de punto flotante por

segundo logradas por el sistema (Petitet Whaley Dongarra amp Cleary 2008)

83

El HPL fue desarrollado en el Argone National Laboratory por Jack Don-garra en 1976 y

es uno de los maacutes usados en sistemas cientiacuteficos y de ingenieriacutea para el caacutelculo de prestaciones

Las principales caracteriacutesticas del algoritmo utilizado por el HPL son

Distribucioacuten ciacuteclica de datos de bloques de dos dimensiones

Variante derecha de la factorizacioacuten LU con pivoteo parcial (Teacutecnica de pivoteo

Dicta que el elemento pivote que debe escogerse es el mayor absolutamente de cada

columna)

Factorizacioacuten recursiva con pivoteo y reenviacuteo de columna

Distintas topologiacuteas virtuales de reenviacuteos

Algoritmo de reduccioacuten de reenviacuteo para ancho de banda (Castelloacute Gimeno 2014)

La resolucioacuten del sistema de ecuaciones se realiza del siguiente modo

1 Se crea un sistema de ecuaciones

(1)

119860119909 = 119887

(2)

119860 isin 119877119899119909119899

(3)

119909 119887 isin 119877119899

84

HPL calcula que la solucioacuten para un sistema de ecuaciones lineales se puede generalizar

como 119860119909 = 119887 donde 119860 es una matriz 119873 119909 119873 cuyos valores se generan aleatoriamente

119909 119910 119887 son vectores de tamantildeo 119873 Como se muestra en la Figura 43

2 Primero se calcula la factorizacioacuten 119871119880 con pivoteo parcial de los coeficientes 119899 y 119899 + 1

de la matriz [119860 119887]

(4)

119875119903[119860 119887] = [[119871119880] 119910]

(5)

119875119903 119871 119880 isin 119877119899119909119899

(6)

119910 isin 119877119899

El primer paso es la factorizacioacuten de la matriz 119860 en una matriz triangular superior 119880

y una matriz triangular inferior 119871 tal que 119860 = 119871119880 La factorizacioacuten se usa para calcular

el vector solucioacuten 119909

3 Una vez el pivoteo (representado por la permutacioacuten de la matriz 119875119903) y la factorizacioacuten

inferior se aplican sobre 119887 la solucioacuten se obtiene en un paso resolviendo el sistema

superior triangular

Figura 43 Sistema de Ecuaciones tipo 119860119909 = 119887 (Fuente Elaboracioacuten propia)

85

(7)

119880119909 = 119910

La matriz triangular inferior izquierda y el conjunto de pivotes no se devuelven en el

resultado Para la estabilidad numeacuterica el algoritmo de factorizacioacuten utiliza un pivote parcial de

fila

La implementacioacuten paralela de Linpack divide la matriz 119860 119873 119909 119873 en una cuadriacutecula de

procesos 119875 119909 119876 bidimensional y luego la divide en subgrupos de mosaicos 119873119861 119909 119873119861 (Petitet

Whaley Dongarra amp Cleary 2008)

Utilizando la herramienta HPL en esta investigacioacuten se obtuvieron los siguientes

resultados

La prueba abordoacute el ajuste de 119873 y la eficiencia obtenida en comparacioacuten con el rendimiento

maacuteximo Se determinoacute un valor para 119873 = 800000 aleatoriamente para ejecutar HPL en todo el

cluacutester Sin embargo el tiempo fue excesivo por lo tanto se determinoacute que este tamantildeo del

problema fue demasiado grande para el cluacutester Al realizar otros experimentos con valores maacutes

pequentildeos de 119873 se obtuvieron mejores resultados de rendimiento La Tabla 41 muestra el

rendimiento de HPL en GFlops para 119873 = 300000 400000 y 500000 Como se puede observar

en la Tabla 41 se obtuvo el mejor resultado de rendimiento 850 GFlops para 119873 = 500000 para

valores mayores de 119873 la distribucioacuten de cargas del cluacutester empieza a sobrepasar su capacidad como

se muestra en la Figura 44 y la vez su rendimiento disminuye Esto ocurre porque la cantidad de

memoria utilizada con las memorias intermedias de comunicacioacuten MPI es mayor de lo esperado

Por lo tanto es necesario dejar maacutes del 20 de la memoria para el sistema (Petitet Whaley

86

Dongarra amp Cleary 2008) Tambieacuten se realizaron pruebas usando solo un nodo de coacutemputo y el

rendimiento fue de 34 GFlops para 119873 = 20000

Tabla 41 Rendimiento de HP cluacutester (Fuente Elaboracioacuten propia)

Analizando la eficiencia obtenida para la ejecucioacuten de un solo nodo cuando 119873 = 20000

se obtuvo el 823 del rendimiento maacuteximo (el rendimiento maacuteximo para un solo nodo es 477

Gflops) Para todo el cluacutester el rendimiento maacuteximo seriacutea 119879119898119886119909 = 477 119909 17 =

8109 119866119891119897119900119901119904 aproximadamente

Figura 44 Distribucioacuten de cargas del cluacutester

0

500

1000

300000 400000 500000

Gflops

Gflops

87

La Figura 44 titulada ldquoDistribucioacuten de cargas del cluacutesterrdquo muestra la imagen de la

herramienta Ganglia de manera graacutefica a traveacutes de cuadros que variacutean de color dependiendo de la

carga que tenga cada uno de los nodos al momento de implementar la herramienta HPL De manera

inicial indica que el cluacutester tiene un total de 17 equipos de 4 cores cada uno eso da un total de 68

cores trabajando sin equipos inactivos Muestra tambieacuten una sobrecarga en el cluacutester y un

porcentaje promedio de 100 de uso en la uacuteltima hora

45 Establecer Estrategia

Esto significa uacutenicamente que en este apartado se realizaraacute una guiacutea baacutesica para procesar

los hashes obtenidos sin perder de vista que cada escenario a criptoanalizar es uacutenico en funcioacuten

de las circunstancias externas Como ya se ha mencionado anteriormente esta estrategia de

criptoanaacutelisis se ha planteado implementar dos meacutetodos los cuales son Fuerza Bruta y ataque de

diccionario sin importar si son o no los oacuteptimos debido a que se realizaraacute una comparativa de

capacidad de procesamiento

451 Fuerza Bruta Una vez que se han intentado varios meacutetodos y han fallado se puede

iniciar un ataque de fuerza bruta estaacutendar poniendo especial atencioacuten en la cantidad de siacutembolos

del alfabeto que puede usar el equipo a analizar Por encima de 8 caracteres esto generalmente no

tiene sentido debido a limitaciones de hardware y entropiacutea (complejidad de la contrasentildea) Una

contrasentildea de Windows seguacuten Microsoft (Microsoft Inc 2019) una contrasentildea de Windows debe

estaacute formada por

88

26 Caracteres mayuacutesculas de la ldquoArdquo a la ldquoZrdquo

26 Caracteres minuacutesculas de la ldquoardquo a la ldquozrdquo

10 Diacutegitos de base 10 (0 a 9)

32 Caracteres especiales (~$^amp_-+=|()[]ltgt)

94 Caracteres alfanumeacutericos en total

4511 Cantidad de combinaciones posibles Si se usa una clave numeacuterica (nuacutemeros del 0

al 9) existen 10 posibilidades de 4 diacutegitos de longitud que es la extensioacuten por defecto de los

teleacutefonos celulares Para 4 diacutegitos las combinaciones posibles seriacutean 10 mil 104 = 10000

(Labaca Castro 2014)

Por otro lado si tomamos un alfabeto de 26 letras mayuacutesculas y 26 minuacutesculas 10 nuacutemeros

y 10 caracteres especiales en total tenemos 72 diferentes posibilidades para un uacutenico caraacutecter Eso

significa que las combinaciones para una contrasentildea de 4 caracteres seriacutean 724 = 26873856

Baacutesicamente maacutes de 26 millones de combinaciones en una clave de 4 caracteres contra 10 mil en

una clave de 4 diacutegitos numeacutericos En este estudio se utiliza la contrasentildea de bloqueo descrita en el

apartado anterior que es de 94 combinaciones para cada caraacutecter teniendo una longitud de 7

caracteres por lo tanto seraacuten 947 = 64847759000000 de posibles combinaciones que

nuestros equipos deben explorar para obtener la contrasentildea correcta

Como se mencionoacute en el apartado 42 el usuario sobre el cual se realizoacute el criptoanaacutelisis

fue usuarioprueba el cual constaba de una contrasentildea de longitud 7 caracteres la cual despueacutes

de realizado el anaacutelisis y como se puede observar en la Figura 45

89

1 Anaacutelisis a usuario usuarioprueba

2 Nuacutemero de nodos en operacioacuten 17

3 Nuacutemero de procesos ejecutaacutendose de forma paralela 68

4 Tiempo de duracioacuten del anaacutelisis en el cluacutester 122727 horas

5 Contrasentildea criptoanalizada Pass7

Asiacute mismo en la Tabla 42 se muestra el resultado final y el tiempo de duracioacuten del

criptoanaacutelisis realizado al archivo SAM con el cluacutester y la computadora personal

Tabla 42 Resultados de criptoanaacutelisis de archivo SAM (Fuente Elaboracioacuten propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Horas)

1 (PC) 4 1075316

17 (Cluacutester) 68 122727

1

2

3

4 5

Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester Figura 45 Resultado de criptoanaacutelisis realizado con el cluacutester (Fuente Elaboracioacuten propia)

90

452 Diccionario Meacutetodo empleado para romper la seguridad de los sistemas basados en

contrasentildeas (password) en la que el atacante intenta dar con la clave adecuada probando todas (o

casi todas) las palabras posibles ingresadas previamente en un diccionario idiomaacutetico

Generalmente se emplean programas especiales que se encargan de ello

Este meacutetodo suele ser maacutes eficiente que el meacutetodo de fuerza bruta debido a que muchas

usuarios casi siempre suelen utilizar contrasentildeas con una o varias palabras existentes en su lengua

para que la contrasentildea no sea olvidada faacutecilmente y sea sencilla de recordar esto no es una praacutectica

recomendable (Alegsa 2018)

Para realizar este meacutetodo se utilizoacute un diccionario descargado de internet el cual contiene

10000000 de posibles contrasentildeas (g0tmi1k 2018)

Ademaacutes se ejecutoacute un programa creado en lenguaje C (Anexo 1) a traveacutes de la

implementacioacuten de las libreriacuteas MPI y open MPI propias de la arquitectura de cluacutester de

computadoras Este programa fue ejecutado en los mismos equipos descritos anteriormente para

obtener todos los nuacutemeros primos encontrados dentro de un intervalo dado En este caso el

intervalo dado fue de 10000000 con los siguientes resultados mostrados en la Tabla 43

Tabla 43 Resultados de ejecucioacuten de programa en C para la obtencioacuten de nuacutemeros primos (Fuente Elaboracioacuten

propia)

Nodos Nuacutecleos Tiempo de Procesamiento (Segs)

1 (PC) 4 5078

17 (Cluacutester) 68 00013

91

453 Analizar los resultados Posterior a realizar el criptoanaacutelisis y descifrar con eacutexito

una cantidad suficiente de hashes se analizan los resultados en busca de pistas o patrones Este

anaacutelisis puede ayudar a tener eacutexito en cualquier hash restante

454 Personalizar ataques Tomando como base el anaacutelisis de resultados realizado

previamente se disentildearaacuten diversas estrategias personalizadas que aprovechen las vulnerabilidades

conocidas o patrones Los ejemplos seriacutean ataques de maacutescara personalizados o reglas para

adaptarse al comportamiento o las preferencias del usuario objetivo

92

Conclusioacuten

El trabajo de investigacioacuten presentado parte de la necesidad de buscar alternativas para

explotar al maacuteximo la capacidad de procesamiento del equipo de coacutemputo que existe actualmente

dentro del inventario del Instituto Tecnoloacutegico de Acapulco asiacute como proveer una plataforma que

coadyuve a la investigacioacuten dentro del Instituto a traveacutes de implementar un cluacutester de coacutemputo

con capacidad para realizar proyectos en el aacuterea de ingenieriacutea y matemaacuteticas con el fin de optimizar

el tiempo de ejecucioacuten lo cual en un futuro se veraacute reflejado en ventajas para el desarrollo de la

regioacuten

La revisioacuten y anaacutelisis de informacioacuten en relacioacuten a cluacutesters es muy interesante pero a la

vez es compleja dado que involucra diferentes aspectos durante su evolucioacuten asiacute como diversas

metodologiacuteas para su formacioacuten e implementacioacuten Se considera de suma importancia para este

trabajo las revisiones efectuadas ya que son la base para la propuesta entregada

De acuerdo a las especificaciones teacutecnicas de los equipos informaacuteticos existentes dentro

del laboratorio de la Maestriacutea en Sistemas Computacionales y una vez que se realizoacute el anaacutelisis

de varios casos de eacutexito se propuso la metodologiacutea para implementacioacuten de un cluacutester homogeacuteneo

tipo Beowolf Este meacutetodo estaacute basado en otros que ya se han implementado bajo realidades

acadeacutemicas similares rescatando las etapas maacutes importantes de cada uno y complementaacutendolo con

los aportes personales se consideroacute que fue el oacuteptimo debido a que se implementoacute con hardware

convencional y herramientas de uso libre

93

El hecho de haber seleccionado un meacutetodo adecuado permitioacute superar gran parte los

problemas que presentaban las metodologiacuteas que fueron analizadas simplificoacute la implementacioacuten

del cluacutester y permitioacute el poder alcanzar una mayor estabilidad en su desempentildeo desde su etapa

inicial fue importante conocer el resultado en cada una de las etapas de implementacioacuten para

asegurar su desenvolvimiento en el futuro

Para integrar los equipos independientes a la arquitectura cluacutester se realizoacute el disentildeo de

una topologiacutea de red Gigabit Ethernet tipo estrella con un direccionamiento IP estaacutetico la

configuracioacuten de protocolos de comunicacioacuten remota sin autenticacioacuten la comparticioacuten de

archivos en red y la utilizacioacuten de aplicaciones de licencia GPL que permiten obtener el

funcionamiento similar a la de una supercomputadora

Haciendo uso de libreriacuteas de paso de mensajes (MPI) y el software John the Ripper para el

descifrado de contrasentildeas la arquitectura cluacutester implementada alcanzoacute una eficiencia de 885

de rendimiento en comparacioacuten con los recursos computacionales de un solo equipo con las

caracteriacutesticas de un nodo Ademaacutes otros de los proyectos ejecutados en la arquitectura cluacutester

para probar el rendimiento fue la ejecucioacuten de un programa para la deteccioacuten de nuacutemeros primos

dentro de un archivo de 10000000 de nuacutemeros obteniendo una eficiencia de maacutes de 99 gracias

a la distribucioacuten de tareas que proporcionan las libreriacuteas de paso de mensajes (MPI) dentro de la

arquitectura cluacutester

Con la implementacioacuten de la arquitectura cluacutester el laboratorio de la Maestriacutea en Sistemas

Computacionales podraacute dar soluciones potentes eficientes y econoacutemicas en los entornos de

94

investigacioacuten mejorando la capacidad de procesamiento en aplicaciones como evaluacioacuten de

algoritmos compresioacuten de archivos renderizacioacuten de imaacutegenes anaacutelisis de datos (big data) en un

tiempo relativamente bajo ideal para las necesidades educativas

La experiencia obtenida al realizar esta investigacioacuten y propuesta ha sido enriquecedora

tanto por la obtencioacuten de conocimiento en base a la historia evolucioacuten y arquitectura de cluacutesters

asiacute como la programacioacuten paralela y sus ventajas en diferentes proyectos desarrollados en todo el

mundo Igualmente la comparacioacuten entre cada uno de los modelos y meacutetodos resulta interesante

dado que existe un sinnuacutemero de ejemplos con caracteriacutesticas diferentes pero baacutesicamente con un

mismo objetivo final

Trabajo Futuro

El cluacutester implementado en el Laboratorio de la Maestriacutea en Sistemas computacionales del

Instituto Tecnoloacutegico de Acapulco puede ser utilizado en gran cantidad de aplicaciones dentro de

las diferentes aacutereas de investigacioacuten del Instituto asiacute como estar disponible para el Departamento

de Posgrado e Investigacioacuten como apoyo durante la realizacioacuten de tareas y proyectos dentro de las

aacutereas de Desarrollo de Sistemas Inteligentes asiacute como de Tecnologiacuteas Web

Propuesta de Trabajo a Futuro

Durante la realizacioacuten de este proyecto se observoacute la necesidad que existe dentro del

departamento de Investigacioacuten y Posgrado de equipos de alta capacidad de procesamiento para

realizar de una manera maacutes eficiente las investigaciones que se estaacuten llevando a cabo Una de ellas

es el ldquoSistema de apoyo al diagnoacutestico oportuno de Retinopatiacutea Diabeacuteticardquo en la cual a traveacutes del

entrenamiento de una red neuronal se clasificaraacuten y evaluaraacuten un nuacutemero de 3000 imaacutegenes para

95

demostrar la presencia de dicha enfermedad en pacientes del Instituto Estatal de Oftalmologiacutea

Actualmente se ha realizado una prueba de entrenamiento de dicha red neuronal con 70 imaacutegenes

obteniendo como resultado un tiempo clasificacioacuten y evaluacioacuten de 301532 horas en un equipo

con un procesador Core I7 con 8 GB en memoria RAM

96

Bibliografiacutea

Alegsa (01 de 01 de 2018) Alegsa Diccionario Informaacutetico Recuperado el 07 de 2019 de

Alegsa httpwwwalegsacomarDicataque_por_diccionariophp

Avecto (2017) Avecto Limited Recuperado el 10 de 08 de 2018 de AVECTO a Bomgar

Company wwwavectocom

Borghello C (2009) Seguridad de la Informacioacuten Recuperado el 11 de 2018 de Criptografiacutea de

la A-Z httpswwwsegu-infocomarproyectosp1_hashhtm

Branch Bedoya J amp Mesa Muacutenera A (Diciembre de 2008) Implementacioacuten de un cluster

homogeacuteneo para la resolucioacuten de problemas de alta complejidad computacional Avances

en Sistemas e Informaacutetica 5(3)

ByteBleeder (02 de 06 de 2017) Practical guide to NTLM Relaying in 2017 Obtenido de Github

httpsbyt3bl33d3rgithubiopractical-guide-to-ntlm-relaying-in-2017-aka-getting-a-

foothold-in-under-5-minuteshtml

Caballero A (26 de 06 de 2018) Hacking Eacutetico Recuperado el 03 de 2019 de John The Ripper

httpwwwreydescomdq=Recuperar_la_Contrasena_del_Administrador_utilizando_s

amdump2_y_John_The_Ripper

Carretero Peacuterez J de Miguel Anasagasti P Garciacutea Carballeira F amp Peacuterez Costoya F (2001)

Sistemas Operativos Una visioacuten aplicada (C F Madrid Ed) Madrid Espantildea

McGRAW-HillInteramericana

Castelloacute Gimeno A (30 de 07 de 2014) Universitat Jaume Recuperado el 10 de 2019 de

Evaluacioacuten de prestaciones mediante laaplicacioacuten HPL de clusters utilizandorCUDA

97

httprepositoriujiesxmluibitstreamhandle10234115082TFM_2014_CastelloGimen

oApdfsequence=1ampisAllowed=y

Chaacutevez J Echeverriacutea C Correa M Vaacutezquez E Suaacuterez M Maacutermol X Diacuteaz G (07 de

1999) Centro de Caacutelculo Cientiacutefico Recuperado el 01 de 05 de 2018 de Universidad de

Los Andes httpwwwcecalculavedocumentaciontutorialesbeowulfinformehtml

Chirinov R (2003) Nfinite9000 SL Recuperado el 26 de 04 de 2018 de Noticias 3D

httpswwwnoticias3dcomarticuloaspidarticulo=248amppag=4

Coffin J (23 de 07 de 2015) Quora Recuperado el 15 de 08 de 2019 de

httpswwwquoracomWhat-does-it-mean-when-a-hashing-algorithm-has-been-broken

Dongarra J (2010) Top500 Super computer sites Recuperado el 07 de 2019 de http

wwwtop500org

Educba (01 de 01 de 2019) Recuperado el 10 de 2019 de Educbaorg

httpswwweducbacomidea-algorithm

europa press (04 de 06 de 2013) Portal Tic Recuperado el 18 de 11 de 2018 de Europa Press

httpswwweuropapressesportalticgadgetsnoticia-cuarta-generacion-intel-core-mayor-

salto-cuanto-ahorro-energetico-20130604174722html

g0tmi1k (2018) github Recuperado el 05 de 2019 de github

httpsgithubcomdanielmiesslerSecListsblobmasterPasswordsCommon-

Credentials10-million-password-list-top-1000000txt

Gonzaacutelez Agudelo D (2014) El riesgo y la falta de politicas de seguridad informaacutetica una

amenaza en las empresas certificadas basc Recuperado el 20 de 05 de 2018 de

Universidad Militar Nueva Granada

httpsrepositoryunimilitareducobitstream10654122511ENSAYO20FINALpdf

98

Gonzaacutelez Ramiacuterez E amp Rodriacuteguez Saacutenchez A (2008) Disentildeo e implementacioacuten de un cluster

tipo BEOWULF para el desarrollo de coacutemputo cientiacutefico avanzado CdMx Mexico

Hernandez M (2013) Forensics Mexico Recuperado el 07 de 2018 de La importancia del

registro de Windows parte 1 httpforensicsmexicoblogspotcom201309la-

importancia-del-registro-de-windowshtml

Kowalczyk C (01 de 2015) Crypto-IT Recuperado el 11 de 2018 de Crypto-IT

httpwwwcrypto-itnetengasymmetricindexhtml

Labaca Castro R (13 de 06 de 2014) We live security Recuperado el 2019 de 08 de 07 de

Welivesecuritybyeset httpswwwwelivesecuritycomla-es20140613matematica-

claves-numerica-alfanumerica

Lizaacuterraga C (2002) Departamento de Fiacutesica Recuperado el 12 de 03 de 2018 de Universidad

de Sonora httpclustersfisicausonmx

Llorens E amp Pentildea M (2002) Recuperado el 04 de 2018 de Departament dArquitectura de

Computadors httppersonalsacupceduenricPFCBeowulfbeowulfhtml

Meneacutendez-Barzanallana R (07 de 08 de 17) Universidad de Murcia Recuperado el 11 de 2018

de Informaacutetica Aplicada a las Ciencias Sociales

httpswwwumesdocenciabarzanaIACCSSCriptografiahtml

Merkle R amp Damgaringrd I (sf) Numerenturorg Recuperado el 06 de 2019 de Para computar -

numerenturorg httpnumerenturorgfuncion-merkle-damgard

Microsoft Inc (02 de 05 de 2019) wwwmicrosoftcom Obtenido de Password must meet

complexity requirements httpsdocsmicrosoftcomes-eswindowssecuritythreat-

protectionsecurity-policy-settingspassword-must-meet-complexity-requirements

99

Mifsud E (26 de 03 de 2012) Introduccioacuten a la seguridad informaacutetica Recuperado el 07 de 05

de 2018 de Ministerio de educacioacuten cultura y deportes Gobierno de Espantildea

httprecursosticeducacionesobservatoriowebessoftwaresoftware-general1040-

introduccion-a-la-seguridad-informaticashowall=1

Murugesan S (01 de 02 de 2008) Researchgate doi101109MITP200810

Nahar K amp Abu Abbas O (01 de 2010) Researchgate Recuperado el 07 de 2019 de

Researchgate

httpswwwresearchgatenetpublication315492522_Hybrid_Cipher_System

Nievas F Pino O amp Arroyo R (sf) Los clusters como Plataforma de Procesamiento Paralelo

Recuperado el 25 de 04 de 2018 de

httpusuarioslycoseslacaraocultadescargasClusters_definitivo pdf

Pawar S (2016) A computer science portal for geeks Recuperado el 10 de 2018 de

Geeksforgeeks httpswwwgeeksforgeeksorgrc5-encryption-algorithm

Peleus (2019) NETSEC Recuperado el 08 de 2019 de httpsnetsecwsp=314

Peacuterez Tavera I (2014) Obtenido de Universidad Autonoma del Estado de Hidalgo

httpswwwuaehedumxscigeboletinprepa4n2e4html

Peacuterez M (2001) Recuperado el 15 de 04 de 2018 de

httpwwwdragonesorgBibliotecaArticulosArquitecturaParalela2pdf

Petitet A Whaley R C Dongarra J amp Cleary A (2008) HPL - A Portable Implementation of

the High-Performance Linpack Benchmark for Distributed-Memory Computers

Recuperado el 07 de 2019 de httpwwwnetliborgbenchmarkhpl

Picolet J (2017) Hash Crack Password Cracking Manual (Vol 2) Createspace Independent

Pub

100

Preukschat A (23 de 02 de 2015) Oro y Finanzas Recuperado el 07 de 2019 de

httpswwworoyfinanzascom201502que-es-colision-criptografia-bitcoin

Robbins D (2008) OpenMosix Recuperado el 22 de 04 de 2018 de the openMosix Project

httpopenmosixsourceforgenetintroduction_to_openmosixhtml

Rocha Quezada J d Botello Rionda S Vargas Feacutelix J M amp Munguiacutea Torres I A (Sep-Dic

de 2011) Disentildeo e implementacioacuten de un cluacutester de coacutemputo de alto rendimiento Acta

Universitaria 21(3) 24-33 Recuperado el 1 de 12 de 2018

Rocksclusters (01 de 01 de 2010) httpwwwrocksclustersorg Recuperado el 01 de 06 de 2018

de httpwwwrocksclustersorg httpwwwrocksclustersorg

Sanjoy K (01 de 01 de 2015) DZone Recuperado el 15 de 06 de 2019 de DZone

httpsdzonecomarticlessecurity-algorithms-des-algorithm

Security Degree Hub (01 de 2017) Security Degree Hub Recuperado el 13 de 02 de 2019 de

Security Degree Hub httpswwwsecuritydegreehubcomwhat-is-cryptanalysis

Simmons G (01 de 01 de 2019) Encyclopedia Britannica Recuperado el 08 de 2019 de

Encyclopedia Britannica httpswwwbritannicacomtopicRSA-encryption

statista (09 de 2017) Statista Obtenido de Statista Co httpsesstatistacom

Turner D (2004) Recuperado el 12 de 02 de 2018 de Ames Lab

httpwwwsclameslabgovProjectsparrallel_computingpara_intohtml

United States Government Department of Defense (1983) Trusted Computer System Evaluation

Criteria Rainbow Series

Universidad Internacional de Valencia (09 de Septiembre de 2016) Nuestros

expertosTecnologiacutea Recuperado el 27 de Abril de 2018 de Universidad Internacional de

Valencia httpswwwuniversidadviuesla-seguridad-informatica-puede-ayudarme

101

Wallen J (19 de 01 de 2019) Lifewire Recuperado el 13 de 06 de 2019 de Lifewire

httpswwwlifewirecomgnome-3-desktop-4175640

Yang H (01 de 02 de 2019) Herong Yang Recuperado el 15 de 06 de 2019 de Cryptography

Tutorials httpwwwherongyangcomCryptographyDSA-Introduction-What-Is-DSA-

Digital-Signature-Algorithmhtml

102

Anexo 1

Programa en Lenguaje C para la obtencioacuten de nuacutemeros primos utilizando libreriacuteas mpi

include ltcstdlibgt

include ltiostreamgt

include ltiomanipgt

include ltcmathgt

include ltctimegt

include mpih

using namespace std

int main ( int argc char argv[] )

int prime_number ( int n int id int p )

void timestamp ( )

int main ( int argc char argv[] )

int i

int id

int master = 0

int n

int n_factor

int n_hi

int n_lo

int p

int primes

int primes_part

double wtime

n_lo = 1

n_hi = 10000000

n_factor = 2

MPIInit ( argc argv )

p = MPICOMM_WORLDGet_size ( )

id = MPICOMM_WORLDGet_rank ( )

if ( id == master )

cout ltlt n

cout ltlt Cuenta primosn

cout ltlt C++MPI versionn

cout ltlt n

cout ltlt Programa para contar cantidad de primos para un N dadon

cout ltlt Corriendo en ltlt p ltlt procesosn

cout ltlt n

103

cout ltlt N S Tiempon

cout ltlt n

n = n_lo

while ( n lt= n_hi )

if ( id == master )

wtime = MPIWtime ( )

MPICOMM_WORLDBcast ( ampn 1 MPIINT master )

primes_part = prime_number ( n id p )

MPICOMM_WORLDReduce ( ampprimes_part ampprimes 1 MPIINT

MPISUM

master )

if ( id == master )

wtime = MPIWtime ( ) - wtime

cout ltlt ltlt setw(8) ltlt n

ltlt ltlt setw(8) ltlt primes

ltlt ltlt setw(14) ltlt wtime ltlt n

n = n n_factor

MPIFinalize ( )

if ( id == master )

cout ltlt n

cout ltlt PRIME_MPI - Procesos maestron

cout ltlt Finalizacion del calculo normaln

return 0

int prime_number ( int n int id int p )

int i

int j

int prime

int total

104

total = 0

for ( i = 2 + id i lt= n i = i + p )

prime = 1

for ( j = 2 j lt i j++ )

if ( ( i j ) == 0 )

prime = 0

break

total = total + prime

return total

void timestamp ( )

define TIME_SIZE 40

static char time_buffer[TIME_SIZE]

const struct tm tm

size_t len

time_t now

now = time ( NULL )

tm = localtime ( ampnow )

len = strftime ( time_buffer TIME_SIZE d B Y IMS p tm )

cout ltlt time_buffer ltlt n

return

undef TIME_SIZE

Page 15: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 16: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 17: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 18: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 19: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 20: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 21: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 22: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 23: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 24: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 25: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 26: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 27: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 28: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 29: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 30: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 31: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 32: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 33: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 34: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 35: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 36: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 37: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 38: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 39: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 40: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 41: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 42: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 43: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 44: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 45: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 46: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 47: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 48: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 49: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 50: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 51: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 52: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 53: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 54: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 55: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 56: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 57: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 58: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 59: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 60: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 61: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 62: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 63: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 64: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 65: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 66: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 67: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 68: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 69: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 70: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 71: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 72: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 73: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 74: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 75: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 76: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 77: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 78: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 79: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 80: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 81: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 82: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 83: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 84: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 85: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 86: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 87: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 88: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 89: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 90: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 91: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 92: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 93: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 94: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 95: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 96: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 97: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 98: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 99: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 100: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 101: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 102: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 103: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 104: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 105: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 106: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 107: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 108: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 109: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 110: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 111: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 112: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 113: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 114: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 115: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios
Page 116: TECNOLÓGICO NACIONAL DE MÉXICOitacapulco.net/depi/wp-content/uploads/2020/01/Tesis-Gaddiel-Flores-Arteaga.pdfi El presente trabajo de tesis fue desarrollado en la División de Estudios