FACULTAD DE INGENIERÍAS

86
REVISTA INGENIERÍAS USBMed ISSN: 2027-5846 FACULTAD DE INGENIERÍAS Vol. 3, No. 1 Enero-Junio 2012 MEDELLÍN ANTIOQUIA

Transcript of FACULTAD DE INGENIERÍAS

Page 1: FACULTAD DE INGENIERÍAS

REVISTA

INGENIERÍAS USBMed ISSN: 2027-5846

FACULTAD DE INGENIERÍAS

Vol. 3, No. 1

Enero-Junio 2012

MEDELLÍN – ANTIOQUIA

Page 2: FACULTAD DE INGENIERÍAS

INGENIERÍAS USBMed ISSN: 2027-5846

Vol. 3, No. 1, Enero-Junio 2012

DIRECCIÓN Marta Cecilia Meza P.

EDICIÓN Edgar Serna M.

TRADUCCIÓN Gustavo A. Meneses B.

COMITÉ EDITORIAL Darío E. Soto D. Tecnológico de Antioquia

Fabio A. Vargas A. Tecnológico de Antioquia

Diego M. Murillo G. Universidad de San Buenaventura

Ricardo Botero T. Tecnológico de Antioquia

Claudia E. Durango V. Universidad de San Buenaventura

Gustavo A. Acosta A. Politécnico Jaime Isaza Cadavid

Carlos A. Castro C. Universidad de San Buenaventura

Juan D. Lemos D. Universidad de Antioquia

Helena Pérez G. Universidad de San Buenaventura

Jovani A. Jiménez B. Universidad Nacional de Colombia

Hernán Salazar E. Universidad de San Buenaventura

Jesús A. Anaya A. Universidad de Medellín

Beatriz L. Gómez G. Universidad de San Buenaventura

Carlos E. Murillo S. Cornell University

Andrés M. Cárdenas T. Universidad de San Buenaventura

Juan R. Aguilar A. Universidad Austral de Chile

Gustavo A. Meneses B. Universidad de San Buenaventura

Rudy Cepeda G. University of Connecticut

Ever A. Velásquez S. Universidad de San Buenaventura

Alher M. Hernández V. Universidad de Antioquia

Luis A. Muñoz Instituto Tecnológico Metropolitano

Germán M. Valencia H. Universidad de San Buenaventura

Sergio H. Lopera C. Universidad Nacional de Colombia

José Eucario Parra C. Universidad de San Buenaventura

Diego A. Gutiérrez I. Instituto Tecnológico Metropolitano

Jesús E. Londoño S. Universidad Católica del Norte

Cristina López G. Universidad de San Buenaventura

Luis A. Tafur J. University of Southampton

Conrado A. Serna U. Universidad de San Buenaventura

UNIVERSIDAD DE SAN BUENAVENTURA MEDELLÍN

FACULTAD DE INGENIERÍAS

Campus Universitario: Cll. 45 61-40. Barrio Salento, Bello.

Sede Centro: Cra. 56C 51-90. San Benito, Medellín.

Teléfono: +574 514 56 00 Ext. 4164

A.A.: 5222 / 7370

[email protected]

[email protected]

DERECHOS Creative Commons – Oppen Journal

Los autores son responsables de los contenidos y opiniones

La Revista se reserva el derecho de edición, publicación, distribución y divulgación

Page 3: FACULTAD DE INGENIERÍAS

3

CONTENIDO

Pág. Título Tipo

4-5 Editorial Editorial

6-14 Modelo de seguridad de la información

Sandra M. Bonilla, Jaime A. González Reflexión

15-22 Una revisión de metodologías seguras en cada fase del ciclo de vida

del desarrollo de software César Marulanda L., Julián Ceballos H.

Reflexión

23-34 Gestión de identidades y control de acceso desde una perspectiva

organizacional José Montoya S., Zuleima Restrepo R.

Reflexión

35-42 Solución integral de seguridad para las pymes mediante un UTM

Wilmar Flórez R., Carlos A. Arboleda S., John F. Cadavid A. Reflexión

43-49 Roles de los Centros Universitarios Municipales CUM en el desarrollo

local de los municipios cubanos Carlos A. Hernández M.

Reflexión

50-61 Minería de datos aplicada en detección de intrusos

Diego Vallejo P., Germán Tenelanda V. Reflexión

62-68 Comparación de métodos de interpolación para la generación de

mapas de ruido en entornos urbanos Diego Murillo, Irene Ortega, Juan David Carillo, Andrés Pardo, Jeiser Rendón

Investigación

69-73 Mapeo de la evolución de una enfermedad usando sistemas neuro-

difusos. Caso de estudio: Esclerosis múltiple Héctor A. Tabares O.

Investigación

74-81 Revisión de los Sistemas de Control de Versiones utilizados en el

desarrollo de software Edgar Tello-Leal, Claudia M. Sosa R., Diego A. Tello-Leal

Investigación

82-86 Descripción de los componentes de un sistema federativo tipo Eduroam

Gustavo Vélez Reflexión

Page 4: FACULTAD DE INGENIERÍAS

4

EDITORIAL

El sistema educativo actual y la crisis de la ingeniería La globalización no es un fenómeno nuevo. Cartago, Roma, los otomanos, varias potencias europeas y ciudades-estado mercantiles tenían redes comerciales multi-continentales que mantenían gracias a una combinación de poder económico, militar y de la última tecnología. En ciertas etapas de su historia subcontrataban todos los elementos para la producción, la educación, e incluso, para el ejército. Eventualmente, sin embargo, estas globalizaciones colapsaron, a menudo debido a las consecuencias políticas y económicas de la guerra. La globalización que se vive actualmente no tiene precedentes en su magnitud y alcance. El mundo entero se ha convertido en un mercado para las economías de muchos países y la globalización está transformando no sólo la ubicación y organización de la producción y los servicios, sino también los patrones sociales y económicos. Las consecuencias a largo plazo son insondables y el debate continúa adelante en todos los continentes. En nuestro país existe la preocupación creciente por el impacto de la globalización en la capacidad tecnológica y el mantenimiento a largo plazo de la capacidad productiva. Debido a que muchas de nuestras capacidades tecnológicas emigran al extranjero, los suministros de energía y la capacidad de investigación y de permanecer a la vanguardia en ingeniería y ciencia, son esenciales para preservar nuestra fuerza y libertad. Estas preocupaciones se ven agravadas por la producción anémica de ingenieros, convertida ya en una crisis mundial, debida, entre otras, a que la matrícula en las facultades de ingeniería se ha mantenido prácticamente estática en los últimos 20 años. La cantidad de ingenieros que se gradúa anualmente representa un porcentaje decreciente del total mundial. El desinterés por estudiar ingeniería decae, mientras la necesidad de profesionales en esta área se incrementa. Es preocupante, por ejemplo, que menos del 5% de los estudiantes universitarios estadounidenses vean a la ingeniería como una opción, mucho menos que el 12% en Europa y el 40% en China. Mientras que algunos países han fijando objetivos muy altos para lograr un número adecuado de profesionales como clave para el éxito futuro, la mayoría no lo tiene en cuenta entre sus prioridades inmediatas. Esto ha ocasionado que países como Estados Unidos, donde además se ha reducido el interés por las ciencias en general, sea cada vez menos tecnológicamente alfabetizado pero obligado a depender más y más de la ciencia y la tecnología para su seguridad, prosperidad y salud futuras. Claramente, para defender su posición en la tecnología y prosperar en un mundo globalizado, cada Estado debe repensar la formación en ingeniería y hacerla más atractiva para los jóvenes. También debe desarrollar una política de visión futura para la ciencia y la tecnología y repensar las prioridades de financiación para I + D en las ciencias físicas y la ingeniería. Disipar la niebla y las incertidumbres de la globalización y aprovechar las oportunidades creadas por la misma requerirá cabeza fría y evaluaciones realistas, en lugar de reacciones instintivas. Nos estamos moviendo en un territorio desconocido y el tiempo no está de nuestro lado; es el momento de tomar conciencia de lo que hay que hacer. En Colombia se tiene un problema aun mayor porque, al parecer, nuestra tendencia es querer colocarle el rótulo de “ingeniería” a cualquier proceso formativo, sólo para hacerlo comercial y venderlo, como si la responsabilidad social de entregar profesionales verdaderamente capacitados no hiciera parte de la razón de ser del sistema educativo del país. En este sistema, “enseñar” significa impartir algo que el estudiante no sabe. El “profesor” posee el conocimiento y lo que “enseña” es la voz de la verdad, porque él es el que sabe. En esta Era de la Información y el Conocimiento, en la que los estudiantes tienen acceso a todo tipo de fuentes de información que pueden transformar en conocimiento útil, se necesitan maestros con experiencia profesional para que guíen al estudiante, es decir, para que potencialicen eso que ya sabe y lo asesoren para que lo utilice en la resolución de todo tipo de problemas. En la Era Industrial, las “instituciones de educación” se dedicaban a educar a los estudiantes para un qué hacer y para responder a unas necesidades manufactureras. Los egresados eran personas educadas por el simple hecho de egresar de una de esas instituciones, a las que asistieron a “clases” con “profesores” muy educados. Pero en la nueva sociedad esto no basta. Educar hoy es una función de equipos de trabajo, en la que las instituciones son formadoras y certificadoras, los profesores son maestros asesores y los estudiantes son los protagonistas de todo el proceso. Una persona educada es un profesional formado para interactuar socialmente, con espíritu colaborativo, con honestidad, con prospectiva, con ética, que resuelve los problemas de forma eficaz y eficiente y que sabe trabajar en equipo. En la era Industrial “aprender” se refería a todos los datos sin sentido que los estudiantes memorizaban, para luego repetir como “loros” en los “exámenes”. Pero, en la Era actual, aprender es hacer parte de un trabajo colaborativo en el que el

Page 5: FACULTAD DE INGENIERÍAS

5

conocimiento no se centra en una sola persona ―el profesor― sino que se encuentra en todo con lo que el estudiante tiene contacto en su proceso formativo; es poder diferenciar entre información y conocimiento; es aportar lo que de antemano se sabe para ponerlo al servicio de la resolución de problemas; es valorar y sentirse valorado y es sentirse protagonista de su proceso formativo. La pregunta que necesariamente surge aquí es ¿qué institución en el actual sistema educativo puede asegurar que está satisfaciendo estas necesidades sociales? La respuesta será ¡todas! Porque lo tienen escrito en sus misiones y visiones, pero, ¿Se puede medir de alguna manera el cumplimiento de estas obligaciones morales y sociales en las instituciones? Creemos que no. El sistema educativo actual tiene relaciones adversas, no sólo entre profesores e instituciones sino también entre profesores y estudiantes y, a menudo, entre padres, profesores e instituciones. Las instituciones son burocráticas, con control centralizado "dictatorial" y en las que los estudiantes no reciben una preparación adecuada para participar activamente en la resolución de los problemas que tiene la sociedad. En ellas, el liderazgo recae en algunos individuos de acuerdo con una estructura de dirección jerárquica, en la que todos los mandos medios deben obedecer a un “líder”. La formación se estructura en departamentos y por áreas temáticas; se trata y forma a los estudiantes como si fueran todos iguales y se espera que todos hagan las mismas cosas, al mismo tiempo y están obligados a ser pasivos y miembros indiferentes de la comunidad escolar. Éstas y otras características del sistema son las que se deben cambiar, porque son contraproducentes y perjudiciales para los ciudadanos y para la sociedad de esta Era. En la Era Industrial se necesitaba personas mínimamente formadas ―al menos educadas―, dispuestas y capacitadas para soportar el tedio del trabajo en las líneas de montaje. Sin embargo, en la Era de la Información y el Conocimiento esos puestos de trabajo se están convirtiendo rápidamente en una especie en peligro de extinción. De la misma forma que el porcentaje de la fuerza de trabajo en la agricultura se redujo drásticamente en las primeras etapas de la Era Industrial, el porcentaje de la fuerza de trabajo manufacturero también está disminuyendo drásticamente en las últimas décadas. Actualmente, incluso en las empresas manufactureras, la mayoría de los puestos de trabajo implican la manipulación de información en lugar de materiales. Así como la Era Industrial se centraba y representaba la extensión de las capacidades físicas de los obreros ―tecnología mecánica―, la Era de la Información y el Conocimiento se centra y representa la extensión de las capacidades mentales ―tecnología intelectual― de los empleados. Esto hace que la formación eficaz sea de suma importancia pero, sorprendentemente ¡el sistema educativo actual no está diseñado para formar de esta manera!

Page 6: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

6

MODELO DE SEGURIDAD DE LA INFORMACIÓN

Sandra M. Bonilla Bancolombia

Medellín, Colombia [email protected]

Jaime A. González GrupoMide SA

Medellín, Colombia [email protected]

(Tipo de Artículo: Reflexión. Recibido el 01/11/2011. Aprobado el 12/01/2012)

RESUMEN

Para implementar un modelo de seguridad en las organizaciones, se debe seguir unos pasos esenciales para una adecuada toma de decisiones y elevar así los niveles de seguridad en la información. Este artículo hace un recorrido por las diferentes configuraciones para el diseño de la seguridad, empieza por la identificación de las amenazas informáticas, que constituye el primer paso para una buena protección de los flujos de datos que se manejan en las organizaciones. Continúa con el análisis e identificación de los riesgos, para mitigar el impacto en caso de la materialización de los mismos, generar los controles y políticas de seguridad las cuales pueden ser fácilmente cuantificadas y diseñadas de acuerdo con lo establecido en el paso anterior, para así tener un adecuado control sobre los impactos en la seguridad. Finaliza con el modelo de seguridad, donde se identifican los requerimientos y se desarrolla la arquitectura de la red. Palabras Clave

Arquitectura de red, aseguramiento de red, políticas de seguridad, seguridad informática.

SECURITY MODEL OF INFORMATION ABSTRACT To implement a security model on corporate organizations, there are some essential steps that need to be taken into account in order to achieve adequate decision-making, thus increasing security levels on the information. This article makes a review on different configurations for security designs; it begins by identifying the informatics risks, which constitutes the first step for proper protection of data stream managed by organizations. It continues with the analysis and identification of the risks to mitigate their effect it they become real, and creating controls and security policies, which in turn can be easily quantified and designed according to all that has been established on previous steps, thus having and adequate control over the security risks. Finally a security model is presented, where the requirements are identified and the network architecture is developed. Keywords Computer security, network architecture, network assurance, security policy.

MODELE DE SECURITE DE L’INFORMATION RÉSUMÉ Pour implémenter un modèle de sécurité de l’information dans les entreprises, il faut donc de suivre des procèdes essentiels pour prendre des décisions de manière adéquate et d’augmenter le niveau de sécurité de l’information. Cet article fait une révision des configurations pour la conception de la sécurité, d’abord avec l’identification des menaces informatiques, qui constitue le premier pas vers une bonne protection des flux de données qu’ont des entreprises. Après on analyse et on identif ie des risques, pour mitiger l’effet si les risques deviennent réels, aussi créer des contrôles et politiques de sécurité qui peuvent être quantifiés et conçus facilement d’après ce qu’on a dit dans le pas antérieur, ainsi avoir un bon contrôle de leurs effets. Finalement, on présente le modèle de sécurité, en identifiant les nécessités et en développant l’architecture du réseau. Mots-clés Architecture de réseau, affermissement de réseau, politiques de sécurité, sécurité informatique.

S. M. Bonilla & J. A. Gonzáles. “Modelo de seguridad de la información”. Ing. USBMed, Vol. 3, No. 1, pp. 6-14. ISSN: 2027-5846. Enero-Junio, 2012.

Page 7: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

7

1. INTRODUCCIÓN En la actualidad, las oportunidades de negocio se apoyan en el uso de las nuevas tecnologías, las cuales vienen acompañadas de riesgos significativos en el manejo de la información. Esto hace que su administración tenga un papel importante, porque debe partir de una adecuada identificación de elementos críticos y, sobre todo, tener claro cuáles son los riesgos y clasificarlos; para luego diseñar estrategias y controles apropiados de mitigación en cuanto a su seguridad y poder alcanzar una buena toma de decisiones.

En el mercado actual, las organizaciones deben basar sus procesos en sistemas informáticos que cada día dependen más de la tecnología. Para garantizar la permanencia y la competitividad del negocio en el mercado, es necesario proteger esa infraestructura tecnológica. También es común que se disponga de pocos recursos para las áreas tecnológicas, pero esto no debe justificar dejar de implementar e invertir en seguridad.

Muchas organizaciones tienen el pensamiento paradigmático de no destinar fondos para el componente de seguridad de la información, pues según la mayoría, éstos elevan los costos de la misma. Pero lo que no es tenido en cuenta a la hora de llegar a estas conclusiones es que, no contar con ello, puede generar sobrecostos representados en la afectación de la imagen, la realización de re-procesos, riesgos en el manejo de los datos y de los recursos financieros, entre otros. Por lo tanto, en un mundo donde los sistemas cobran cada vez mayor importancia, considerar este aspecto dentro de la planeación estratégica constituye en un factor clave para el éxito de las organizaciones.

2. AMENAZAS INFORMÁTICAS Con la aparición y masificación del uso de las redes informáticas y en especial de Internet, las organizaciones implementaron gran variedad de servicios para facilitar el manejo de la información e incrementar sus posibilidades de negocios. Desafortunadamente, al mismo tiempo surgieron individuos que realizan actividades ilegales con el objetivo de irrumpir en los flujos de información privados y confidenciales, haciendo que esas redes se convirtieran en un entorno inseguro. Ninguna industria está exenta de esto, porque puede presentar vulnerabilidades que arriesguen la integridad, confidencialidad y disponibilidad de los datos, al ser atacados por entes externos o internos de la misma organización, mientras ella no tiene el conocimiento o los sistemas necesarios para su detección. Por tal motivo, se han orientado esfuerzos en procura de investigar acerca de las diversas amenazas informáticas y con el ánimo de alertarlas y motivar en la búsqueda de una protección integral contra esta latente, sigilosa y peligrosa amenaza [1].

2.1 Clasificación de las amenazas informáticas Las organizaciones deben contar con suficiente experiencia para identificar los diferentes riesgos tecnológicos que pueden vulnerar su continuidad en el negocio. Estos riesgos se pueden clasificar como amenazas internas o externas; las primeras son generadas por factores internos de la organización y las segundas por factores externos. Amenazas externas. Se originan al interior de la organización y algunas de las más frecuentes son: virus ―gusanos, caballos de Troya―, spam, represalias de ex-empleados, espionaje industrial o ingeniería social [1].

Amenazas internas. Se generan al interior de la organización por los mismos usuarios, ya sea con o sin intención. Pueden ser muy costosas debido a que el infractor, por ejemplo un empleado descontento, conoce muy bien la estructura organizacional, tiene mayor capacidad de movilidad dentro de la misma, mayor acceso y perspicacia para saber dónde reside la información sensible e importante. Dentro de estas amenazas tambi n se incluye el uso indebido del acceso a nternet por parte de los empleados, as como los problemas que podrían ocasionar al enviar y revisar material ofensivo a través de la red [1]. Cuando una de estas amenazas se hace efectiva se convierte en un ataque, el cual puede ser activo o pasivo. El primero sucede cuando el ataque se vuelve evidente y directo a los servicios tecnológicos de la organización y el segundo cuando el riesgo está orientado a la pérdida de información secuencial y progresiva [1]. Este tipo de amenazas deben ser identificadas oportunamente mediante un seguimiento exhaustivo a los patrones de comportamiento, tanto de los sistemas como de los usuarios internos y externos de la organización, de manera que se puedan identificar irregularidades en el proceso continuo de la información. Es muy importante que las organizaciones inviertan y adopten mecanismos de seguridad que permitan resguardar su activo más importante, la información. Cada día las amenazas informáticas aumentan en número y complejidad, para lo cual se debe estar preparado.

2.2 Estado actual en Colombia En los resultados de la XI Encuesta Nacional de Seguridad Informática, realizada a través de la Web por la Asociación Colombiana de Ingenieros en Sistemas ACIS y en la que participaron 215 personas de diferentes sectores productivos y varias organizaciones especializadas en seguridad, se revela información sobre los tipos de incidentes o fallas tecnológicas en seguridad informática más frecuentes y las causas de las mismas.

Page 8: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

8

En la Figura 1 se muestran los incidentes de seguridad presentados en los últimos años ―2009, 2010 y primer semestre del 2011―. Según los estudios realizados, en el año 2009 se reportó que el mayor número de incidentes presentados fueron causados por virus y por la instalación de software no autorizado. En el 2010, estos incidentes se disminuyeron notablemente, pasaron de 70 incidentes causados por virus a 20 y disminuyeron progresivamente en el transcurso de 2011. Lo mismo se puede identificar con la instalación del software no autorizado, en 2009 se evidenciaron 60 incidentes a causa de esta falla en seguridad, disminuyó a 20 incidentes o menos en 2010 y 2011 [2].

Fig. 1: Incidentes de seguridad [2]

En la Figura 2 se muestra el aumento en los niveles de inversión, durante los años de 2009, 2010 y 2011, que han hecho las empresas para mejorar la seguridad, lo cual se ha visto reflejado en la disminución de incidentes [2]. Para lograrlo se necesitó de una inversión en elementos de control que permitieran incrementar la seguridad en las organizaciones. Si se hace un buen análisis de las necesidades y de los riesgos tecnológicos, es posible optimizar los recursos para las necesidades según los requerimientos de la información a proteger.

Fig. 2: Inversión en seguridad [2]

Los resultados de la encuesta muestran cómo las organizaciones han venido mejorando e invirtiendo en mecanismos y dispositivos para asegurar su información, mediante la implementación y uso de buenas prácticas en la protección y en controles de seguridad.

3. IDENTIFICACIÓN Y ANÁLISIS DE RIESGOS La identificación y análisis de riesgos es una metodología que se enfoca en cómo evitar o reducir los peligros asociados con la seguridad de la información. Para ello, es necesario realizar una evaluación cuidadosa de todos los factores internos y externos que intervienen o afectan los servicios de la organización.

Para tener un conocimiento de lo que se debe asegurar y tomar la mejor decisión en las herramientas, metodologías, o prácticas a utilizar, es importante hacer una evaluación consiente y profunda del riesgo. Lo primero es identificar los riesgos, es decir, recopilar todos los activos informáticos de la organización y seleccionar cuáles son los elementos críticos que pueden ser afectados por algún riesgo, la probabilidad de que ocurra y los costos que involucran. Luego, se identifican todas las amenazas informáticas, tanto internas como externas. Al momento de hacer el análisis de riesgos, se toman las amenazas y se analizan con cada uno de los activos que se tiene; esto se evalúa por medio de una calificación de riesgos y con base en lo que afecta, el costo involucrado y el tiempo que se requiere para corregirlo. Posteriormente, se identifican los mecanismos para tratar los riesgos en cuanto a cómo reducirlos, evitarlos, mitigarlos o transferirlos. Estos mecanismos se implementan en diseños de seguridad, funcionalidades, políticas, configuraciones, monitoreo y seguimientos periódicos.

El principal objetivo de la evaluación de riegos es garantizar la supervivencia de la organización, minimizando las pérdidas de información y, sobre todo, garantizando el riesgo mínimo en cada elemento de red o software que se emplee para su protección [3]. Para ello se debe hacer el análisis de riesgos para identificar las vulnerabilidades del sistema, en qué riesgos se esta incurriendo y cómo mitigarlos.

Las empresas han venido utilizando un modelo reactivo al momento de presentarse un incidente que afecte su estabilidad tecnológica, lo cual genera re-procesos y que estos incidentes, al no ser medidos, alcancen un alto impacto en la continuidad del negocio. Uno de los problemas es que no manejan una base de datos de conocimiento que permita reconocer patrones de errores, lo que puede generar alertas tempranas para identificar oportunamente los incidentes de seguridad y que permitan crear indicadores de seguimiento en su resolución. Muchas de las pérdidas financieras en las organizaciones se deben a la falta de un adecuado control e implementación de políticas de seguridad [4].

Algunas organizaciones, al notar que tenían perdidas o que incurrían en riesgos por incidentes tecnológicos, optaron por la creación de equipos de trabajo especializados que se encargan de ellos. Estos grupos inter-institucionales se denominaron gerencias de continuidad del negocio o gerencias de manejo de

Page 9: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

9

riesgos de TI y su principal objetivo es prevenir, mediante herramientas, que se generen datos medibles, valores estadísticos y valores históricos de los posibles riesgos, tanto a nivel físico o tecnológico, inherentes a la propia naturaleza del negocio.

Hoy en día con la integración e interconexión de infraestructuras, las organizaciones deben implementar métodos y técnicas que permitan mejorar esos controles de seguridad. Actualmente existen controles tecnológicos basados en software o en hardware, como firewalls, sistemas para detección y prevención de intrusos, sistemas de control de acceso, entre otros. Estos controles se deben integrar con las plataformas existentes en la organización y hacer un plan de divulgación a las demás áreas, de tal forma que toda la organización participe activamente para generar una cultura que permita cubrir los diferentes frentes de inseguridad o vulnerabilidades que se pueda tener [5].

En algunas organizaciones se tienen implementados procesos que deben ser re-ajustados a políticas y técnicas nuevas, con el objetivo de implementar una adecuada seguridad. El cambio de estos procedimientos puede generar inconformismo o rechazo por parte de los empleados o de las diferentes áreas de la empresa y, para evitarlo, se debe hacer un plan de concientización donde se expongan los riesgos en los que se esta incurriendo y sus posibles consecuencias [3].

Una organización, que no tenga implementada una base de conocimiento sobre incidentes y riesgos tecnológicos, se ve afectada repetitivamente por los mismos, debido a que no realiza una adecuada identificación y evaluación del riesgo que le permita medir el impacto que pueda legar ocasionar.

Conocer las vulnerabilidades e implementar procedimientos para combatirlos es importante, sin embargo, hasta ahora no se cuenta con medidas de seguridad que garanticen completamente una protección total. Por tal motivo es importante evaluar los métodos a utilizar para minimizar de manera sustancial los riesgos que se tienen en las organizaciones [6]. 4. MODELO DE SEGURIDAD PROPUESTO El modelo de seguridad expuesto a continuación, es la base para implantar una arquitectura de seguridad eficiente, invirtiendo en lo que se necesita y logrando así un retorno de la inversión a corto plazo. Para la implementación del modelo de seguridad se deben seguir los siguientes pasos: 1. Identificar y analizar los riesgos 2. Definir las políticas de seguridad 3. Diseñar la arquitectura de red

4.1 Identificar y analizar los riesgos Lo más importante para poder iniciar con la implementación de un sistema de seguridad es tener

claro qué se va a proteger. De este análisis se puede identificar los riesgos presentes en la organización y evaluar su impacto para establecer los controles y de esta manera mitigar los impactos más significativos.

4.2 Definir las políticas de seguridad Desde la arquitectura de los sistemas de información se puede cuantificar fácilmente los riesgos. Este modelo puede cubrir aspectos gerenciales, operacionales o puramente técnicos y puede ser diseñado para evaluar el riesgo de seguridad asociado con diferentes arquitecturas de red, o para evaluar el impacto en las diferentes políticas diseñadas para la seguridad organizacional.

Las políticas de seguridad son una declaración de lo que se puede o no se puede hacer dentro de la empresa, por ello se debe contemplar, sin limitarse:

El nombre del dueño de la política y que es el responsable de que se cumpla.

El grupo de personas que deben acatarla. Enunciar la política, tener un procedimiento claro y

un objetivo. Debe tener sanciones por el incumplimiento de las

políticas, lo que le dará más validez. 4.3 Diseñar la arquitectura de red Dentro del diseño de esta arquitectura se analizan factores como: identificación de requerimientos, desarrollo de la estructura de la red, aprovisionamiento de hardware, diseño de elementos de seguridad, implementación y monitoreo.

La identificación de los requerimientos se genera de acuerdo con las necesidades que surgen en la etapa de identificación y análisis de riesgos. En el desarrollo de la estructura de red se debe tener en cuenta la integración de los dispositivos con la arquitectura de seguridad, para lo cual se realizan dos subdivisiones, una que es hacia internet o redes externas y otra que es la red interna de la organización.

Es importante identificar los servicios más críticos para la organización, para ello se evalúa cuáles son los procesos más importantes, si los procesos internos o los procesos de cara a los clientes, como las páginas Web u otras herramientas. Después de esto se sabrá qué proteger, para lo cual se deben tener claros los conceptos de DMZ, o Zona desmilitarizada y MZ o Zona militarizada o red interna. La primera es la red que se utiliza para hacer las interconexiones a las redes externas. Todas las redes internas deben tener conexiones hacia redes externas a través de la DMZ y viceversa. La segunda, es aquella red donde se encuentran todos los elementos internos de las organizaciones y no requiere una conexión directa con las redes externas.

Estas dos zonas son las que existen en todo tipo de organización o red y que se deben asegurar. Con base en los resultados arrojados por el análisis de riesgo e identificada la zona esencial para el funcionamiento de

Page 10: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

10

la organización, se debe implementar mayor inversión en la seguridad, sin descuidar la otra zona, la cual debe tener una protección básica. En la Figura 3 se muestra una topología básica de una red en la que se puede identificar las diferentes zonas.

Fig. 3: Arquitectura Básica de Red

A continuación se describe el aseguramiento para cada una de las zonas y cómo realizar la protección interna para la MZ y la externa para la DMZ.

4.3.1 Aseguramiento interno Para la red interna se habla de un diseño en el que incluya la red de todos los usuarios y las granjas de servidores, la protección de las conexiones de redes externas y de la red de usuarios y el flujo de datos que salen y entran. Es importante tener claridad en que no se debe establecer una conexión directa con las redes externas, pues ello genera vulnerabilidad en la infraestructura. Una arquitectura de seguridad básica y sencilla en una organización está conformada por un firewall, un enrutador o modem y la red interna. Todas las redes poseen una DMZ y una MZ, algunas veces la primera no está bien identificada porque no se tienen servidores de cara a internet. En estos casos la DMZ es un modem que suministra el proveedor de internet (ISP), y la MZ es el resto de la red de la organización. Cuando se tiene un sitio web informativo se debe proteger con un firewall, porque a través de él se permite la comunicación entre la red interna y la externa. Es decir, todas las solicitudes que vienen desde y hacia internet. Es entonces cuando la DMZ se encarga de resolver las consultas Web, sin exponer la seguridad de la red interna en la que se encuentra la información de la organización.

El diseño de seguridad debe puntualizar la seguridad de la red interna, donde se realizará el análisis de los puntos críticos a proteger, y que cubre la granja de servidores, con todos los aplicativos y bases de datos de la empresa, al igual que la red de usuarios.

A continuación se listan algunos de los puntos claves que se deben tener en cuenta a la hora de implementar una red interna y de esta forma no comprometer la seguridad de la organización:

No se puede hacer consulta directa a la red interna desde una red externa.

Se debe implementar una solución de red que incluya segmentación y listas de control de acceso según los servicios de la organización: Segmento de red para servidores. Segmento de red para administración de

dispositivos. Segmento de red según los diferentes perfiles

de usuarios: Infraestructura o granjas de servidores. Telecomunicaciones o dispositivos de red. Monitoreo. Áreas de trabajo (cada área debe estar en un

segmento de red para control de privilegios). Invitados.

Perfilar la navegación y consultas a los aplicativos según segmentos de la red y usuarios.

Navegación contralada por medio de proxy. Esta también es por perfiles de navegación.

Los elementos y dispositivos de seguridad son esenciales y se deben tener en cuenta en toda red:

Firewall. Es un enrutador programado que se ubica entre redes y que re-envía, direcciona y filtra flujo de datos que pasan de una red a otra, mediante reglas como direccionamiento, protocolos y puertos, entre otras [7].

Evita que los usuarios accedan a un host o a servicios específicos y ayuda a proteger la red de ataques como denegación de servicios [7]. Para la seguridad interna se recomienda montar un firewall en el perímetro de la red, con las reglas necesarias para la comunicación entre los segmentos.

En el mercado se encuentra gran variedad de ofertas, tanto en software como en hardware. Algunos, como Juniper Networks, Barracuda y Cisco son muy robustos y con capacidad para múltiples configuraciones tanto básicas como avanzadas. También existe el IPTABLES, que es gratuito y que permite diversas configuraciones. Para un tráfico moderado, es decir, para pequeñas y medianas empresas, éste es un firewall recomendado; es una herramienta software que se puede instalar en un computador en la red.

Enrutador. Es el punto donde se conectan dos o más redes [7] y se usa básicamente para la conexión a internet, pero también puede ser utilizado para separaciones de tráficos internos en organizaciones muy grandes. En una pequeña o mediana empresa se recomienda la implementación y configuración de un enrutador para la conexión con el proveedor o proveedores de internet y para el control del tráfico interno se puede utilizar un firewall. También se puede hacer por medio de switches, si soportan VLAN y listas de control de acceso.

Red Inalámbrica. Si se posee un servicio inalámbrico, es importante tener en cuenta que en estas redes se

Page 11: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

11

conectan muchos dispositivos, como equipos móviles, portátiles y equipos de invitados, por esto se recomienda tener al menos dos redes inalámbrica, con el objetivo de separar la red de empleados, con sus segmentaciones respectivas, y la red de invitados. Esta última de debe configurar sólo con permiso de navegación y restringiendo también el perfil en el proxy. Adicionalmente se debe restringir el resto de servicios que se ofrece en la red de la organización. En la segmentación también se recomienda utilizar listas de control de acceso, para incrementar la seguridad en la red. Ambas redes deben tener contraseñas, las cuales deben ser diferentes.

Todas las redes inalámbricas deben tener configurado un cifrado, con el fin de garantizar la seguridad en las conexiones. En las redes inalámbricas internas se recomienda el WPA2 con AES para la autenticación de los usuarios y que estén configurados en un servidor RADIUS; para los usuarios externos o invitados se puede implementar WPA o WEP. Red cableada. En esta infraestructura se recomienda restringir los puertos de los dispositivos de red a un número finito de conexiones de equipos; normalmente a un puerto sólo se conecta un equipo. Si existen áreas en la organización en las que se necesite una configuración diferente, se hace un estudio para implementar un número finito que pueda soportar las necesidades y que cumpla con la seguridad. Se recomienda utilizar swhitches que soporten listas de control de acceso y VLAN para la segmentación de la red, de acuerdo con los perfiles y permisos de los usuarios. En lo que tiene que ver con la administración y el monitoreo se recomienda hacer revisiones del consumo de la navegación y de los segmentos de la red, para evaluar un cambio no esperado y para detectar posibles ataques externos o acciones indebidas realizados por usuarios internos.

Antivirus. Es un elemento fundamental en las organizaciones. Es una herramienta para la que no se debe limitar o restringir la inversión, pues no tenerla puede traer costos muy altos como pérdida de información, suspensión de servicios de producción, entre otros. Se recomienda tener instalado el antivirus en cada uno de los equipos de la red y no olvidar que ciertos dispositivos móviles también lo necesitan.

Algunos de los antivirus más recomendados, de acuerdo con el sitio pcworld.com, son: Symantec Norton Antivirus, BitDefender Antivirus Pro, G-Data AntiVirus, Kaspersky Lab Anti-Virus, entre otros [8].

IDS/IPS. Es un sistema usado para detectar intrusiones dentro de los sistemas de cómputo y redes [9]. El IDS, o sistema de detección de intrusos, es una herramienta que genera alertas de posibles ataques o incidentes en la red. Es recomendable utilizar más de uno, con el objetivo de poder generar alertas y hacer una correcta correlación de eventos después de ocurridos y para ver si fue una falsa alarma o un

ataque. Para esto es importante hacer un monitoreo de alertas, porque sin esto sería una herramienta inútil y, en caso de nos ser posible, por lo menos tener programada una revisión periódica. Los sitios más recomendables para su instalación son: en la entrada de la red, ya que es por donde inician los ataques, en la red de usuarios y en la granja de servidores. Si hay más de una red de usuarios se debe implementar un IDS por cada red que existe en la organización.

Los IDS son un conjunto de reglas que detectan patrones de navegación y que se deben configurar de acuerdo con lo que se esté revisando; por ejemplo, si se revisa la red de usuarios con sistemas Windows, las reglas se deben configurar para este sistema. Es importante establecer las reglas que deben ir en cada uno de los IDS para disminuir el número de falsos positivos y para ayudar a la revisión de eventos.

Existen muchas herramientas para este fin, por lo que se debe analizar correctamente el tráfico que se va a procesar antes de elegir una de ellas. El SNORT es muy utilizado para pequeñas y medianas empresas y es un IDS muy robusto que tiene comunidades actualizando continuamente las reglas y que cada usuario puede implementar según el conocimiento que tenga y la necesidad de la organización. Es una herramienta gratuita.

Sistemas de monitoreo. Son herramientas para visualizar logs y eventos que, cuando se implementan con una herramienta de correlación de eventos, proporcionan información clave para la identificación de incidentes de seguridad. El costo para sostener una herramienta de éstas es alto, debido a que su mantenimiento que depende de días de monitoreo.

Dependiendo del objetivo de la empresa y del riesgo estudiado, se debe evaluar si es necesario implementar un sistema de monitoreo o no. Si no es muy crítico se recomienda, al menos, tener un registro de esta información para hacer una revisión periódica y hacerle ajustes al sistema. También se debe configurar el registro de logs y el envío de alertas en los dispositivos de red, con el fin de poder reaccionar a tiempo ante un ataque o evento inesperado.

Proxy. Es una herramienta que direcciona los requerimientos de los usuarios hacia internet, de tal forma que permite hacer controles en la navegación [9]. Esto ayuda en la seguridad al navegar en sitios no deseados, a evitar riesgos para la compañía y, además, se puede asignar puertos para la navegación y otros servicios a través de internet.

Existe gran variedad de proxy basados tanto en software como en hardware; algunos tienen licenciamiento por número de usuario, ancho de banda o equipos y otros que no tienen ningún costo, como el Squid, que es una herramienta versátil y robusta que posee gran número de funcionalidades como caché, filtrado de contenido, estadísticas de navegación,

Page 12: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

12

definición de perfiles para usuarios o grupos de usuarios, perfiles de subredes, administración de ancho de banda, entre otras.

Controlador de dominio. Este sistema permite controlar y definir perfiles, permisos de acceso a los usuarios y autenticación de dispositivos de la empresa dependiendo del cargo o responsabilidades del empleado y de esta forma garantiza la seguridad de los sistemas. Gracias a esta herramienta se pueden administrar los perfiles de los usuarios y controlar todos los accesos a aplicativos, archivos, almacenamiento, entre otros elementos de la empresa. De acuerdo con los permisos se puede evitar la instalación de software no deseado, la realización de diferentes configuraciones de los equipos, entre muchas otras funcionalidades que ayudan a proteger la red. VPN o Red privada virtual. Es una red lógica y segura que se establece sobre una red existente [7]. Su funcionalidad permite, solamente cuando es necesario, establecer conexiones remotas seguras hacia la red interna. Existen muchas herramientas para la configuración de una VPN, tanto en software como en hardware, igual que licenciadas o gratuitas. 4.3.2 Aseguramiento externo En el aseguramiento de la red externa o DMZ se tienen los servidores que prestan servicios hacia Internet, los cuales están de cara al cliente, es decir, servidores de FrontPage, servidores de correo, FTP, entre otros. Son servidores que no se pueden cerrar a la visualización de personas en redes externas y, por tanto, se debe tener una protección diferente. Si el objetivo del negocio depende de estos servicios y si existen riesgos muy críticos en la DMZ, es de vital importancia proteger esta área, porque está expuesta en internet a todos los públicos. Los servidores que están ubicados en esta zona pueden ser vulnerados por los usuarios externos o empleados de la red interna. Con el fin de evitar posibles fallas de seguridad, se debe implementar una solución que garantice la protección de la red externa DMZ. El diseño de seguridad para la red externa DMZ debe garantizar la disponibilidad sin vulnerabilidad y es necesario tener en cuenta los diferentes factores que se listan a continuación para su protección:

Ofrecer una conexión directa a los servicios

prestados en Internet. De cara al cliente debe haber una visualización de

los servicios, pero no el aplicativo o el servidor directamente, es decir, deben pasar por un proxy reverso.

Sólo deben estar disponible los puertos con los servicios ofrecidos.

La administración estará restringida y sólo los administradores tienen acceso a la misma y se debe realizar desde sitios seguros o a través de una VPN.

Los elementos y dispositivos de seguridad que se recomienda instalar y configurar en una DMZ son: proxy reversos, firewall, VPN, antivirus y detección de intrusos.

Firewall. En este caso se utiliza para proteger la DMZ y para permitir la conexión administrativa sólo desde sitios seguros o de la MZ y la configuración de las conexiones a los servicios únicamente por los puertos deseados, bloqueando el resto. El firewall se debe configurar de tal forma que pueda registrar eventos relacionados con número de conexiones, intentos de conexiones, entre otras configuraciones que permitan identificar, controlar, administrar y prevenir posibles ataques, sean internos o externos.

Antivirus. Esta herramienta se instala con el fin de proteger la información que se despliega a los clientes o que llega a los servidores; debido a esto los antivirus se instalan en los equipos directamente o específicos para los servidores. El antivirus, además de proteger los servidores, protege a los usuarios que acceden a los aplicativos o servicios. Son esencialmente de red, o si se tiene un servidor Windows, instalar un antivirus adicional en él.

IDS/IPS. La implementación de estos dispositivos es igual a la de la red interna. Los IDS/IPS tienen reglas exclusivas para el funcionamiento de los servidores que varían dependiendo de los servicios ofrecidos y de los sistemas utilizados.

Sistemas de monitoreo. Su configuración es igual a la de la red interna. Los costos involucrados para un buen monitoreo se deben evaluar según la necesidad de la empresa, aunque es importante hacer revisiones periódicas y generar un sistema de alarmas de posibles ataques, consumo de recursos y disponibilidad de los servicios.

Servidores de despliegue o proxy. Para prestar los servicios a los clientes es recomendable usar servidores proxy reversos, porque estos sistemas trabajan haciendo un direccionamiento desde la DMZ a la MZ de forma segura, sin necesidad de tener directamente los aplicativos en la DMZ. También se puede trabajar el despliegue de la información y las consultas a los aplicativos por la red interna, las dos técnicas o la combinación de éstas ayuda a proteger tanto los aplicativos como la información.

VPN (Red privada virtual). Este tipo de conexión se utiliza para realizar la administración de los servidores o la conexión a la red interna. Cuando se habla de VPN en la red interna, la conexión se hace directamente desde la DMZ o desde Internet.

Switch. Para tener mayor seguridad estos elementos deben estar separados de los de la red interna y, para soportar el número de conexión que puede existir en internet, deben poseer una buena capacidad de tráfico.

Page 13: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

13

5. BENEFICIOS DE LA IMPLEMENTACIÓN Para implementar una buena arquitectura de seguridad en las organizaciones se debe pasar por la identificación y el análisis de riesgos, para conocer las necesidades y poder realizar un diseño de seguridad adecuado, cubriendo los requerimientos de seguridad y dejando a un lado las inversiones innecesarias que incrementan los costos de la seguridad. Se debe invertir en lo realmente sea necesario, se elegirán las herramientas adecuadas para ofrecerles a los clientes eficientemente y con mayor calidad los servicios y adquiriendo un nivel aceptable de prevención de los riesgos.

Es importante recordar, como se ha descrito en este artículo, que todas las herramientas o diseños son beneficiosos, siempre y cuando se haga una correcta evaluación de las diferentes herramientas ofrecidas en el mercado, antes de seleccionar la más adecuada para lograr mitigar los riesgos organizacionales. Las herramientas de bajo costo no siempre logran economizar, al igual que no siempre las de mayor costo son las de mejor funcionamiento. Puede ocurrir que las primeras no tengan un buen funcionamiento y se deba invertir nuevamente en otras, o que las segundas no cumplan las expectativas para las que fueron adquiridas. Por eso se debe tener claro el riesgo para el que se adquieren y si con ellas se llega a un nivel aceptable de protección para la organización. Hay que recordar también que si se va a proteger información que genera una utilidad determinada al año, toda la organización necesita un equilibrio entre lo financiero y lo tecnológico y que si, por ejemplo, lo que se piensa utilizar para proteger ese activo cuesta más que la utilidad, no es viable invertir en esa herramienta, por esto es de gran importancia saber qué se va a proteger y los niveles aceptables para realizar la inversión. 5.1 Costo-beneficio Para decidir si una herramienta o elemento de seguridad es necesario en una organización se requiere un buen análisis del riesgo. Ahora bien, si se analizan los virus informáticos en los equipos de la organización se puede observar que la probabilidad de ocurrencia es alta y que su impacto se evalúa por el tiempo que se perdió reparando el equipo, o por la información perdida debido a un daño en el mismo. Si se habla de un virus que se propagó por toda la empresa, el impacto sería desastroso; por lo tanto los controles en este caso sería un buen antivirus comercial, que garantice el control y unas políticas claras de manejo de archivos, ya sea desde internet o desde unidades de almacenamiento removibles. También hay que analizar lo contrario, es decir, si para un riesgo bajo con una probabilidad baja y un impacto casi nulo, es necesario invertir mucho tiempo y recursos en su protección.

Al evaluar el costo por la perdida de la información y el tiempo de indisponibilidad de los servicios, entre otras

medidas, se puede obtener un mapa de riesgos para compararlo con los incidentes generados en el año inmediatamente después de estar protegidos y para sustentar las inversiones hechas y las futuras. Von este procedimiento se puede ver claramente el retorno de la inversión y por lo tanto el costo-beneficio. 6. RECOMENDACIONES Para la implantación y puesta en marcha del modelo de seguridad propuesta se deben identificar y analizar los riesgos, definir las políticas de seguridad y diseñar la arquitectura de red. La siguiente lista enumera los pasos que se recomienda seguir para la implementación de una infraestructura segura:

Identificar y analizar los riesgos.

Listar los activos. Listar todas las amenazas de la empresa. Cruzar los activos con las amenazas. Generar tablas de probabilidad y la frecuencia

con la que se va a medir. Generar tablas de impacto: financiero,

operacional, información (disponibilidad, confiabilidad, integridad), imagen de la organización, en el mercado o clientes.

Calcular el riesgo como la probabilidad de ocurrencia contra el impacto de que ocurra.

Evaluar la aceptabilidad y la inaceptabilidad. Generar los controles.

Definir políticas de seguridad. Diseñar la red.

Análisis de requisitos. Arquitectura de la red. Diseño de seguridad. Aprovisionamiento e instalación de los

elementos de seguridad y de la red. Monitoreo y control de incidentes

7. CONCLUSIONES En vista de la necesidad de tener un diseño de seguridad adecuado para la organización y un retorno de la inversión a corto plazo, se debe implementar un diseño de seguridad eficiente. Para esto es fundamental identificar y analizar correctamente los riesgos.

Al tener claro los riesgos más significativos y qué proteger, se puede implementar un diseño de seguridad sin necesidad de hacer inversiones en equipos que no se requieren, esto sin descuidar la protección para el buen funcionamiento de la organización. No basta con implementar un buen sistema de seguridad que incluya a los controles, la arquitectura y las políticas, si no se realiza el seguimiento, el monitoreo y la evaluación a la solución implementada, porque las herramientas solas no hacen el trabajo. Por esto es importante la verificación continua y los ajustes que se puedan realizar.

Page 14: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

14

8. REFERENCIAS [1] C. A. Parra & H. Porras D. "Las amenazas informáticas:

Peligro latente para las organizaciones actuales". Gerencia tecnológica Informatica, Vol. 6, No. 16, pp. 85-97, 2007.

[2] J. J. Cano et al. “III Encuesta Latinoamericana de Seguridad de la Información”. Online, 2011.

[3] R. Bernard. "Information Lifecycle Security Risk Assessment: A tool for closing security gaps". Computers & Security, Vol. 26, No. 1, pp. 26-30, 2007.

[4] A. C. Johnston & R. Hale. "Improved Security through Information Security Governance". Communications of the ACM, Vol. 52, No. 1, pp. 126-129, 2009.

[5] W. T. Yue et al. "Network externalities, layered protection and IT security risk management". Decision Support Systems, Vol. 44, No. 1, pp. 1-16, 2007.

[6] B. Karabacak & I. Sogukpinar. "ISRAM: information security risk analysis method". Computers & Security, Vol. 24, No. 2, pp. 147-159, 2005.

[7] L. L. Peterson & B. S. Davie. “Computer networks: A systems approach”. Morgan Kaufmann, 2011.

[8] N. Mediati. “Top 10 Paid Antivirus Programs for 2011”. Online, 2011.

[9] J. M. Kizza. “Computer Network Security”. Springer, 2010.

Page 15: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

15

UNA REVISIÓN DE METODOLOGÍAS SEGURAS EN CADA FASE DEL CICLO DE VIDA DEL DESARROLLO DE SOFTWARE

César Marulanda L. Italtel S.P.A.

Medellín, Colombia [email protected]

Julián Ceballos H. Productora de Software S.A. PSL

Medellín, Colombia [email protected]

(Tipo de Artículo: Reflexión. Recibido el 03/11/2011. Aprobado el 11/01/2012)

RESUMEN

El desarrollo de software seguro es un asunto de alta importancia en las compañías, debido a que la mayoría de ellas dependen altamente de sus aplicaciones para su operación normal. Es por esto que se hace necesario implementar efectivamente metodologías de desarrollo seguro que sean aplicadas en cada fase del ciclo de vida: requisitos, diseño, desarrollo y pruebas. Es importante tener presente la seguridad desde las etapas más tempranas del proceso de desarrollo y no dejarla en un segundo plano. Además, se requiere investigar el estado del arte en desarrollo de aplicaciones seguras y así escoger metodologías de acuerdo con las necesidades de cada aplicación y los requisitos de los interesados en el producto final. El objetivo de este artículo es recopilar una serie de metodologías y herramientas existentes que se puedan implementar, añadiendo seguridad en toda la aplicación y desarrollando no sólo software de alta calidad sino también de alta seguridad. Palabras clave

Ciclo de Vida de Desarrollo de Sistemas, Desarrollo Seguro, Pruebas Seguras, Arquitectura Segura.

A REVIEW OF SECURE METHODOLOGIES FOR ALL THE STAGES OF LIFE CYCLE OF SOFTWARE DEVELOPMENT

ABSTRACT Secure Software Development is a high importance matter in all companies, because most of them are highly-dependent on their applications for normal operation, for this reason is necessary to effectively implement secure development methodologies to be applied in every phase of Software Development Life Cycle; Requirements, Design, Development and Tests, because is important to keep in mind that Security starting from the earlier stages in the development process, and do not put it away for late stages. Thus is important to research the state of art in secure development for applications and choose methodologies in order to satisfy the needs for the application and the requirements of final product stakeholders. The main goal of this article is to collect a set of methodologies and tools, which can be implemented, adding security in the whole application, thus developing high quality and high security software. Keywords Systems development life cycle, secure development, secure tests, secure architecture.

UNE REVISION DES METHODOLOGIES SÛRES POUR TOUS LES PHASES DU CYCLE DE VIE DU DEVELOPPEMENT DES LOGICIELS

RÉSUMÉ Le développement de logiciels sécurisés est un sujet très important pour les entreprises, á cause de que la majorité d’entre eux dépendent fortement de leurs applications, pour avoir une opération normale. C’est pour cela que il est nécessaire d’implémenter effectivement des méthodologies de développement sécurisé qui soient appliqués pendant chaque phase du cycle de vie du développement logiciel ; requêtes, conception, développement et essais, puisque il est important de considérer la sécurité pendant toutes les étapes du processus de développement, au lieu de l’avoir en second plan. Par conséquent, il est important de faire des recherches sur l’état de l’art au sujet de développement d’applications sécurisées, et de choisir des méthodologies, selon la nécessité de chaque application et les requêtes actuelles des intéressés par le produit final. L’objectif de cet article est de rassembler des méthodologies et outils existantes qui pourraient être implémentés, en fournissant de sécurité supplémentaire sur tout l’application, et en développant non seulement de logiciel de haute qualité mais encore très sûr. Mots-clés

Cycle de vie de développement de systèmes, développement sécurisé, essais sécurisés, architecture sécurise.

C. Marulanda L. & J. Ceballos H. “Una revisión de metodologías seguras en cada fase del ciclo de vida del desarrollo de software”.

Ing. USBMed, Vol. 3, No. 1, pp. 15-22. ISSN: 2027-5846. Enero-Junio, 2012.

Page 16: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

16

1. INTRODUCCIÓN La seguridad de los sistemas es un tema que ha despertado amplio interés desde hace mucho tiempo, porque no sólo es necesario tener aplicaciones de alta calidad sino también que tengan seguridad. Debido a que actualmente la mayor parte de ataques están enfocados a las aplicaciones y teniendo en cuenta que la mayoría de desarrolladores no tienen las habilidades y el conocimiento necesario para desarrollar código seguro [2], es necesario que las empresas apliquen metodologías y herramientas que permitan desarrollar aplicaciones seguras que cumplan con las exigencias de seguridad en este tiempo.

De acuerdo con Allen et al. [1], el Ciclo de Vida de Desarrollo de Software CDVS se puede definir como un proceso iterativo en el cual se identifican cuatro etapas principales: Requisitos, Diseño, Desarrollo y Pruebas. Existen otros modelos, como CMMI [7], que permiten definir buenas prácticas para el desarrollo de software y plantean básicamente que el CVDS se considere como un micro proyecto, donde un cambio en alguna de las etapas se debe ver reflejado en todo el proyecto, que se irá refinando cada vez hasta lograr el objetivo deseado. Pero el modelo CMMI tradicional no tiene a la seguridad implementada en sus definiciones de procesos y buenas prácticas, por lo que es necesario agregar esquemas de seguridad adicionales. Lo primero que se debe hacer para comenzar a implementar seguridad en las aplicaciones es identificar cuáles son los activos de información que se deben proteger, cómo protegerlos, cuáles son las vulnerabilidades de los elementos que interactúan con la información y como mitigarlas, al punto de reducirlas a un nivel de riesgo aceptable mediante un proceso iterativo que analice profundamente los riesgos durante todo el CVDS. También es muy importante identificar patrones de ataque en todas las fases y almacenarlos en una base de conocimiento que permita prevenir futuros ataques en otras aplicaciones [1]. La seguridad debe estar implícita desde la misma concepción del software, porque es un error dejarla para etapas posteriores del desarrollo. Se debe comenzar de los requisitos, que no deben ser simples listas de chequeos de implementación de controles, como firewalls y antivirus, sino que deben ir más enfocados a la protección de los activos críticos [1]. Para la aplicación específica que se está desarrollando se debe tener en cuenta la perspectiva del agresor. En este artículo, con el objetivo de lograr una buena aproximación al desarrollo de requisitos seguros, se describe la metodología de mala definición de casos uso, que son el caso inverso a los buenos casos de uso [1] y que definen lo que el sistema no puede permitir. También se mencionará el proceso SREP [5], que provee un método para elicitar, categorizar y priorizar requisitos de seguridad para aplicaciones y sistemas de información tecnológica. En la etapa de diseño se describe una herramienta de modelado de

aplicaciones, llamada UMLsec [3], que es una extensión de UML que permite añadir características de seguridad a los diagramas del modelado; luego se hace una comparación de ésta con otras metodologías de diseño propuestas, se describen los pros y contras encontrados con el objetivo ofrecer una mejor perspectiva de lo que se puede utilizar en esta fase. En la etapa de desarrollo o codificación, se analizan las vulnerabilidades más comunes al código, como SQL Injection, Cross Site Scripting y otras de aplicaciones Web y se muestra cómo mitigar el riesgo de que sean explotadas [1]. Por último, se aborda el tema de las pruebas de seguridad [9], donde además de mencionar los diferentes tipos que existen, se abordan temas específicos como analizadores de chequeo de código estático, sniffers y analizadores de métricas, los cuales permiten medir la carga de los componentes asociados al desarrollo y para establecer posibles puntos de quiebre o cuellos de botella en las aplicaciones.

Este artículo está enfocado no sólo a evaluar y mostrar estas metodologías y herramientas utilizadas actualmente en el desarrollo seguro, sino también en hacer una propuesta formal de cómo implementarlas en un caso práctico.

2. JUSTIFICACIÓN Antes se pensaba sólo en asegurar infraestructuras utilizando sistemas de seguridad, con firewalls, sistemas de detección de intrusos IDS o sistemas de prevención de intrusos IPS y herramientas para detección de virus, entre otras, pero se dejaba de lado a las aplicaciones. En los últimos años los ataques a las aplicaciones se han incrementado constantemente. Un estudio del SANS Institute, publicado en 2005 [2], revela que se estaban incrementando los ataques a las aplicaciones de antivirus y de backup, porque son aplicaciones que no se actualizan regularmente y corren con altos privilegios dentro del sistema operativo. Otro tipo de ataques en incremento se observa en las aplicaciones Excel y Word, en las que se aprovechan ciertas vulnerabilidades y sólo se necesitaba enviar un e-mail con uno de estos archivos adjuntos y se podía infectar una máquina y obtener su control.

La Figura 1 muestra que a través de los años la aparición de vulnerabilidades en Word y Excel ha ido incrementado notablemente, lo mismo pasa con muchas otras aplicaciones, debido a que progresivamente se desarrollan nuevas técnicas de ataque y se incrementan tanto los atacantes como las vulnerabilidades en las aplicaciones. Actualmente y debido al creciente y extendido uso de Internet, las aplicaciones Web se han convertido en los blancos muy perseguidos, porque siempre están expuestas en la red. La mayor parte de estos ataques son de Cross Site Scripting y SQL Injection, como se observa en la Figura 2. Todas estas fallas en los programas se deben a errores de desarrollo, porque la mayoría de desarrolladores no saben lo que es código seguro, porque nadie se los ha dicho y nadie se los ha exigido,

Page 17: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

17

no conocen los ataques al código ni las herramientas que explotan esas vulnerabilidades y, simplemente, al no saber cómo se puede explotar el código, no saben cómo escribir de forma segura [2].

Fig. 1: Incremento de vulnerabilidad en Excel y Word [2]

Fig. 2: Vulnerabilidades expuestas en los sitios Web [2]

De acuerdo con este panorama, se hace necesario crear metodologías, estándares y procesos y desarrollar herramientas que sean reconocidas y aceptadas de forma general para el desarrollo de aplicaciones seguras, que permitan no sólo formar a los desarrolladores en técnicas y procesos, sino que además permita evaluar y mantener seguro al código en el tiempo, con el objetivo de brindarles a los clientes no sólo software de alta calidad, sino también de alta seguridad.

3. AMENAZAS A LAS APLICACIONES SEGURAS Es necesario definir inicialmente las condiciones que debe cumplir un sistema seguro [1]:

Que sea poco vulnerable y libre de defectos tanto como sea posible.

Que limite el resultado de los daños causados por cualquier ataque, asegurando que los efectos no se propaguen y que puedan ser recuperados tan rápido como sea posible.

Que continúe operando correctamente en la presencia de la mayoría de ataques.

El software que ha sido desarrollado con seguridad generalmente refleja las siguientes propiedades a través de su desarrollo:

Ejecución Predecible. La certeza de que cuando se ejecute funcione como se había previsto. Reducir o eliminar la posibilidad de que entradas maliciosas alteren la ejecución o las salidas.

Fiabilidad. La meta es que no haya vulnerabilidades que se puedan explotar.

Conformidad. Actividades planeadas, sistemáticas y multidisciplinarias que aseguren que los componentes y productos de software están conforme a los requisitos, procedimientos y estándares aplicables para su uso específico.

Algunas propiedades fundamentales que son vistas tanto como atributos de seguridad, como propiedades del software son:

Confidencialidad. Debe asegurar que cualquiera de sus características ―incluyendo sus relaciones con ambiente de ejecución y usuarios―, sus activos y/o contenidos no sean accesibles para no autorizados.

Integridad. El software y sus activos deben ser resistentes a subversión. Subversión es llevar a cabo modificaciones no autorizadas al código fuente, activos, configuración o comportamientos, o cualquier modificación por entidades no autorizadas. Tales modificaciones incluyen sobre-escritura, corrupción, sabotaje, destrucción, adición de lógica no planeada ―inclusión maliciosa― o el borrado. La integridad se debe preservar tanto en el desarrollo como durante su ejecución.

Disponibilidad. El software debe ser funcional y accesible por usuarios autorizados cada vez que sea necesario. Al mismo tiempo, esta funcionalidad y estos privilegios deben ser inaccesibles por usuarios no autorizados.

Dos propiedades adicionales, comúnmente asociadas con usuarios humanos, se requieren en entidades de software que actúan como usuarios, por ejemplo, agentes proxy y servicios Web.

Responsabilidad. Todas las acciones relevantes de seguridad del software o de los usuarios se deben almacenar y rastrear, con atribución de responsabilidad. Este rastreo debe ser posible en ambos casos, es decir, mientras y después de que la acción registrada ocurra. Según la política de seguridad para el sistema se debería indicar cuáles acciones se consideran como seguridad relevante, lo que podría hacer parte de los requisitos de auditoría.

No repudio. Esta propiedad le permite al software y a los usuarios refutar o denegar responsabilidades de acciones que ha ejecutado. Esto asegura que la responsabilidad no puede ser derribada o evadida.

Otras propiedades influyentes en el software seguro son la exactitud, la capacidad de pronóstico, la fiabilidad y la protección, las cuales están también influenciadas por el tamaño, la complejidad y la trazabilidad del software.

Análisis de riesgos. Debido a las constantes amenazas, toda organización es vulnerable a riesgos debido a la existencia de vulnerabilidades. De acuerdo con la Figura 3, para determinar el riesgo se puede evaluar la probabilidad asociada con los agentes de amenaza, el vector de ataque, las

Page 18: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

18

debilidades de seguridad, los controles de seguridad, los impactos técnicos y el impacto al negocio cuando se materialice la amenaza [11].

Fig. 3: Rutas atreves de las aplicaciones [11]

El OWASP ―The Open Web Application Security Project [10]―, publica anualmente el top 10 de los riesgos más serios que se presentan en las organizaciones, el cual se puede observar en la Tabla I para 2010. Cada organización realiza su análisis de riesgos mediante una evaluación de éstos para detectar su severidad.

TABLA I OWASP Top 10 2010 [10]

Top Riesgo

A1 Injection

A2 Cross-Site Scripting (XSS)

A3 Broken Authentication and Session Management A4 Insecure Direct Object References

A5 Cross-Site Request Forgery (CSRF)

A6 Security Misconfiguration

A7 Insecure Cryptographic Storage

A8 Failure to Restrict URL Access

A9 Insufficient Transport Layer Protection

A10 Unvalidated Redirects and Forwards

Antes de comenzar a desarrollar código seguro, lo primero que se debe hacer es un análisis de riesgos. Primero se identifican cuáles son los activos críticos de la organización que están involucrados en el proceso de desarrollo o que de alguna forma van a estar expuestos en la aplicación y luego se identifican cuáles son las posibles amenazas que pueden explotar las vulnerabilidades de estos activos. En la seguridad de la información la amenaza, la fuente del peligro, a menudo es una persona intentando hacer daño con uno o varios agentes maliciosos [1]. El software está sujeto a 2 categorías generales de amenazas: Amenazas durante el desarrollo. Un ingeniero de software puede sabotear el programa en cualquier punto de su desarrollo. Amenazas durante la operación. Un agresor intenta sabotear el sistema. El software en la red está comprometido por el aprovechamiento de sus debilidades, las cuales se derivan de las siguientes fuentes: 1. Complejidad o cambios incluidos en el modelo de

procesamiento

2. Suposiciones incorrectas del ingeniero, incluyendo las relacionadas con la capacidad, las salidas, el comportamiento de los estados del ambiente de ejecución del software o con entradas esperadas de entidades externas.

3. Implementación defectuosa en el diseño o en los requisitos de interfaces del software con otras entidades externas o en ambiente de ejecución de los componentes del software.

4. Interacción no planeada entre componentes de software, incluyendo los de otros proveedores [1].

Teniendo esto definido, se puede proceder a categorizar o priorizar los riesgos, con el objetivo de definir cuáles son los más pernicioso y, de esa forma, lograr una categorización que permita definir el orden en que se deben atender y para identificar dónde invertir mayor esfuerzo o dinero para mitigar el riesgo asociado. 4. METODOLOGÍAS INVESTIGADAS 4.1 Funcionamiento con carga compartida [2] Con el objetivo de definir estándares de desarrollo de código seguro varias compañías de todo el mundo, como Siemens en Alemania, Tata en India, Nomura Research en Japón, CIBC en Londres y las americanas Kaiser Permanente, Boeing, Cisco, Symantec, Intel y American Express, se unieron a esta iniciativa. El proyecto pretende no sólo mejorar los procesos en cada una de las empresas sino el desarrollo de software en sí. Todas tienen como patrón común que sus desarrollos dependen de la calidad del software, lo que permitirá además que los clientes reciban productos seguros, ya sean desarrollados por terceros o propios. A este grupo de empresas se unieron también desarrolladores de otras organizaciones y universidades, como Amazon, Secure Compass, Universidad Carnegie Mellon y el equipo OWASP, para dar lugar al “Concilio de Programación segura” que, desde el 2007, se reúne para definir estándares y documentos que indiquen las habilidades necesarias para escribir código seguro. Debido a la necesidad de evaluar el código y también impulsados por buscar la certificación de los desarrolladores, SANS lanzó el Software Security Institute SSI, que está enfocado en proveer información, entrenamiento y una librería de investigaciones e iniciativas para ayudarles a desarrolladores, arquitectos y administradores a proteger sus aplicaciones, incluyendo las Web. Adicionalmente, el SSI lanzó GSSP ―Secure Software Programmer― que certifica a los usuarios que cumplen con todos los requisitos y habilidades requeridas para realizar codificación segura y cuenta con una evaluación online para medir sus capacidades. 4.2 Security Requirements Engineering Process [5] El SREP es un método basado en activos y orientado a riesgos, que permite el establecimiento de requisitos de seguridad durante el desarrollo de las aplicaciones.

Page 19: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

19

Básicamente lo que define este método es la implementación de Common Criteria durante todas las fases del desarrollo de software ―CC es un estándar internacional ISO/IEC 15408 para seguridad informática, cuyo objetivo es definir requisitos seguros que les permitan a los desarrolladores especificar atributos de seguridad y evaluar que dichos productos si cumplan con su cometido―. En este proceso también se apunta a integración con el Systems Security Engineering Capability Maturity Model (ISO/IEC 21827), que define un conjunto de características esenciales para el éxito de los procesos de ingeniería de seguridad de una organización. En contraste con su derivado, el CMM, SSE-CMM establece una plataforma para mejorar y medir el desempeño de una aplicación, en cuanto a principios de ingeniería de seguridad, en vez de centrarse en las 22 Process Areas. Esta metodología trata cada fase del CVDS como a un mini proceso o iteración, dentro de las cuales se aplican las actividades SREP que permiten identificar y mantener actualizados los requisitos de seguridad de la fase, permitiendo mitigar efectivamente los riesgos asociados a cada una. El proceso se detalla en la Figura 4.

Fig. 4: El proceso SREP [5]

Las nueve actividades definidas para cada iteración son las siguientes: (1) acuerdo en las definiciones, donde se verifica que todos los participantes del software aprueben y estén de acuerdo en la definición de un conjunto de requisitos de seguridad que se adapte a las políticas de la compañía; (2) identificación de activos críticos o vulnerables, que consiste en realizar una lista detallada de los activos de información más importantes para la organización, con base en el Security Resources Repository, que debe ser obtenido previamente; (3) identificar los objetivos y dependencias de seguridad, donde se debe tener en cuenta las políticas de seguridad y los aspectos legales para definir correctamente hacia qué se apunta para definir el nivel necesario de seguridad requerido; (4) identificar amenazas y desarrollar artefactos, aquí es necesario identificar todas las amenazas que puedan afectar cada uno de los activos para desarrollar artefactos; (5) evaluación del riesgo, en esta etapa se seleccionan los riesgos a tratar y cuáles a mitigar o transferir, teniendo presente los objetivos definidos y los activos críticos de la aplicación; (6) elicitar los requisitos de seguridad, donde se documentan los requisitos de seguridad que se deben

cumplir, de acuerdo con las amenazas encontradas en el nivel necesario para la aplicación, también se definen las pruebas de seguridad que se aplicarán a cada requisito o conjunto de requisitos; (7) categorizar y priorizar los requisitos, porque una vez identificados se deben ordenar por importancia de acuerdo al impacto que tengan en el cumplimiento de los objetivos; (8) inspección de requisitos, para garantizar la calidad y la consistencia de los hallados deben ser validados por el equipo de trabajo, para que se acepten y refinen de acuerdo con las observaciones encontradas y (9) mejora el repositorio, aquí se deben recopilar todos los documentos, diagramas y modelos que se hayan encontrado durante el ciclo de desarrollo y deben quedar consignados en el SRR.

4.3 SQUARE [4] El modelo SQUARE ―Security Quality Requirements Engineering― propone varios pasos para construir modelos de seguridad desde las etapas tempranas del ciclo de vida del software. En el proceso del modelo se hace un análisis enfocado a la seguridad, los patrones de ataque, las amenazas y las vulnerabilidades y se desarrollan malos casos de uso/abuso. Los pasos son:

1. Acuerdo en las definiciones. Se debe generar un acuerdo con el cliente en cuanto a las definiciones de seguridad, como en el control de acceso, la lista de control de acceso, el antivirus, entre otras.

2. Identificar metas de seguridad. Que se trazan con base en las propiedades de seguridad definidas en el documento.

3. Desarrollar artefactos. Diagramas de arquitectura, casos de mal uso, casos de uso de seguridad, identificar activos y servicios esenciales, árboles de ataques, patrones de ataque, requisitos de seguridad, mecanismos de seguridad.

4. Evaluación de los riesgos. Se analizan las amenazas y vulnerabilidades y se definen estrategias de mitigación.

5. Elicitación de los requisitos. 6. Clasificar los requisitos. De acuerdo con el nivel o

las metas de seguridad. 7. Priorizar los requisitos. (1) Esenciales, si el

producto no puede ser aceptado si él, (2) condicionales, si requerimiento incrementa la seguridad, pero el producto se acepta sin él y (3) opcionales, si es de baja prioridad frente a los esenciales y condicionales.

8. Revisión por pares.

4.4 CoSMo [6] Debido a la necesidad de integrar aspectos de seguridad en el proceso de modelado de software, el modelado conceptual debe abarcar los requisitos y los mecanismos de seguridad de alto nivel. Los autores trabajan en el desarrollo de un método de modelamiento conceptual de seguridad al que denominan CoSMo ―Conceptual Security Modeling―. Antes de tener la visión de que los mecanismos de seguridad pueden hacer cumplir los requisitos, se elaboran cuestiones fundamentales de políticas de seguridad; las cuales consisten de un conjunto de

Page 20: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

20

leyes, normas y prácticas que regulan cómo una organización gestiona, protege y distribuye información sensible. Cada requisito de seguridad lo puede ejecutar uno o más mecanismos de seguridad, resultando en una matriz de requisitos y mecanismos. Ambos se definen genéricamente porque se usan para modelar la seguridad en el nivel conceptual. En primer lugar, los autores de CoSMo tratan de mostrar cómo integrar las consideraciones de seguridad en el marco de modelado de procesos conceptuales. Después, enumeran de forma sistemática los requisitos de seguridad frecuentes e indican claramente cuáles son los mecanismos para hacerlos cumplir.

En general, un requisito de seguridad exigido no es parte del diagrama de casos de uso, sino de la descripción del caso de uso. En CoSMo, es posible modelar este requisito en el nivel conceptual, incluso en un diagrama de casos de uso. 4.5 UMLSec [3] Es una metodología de desarrollo basada en UML para especificar requisitos de seguridad relacionados con integridad y confidencialidad. Mediante mecanismos ligeros de extensión de UML es posible expresar los estereotipos, las etiquetas, las restricciones y el comportamiento de un subsistema en presencia de un ataque. El modelo define un conjunto de operaciones que puede efectuar un atacante a un estereotipo y trata de modelar la actuación del subsistema en su presencia. Esta metodología define varios estereotipos que identifican requisitos de seguridad, como secrecy, en el que los subsistemas deben cumplir con que ningún atacante pueda ver su contenido mientras este esté en ejecución y secure link, con el que se asegura el cumplimiento de los requisitos de seguridad en la comunicación a nivel físico; lo que pretende evaluar es que un atacante en una dependencia de un subsistema estereotipada, como secrecy, que tenga dos nodos n, m que se comunican a través de un enlace l nunca pueda leer el contenido del subsistema.

Fig. 5: Amenazas que pueden ser explotadas por un

atacante dependiendo del canal [3]

La Figura 5 presenta varios escenarios con un atacante por defecto representado por uno externo con capacidad modesta. Se puede observar cuáles pueden ser las amenazas que puede explotar dependiendo del enlace de comunicación. Secure Dependency trata de asegurar que las dependencias call y send entre dos componentes cumplan con la integridad y confidencialidad, además, que los mensajes ofrecidos por un componente C sean seguros si y sólo si también son seguros en otro componente D.

El estereotipo Critical se usa para marcar datos que necesitan ser protegidos a toda costa; esta protección está apoyada por los estereotipos data security y no-down flow. El primero establece básicamente que toda la información establecida como secrecy debe permanecer igual ante cualquier amenaza.

La metodología UMLSec pretende reutilizar los diseños ya existentes, aplicando patrones para formar nuevos a partir de una transformación al existente, tal como se observa en las Figuras 6 y 7.

Fig. 6: Canal de Comunicación Internet [3]

Fig. 7: Canal de Comunicación Encriptado [3]

En la Figura 6 se muestra un diagrama de componentes UML que no cumple con el estereotipo de secrecy para el subsistema, porque permite la lectura del atacante por defecto en el canal de Internet; mientras que en la Figura 7 se utiliza un patrón de canal seguro para encriptar la comunicación entre ambos componentes para cumplir con el estereotipo secrecy.

4.6 Casos de Mal Uso Es el caso inverso de un caso de uso UML y es lo que el sistema no debería permitir. Así como en un caso de uso se define la secuencia de acciones que le dan un valor agregado al usuario, en uno de mal uso se define la secuencia de acciones que se traducen en pérdida para la organización o los usuarios interesados. Un mal actor es lo contrario a un actor. Es un usuario que no se quiere que el sistema soporte y que podría ser un agresor. En la Figura 8 se ilustra un mal uso como un caso de uso invertido.

Fig. 8. Caso de uso invertido [8]

Page 21: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

21

5. COMPARACIÓN DE METODOLOGÍAS Y HERRAMIENTAS

Las metodologías expuestas tienen un patrón común y es que todas son formales, pero todas presenta la misma falencia: ninguna provee una herramienta automática de verificación interna; esto amerita la búsqueda de una metodología que lo resuelva. Estas metodologías aseguran al software en todas las etapas del CVSD, pero en hacen mayor énfasis en alguna de esas etapas. Por ejemplo, SREP se enfoca en los requisitos mientras que UMLSec lo hace en la etapa de diseño y desarrollo. Esto hace difícil seleccionar una sola metodología y sería mucho mejor y más completo seleccionar lo mejor de algunas de ellas para aplicarlo y cubrir la mayor parte de las brechas que cada una deja. Se recomienda SREP para la fase de requisitos, porque contiene un conjunto de buenas prácticas y permite hacer un análisis de riesgos profundo en cada una de las fases del CVDS. Por otro lado, se basa en estándares internacionales, a diferencia de propuestas como SQUARE. Además, muchos de los artefactos generados en SREP se pueden basar en casos de Mal Uso apoyados en UML. En el diseño y codificación sería bueno utilizar UMLsec, porque UML es un lenguaje bien definido, ampliamente aceptado y aplicado en la mayoría de productos software, por lo que sería muy útil y fácil de implementar en cualquier aplicación; además, permitiría reutilizar gran parte de la documentación existente en las aplicaciones actuales. Esta metodología tiene en cuenta la perspectiva del atacante, lo que permite tener un mejor control en el diseño de las vulnerabilidades de la aplicación. Para la etapa de desarrollo y pruebas no se puede definir una metodología estricta, debido a que estas etapas dependen más de las habilidades y competencias del equipo de desarrollo y de los probadores; por esto es posible afirmar que en estas etapas existen muchas pautas que en la mayoría de los casos están apoyadas en diferentes herramientas automáticas que favorecen la seguridad de las aplicaciones. A continuación se presenta una lista de pautas que pueden ser útiles para prevenir algunas de las vulnerabilidades más comunes. En el desarrollo. Herramientas de chequeo estático de código. Herramientas de ofuscamiento de código. Estándares de codificación para código seguro. Validación de entradas/salidas de datos. Correcto manejo de excepciones. Trazabilidad en todo el flujo de la aplicación a

través de logs. Auditoria de clases o tablas sensibles para evitar el

no repudio. En Pruebas Pruebas de penetración. Pruebas de carga. Monitoreo de la ejecución de la aplicación.

Para llevar a cabo estas pautas, generalmente se utilizan ciertas herramientas automáticas que permiten evaluar posibles riesgos o vulnerabilidades de seguridad y que no se ven a simple vista o no son identificadas por una persona, tal vez por posibles sesgos mentales o por desconocimiento de temas de seguridad de la información, por el Copy/Paste, o en algunos casos por los mapas o estructuras mentales que les impide realizar las cosas forma diferente o buscar nuevas formas de actualizarse. Además, permiten identificar la causa raíz del problema de manera temprana. Algunas de las herramientas para análisis de código estático se observan en la Figura 8.

Fig. 8: Herramientas de análisis de código estático [12]

Como se observa en esta Figura, muchas herramientas son OpenSource, por lo que no incluyen costos adicionales a los proyectos, algo que preocupa mucho a las empresas que aún no implementan procedimientos de seguridad y que se excusan en este tipo de prejuicios para no llevar a cabo la implementación de estas medidas preventivas.

Estar herramientas se utilizan en diferentes plataformas y tipos de aplicaciones. Muchas analizan librerías inseguras, tanto propias como externas ―incluyendo librerías de servidores de aplicaciones y frameworks en los que fue desarrollado el aplicativo―, o patrones de duplicidad de código ―copy/paste― que se pueden convertir en código inseguro replegado por toda la aplicación, o validando patrones de rutinas inseguras en las llamadas, las entradas y los flujos de datos; otras, por el contrario, verifican que se cumpla un estándar de codificación que evite la inyección de vulnerabilidades por cuenta de errores humanos, como errores de sintaxis, mal uso de punteros, variables no inicializadas, procedimientos, variables y funciones no utilizadas, presentación de salida de datos al usuario con información sensible de base de datos, o la aplicación y el manejo correcto de excepciones para evitar ataques de denegación de servicios o de overflow , entre otros. Además de las herramientas de análisis de código estático existe otro tipo de herramientas que permiten ofuscar el código; esto consiste en hacer ilegible el código fuente sin afectar la funcionalidad del mismo,

Page 22: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

22

evitando de esta forma que se tenga acceso indebido al código fuente o que puedan entenderlo o incluso hasta copiarlo. Algunas de esas herramientas son: Proguard [13], un ofuscador de código Java, Jabson [14], ofuscador de código Javascript y Skater.NET [15], ofuscador de código .NET Como se mencionó antes, estas herramientas se utilizan en la etapa de desarrollo y su gran ventaja, además de identificar vulnerabilidades en una etapa muy temprana del CVDS, es que son baratas y no requieren que la aplicación este desplegada o instalada. Aunque su mayor desventaja puede ser la detección de falsos positivos dentro del código, debido a se basan en patrones de reglas pre-establecidas para que los analizadores semánticos las puedan reconocer. Esto hace que su margen de error en detección de vulnerabilidades se incremente directamente de forma proporcional al número de líneas de código de la aplicación, por lo que es necesario que los resultados se evalúen, analicen y refinen continuamente por el equipo de desarrollo, con el objetivo de evitar inconvenientes innecesarios. En la etapa de pruebas existen varias herramientas que son de gran utilidad para lograr buenos resultados en pruebas de penetración, de carga y de monitoreo del tráfico y el flujo de información de la aplicación. Entre estas se encuentran: Webgoat. Una guía que sugiere los pasos para las

pruebas de vulnerabilidad. Webscarab. Con la que se prueban diferentes tipos

de ataque como inyección, hijacking, cookies tampering, man in the middle, fuzzing.

Wireshark. Un sniffer que permite revisar el flujo de paquetes en la red con el fin de identificar contraseñas o sentencias SQL que viajen sin cifrar.

jMeter [9]. Permite similar concurrencia de usuarios y de esta forma similar ataques de DoS; soporta el uso de cookies.

6. CONCLUSIONES El diseño de aplicaciones seguras se ha convertido en un tema de alta prioridad. Debido al auge que la seguridad de la información ha tenido en los últimos años y a la dependencia que las empresas tienen de sus aplicaciones, se hace necesario garantizar su correcto funcionamiento mediante protección a los ataques internos y externos. El análisis de riesgos se convierte en un factor común en cualquier metodología de desarrollo seguro, porque es imperativo conocer cuáles son los activos críticos de la organización y cuáles son las amenazas asociadas con ellos. Es recomendable, para cualquier aplicación, utilizar metodologías basadas en UML porque son aceptadas de forma general y no requieren mayor esfuerzo en entrenamiento del equipo de desarrollo para su implementación.

Por otro lado, también se recomiendan los modelos iterativos, debido a que permiten refinar y sostener las metodologías en el tiempo, ya que no basta sólo con implementar una buena metodología sino también que debe ser mejorada y refinada continuamente; porque en cada iteración se pueden encontrar nuevas falencias o aspectos a mejorar que enriquecen el producto final. El uso de herramientas automáticas para análisis de vulnerabilidades en etapas de desarrollo y de pruebas es muy recomendado, siempre y cuando se monitoreen y refinen continuamente los resultados por uno o varios integrantes del equipo de trabajo. 7. REFERENCIAS [1] J. H. Allen et al. “Software Security Engineering: A

guide for Project Managers”. Addison-Wesley. 2008. [2] M. Brown & A. Paller. “Secure software development:

Why the development world awoke to the challenge”. Information Security Technical Report, Vol. 13, No. 1, pp. 40-43, 2008.

[3] J. Jürjens. “Foundations for Designing Secure Architectures”. Electronic Notes in Theoretical Computer Science, Vol.142, pp. 31-46, 2006.

[4] N. R. Mead & T. Stehney. “Security Quality Requirements Engineering (SQUARE) Methodology”. ACM SIGSOFT Software Engineering Notes, Vol. 30, No. 4, pp. 1-7, 2005.

[5] D. Mellado D.; E. Fernandez-Medina & M. Piattini. “A common criteria based security requirements engineering process for the development of secure information systems”. Computer Standards & Interfaces, Vol. 29, No. 2, pp. 244-253, 2007.

[6] R. Villaroel; E. Fernandez-Medina & M. Piattini. “Secure information systems development: A survey and comparison”. Computers & Security Vol. 24, No. 4, pp. 308-321, 2005.

[7] CMMI Product Team. “CMMI® for Development. Version 1.22”. CMU/SEI-2006-TR-008. Carnegie Mellon, 2006.

[8] W. Brooks & M. Warren. “A Methodology of Health Information Security Evaluation”. In J. Westbrook et al (Eds.), HIC 2006 and HINZ 2006: Proceedings. Brunswick East, Vic.: Health Informatics Society of Australia, pp. 464-470, 2006.

[9] D. Nevedrov. “Using JMeter to Performance Test Web Services”, 2006. Online [Oct. 2011].

[10] Fundación OWASP. https://www.owasp.org. [11] Fundación OWASP. https://www.owasp.org/index.php/

Top_10_2010-Main. [Oct. 2011]. [12] OWASP Spain Charter Meeting III. “Herramientas para

análisis estático de seguridad: estado del arte”. Online [Oct. 2011].

[13] J. Sanz A. “Ofuscadores de Código Java”. Sólo Programadores, No. 83, pp. 6-11, 2001.

[14] JavaScript Obfuscation Fascination. www.jason.com. [Oct. 2011].

[15] Rustemsof. http://www.rustemsoft.com/obfuscator_net .asp. [Oct. 2011].

Page 23: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

23

GESTIÓN DE IDENTIDADES Y CONTROL DE ACCESO DESDE UNA PERSPECTIVA ORGANIZACIONAL

José A. Montoya S. Bancolombia

Medellín, Colombia [email protected]

Zuleima Restrepo R. Bancolombia

Medellín, Colombia [email protected]

(Tipo de Artículo: Reflexión. Recibido el 01/11/2011. Aprobado el 09/04/2012)

RESUMEN

En el mundo actual, de mercados globalizados, las organizaciones necesitan incrementar la agilidad del negocio para el desarrollo de estrategias que les permitan competir de forma eficiente, cumplir con regulaciones y ser flexibles ante el entorno cambiante de regulaciones, normas y leyes; para esto necesitan contar con mecanismos que garanticen la disponibilidad de la información y el acceso seguro a las aplicaciones y recursos a través de múltiples sistemas y permitan el uso de servicios en línea para empleados, clientes, proveedores y socios de negocio. En este documento se describe de forma general los conceptos alrededor de la gestión de identidades y control de acceso; tales como servicios de directorios, gestión de identidades, gestión de roles y gestión del control de acceso. Además se listan los principales beneficios y desventajas que se presentan en la implementación de una solución de gestión de identidades y control de acceso, el estado actual a nivel organizacional y algunos casos de éxito a nivel latinoamericano. Palabras clave

Autenticación, autorización, control de acceso, seguridad informática, permisos, sistemas de gestión de identidades.

AN APPROACH TO IDENTITY MANAGEMENT AND ACCESS CONTROL FROM ORGANIZATIONAL PERSPECTIVE

ABSTRACT In the modern world of global markets, organizations need to increase the business agility in order to develop market strategies that allow them to compete efficiently, comply with government regulations and be flexible enough in the changing environment of regulations and laws. In order to accomplish this objectives, organizations need to have methods that assure the information availability and the secure access to applications and resources across multiple systems and allow users such as employees, customers, suppliers and business partners to access online services. This document describes concepts related to identity and access management such as identity management, role management and access management as well as the principal benefits and disadvantages found when implementing an Identity and access management solution, the current situation at organizational level and some successful experiences in Latino America. Keywords Authentication, authorization, access control, computer security, permission, identity management systems.

GESTION D’IDENTITES ET CONTRÔLE D’ACCES D’APRES UNE PERSPECTIVE ORGANISATIONNELLE

RÉSUMÉ Dans le monde actuel, avec des marchés globalisés, les entreprises nécessitent d’accroître l’agilité d’affaires pour le développement des stratégies qui permettaient de concurrencer d’une manière efficace, respecter les contrôles et d’être flexible devant l’environnement changeant de contrôles, règles et lois ; pour accomplir ceci, il est nécessaire d’avoir des mécanismes qui garantissent la disponibilité de l’information et l’accès sécurisé aux applications et ressources à travers de multiples systèmes et en permettant l’usage de services en ligne pour des employés, des clients, des fournisseurs et associés. On décrit d’une manière générale les concepts au sujet de la gestion d’identités et contrôle d’accès ; comme des services de répertoire, gestion d’identités, gestion des rôles et gestion du control d’accès. En plus, on énumère les principaux bénéfices et inconvénients qui se présentent pendant l’implémentation d’une solution de gestion d’identités et contrôle d’accès, l’actualité dans les entreprises et quelques cas de succès en Amérique Latine. Mots-clés Authentification, autorisation, contrôle d’accès, sécurité informatique, permissions, systèmes de gestion d’identités.

J. A. Montoya S. & Z. Restrepo R. ―Gestión de identidades y control de acceso desde una perspectiva organizacional‖. Ing. USBMed, Vol. 3, No. 1, pp. 23-34. ISSN: 2027-5846. Enero-Junio, 2012.

Page 24: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

24

1. INTRODUCCIÓN Las organizaciones se enfrentan a diversos retos en su afán de ser competitivas y rentables, por lo que requieren incrementar la agilidad en los procesos de negocio y mejorar la seguridad y la disponibilidad de la infraestructura que los soporta. El uso de múltiples sistemas, aplicaciones y estándares facilita la proliferación de diversas identidades digitales para clientes, empleados y socios de negocio. La complejidad se hace evidente cuando coexisten diversos repositorios de identidades que operan de forma independiente y con diferentes estándares, lo que da como resultado el incremento en los costos de administración, en las inconsistencias de los datos y en las apariciones de brechas de seguridad. La gestión de identidades y control de acceso, IAM por sus siglas en inglés, es una solución que permite realizar la gestión del ciclo de vida de las identidades y controlar el acceso a los diferentes recursos, con el objetivo de mitigar riesgos, reducir costos y permitir que el negocio evolucione de manera segura y flexible. El objetivo principal de este artículo es presentar de manera clara y concisa los aspectos generales, ventajas, desventajas, componentes y características de una solución de gestión de identidades y control de acceso, además de describir las necesidades de su implementación. Sirve como punto de partida que brinda las bases necesarias y los elementos de juicio generales acerca de la problemática que resuelve la implementación de un proyecto de este tipo.

2. ESTADO ACTUAL ORGANIZACIONAL Las organizaciones actuales, con el ánimo de crear oportunidades de negocio y ventajas competitivas que les ayuden a obtener el mejor beneficio en los mercados globalizados, desarrollan estrategias de negocio orientadas a Internet, en la que el acceso a la información se logra a través de sitios públicos, de extranet o de intranets.

Adicionalmente, los usuarios de los servicios ya no solamente son empleados, sino también socios de negocio, terceros y clientes. De esto se desprende una serie de retos que afectan las estrategias que desarrolla la organización y la forma como puede generar soluciones eficientes y competitivas. En la Figura 1 se muestran algunos de estos retos.

Fig. 1: Retos organizacionales actuales [1]

2.1 Cumplimiento regulatorio A diario se implementan nuevas regulaciones que afectan, de una u otra manera, a las organizaciones y la

forma en la que interactúan con el mercado. Hasta ahora, las organizaciones han enfrentado el cumplimiento regulatorio implementando una serie de esfuerzos individuales centrados en los controles que la regulación define y por medio de productos que ayuden a satisfacer los requisitos del Estado [6]. La complejidad de este enfoque puede ser abrumadora debido al número de regulaciones que se promueven a diario y al número de aplicaciones que se deben implementar para satisfacerlos. Lo que se propone como solución es una infraestructura unificada que permita, de manera económica, eficiente y sostenible, la implementación de controles estandarizados y automatizados necesarios para el cumplimiento regulatorio. 2.2 Sobrecarga de la mesa de ayuda Con la proliferación de usuarios y contraseñas como resultado de la implementación de varias aplicaciones y sistemas, una de las tareas más comunes y repetitivas es que la mesa de ayuda a los usuarios debe destinar un alto porcentaje de operadores para apoyar cambios de contraseña y desbloqueo de cuentas de usuario. Estos procesos consumen tiempo y recursos, lo que disminuye la productividad de los usuarios debido al tiempo que invierten en las solicitudes. Lo que se propone como solución es una infraestructura que permita la unificación de identidades y la autogestión de contraseñas y desbloqueo de cuentas de usuario, liberando a la mesa de ayuda y permitiendo concentrar sus esfuerzos en otras áreas. 2.3 Costos en la administración Actualmente, las organizaciones deben destinar una parte de su presupuesto para el sostenimiento de varios operarios que realicen la administración de las cuentas de usuario y las actividades realizadas por medio de la mesa de ayuda, para la gestión de usuarios y aplicaciones que ayuden a cumplir con las regulaciones. Con la disminución en la carga de tareas asignadas a la mesa de ayuda y con la implementación de una infraestructura robusta y confiable que ayude a cumplir con las regulaciones y simplifique la gestión de usuarios, roles y control de acceso se logra una reducción significativa de los costos asociados con dichas tareas, o se podría destinar el conocimiento de las personas al mejoramiento y evolución de los sistemas. 2.4 Seguridad (Cuentas huérfanas) Teniendo en cuenta la cantidad de accesos creados por cantidad de aplicaciones, cada vez es más complicado implementar controles que garanticen que los usuarios son creados y eliminados en el momento apropiado, o que las credenciales de inicio sean iguales en todos los sistemas (principio de integridad de la información). Lo que se busca es una solución que permita la gestión del ciclo de vida de las identidades de acuerdo a las novedades que se presenten en las aplicaciones de nómina y recursos humanos, evitando que cuentas de usuario permanezcan activas aun cuando la relación del usuario con la organización ha dejado de existir, así mismo, reducir la cantidad de permisos que un usuario determinado puede utilizar cuando cambia de función o

Page 25: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

25

puesto de trabajo, pero teniendo en cuenta que poco se des-aprovisiona en los sistemas que ya no utiliza. 2.5 Requerimientos de auditoría El incumplimiento de los requerimientos de auditoría puede dar como resultado problemas para el cumplimiento de los niveles de seguridad certificados lo que puede resultar en incidentes de seguridad, vulnerabilidades explotadas y en algunos casos implicaciones legales y pérdidas económicas y de imagen [7]. Lo que se busca es implementar una arquitectura que permita el acceso eficiente a la información requerida por los entes auditores que avalan el cumplimiento de los controles de seguridad establecidos y cumplimiento de los niveles de calidad y seguridad —dando tranquilidad a los revisores—. 2.6 Errores de privilegios Un privilegio mal asignado o la incapacidad de retirar el permiso en el momento adecuado conllevan a accesos no autorizados a la información y los recursos protegidos ocasionando incidentes en donde se comprometa la confidencialidad e integridad de la información y los recursos. Lo que se busca es una solución que permita la asignación efectiva de permisos, dependiendo de las funciones que desempeña cada usuario dentro de la organización. Finalmente, la organización se puede ver expuesta a multas, fraudes e ineficiencia en procesos de negocio como resultado de la incapacidad para enfrentar de manera adecuada los retos presentados anteriormente y que están relacionados con el incumplimiento de las normas y regulaciones, incidentes de seguridad generados por falta de auditoría y de controles que garanticen acceso adecuado a los recursos. 3. GESTIÓN DE IDENTIDADES Y CONTROL DE

ACCESO La gestión de identidades y control de acceso por sus siglas en inglés IAM [2] es un término que se puede entender como el conjunto de procesos de negocio, tecnologías, infraestructura y políticas que permite realizar la gestión de las identidades de usuario y controlar el acceso de éstas a los diferentes recursos organizacionales. De este modo queda claro que, como tal, la gestión de identidades y control de acceso no debe entenderse como una tecnología o herramienta que se implementa en una organización de forma general y con esto se obtienen los beneficios esperados. Por el contrario, la gestión de identidades y control de acceso involucra diferentes procesos y áreas en la organización, desde la alta gerencia hasta las áreas de soporte y apoyo; cuya implementación y buenos resultados depende de la disposición y grado de compromiso que demuestre cada uno de los diferentes actores al interior de la compañía en el desarrollo de un proyecto de este tipo [3]. 3.1 Ventajas Los principales beneficios [2] que se pueden lograr por medio de la implementación de una solución de gestión de identidades y control de acceso son:

Protección tanto de los datos de usuarios como de los datos asociados con los recursos organizacionales; con esto se disminuyen los riesgos relacionados con el aseguramiento de la información, robo de identidad, propiedad intelectual, amenazas globales y crimen organizado.

Control de acceso eficiente basado en roles. El

acceso a los recursos es determinado por los roles asignados según el cargo desempeñado dentro de la organización, es decir, cada usuario solo debe tener acceso a la información y recursos necesarios para el buen desempeño de las funciones para las cuales fue contratado, de acuerdo con los procesos organizacionales. A esto también se le denomina el menor privilegio, es decir, los usuarios solo tienen acceso a lo que deben tener. Por ejemplo, una persona del área comercial o ventas no debe poseer acceso a los salarios de toda la compañía.

Mayor cumplimiento de regulaciones actuales

relacionadas con la protección de datos de usuario, datos organizacionales y generación de reportes de auditoría.

Reducción de costos en tareas administrativas

asociadas con la gestión de cuentas de usuario y en los servicios de mesa de ayuda por medio de la disminución de llamadas para cambios de contraseña, desbloqueo de cuentas de usuarios y requerimientos para la creación, modificación, eliminación de cuentas de usuario en aplicativos o plataformas dentro de la organización.

Incremento de la productividad por medio de la

eliminación del tiempo ocioso entre la creación de la cuenta de usuario y la asignación de los roles necesarios para el acceso a las aplicaciones requeridas para el desempeño de las funciones relacionadas con el cargo.

Administración delegada de usuarios, recursos y

políticas para controlar el acceso a las aplicaciones. Autoservicio: Son funcionalidades incorporadas

dentro de una solución de gestión de identidades y control de acceso, por medio de las cuales los usuarios pueden realizar la autogestión y recuperación de contraseñas y flujos de trabajo que automatizan la creación de solicitudes de recursos requeridos para el desarrollo de sus funciones, por ejemplo, una persona del área comercial puede crear la solicitud para que le sea asignado un Smartphone para el acceso a la documentación disponible en la intranet desde una ubicación remota.

Automatización: Se logra automatizar diferentes

procesos dentro de la organización, algunos de ellos son: procesos de creación, modificación y eliminación de las cuentas de usuario en las diferentes aplicaciones integradas bajo una solución de gestión de identidades y control de acceso,

Page 26: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

26

creación de flujos de trabajo para la aprobación manual o automática de solicitudes relacionadas con la identidad del usuario y los recursos requeridos, asignación de roles y permisos basados en el cargo de los empleados, activación y desactivación de las cuentas de usuario dentro de la organización basado en las novedades de nómina como por ejemplo: vacaciones, incapacidades, licencias, entre otras.

Integración de servicios y de repositorios de datos de

usuarios bajo una misma arquitectura, lo que facilita la administración de las cuentas de usuario y posibilita que un usuario solo necesite manejar una cuenta de usuario para acceder diferentes aplicaciones y servicios empresariales.

Consistencia en los datos relacionados con la

identidad de los usuario lo que garantiza que si un datos es modificado en el repositorio central, dicho cambio se va a ver reflejados en las aplicaciones integradas en una solución de gestión de identidades y control de acceso. Por ejemplo, si a un empleado le cambian el contrato y el cargo desempeñado desde la aplicación de recursos humanos, dicha información se debe ver reflejada en la intranet, el directorio de empleados y en el acceso a las aplicaciones según los roles asociados al cargo [8].

3.2 Desventajas Las principales desventajas que se pueden observar en la implementación de una solución de gestión de identidades y control de acceso son:

Una solución de gestión de identidades y control de acceso permite que un usuario solo maneje una contraseña para acceder a las diferentes aplicaciones integradas bajo dicha solución. Esta característica incrementa el riesgo de que si no se utiliza un esquema de autenticación robusto factor dos —uso de token, tarjeta coordenadas, certificados digitales de cliente— o un plan de sensibilización adecuado para el uso de contraseñas fuertes, dichas claves pueden ser vulneradas fácilmente a través de un keylogger o mouselogger permitiendo, de este modo, eventos de tipo de suplantación de identidad, robo de información, entre otros.

En una solución de gestión de identidades y control

de acceso, el acceso a las aplicaciones del negocio se realiza por medio de la autenticación de los usuarios contra el repositorio unificado de identidades. Si se presentan fallos en los procesos de autenticación y autorización, esto afectaría a todas las aplicaciones integradas bajo este esquema mientras que en un esquema tradicional las fallas afectan solo a las aplicaciones puntuales. Esta desventaja se subsana por medio de la implementación de la instalación y configuración de componentes redundantes, por ejemplo, el despliegue de servicios de directorios en alta disponibilidad con mecanismos de replicación.

En la mayoría de casos, la implementación de una solución de gestión de identidades y control de acceso requiere una reestructuración de procesos y del modelo operativo de las organizaciones sobre el cual se implementa. En dichos casos se requiere invertir tiempo, esfuerzos y recursos en la ingeniería de roles para lograr una buena definición.

Una buena implementación de una solución de

gestión de identidades y control de acceso requiere realizar un trabajo muy detallado y específico para la definición de los roles de negocio y su relación con los roles técnicos —por ejemplo, accesos a bases de datos, plataformas con roles de administradores, entre otros—. Si dicho proceso no se realiza de forma adecuada, se puede presentar que la gestión de los roles técnicos o de aplicación no queda dentro del alcance lo cual obliga a implementar otros esquemas de control complementarios.

La implementación de una solución de gestión de

identidades y control de acceso requiere de una inversión considerable de dinero, tiempo y recursos, lo cual dificulta la estructuración de un caso de negocio y el respectivo retorno de inversión a corto plazo. El retorno de inversión de un proyecto de este tipo es a largo plazo.

Dependiendo de la complejidad de las aplicaciones

que se van a integrar y la forma en la cual realizan los procesos de autenticación y autorización, es necesario tener un conocimiento adecuado de éstas y en algunos casos se requiere realizar modificaciones para que los mecanismos de autenticación y autorización se configuren de acuerdo al esquema diseñado por medio de la solución de gestión de identidades y control de acceso. En este sentido es necesario destinar dinero, tiempo y recursos para la entrega de dicho conocimiento y la realización de las modificaciones requeridas para su integración.

3.3 Componentes de una solución de Gestión de

identidades y Control de Acceso Una solución de gestión de identidades y control de acceso cuenta con los siguientes componentes. Servicio de directorios. Un servicio de directorios es un componente de la red que permite que un directorio sea administrado de forma central y al mismo tiempo provee información para las aplicaciones organizacionales que interactúen con éste. Un servidor de directorios permite almacenar no solamente usuarios, sino también recursos según sea las necesidades del negocio [5]. En éste se tienen las siguientes consideraciones: Información estructurada y extensible La estructura de la información es definida por medio de un esquema. El esquema del servicio de directorios hace referencia al conjunto de reglas que determinan que información puede ser almacenada dentro de un servidor de directorios y además determina la manera en que esta información será utilizada en operaciones

Page 27: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

27

tales como la búsqueda. Cada vez que el Servidor de Directorios pretende almacenar o modificar una ―entrada‖ —unidad de información que representa una entidad dentro del servicio de directorios—, el servidor verifica que dichas reglas se apliquen acorde a lo establecido. Además, cuando un cliente u otro servidor de directorios comparan dos valores de atributos, consultan al servidor de directorios para determinar el algoritmo de comparación a usar. Para el desarrollo del esquema es importante tener en cuenta la importancia de combinar la información que necesitan los diferentes servicios y aplicaciones que son atendidos por el servidor de directorios, con el fin de unificar datos redundantes de manera que quede el menor número de entidades posibles. Además, el esquema del servicio de directorios puede ser utilizado para imponer restricciones de tamaño, rango, y formato de los valores almacenados en el directorio —mejorando la calidad de los datos almacenados—. Ahora bien, dentro del esquema de un servicio de directorios participan los siguientes elementos: Atributos: los tipos de atributos incluyen la siguiente información: (1) un nombre que identifica de manera única el tipo de atributo [10], (2) un OID —object identifier, una cadena compuesta por una serie de dígitos decimales que tienen una jerarquía determinada y que son controlados por la IANA, ANSI e ISO, entre otros— que también identifica de manera única el tipo de atributo, (3) un indicador de sí el tipo de atributo permite o no múltiples valores, (4) una sintaxis de atributo asociada y conjunto de reglas de comparación. Dentro de las sintaxis de atributos se especifica la manera exacta a través de la cual los atributos son representados y el algoritmo de comparación que será utilizado en el momento en el que se realice una comparación o búsqueda, (5) un indicador de uso, de utilización interna por los servidores de directorios y (6) restricciones respecto al tamaño, rango de valores que pueden ser aceptados por este tipo de atributo. Clases de objetos: una clase de objetos modela algún objeto del mundo real tal como una persona, una impresora o un dispositivo de red. Cada entrada en el servidor de directorios pertenece a una o varias clases de objetos. Las necesidades principales que se suplen cuando una entrada pertenece a un grupo determinado de clases de objetos son: (1) determinar cuáles tipos de atributos DEBEN ser incluidos en dicha entrada, (2) determinar cuáles tipos de atributos PUEDEN ser incluidos en la entrada en cuestión y (3) proveer el mecanismo para que los clientes puedan obtener un subconjunto de entradas cuando realizan operaciones de consulta.

Toda definición de una clase de objetos incluye la siguiente información: (1) un nombre que identifica de manera única la clase, (2) un OID —object identifier— que igualmente identifica de manera única la clase a la cual pertenece, (3) un conjunto de atributos que son obligatorios para la definición de la clase, (4) un

conjunto de atributos opcionales dentro de la definición de la clase y (5) el tipo de clase a la cual pertenece: estructural, auxiliar o abstracta.

Además, al igual que como se maneja dentro de los atributos en un servicio de directorios, dentro de las clases de objetos también se pueden especificar relaciones de herencia que permiten simplificar el modelamiento de características de cada una de las clases de objetos que pertenecen a un servicio de directorios determinado. Modelo de información jerárquico El modelo de información depende de la configuración del espacio de nombres (namespace) dentro del servicio de directorio, el cual es definido de manera jerárquica en forma de árbol. En la raíz del árbol se configura el dominio de la organización a través de los componentes de dominio (domain component) y que son representados por medio de la cadena dc. Los objetos del directorio en los nodos del árbol se denominan contenedores, los cuales a su vez pueden contener otros contenedores u objetos terminales también conocidos como las ramas del árbol y que dentro del árbol del servidor de directorios corresponde a las entradas las cuales a su vez están compuestas por atributos. Optimizado para las búsquedas Las operaciones de obtención de datos son más importantes que las operaciones de actualización y por esta razón los servidores de directorios son diseñados para que las operaciones de búsqueda sean realizadas de manera rápida y óptima, mientras que las operaciones de escritura son más pobres en rendimiento y consumen más recursos. Por otro lado, los servidores de directorios son optimizados para almacenar y gestionar millones de objetos relativamente pequeños. Adicionalmente, las transacciones normalmente se realizan sobre pequeñas unidades de datos y no sobre grandes volúmenes de datos como sucede en el caso de las bases de datos. Meta-directorios: son servicios de directorio que tienen la capacidad de recolectar y almacenar información de varios y diversos servidores de directorios [1]. En algunos casos los meta-directorios tienen la capacidad de integrar información disponible en bases de datos. La información de las diversas fuentes es agregada para proveer una vista única de dichos datos. Cabe anotar que en la consolidación de los datos, la información puede ser transformada según las reglas que se tengan definidas en el meta-directorio para los procesos de recolección e importación de los datos. Los meta-directorios le permiten a la organización integrar en un único repositorio la información existente en diversas fuentes de tal modo que se puedan realizar búsquedas de manera centralizada y no varias búsquedas en varios servidores de directorios. Algunos de los beneficios de un meta-directorio son:

Page 28: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

28

Existe un único punto de referencia que provee un mayor nivel de abstracción para las aplicaciones que requieren información dispersa por toda la organización en diferentes fuentes de información.

Existe un único punto de administración, lo que

reduce la carga administrativa evitando tener que realizar múltiples accesos a diferentes servidores de directorios.

Se puede eliminar la información redundante al

poseer un repositorio unificado de datos. En el diseño de un meta-directorio se deben resolver varios temas a nivel de gobernación de la información y a nivel técnico. Dentro del gobierno de la información se tiene los siguientes aspectos: Definición de los dueños de la información. Estas

personas deben velar porque la información se mantenga actualizada, que sea útil para los procesos dentro de la organización y que se cumplan las políticas de seguridad para su manejo.

Responsabilidades administrativas bien definidas

que permiten que la información esté disponible cuando sea requerida y se garantice su disponibilidad, confidencialidad e integridad.

Cumplimiento con los requerimientos legales. En este se define los procesos de auditoría y el manejo de la información requerida para los procesos de cumplimiento.

Definición del formato de los datos y diseño del esquema con los atributos requeridos para almacenar la información.

Definición de políticas y mecanismos para la

seguridad de la información.

Definición de políticas de acceso a la información y los responsables de crear dichas políticas.

A nivel técnico se tienen los siguientes aspectos:

Definición y diseño de la arquitectura.

Definición, diseño y normalización del espacio de nombres y la estructura del árbol del directorio.

Diseño de los mecanismos y procedimientos para la sincronización de los datos con otros servicios de directorios. Acá es muy importante definir la fuente de autoridad con relación a los datos, pues los datos pueden ser modificados en el meta-directorio o en los diferentes servicios de directorio con los cuales este interactúa. De esta manera, se debe garantizar que los datos solo se modifican en un solo punto y la información sea replicada a los diferentes repositorios que interactúa dentro de este proceso.

Un aspecto importante de los meta-directorios, es que estos funcionan por medio de agentes que se encargan

de recolectar los datos en los diferentes servidores de directorios y enviarlos al meta-directorio para su consolidación. En la Figura 2 se presenta un ejemplo de meta-directorio, en el cual se integra la información proveniente de los servicios de directorios de empleados y terceros. La comunicación con los servicios de directorios se realiza a través del protocolo LDAP y la información almacenada en éste es consultada por las aplicaciones de negocio y las aplicaciones integradas por medio del portal corporativo, las cuales sólo deben consultar un repositorio de información y no dos como sería en el caso de no contar con el meta-directorio.

LDAPLDAP

Metadirectorio

Empleados Terceros

Portal Aplicaciones

Fig. 2: Topología de un Meta-directorio [1]

Directorios Virtuales: tienen un concepto similar al meta-directorio, estos se encargan de crear una vista unificada de la información que procede de diferentes fuentes dentro de la organización. La principal diferencia es que el directorio virtual no hace uso de agentes para la recolección de los datos, en cambio se encarga de crear una vista única por medio de sentencias ejecutadas en tiempo real y que son construidas por medio del mapeo de campos en un esquema virtual [1]. En este sentido los directorios virtuales poseen un mayor nivel de flexibilidad dado que no tienen que realizar el almacenamiento de los datos en un repositorio central y con esto se elimina la necesidad de tener que implementar procesos de sincronización y replicación de datos entre servicios de directorios. Otra diferencia es que los directorios virtuales son más flexibles al momento de integrar la información almacenada en las diferentes fuentes de información. Por lo general, se puede incluir repositorios tales como servicios de directorios, bases de datos y otras fuentes integradas por medio de tecnologías de integración tales como Web Services. Gestión de identidades. Como se ha mencionado anteriormente, las organizaciones actuales cuentan con un número significativo de aplicaciones y sistemas que son utilizadas por los diferentes actores para la realización de las tareas propias de sus cargos. Por lo general, cada aplicación maneja su propio repositorio con la información de las cuentas de usuario, lo que se

Page 29: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

29

transforma en múltiples cuentas y contraseñas para un mismo usuario en diferentes aplicaciones. La gestión de identidades permite gestionar el ciclo de vida de las identidades de los usuarios dentro de la organización, tales como empleados, terceros y socios de negocios. En este sentido, permite gobernar la creación, desarrollo y eliminación de las entidades y sus atributos dentro de un repositorio unificado de identidades. En general, este proceso se compone de: Diseño de la identidad digital Una identidad digital es un objeto que contiene una serie de datos o atributos que describen de manera única a una persona o cosa, conocido también como sujeto o entidad, y también contiene información de la relación del sujeto con otras entidades. Para el diseño de una identidad digital es necesario realizar un inventario de los diferentes atributos o características que componen un usuario en término de las aplicaciones y sistemas desplegados dentro de la organización. Esto con el fin de evitar manejar información redundante y garantizar que la información de los usuario se mantiene actualizada, es confiable y cumple con una serie de políticas de seguridad definidas para el conjunto de identidades y de acceso a los recursos organizacionales. Luego de contar con el inventario de atributos se realiza una evaluación de gestor de identidades y de los repositorios que interactúan con este para realizar el mapeo de atributos inventariados y realizar la extensión del esquema para la incorporación de nuevos atributos y clases de objetos, por medio de los cuales se realiza el almacenamiento de la identidad digital de los usuarios. En este sentido, se busca que la identidad de un usuario sea única y que en todos los repositorios conectados con el gestor de identidades se maneje la misma información actualizada de cada uno de los usuarios. En la Figura 3 se muestra el modo como se estructura la información que compone la identidad digital de un usuario.

Fig. 3: Identidad Digital [1]

En este caso, se cuenta con: Atributos propios de la identidad del usuario tales

como nombres, apellidos, número de documento de identificación, entre otros.

Atributos comunes, tales como roles funcionales, unidad de negocio a la que pertenece, entre otros.

Atributos propios de la cuenta tales como login, password y atributos que identifican el mecanismo de autenticación usado.

Atributos a nivel de aplicación, tales como niveles de control de acceso, etc.

Gestión del ciclo de vida de las identidades Las identidades siguen un ciclo de vida asociado con la relación del usuario y la organización. Dicho ciclo de vida se compone de las siguientes etapas: 1. Creación: en esta etapa se realiza la creación de la

identidad digital del usuario y sus atributos. La creación se puede realizar de diferentes formas: (1) por un administrador de forma manual o automática por medio de flujos de reconciliación con fuentes de autoridad, por ejemplo la nómina; (2) por medio de una solicitud de creación, la cual debe ser aprobada por un usuario administrador y se realiza de forma manual o por medio de flujos de trabajo y (3) creada por el usuario mismo a través de una consola de autoservicio.

2. Aprovisionamiento: por medio del aprovisionamiento

se le asigna al usuario una serie de recursos dentro de la organización. Un recurso se puede entender como una cuenta de correo, un teléfono celular, la activación del acceso a una aplicación o un sistema, la tarjeta de acceso a un edificio, entre otros. En el caso de una aplicación o sistema se realiza la propagación de la identidad del gestor de identidades hacia la aplicación o sistema.

Por medio de la asignación de recursos automática basada en políticas de acceso se busca que cuando el nuevo empleado inicie sus labores tenga todos los recursos, permisos y accesos necesarios para la ejecución de las labores asociadas al cargo, incrementando de esta manera la productividad.

3. Mantenimiento: en esta etapa se realiza el manejo

de las novedades que pueda tener una identidad de un usuario en el tiempo de permanencia dentro de la organización. De este modo, la identidad del usuario puede cambiar con el tiempo, ya sea porque hay cambio en los atributos, por ejemplo cambia la dirección de residencia, se le asignan nuevos roles derivados de nuevas funciones o por cambios en el cargo desempeñado, entre otros.

El mantenimiento de las identidades dentro de una organización es una de las actividades que más costos puede acarrear dado que son actividades, por lo general, desarrolladas por un área de soporte. Un ejemplo de esto son las actividades de desbloqueo y reseteo de contraseñas de las cuentas de los usuarios. En este sentido, mientras más actividades desarrolle el usuario final, más ahorros se van a producir debido a que el número de llamadas y de incidencias en la mesa de ayuda van a disminuir.

4. Des-aprovisionamiento: El des-aprovisionamiento se

puede dar porque las funciones del usuario dentro

Page 30: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

30

de la organización no ameritan el uso de un determinado recurso asignado, se da un cambio en el cargo y las funciones relacionadas o porque la relación del usuario con la organización termina, en este último caso es de igual importancia que el aprovisionamiento. Una insuficiencia para manejar el des-aprovisionamiento de cuentas dentro de la organización puede conllevar a brechas de seguridad derivadas en accesos no autorizados, ya sea por el mismo usuario luego de haber abandonado la organización o personas que sepan de este hueco de seguridad, fraude o robo de información por parte de personas con mala intención.

Definición de mecanismos de aprovisionamiento y

sincronización Los mecanismos de aprovisionamiento y reconciliación permiten que la información fluya entre las fuentes de autoridad, el gestor de identidades y los repositorios de información de las aplicaciones y sistemas dentro de la organización. En esta etapa es necesario definir el sentido en el que fluye la información de las identidades de los usuarios a través del ciclo de vida: (1) Fuentes de autoridad, que son los repositorios de información en donde se dan los cambios en las identidades de los usuarios y desde las cuales se replican los cambios a los de más repositorios. Por ejemplo: la base de datos de la nómina, un gestor de identidades, la base de datos de recursos de humanos, entre otros, (2) aprovisionamiento, que implica que la información viaja en un solo sentido desde la fuente de autoridad hacia el repositorio de información. En este caso, se produce el aprovisionamiento cuando una identidad es replicada del gestor de identidades hacia un servicio de directorios o el repositorio de identidades de una aplicación y (3) sincronización, que implica que el gestor de identidades ejecuta una tarea programada por medio de la cual realiza la sincronización de cambios producidos en un repositorio de información o fuente de autoridad en un lapso de tiempo determinado. En este caso se maneja una marca de tiempo que indica cuando fue la última vez que se realización de la sincronización. Definición de los mecanismos de autenticación Gestión de roles: en la gestión de roles se gestiona el ciclo de vida de los roles asociados a los diferentes usuarios al interior de la organización. En este escenario se identifican dos tipos de roles: (1) Roles de negocio, que determinan el lugar del usuario dentro de la jerarquía organizacional y (2) Roles de aplicación, definidos en el ámbito de las aplicaciones y sistemas empresariales y que permite la asociación de permisos sobre los recursos. Existen dos enfoques para relacionar los roles de negocio con los roles de aplicación: (1) Top – Down, que se parte de lo general para llegar a lo particular. En

este caso se parte de los roles de negocio y para cada uno de ellos se realizar el inventario de las funcionalidades de cada aplicación que necesita acceder. Cada funcionalidad se relaciona con permisos, los cuales a su vez están asociados a roles de aplicación y (2) Button-Top, que se parte de lo particular para llegar a lo general. En este caso se parte de los permisos que se requieren para acceder las funcionalidades de las aplicaciones o sistemas de la organización, estos permisos se asocian roles de aplicación, los cuales a su vez por medio de políticas bien definidas se asocian a roles de negocio. Por medio de la gestión de roles se busca garantizar que cada usuario recibe las autorizaciones que corresponden al rol de negocio y a las funciones desempeñadas dentro la organización mejorando los aspectos de seguridad y cumplimiento. La gestión de roles es un componente intermedio que se encuentra entre la gestión de identidades y el control de acceso. Es así como la gestión de identidades se encarga del gobierno de las identidades, la gestión de roles asigna los roles de acuerdo al cargo y funciones del usuario y la gestión del control de acceso se encarga de definir las políticas que regulan el acceso a los diferentes recursos dentro de la organización. Gestión y control de acceso: la gestión del acceso hace referencia al control, monitoreo y auditoría del acceso a los recursos ya sea por medio de los servicios ofrecidos en la red interna o externa de la organización. Este proceso se basa en la definición de políticas de seguridad que emplean el uso de mecanismos de autenticación, autorización y confianza. Las políticas son una reflexión de los objetivos de seguridad y del negocio que han sido creados de acuerdo con otras políticas organizacionales que ayudan al cumplimiento de normas y regulaciones. El control de acceso está relacionado con la responsabilidad que tienen los usuarios sobre el manejo de la información y los recursos. La responsabilidad se divide en tres tipos: (1) Dueños, que son los creadores de la información y recursos y esta responsabilidad puede ser delegada o asignada, (2) Custodios, que son los usuarios encargados de la gestión diaria de la información y los recursos; los custodios son los encargados de velar porque las políticas de acceso son cumplidas y que los usuarios solo pueden acceder los recursos para los cuales se les ha otorgado el permiso y, por lo general, los custodios son los administradores u operadores de las aplicaciones o sistemas y (3) Usuarios, que son personas, grupos, programas o cualquier otra entidad que hace uso de la información y los recursos. El principio del menor privilegio está basado en la idea de que el usuario no debe recibir más accesos a los recursos de los que realmente necesita para la realización de sus funciones. En el proceso de autenticación se realiza la validación de que el usuario

Page 31: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

31

si sea quién dice ser. Por medio de la autenticación se responden las preguntas ¿quién eres? y ¿cómo sé que puedo confiar en ti? Éste proceso se realiza por medio de la validación de las credenciales de usuario [11]. Dentro del mundo digital existen varios mecanismos de autenticación de usuario o más común mente conocido como factores de autenticación: (1) Algo que se sabe, lo que se basa en datos o información que el usuario conoce, por ejemplo una contraseña, (2) Algo que se tiene, y que se basa en algún tipo de objeto que el usuario posee, por ejemplo un token o un certificado digital, (3) Algo que se es, que se basa en el uso de dispositivos biométricos que ayudan a validar algunas de las características fisiológicas del usuario, por ejemplo el iris, las huellas digitales, el tono de la voz, rasgos faciales, entre otros y (4) cualquier combinación de las tres anteriores. Mientras más factores de autenticación tenga el sistema más seguro será. Los esquemas de autenticación más usados son: Cookies: son archivos manejados por los navegadores Web, que permiten almacenar datos básicos del usuario y sirven de enlace entre transacciones que son difíciles de conectar por cualquier otro medio. Uno de los ejemplos más comunes es el uso de cookies en carritos de compra o en tiendas online para recordar los artículos consultados y adicionados por el usuario para su posterior compra. Las cookies son usadas como mecanismo de identificación del usuario a través de diferentes sesiones.

Muchas aplicaciones Web utilizan cookies como mecanismo adicional para verificar que el usuario se ha autenticado previamente y posee una sesión activa. En otros casos, se utilizan las cookies como un elemento de apoyo para la implementación de una funcionalidad de single sign-on para diferentes aplicaciones que funcionan en un mismo dominio de red. Usuario y contraseña: que es el mecanismo más comúnmente utilizado para la autenticación de los usuarios, lo que ha conllevado a la proliferación de cuentas de usuario dado el número de aplicaciones que un usuario debe acceder para la ejecución de sus tareas dentro de la organización.

Este esquema es un claro ejemplo de un factor de autenticación de nivel 2 porque se cuenta con un nombre de usuario —algo que se tiene— y con una contraseña —algo que se sabe—, pero en este caso el nombre de usuario es un dato público —cualquier persona lo puede saber— y por tal razón este esquema de autenticación es tan débil como un factor de autenticación de nivel 1.

Una problemática que surge de este esquema es el gobierno de las contraseñas y la necesidad de implementar políticas que regulen su uso en las aplicaciones y sistemas desplegados en la organización. De este hecho se desprende lo siguiente:

Las contraseñas fáciles de recordar son débiles y fáciles de vulnerar.

Las contraseñas seguras son difíciles de recordar. El manejo que se le da a las contraseñas en muchos

casos no es el adecuado, por ejemplo, muchos usuario para recordar la contraseña de varios sistemas las mantienen anotadas en un papel que lo pegan al frente del monitor.

La implementación de políticas de contraseñas en diferentes aplicaciones, las cuales cada una cuenta con su repositorio de usuarios y contraseñas es difícil de realizar.

Esta problemática es abordada por la gestión de identidades, en la cual se busca consolidar la información de los usuarios en un repositorio unificado e implementar políticas de contraseñas robustas, pero fáciles de manejar para los diferentes usuarios de los sistemas dentro de la organización. Certificados digitales: basados en criptografía de llave pública, en el cual una entidad certificadora avala la identidad del usuario contenida dentro del certificado digital. Este es un método que no ha tenido mucha acogida por las siguientes razones: La infraestructura para el manejo de los certificados

digitales es compleja y muy costosa. Los certificados digitales deben ser manejados de

forma segura por el usuario final. Además cada cierto tiempo deben ser renovados.

En comparación con otros métodos, los certificados digitales son más difíciles de manejar para el usuario final y requieren un conocimiento más avanzado.

Dispositivos biométricos: que se basan en el reconocimiento de características fisiológicas propias de cada persona. Como se había mencionado anteriormente, por medio de éstos se pueden reconocer rasgos faciales, huellas dactilares, características del iris, geometría de la mano, características de la voz…, La principal ventaja de un mecanismo de autenticación biométrica, es que ésta está basada en características propias del sujeto, lo que hace que su vulneración sea más complicada, pero de acá surge la principal desventaja, una vez vulnerada la característica, el método queda inservible. Otra desventaja es que hay personas que no se encuentran dentro del conjunto de los patrones estándares que reconoce el dispositivo biométrico haciendo que para estos caso no se pueda realizar su aplicación. Tokens: se realizan por medio de dispositivos que se encargan de generar una serie de dígitos aleatorios que el servidor de seguridad es capaz de validar. El uso de tokens va por lo general acompañado de un usuario y una contraseña. En este sentido este es un mecanismo de factor dos ―Lo que se sabe+ lo que se tiene‖. Existen varios modelos y mecanismos de control de acceso:

Page 32: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

32

Control de acceso discrecional: es definido por el Trusted Computer System Evaluation Criteria, documento definido por el departamento de defensa de los Estados Unidos, como un mecanismo de restricción del acceso a recursos basado en la identidad del sujeto y/o los grupos a los cuales pertenece. En este método, al custodio se le da la posibilidad de decidir a cuales usuarios se les otorga el acceso. Una vez otorgado, el usuario se puede convertir en un custodio del recurso y a su vez puede otorgar el acceso a otros usuarios. La principal desventaja de este mecanismo es que no se puede tener una administración centralizada de los permisos de acceso a los recursos ya que estos dependen del usuario. Un ejemplo de la implementación de un mecanismo de acceso discrecional son las listas de control de acceso ACL por sus siglas en inglés. Control de acceso mandatorio: En este, el dueño de la información define la política y los custodios y usuarios están en la obligación de cumplirla. En este, los usuarios no pueden sobrescribir o modificar la política. Control de acceso basado en roles (RBAC): Este control se basa en la idea de que a los usuarios se les otorga el permiso de acceso a los recursos basado en los roles que posee. Este mecanismo cuenta con dos características importantes: (1) Todos los accesos son controlados por medio de los roles asignados al usuario. En este esquema a los diferentes usuarios se les asigna un conjunto de roles y el dueño del recurso se encarga de definir permisos, los cuales a su vez se relacionan con los roles y (2) Los roles pueden ser definidos de forma jerárquica, es decir, un rol puede ser miembro de otro rol, lo que implica que cuando a un usuario se le asigna un determinado rol este recibe la asignación de los roles que son miembros del rol asignado. Esto se muestra en la Figura 4, donde un usuario con rol de arquitecto recibe además los permisos asignados al de ingeniero.

Fig. 4: Jerarquía de roles [1]

Un esquema de autorización basado en roles se basa en las siguientes tres reglas: (1) A todos los usuarios se les debe asigna un rol. Si a un usuario no se le asigna ningún rol, éste no podrá realizar ninguna acción relacionada con el acceso a los recursos, (2) Para que un usuario pueda hacer uso de los permisos asociados a los roles asignados, éste debe realizar el inicio de una sesión por medio de la cual se da la activación de los roles que le han sido otorgados y (3) Un usuario puede

realizar solo las acciones para las cuales ha sido autorizado por medio de la activación de los roles. Con RBAC, los administradores de las aplicaciones y sistemas crean los roles de acuerdo a las funciones realizadas en la organización, otorgan permisos a esos roles y asignan los usuarios a los roles de acuerdo a las responsabilidades y tareas que debe desarrollar. Una de las ventajas del uso de RBAC es que el control y mantenimiento de las políticas de acceso se manejan de una manera centralizada, lo que garantiza flexibilidad, separación de tareas, seguridad en el acceso a los recursos y a la información y que los usuarios cuentan solo con los permisos de acceso a los recursos de acuerdo a las funciones asignadas dentro de la organización. Como tal, la asignación de roles según las funciones desempeñadas por el usuario, requieren de la identificación de las diferentes funciones o cargos dentro de la organización, la especificación del conjunto de privilegios que se requiere para desempeñar cada función y la configuración de las políticas que regulen el acceso de los usuario a los recursos basado en los privilegios asignados. En la Figura 5 se muestra una esquematización las políticas de control de acceso. En esta figura se puede notar que en la configuración de una política de control de acceso se integran los siguientes elementos: Usuarios asociados a los roles. Roles a los cuales se les asignan los permisos. Permisos. Estos se definen como una operación que

se puede realizar sobre un determinado objeto. En esta figura se da un ejemplo claro, en donde la creación (operación) de un reclamo (objeto) puede ser realizada por un cliente (rol).

Fig. 5: Esquematización política control de acceso [4]

4. ARQUITECTURA EJEMPLO En los puntos anteriores se analizaron los diferentes componentes que integran una solución de gestión de identidades y control de acceso [9]. A continuación se ilustra la forma en la cual los diferentes componentes interactúan entre sí para dar como resultado una arquitectura integrada, robusta y confiable. En la Figura 6 se muestra una arquitectura básica de gestión de identidades y control de acceso.

Page 33: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

33

Fuentes de autoridad: Compuesta por la nómina y recursos humanos. En estos repositorios de aplicaciones se almacena la información de los usuarios y son los encargados de disparar los eventos dadas las novedades de contratación, terminación de contrato, vacaciones, incapacidades, licencias, etc. Por ejemplo, cuando se contrata un empleado, se almacena en una tabla de eventos la información del usuario para ser creada en el gestor de identidades y replicada en los demás sistemas. Para el caso de las vacaciones se almacena en la tabla de eventos la información del usuario para indicarle al gestor de identidades que dicha cuenta se debe deshabilitar en un determinado período y a su vez realizar la des-habilitación en las diferentes aplicaciones y sistemas.

Fig. 6: Arquitectura básica de gestión de identidades y

control de acceso [9]

Gestor de identidades: En este se gestiona el ciclo

de vida de las identidades de usuario y se realizan los procesos de reconciliación (sincronización) con las fuentes de autoridad y aprovisionamiento con las aplicaciones y sistemas empresariales integrados con la solución de gestión de identidades y control de acceso. Por ejemplo, cuando se contrata a un empleado, por lo general, el primer acceso que se debe configurar es el acceso a la red, el cual se logra por medio de la creación de una cuenta de usuario en el servicio de directorios corporativo. Si dicho usuario es un administrador de base de datos, la cuenta de usuario debe ser creada en el motor de base de datos que va a administrar.

Gestor de roles: En este se gestiona la información

de los roles y dicha información es sincronizada con la identidad del usuario en el gestor de identidades. En este se crean reglas y condiciones por medio de las cuales se define si un determinado usuario puede o no pertenecer a un determinado rol. Además algunos gestores de roles ofrecen la posibilidad de realizar análisis y detectar cuando se dan violaciones a las reglas y condiciones.

Servicio de directorio virtual: Por medio de este

servicio se crea un directorio virtual en donde se expone de forma unificada la identidad de los usuario teniendo en cuenta que dicha información se puede encontrar en diferentes repositorios, por ejemplo, las cuentas de los empleados se pueden cargar del servicio de directorios corporativo y los diferentes roles asignados se pueden cargar de una

base de datos que es donde el gestor de roles almacena dicha información. De manera similar las cuentas de usuario proveedores y externos se pueden cargar de un servicio de directorios adicional en donde se almacene esta información.

Gestor control de acceso: En este componente se realiza la configuración de las políticas de control de acceso tomando la información de usuarios y roles consolidada en el servicio de directorios virtual.

Servidores Web y de aplicaciones: En estos servidores se realiza la instalación de agentes que permiten proteger las aplicaciones aquí desplegadas. Estos agentes se comunican con el gestor de control de acceso y obtienen la información de las políticas creadas.

5. CASOS DE ÉXITO A nivel latinoamericano varias empresas en su necesidad de mitigar algunas de sus necesidades tecnológicas han invertido tiempo y capital en soluciones de Gestión de identidades y control de acceso obteniendo buenos resultados, mejorando la calidad y minimizando la administración de los procesos de recepción de control de acceso, esto conlleva a una notable reducción de costos a nivel de administración de identidades. A continuación algunos casos de éxito reales.

5.1 Sector financiero: DAVIVIENDA Esta entidad bancaria con el fin de sopesar varias de sus necesidades tecnológicas implementó una solución de Identity and Access Management y de esta manera logró cumplir con los siguientes aspectos:

Integrar las aplicaciones en una sola y única plataforma, de esta manera los empleados de la entidad bancaria podrían acceder a los diferentes aplicativos de manera rápida y segura

Asegurar el cumplimiento de sus políticas de seguridad

Mejorar la administración de la gestión de identidades, tanto de los empleados como de los clientes

Reducción de la carga de trabajo en el área de gestión de identidades a un 60%.

Autoservicio a los usuarios.

5.2 Sector pensiones y cesantías: ING Con la implementación de una solución de Gestión de identidades ING mejoró el aprovisionamiento de usuarios facilitando la gestión de identidades de los usuarios, mejorando la operación de las autorizaciones de las personas para acceder a los activos de información, simplificando procedimientos de acceso y mejorando las actividades de gobierno de seguridad y cumplimiento regulatorio.

5.3 Sector comunicaciones: CLARO Con el fin de reducir la carga operativa que generaban los clientes Claro decidió contratar una solución de Identidades IAM, realizaron una prueba de concepto y evaluaron casos de implementación exitosa en el

Page 34: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

34

sector. El manejo de identidades está siendo automatizado por medio de la solución de IAM, de esta manera mejora la eficiencia de los procesos. 6. CONCLUSIONES A lo largo de este documento se han presentado las principales características de la gestión de identidades y control de acceso y cómo una solución de este tipo apoya a las organizaciones para el desarrollo de nuevas estrategias, cumplimiento de normas y regulaciones y proveer el acceso seguro a la información y los recursos. La implementación de una solución de gestión de identidades y control de acceso requiere una inversión considerable de tiempo, dinero y recursos como también una serie de cambios en los procesos organizacionales. El retorno de inversión es palpable a través de una serie de factores tales como: Gestión unificada del ciclo de vida de las identidades

acorde con las novedades presentadas en los sistemas de nómina y recursos humanos.

Aprovisionamiento y des-aprovisionamiento adecuado en aplicaciones y sistemas empresariales.

Asignación eficiente de roles y permisos de acceso de acuerdo al cargo y funciones desempeñadas por el usuario al interior de la organización.

Control efectivo del acceso a los recursos tanto en intranets como en extranets por medio de la definición de políticas de acceso acorde con las políticas de seguridad de la organización.

Disminución de la carga operativa en la mesa de ayuda en los temas relacionados con la gestión de las cuentas de usuario, desbloqueo y cambio de contraseñas.

Recolección oportuna de la información necesaria para la elaboración de informes de auditoría y cumplimiento.

Disminución de costos en tareas relacionadas con la administración de usuarios, roles y políticas de acceso.

Como tal, una solución de gestión de identidades y control de acceso puede presentar una serie de desventajas relacionadas con la implementación y el cambio organizacional que esta requiere, pero comparadas con los beneficios que se pueden obtener y las mejoras en los procesos organizacionales, dichas desventajas no representan un factor de decisión y más bien se pueden transformar en aspectos a tener en cuenta para lograr una implementación exitosa. 7. REFERENCIAS [1] P. J. Windley. ―Digital Identity‖. O´Reilly, 2005 [2] J. Scheidel. 2010. ―Designing an IAM Framework with

Oracle Identity and Access Management‖. McGraw Hill. [3] H. L. Corbin. ―IAM Success Tips: Planning & Organizing

Identity Management Programs‖. CreateSpace, 2008. [4] J. Edward; Sr. Coyne & J. M. Davis. ―Role Engineering

for Enterprise Security Management‖. Artech House, 2007.

[5] T. A. Howes; M. C. Smith & G. S. Good. ―Understanding and deploying LDAP Directory Services‖. Addison-Wesley, 2003.

[6] D. A Grier. ―The Value of a Goog Name‖. IEEE Computer, Vol. 43, No. 6, pp. 7-9, 2010.

[7] D. R Kuhn; E. J. Coyne & T. R. Weil. ―Adding Attributes to Role-Based Access Control‖. Computer, Vol. 43, No. 6, pp. 79-81, 2010.

[8] D. F Ferreiolo & D. R Kuhn. ―Role-Based Access Controls‖. Proceedings National Computer Security Conference, pp. 554-563, 1992.

[9] M. B. Polman. ―Oracle Identity Management Governance, Risk and Compliance Architecture‖. Auerbach Publications, 2008.

[10] A. Jason. ―The Basics of Information Security: Understanding the fundamentals of InfoSec in Theory and Practice‖. Syngress, 2011.

[11] D. Todorov. ―Mechanics of User Identification and Authentication: Fundamentals of Identity Management‖. Auerbach Publications, 2007.

Page 35: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

35

SOLUCIÓN INTEGRAL DE SEGURIDAD PARA LAS PYMES MEDIANTE UN UTM

Wilmar Flórez R.

Medellín, Colombia [email protected]

Carlos A. Arboleda S. Bancolombia

Medellín, Colombia [email protected]

John F. Cadavid A. Escuela de Ingeniería de Antioquia

Medellín Colombia [email protected]

(Tipo de Artículo: Reflexión. Recibido el 21/11/2011. Aprobado el 12/03/2012)

RESUMEN

Este documento está enfocado a realizar un aporte teórico a la implementación de una solución de seguridad informática modular que permita integrar las funcionalidades requeridas más comunes, como son los firewall, antivirus y control de contenido, denominada como UTM (Gestor Unificado de Amenazas). Esta solución se orienta a contrarrestar los diferentes tipos de ataques y amenazas en seguridad informática, a los que se ven expuestas las medianas y pequeñas empresas (Pymes). Estas amenazas y ataques informáticos están relacionados principalmente con el bajo control de malware, ausencia de protección perimetral (firewall) y falta de control de contenido, permitiendo ser neutralizarlas con la implementación de un gestor unificado de amenazas (UTM), con los módulos básicos de firewall, antivirus y listas de control de acceso.

Palabras clave

Antivirus, corta fuegos, Pequeña y Mediana Empresa (Pyme), riesgos tecnológicos, seguridad informática, Gestor Unificado de Amenazas (UTM).

A COMPREHENSIVE SECURITY SOLUTION FOR SMEs TROUGH AN UTM

ABSTRACT This document is focused on realizing a theoretical contribution to the implementation of a solution of modular IT security that allows integrating the most common needed functionalities such as firewall, antivirus and control of content, named as UTM (Unified Threat Management). This solution is intended to prevent different types of assaults and threats in IT security for small and medium-sized enterprises (SMEs). These threats and IT assaults are mainly related to the very minimal malware control, lack of perimeter protection (firewall) and lack of content control, but they can be neutralized with the implementation of a Unified Threat Manager (UTM) having the basic modules of firewall, antivirus and access check lists. Keywords Antivirus, firewall, Small and Medium-sized Enterprises (SMEs), technology risks, security, Unified Threat Manager (UTM).

SOLUTION INTÉGRAL DE SECURITE POUR LES PETITES ET MOYENNES ENTREPRISES AU MOYEN D’UN UTM

RÉSUMÉ Cet article se concentre sur des apports théoriques quant à l’implémentation d’une solution de sécurité informatique en modules qui permettent d’intégrer les plus communes fonctionnalités requises, comme les pare-feu, l’antivirus et le contrôle des contenus, appelé UTM (par ses sigles en anglais ou Gestion Unifiée des Menaces). Cette solution est destinée à contrer les différents types d’attaques et menaces en sécurité informatique pour les petites et moyennes entreprises (PME). Ces menaces et attaques informatiques sont liées essentiellement à la précarité du contrôle du malware, l’absence de protection du périmètre (pare-feu) et l’absence de contrôle des contenus, mais elles peuvent être neutralisés au moyen de l’implémentation d’un gestionnaire unifie des menaces (UTM), avec les modules de pare-feu, antivirus et listes de contrôle d’accès. Mots-clés Antivirus, pare-feu, Petite et Moyenne Entreprise (PME), risques technologiques, sécurité informatique, Gestion Unifiée des Menaces (UTM).

W. Flórez R.; C. A. Arboleda S. & J. F. Cadavid A. “Solución integral de seguridad para las Pymes mediante un UTM”. Ing. USBMed, Vol. 3, No. 1, pp. 35-42. ISSN: 2027-5846. Enero-Junio, 2012.

Page 36: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

36

INTRODUCCIÓN La globalización de los mercados en el siglo XXI está exigiendo que las Pymes se adapten a modelos de mercados altamente competitivos, en donde deben primar estándares de seguridad que garanticen las transacciones comerciales y la integridad de la información de los clientes.

Con el incremento de los servicios en línea, también se ha incrementado el nivel de riesgos y ataques derivados de las vulnerabilidades que acarrea la implementación de nuevas tecnologías, para el intercambio comercial de información. Las herramientas de los ciber-delincuentes han evolucionado si no más rápido, por lo menos paralelamente al desarrollo tecnológico, como ha venido sucediendo con los virus informáticos [1]. Las Pymes se encuentran en la obligación tecnológica de salvaguardar todas sus bases de datos de conocimiento de una manera ágil, generando a sus clientes la suficiente confianza y credibilidad para poder realizar sus transacciones comerciales de forma segura, rápida y eficiente. Al implementar modelos de seguridad integral a través de herramientas tecnológicas que brinden una solución completa, las Pymes pueden garantizarles a sus usuarios, que están aplicando estándares de seguridad internacional para los negocios electrónicos. Ejemplos tecnológicos de modelos de seguridad integral son los UTM. Internet es una actividad esencial para cualquier negocio hoy en día. Con el uso generalizado del correo electrónico, y de nuevas tecnologías tales como los “mensajes instantáneos”, la conexión a Internet resulta fundamental para mantener el contacto directo con los clientes y estar al día en las tendencias de la industria y al tanto de los desarrollos competitivos [2].

Con la masificación de internet las empresas se han

visto en la necesidad de interconectar diversos

procesos internos y publicar servicios a los clientes

externos en la Web, con el fin de mantener un nivel

óptimo de competitividad y de rendimiento económico.

Como consecuencia de esto se han visto expuestas a

una serie de riesgos y amenazas inherentes a la

implementación de transacciones comerciales a nivel

nacional e internacional. Este problema impacta de

manera negativa en las empresas:

Falta de aseguramiento en la continuidad del

negocio. Pérdida de capital intelectual. Pérdida de información crítica para la empresa. Vulnerabilidad en su infraestructura de TI. Pérdida de confiabilidad en su imagen corporativa.

1. CONTEXTO DE LA SEGURIDAD INFORMÁTICA

EN EL ÁMBITO EMPRESARIAL Las pequeñas y medianas empresas requieren

herramientas que generen en la alta gerencia la

suficiente confianza para la toma de decisiones al

momento de generarse riesgos de TI. Estas decisiones

deben estar respaldadas mediante argumentos físicos

e históricos, de manera que le eviten a la empresa

incurrir en sobrecostos y en subestimaciones o

sobreestimaciones de los riesgos al momento de ser

evaluados.

Al inicio de la década de los 90’s, varias empresas

norteamericanas sufrieron masivos ataques de virus.

Aunque en un principio solo afectaban el

funcionamiento del sistema operativo, fueron

evolucionando en nuevos métodos de infiltración,

orientados a la recolección de información y minería de

datos, sin ver comprometida la funcionalidad de los

sistemas y servidores.

En múltiples investigaciones realizadas se considera el tema de la seguridad informática como una disciplina del conocimiento donde se busca cerrar la brecha de los eventos inesperados que puedan comprometer los activos de la organización y así contar con estrategias para avanzar ante cualquier eventualidad [3].

Abrir una página Web, usar dispositivos de

almacenamiento extraíbles, usar correos electrónicos

privados y públicos, entre otros, son algunos de los

medios más utilizados hoy en día para ejecutar

acciones de hurto de información y minería de datos.

En los últimos años, estos incidentes han tenido su punto más alto, ya que se han hecho a información financiera de clientes de diversas compañías multinacionales como fue el caso de Sony, donde grupos de hackers ingresaron a servidores de compras online y hurtaron cuentas de tarjetas de crédito de los usuarios, afectando esto la imagen de Sony y cuestionando el manejo de seguridad que se le está brindando a los datos. La aparición de los ataques de tipo distribuido y los efectos drásticos del número creciente de virus que se propagan en la red, presagian la posibilidad de un enorme black out informático. Surgen, de este modo, los primeros sistemas que fueron ideados explícitamente para la protección de la infraestructura como los routers y otros sistemas de interconexión [4].

Para contrarrestar las amenazas tecnológicas se han

desarrollado varias soluciones informáticas de

seguridad que operan de manera independiente, como

lo son los firewalls, antivirus, anti-spam, etc. No

obstante el crecimiento de amenazas y diversificación

de los modos de ataque, hacen que estas soluciones

que operan individualmente tengan un alto costo

operativo y administrativo.

Debido a que los resultados entregados por estas soluciones no se encuentran consolidados en un informe único de sistema de gestión de riesgos, tal que permita hacer una evaluación integral del tipo de incidente de seguridad detectado, es difícil realizar la

Page 37: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

37

trazabilidad y el análisis forense requerido para detectar la posible vulnerabilidad informática que está siendo explotada. Es a raíz de esto donde se requiere diseñar una

solución que integre todas las soluciones ofrecidas a

nivel de seguridad informática, sin afectar la

operatividad de la empresa, manteniendo un equilibrio

entre el nivel de seguridad recomendado y el nivel de

operatividad exigido. Con esto se busca que las

empresas presten sus servicios comerciales con un

margen de riesgo controlable y aceptable.

Para lograr este objetivo se demostrarán las ventajas de implementar un sistema integral de seguridad a través de un Gestor Unificado de Amenazas (UTM), haciendo énfasis en los riesgos más comunes a los que las empresas están siendo expuestas, tales como ataques de denegación de servicio, riesgos por control de acceso y ejecución de malware. 1.1 Riesgos de seguridad en el ciclo de vida de la

información Anteriormente, las Pymes manejaban un modelo reactivo al momento de presentarse un incidente que afectara su estabilidad tecnológica lo cual generaba diversos re-procesos, y estos incidentes al no ser medidos, alcanzaban un alto impacto en la continuidad del negocio. El principal problema es que no se manejaba una base de datos de conocimiento que permitiera reconocer patrones de errores en la organización y generar alertas tempranas que permitan identificarlos oportunamente, para así crear indicadores de seguimiento en su resolución. 1.2 Protección de capas y gestión de riesgos en TI Las Pymes al verse impactadas de manera económica, optaron por la creación de equipos de trabajo especializados que se encargaran de este tipo de riesgos. Estos equipos de trabajo fueron denominados gerencias de continuidad del negocio o gerencias de manejo de riesgos de TI, en las cuales su principal objetivo es prevenir mediante herramientas que generen datos cuantificables, valores estadísticos y valores históricos, los posibles riesgos tanto a nivel físico o tecnológico inherentes a la propia naturaleza del negocio. 1.3 Modelo relacional probabilístico en la gestión

de riesgos de TI El manejo de seguridad en las Pymes se debe gestionar tanto física como procedimentalmente a un nivel que permita identificar que no hay riesgos aislados y que estos son generados por una cadena de incidentes que desde el punto de vista externo pueden parecer no relacionados, pero analizándolos en detalle se pueden identificar patrones de ataques y dado el caso a que se encuentren asociados a incidentes o riesgos mayores no detectados.

1.4 Método de análisis de riesgos de TI Las Pymes que no manejen y aprendan de una base de datos de conocimiento de riesgos e incidentes

tecnológicos propia y/o ajena, incurre en responsabilidades por omisión, debido a que no está midiendo el riesgo en el impacto tecnológico y económico que implica interactuar en un mercado globalizado en donde cada vez más se exigen estándares de seguridad para poder hacer parte de un sector de mercado específico. 1.5 Gestión de incidentes de seguridad de TI El ciclo de manejo de los incidentes está basado en el modelo PHVA el cual inicia con una identificación de los incidentes por parte de las Pymes, estos eventos deben ser analizados y documentados a partir de una adecuada detección y control preventivo de las causas que lo han generado, y finaliza con la medición y seguimiento a todo este ciclo del manejo del incidente, enfocándose en los eventos iniciales y en la manera que fueron solucionados. 1.6 Amenazas informáticas Las Pymes deben contar con la suficiente experiencia para identificar los diferentes tipos de riesgos tecnológicos por los cuales se puede vulnerar su continuidad en el negocio, estos tipos de riesgos pueden ser clasificados como amenazas internas y externas a la empresa. 1.7 Conceptos y retos en la atención de incidentes Los crímenes y delitos informáticos están teniendo un gran auge debido al incremento exponencial de transacciones en la web, implicando transferencias bancarias y manejo de información de alta criticidad tanto para las empresas como para los usuarios finales. 2. GESTORES UNIFICADOS DE AMENAZAS (UTM) En el mundo empresarial uno de los bienes más importantes es la información sobre la cual soporta su negocio. Debido a esto, las Pymes requieren implementar una serie de controles que permita evitar de manera proactiva los diferentes ataques a los que su información se ve expuesta. La información empresarial es un bien intangible de alto valor agregado exclusivamente para sus propietarios, sin embargo, también puede generar interés a individuos dentro y fuera de las Pymes, la cual la pueden considerar de uso vital para cumplir sus propósitos de carácter ilícito. La alta gerencia de las Pymes, debe estar en la obligación de implementar controles con el fin de garantizarles a los clientes internos y externos el buen manejo y distribución de la información, en este punto están en la necesidad de implementar dispositivos que ofrezcan las características requeridas para este propósito. Toda empresa y en especial las Pymes que manejen información crítica, deben implementar un área de administración de seguridad informática que les permita contrarrestar los diferentes tipos de ataques y amenazas a los que se ven expuestas como:

Page 38: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

38

Bugs. Problemas de calidad de sus aplicativos generados de manera malintencionada o por omisión por parte de los proveedores de software.

Malware. Programas enviados a través de otros

sistemas ya sean internos o externos de la empresa.

Spyware. Programas espías dedicados a la

recopilación y robo de información.

Botnet. Ataques generados por fuera de la empresa con el fin de tomar control de los equipos.

Spam. Correo basura enviado con el objetivo de

saturar el servidor de correo. DOS. Ataques de denegación de servicio para

inhabilitación de los servicios, mediante múltiples peticiones de acceso.

Cross-Site Scripting. Forzar a un sitio Web para

replicar programas ejecutables orientados a los clientes del navegador.

Suplantación de Contenido. Técnica para engañar a

los usuarios presentando información falsa en sitios Web auténticos.

Fuga de Información. Revelación y robo de

información privada y sensible de la empresa por parte de empleados o terceros usando métodos de transferencia electrónica.

Intrusión remota. Ingreso externo no autorizado a

un equipo de cómputo usando la infraestructura de conectividad de la empresa.

Fuerza Bruta. Proceso de ingreso de credenciales

de autenticación de forma masiva para violar sistemas de seguridad.

Desbordamiento de Buffer. Alteración del normal

funcionamiento de un sistema o programa mediante la sobre escritura de espacios de memoria.

Inyección LDAP. Violentar el acceso a sitios que

implementan autenticación vía LDAP mediante enviando credenciales de autenticación falsas del directorio.

Inyección de Comandos. Envío de comandos

dirigidos al sistema operativo y a través de los componentes de ingreso de información a la aplicación.

Inyección de SQL. Envío de sentencias de SQL a

través de los componentes de ingreso de información a la aplicación, para ser ejecutados en la base de datos.

Las Pymes pueden tomar diversas alternativas con el fin de contrarrestar los ataques y amenazas a lo que se

pueden ver expuestas, una de estas opciones es adquirir productos especializados en contrarrestar cada uno de estos eventos de manera individual, pero la opción más recomendable, debido a su presupuesto reducido y a que sus prioridad está enfocada en la sostenibilidad de su negocio, es adquirir un producto que se encargue de centralizar la detección y gestión de los diferentes ataques y amenazas, a un costo que se adecue a su presupuesto, este tipo de soluciones son los UTM. Las características básicas ofrecidas por estos

gestores se encuentran en la lista superior de criterios

de selección. La idea es simple: si se requiere un

antivirus, este debe comportarse como un antivirus. El

funcionamiento de los que son configurados como

firewall no es tan simple como los que se configuran

como antivirus. La mayoría de firewall no está en

capacidad de examinar el gran número de protocolos

que se encuentran en las firmas de los virus, incluso

aquellos antivirus que realizan análisis de protocolos a

muy alto nivel [5].

Los UTM brindan en un mismo dispositivo, ya sea de hardware o software, una serie de funcionalidades que ayudan a cumplir los requerimientos básicos en seguridad informática y permiten contrarrestar debilidades como:

Fallos por desconocimiento u omisión en los controles de seguridad en el manejo de la información.

Ataques informáticos generados por personal interno y externo a la empresa.

Violación a las políticas de control de acceso y

administración de los recursos.

Mal manejo de los sistemas de información y de las bases de datos de conocimiento empresarial.

Un UTM es una plataforma que brinda conjuntamente múltiples funciones de seguridad en un solo dispositivo de hardware. Pero esto no es siempre la solución más indicada. La Tabla I resume las ventajas y desventajas de la implementación de un UTM [6]. Los UTM son sistemas compactos de hardware o de software los cuales se encargan de agrupar todas las funcionalidades de seguridad requeridas para proteger las Pymes, incorporando entre ellas las características más relevantes de seguridad: Firewall, Filtrado de contenido en la red, Antivirus, Anti-Spyware y Anti-spam. La funcionalidad más importante de un UTM es el Firewall. Su importancia se debe, a que permite realizar una detección temprana de los ataques generados desde el exterior hacia el interior de la empresa, mitigando los riesgos inherentes de la principal necesidad de las Pymes, que es el acceso a contenidos e información en la Web.

Page 39: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

39

TABLA I Ventajas y desventajas de un UTM

Ventajas Desventajas

Un único dispositivo para simplificar la arquitectura de red.

Las aplicaciones individuales pueden no tener todas las características de los dispositivos independientes.

Funciones integradas de seguridad para una administración más simple.

Implementación de dispositivos redundantes son requeridos para evitar puntos únicos de falla.

Reportes unificados para dar una imagen completa de la red y su estado de seguridad.

Procesadores compartidos pueden requerir grandes actualizaciones para todo el dispositivo, o descargas de aplicaciones por separado, para evitar problemas de rendimiento.

El personal de Tecnologías de la Información tendrá menos dispositivos sobre los cuales requerirá capacitación.

Las plataformas pueden no soportar todos los tipos de aplicaciones requeridos.

Aunque existen diferencias entre los dispositivos, los principios generales para configurar un UTM son: Ser restrictivo, Obtener granularidad, Estar al tanto de las cosas, Estar alerta, Actualizar regularmente, Mantener contratos de soporte, Considerar, monitorear los servicios de acceso disponibles, Tener cuidado con las VPN, Balancear productividad y protección [7]. 3. FUNCIONAMIENTO BÁSICO DE UN UTM PARA

LAS PYMES La principal característica de seguridad en la que se deben de enfocar las Pymes, es asegurar su infraestructura informática al conectarla a la Web para evitar posibles filtraciones y daños a su información de negocio, para esto la opción más recomendable es implementar un UTM de tres niveles en donde se garantice la seguridad las terminales de trabajo, los servidores de procesamiento y almacenamiento de datos y el acceso a Internet.

La evolución de las tecnologías informáticas y el descenso del precio del hardware han hecho que las soluciones perimetrales sean cada vez más asequibles en el mundo empresarial. Sin embargo, para las empresas pequeñas supone un coste importante añadido, la inversión en administración de las protecciones, por lo que demandan una solución integrada de protección contra todo tipo de amenazas [8]. Para cada uno de estos niveles se debe implementar una funcionalidad específica del UTM. Para proteger la información y las redes de los cada vez más sofisticados retos y amenazas de seguridad, muchas empresas están siguiendo enfoques de aseguramiento en capas. Y son también muchas las que se están dando cuenta de que una manera eficaz de hacerlo es instalar dispositivos UTM [9]. Las principales funcionalidades asociadas al UTM son: Bloqueo y filtrado de contenido Web. Acceso a

sitios Web que contengan software y/o contenido malicioso tales como sitios de pornografía, juegos

en línea, redes sociales, sitios para compras, subastas en línea, descarga de programas, almacenamiento en línea, sitios de farándula, apuestas en línea, videos en línea, etc.

Bloqueo de puertos de sistema. Controlar el acceso

a software de mensajería instantánea tales como MSN Messenger, GTalk, Yahoo Messenger, ICQ, AOL, Skype entre otros y software de intercambio de archivos punto a punto como Emule, Ares, Torrent, etc.

Bloqueo de archivos específicos. Torrentes,

ejecutables, archivos de script como JAR, VBS, JS, archivos multimedia, archivos comprimidos, entre otros.

Bloqueo de dispositivos extraíbles de

almacenamiento. USB, discos duros extraíbles, quemadores de DVD y otros sistemas de almacenamiento.

Prevención de fuga de información. Monitoreo

masivo de datos adjuntos que se envían por correo electrónico, páginas Web de almacenamiento en línea, discos duros virtuales, sistemas de mensajería instantánea.

Protección de Malware y Spyware. Disminuye en un

alto porcentaje el riesgo de infección y propagación de archivos de contenido malicioso que provengan en su mayoría tanto de la red externa, como también de la interna.

Protección de ataques informáticos. Permite

minimizar los impactos producidos por un ataque de denegación de servicio, y un escaneo remoto no autorizado de puertos y servicios.

Protección frente al correo no deseado. Regula

mediante la aplicación de reglas, la recepción y envío de correo masivo y mensajes de contenido restringido como sexo, comercio, racismo etc. y correos que no estén relacionados con las actividades de la empresa.

Control de ancho de banda y tráfico de la red.

Regula la carga y descarga de archivos que sobrepasen el límite permitido por las políticas de control definidas en la empresa, la tasa de transferencia por equipo al acceder a la Web, mediante la implementación de políticas de control del ancho de banda demandada por sitio, contenido y protocolo.

Creación de redes como DMZ y MZ. Define la

segmentación de redes a proteger permitiendo la configuración de zonas seguras y zonas menos seguras.

Enrutamiento. Posee características de enrutador

de red para enlazar las redes y aplicar las políticas que estén definidas en su configuración.

Page 40: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

40

Proxy. Implementa funcionalidad básica de navegación Web anónima y optimización del ancho de banda por guardar una cache de contenido.

Firewall para el control de acceso remoto a la Red.

Limita y protege del acceso no autorizado a las redes, recursos y servicios de la empresa.

Redes virtuales privadas VPN (Tunneling). Facilita

el acceso remoto a los recursos de sistemas empresariales mediante la creación de redes virtuales seguras.

Generación de reportes centralizados de la red.

Consolida en reportes detallados de eventos como es el uso de ancho de banda, ataques, Spam y Malware detectados, graficas de rendimiento, estadísticas de uso de servicios como lo es la Web y el correo interno.

Autenticación Single Sign-On. Permite la integración

de seguridad con aplicativos que tengan implementadas características de autenticación con LDAP, directorio activo (AD) o RADIUS.

4. ASEGURAMIENTO DE LAS PYMES MEDIANTE

UTM La viabilidad funcional y sostenibilidad financiera de las Pymes está basada en cuatro pilares fundamentales que son Administrativo, Financiero, Tecnológico y Ambiental. Estos deben ser considerados por la alta gerencia, para apoyar al cumplimento de la misión y visión empresarial. Debido a que una solución global de seguridad requiere de un gran potencial de procesamiento para examinar el tráfico de la red en tiempo real, las soluciones actuales de seguridad todo en uno para Pymes, a menudo utilizan tecnología rudimentaria de seguridad que confunde globalidad con velocidad. Una seguridad completa debe cumplir con ambos requisitos velocidad y cobertura [10]. Al implementar un UTM el impacto en los cuatro pilares administrativos sería el siguiente: Administrativo. Desde el punto de vista

administrativo, la empresa podrá enfocar todos sus esfuerzos y su operatividad en la viabilidad del negocio, ya que las Pymes al implementar un UTM, pueden delegar el esfuerzo que implica salvaguardar su información administrativa y operacional, a una configuración predeterminada según sus necesidades.

Financiero. Las Pymes deben alcanzar su

sostenibilidad económica durante los primeros años de vida. Para lograr este objetivo, deben centralizar la responsabilidad de seguridad en un solo dispositivo como lo es un UTM, ya que no se verán en la necesidad de adquirir dispositivos adicionales con su correspondiente costo de soporte y administración. Adicionalmente este se encargará

de asegurar sus activos de información y con esto podrán ver minimizados los impactos económicos derivados de un posible incidente informático.

Tecnológico. Al no contar con un área de

infraestructura muy robusta que amerite una gestión de TI especializada, las Pymes puede destinar los recursos que implicarían gestionar distintos dispositivos de seguridad especializados y centralizar su capacidad en un único UTM.

Ambiental. La legislación internacional exige que las

empresas cumplan con unos estándares mínimos de protección ambiental, tecnologías verdes o amigables con el medio ambiente. Con la implementación de un UTM, las Pymes podrán disminuir el consumo de energía eléctrica, minimizar sus emisiones de CO2 y reducir el impacto generado por los excedentes de basura electrónica derivados de la adquisición de otros productos de seguridad no consolidados.

Tareas tales como la operación y la gestión del firewall dedicado, detección de intrusos y sistemas de prevención de intrusiones (IDS/IPS), filtrado de contenidos, encriptación y otros sistemas de seguridad pueden requerir habilidades especiales de los equipos de seguridad de las grandes empresas. Para las pequeñas empresas o sucursales, estas labores son tan abrumadoras que simplemente no se hacen [11]. 5. IMPLEMENTACIÓN DEL UTM pfSense pfSense es una distribución libre de código abierto personalizado basado en el sistema operativo FreeBSD, adaptado para su uso como firewall y router. Además de ser una plataforma potente, flexible incluye una larga lista de características y un sistema de paquetes que le permite expandir sus funcionalidades sin desbordar su potencial de seguridad [12]. Ofrece bondades de seguridad informática básicas, usando recursos de fácil adquisición por las Pymes, sumado al hecho de una instalación rápida y sencilla, adicionalmente posee los principales módulos de seguridad requeridos.

5.1 Instalación de pfSense

Para la instalación se utilizó un computador con las siguientes especificaciones: procesador de 1 GHz, 512 MB RAM, disco duro de 10 GB y 2 tarjetas de red. Con estas especificaciones el UTM tendrá un rendimiento de 51 a 200 Mbps. La instalación se realiza a través del asistente de configuración, como se ilustra en la Figura 1. Se recomienda implementar la instalación predeterminada ya que ésta se ajusta a la mayoría de las necesidades de las Pymes. Finalizada la etapa de instalación, se habilitan los módulos de seguridad básicos requeridos como puede verse en la Figura 2. Para este caso se habilitan a través del menú de configuración inicial mediante el gestor de paquetes, los cuales son: Antivirus, proxy y filtrado de contenido.

Page 41: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

41

Fig. 1: Asistente de instalación del UTM pfSense

Fig. 2: Módulos que se pueden instalar en el UTM

5.2 Funcionamiento del servidor proxy

El servidor proxy es una aplicación que soporta

peticiones HTTP, HTTPS y FTP, entre otras, a equipos

que necesitan acceder a Internet y a su vez, provee la

funcionalidad de caché especializado que almacena de

forma local las páginas consultadas recientemente por

los usuarios. De esta manera, incrementa la rapidez de

acceso a los servidores de información Web. También

puede operar de forma transparente ya que las

conexiones son direccionadas dentro del mismo

servidor proxy sin configuración adicional por parte del

cliente para su navegación en internet, visto de otra

forma, el navegador Web no necesita ser configurado

para que aproveche las características del servidor

proxy. La Figura 3, muestra la activación del servidor

proxy transparente en el UTM pfSense.

Fig. 3: Proxy transparente en pfSense

5.3 Funcionamiento del antivirus con HAVP

HAVP es un módulo integrado de proxy y antivirus para

el contenido Web como se observa en la Figura 4, éste

módulo nos brinda un nivel de seguridad alto,

garantizando que la plataforma esté protegida de

ataques generados por Malware o programas espías,

además controla la navegación Web, así como

recursos usados. Las actualizaciones periódicas

automáticas ayudan para que se mantenga los niveles

de protección en las Pymes.

Fig. 4: Integración de Proxy + Antivirus

5.4 Creación de reglas en el Firewall

Para la implementación del Firewall se crean reglas,

las cuales se implementan de manera que garanticen

la mayor protección posible sin afectar el rendimiento

del sistema. pfSense está dividido por etapas y

protocolos. El usuario configura estos parámetros

dependiendo de las necesidades de su empresa, la

Figura 5 indica que solo se permite el acceso web a la

Internet por los protocolos comunes DNS, HTTP y

HTTPS.

Fig. 5: Firewall aplicado a la red WAN y LAN

5.5 Listas de Control de Acceso

Uno de los módulos más destacados en el UTM

pfSense, es el de las listas de control de acceso de

direcciones web y/o expresiones no permitidas como

sexo, racismo, entre otras, las cuales permiten

gestionar, bloquear y usar de modo seguro, la

navegación en internet, con lo que se garantiza a las

Pymes que sus empleados hagan correcto uso de los

recursos informáticos, la Figura 6 ilustra el gestor de

las listas de control de acceso.

Fig. 6: Listas de Control de Acceso

5.6 Bloqueo de páginas con virus

Una vez configurado el UTM pfSense con el módulo

integrado de proxy y antivirus, bloqueará las páginas

Page 42: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

42

que contengan malware, mostrando un mensaje de

alerta como lo indica la Figura 7.

Fig. 7: Bloqueo de Páginas con Virus

5.7 Reportes y estadísticas

Los informes de estadísticas de uso como los que se

muestran en las Figuras 8 y 9, son generados con el fin

de que las Pymes puedan evaluar el uso dado de los

recursos de Internet, permitiendo ver reportes de

consumo de ancho de banda, páginas visitadas y

número de ingresos, entre otros, con el fin de tomar

decisiones como: la limitación selectiva a internet para

ciertos empleados, verificar la calidad del servicio de

internet y apoyo a los procesos de auditoría.

Fig. 8: Consumo de ancho de banda

Fig. 9: Páginas visitadas y número de

6. CONCLUSIONES Las Pymes deben considerar adaptarse a los requerimientos de seguridad informática actualmente exigidos por las entidades de regulación de comercio electrónico internacional, para poder asegurar una continua expansión de su mercado tanto a nivel nacional como internacional. Dentro de los gastos presupuestados para las Pymes, se debe considerar un rubro dedicado exclusivamente al mantenimiento y soporte de su plataforma tecnológica, en especial el relacionado con el aseguramiento de su base de datos de conocimiento e información relacionada con sus clientes. Desde el punto de vista funcional, la implementación por parte de las Pymes de un UTM como dispositivo de aseguramiento para su plataforma tecnológica es la mejor alternativa, debido a que podrán encaminar sus esfuerzos en alcanzar su punto de equilibrio económico y operativo. 7. REFERENCIAS [1] J. E: Ojeda-Pérez et at. “Delitos informáticos y entorno

jurídico vigente en Colombia”. Cuadernos de Contabilidad, Vol. 11, No. 28, pp. 41-66, 2010.

[2] K. J. Molina et al. Firewall - Linux: Una Solución De Seguridad Informática Para Pymes (Pequeñas Y Medianas Empresas). UIS Ingenierías, Vol. 8, No. 2, 2009, pp. 155-165, 2009.

[3] J. J. Cano. “Inseguridad Informática: Un Concepto Dual en Seguridad Informática”. Revista de Ingeniería, No. 19, mayo, pp. 40-44, 2004.

[4] S. Brusotti; G. Lamastra & M. Leone. "e-commerce security issues". Notiziario Tecnico Telecom Italia, Vol.

11, No.3, pp.37-56, 2003. [5] J. Snyder. “How to select enterprise UTM firewalls”.

Network World, Vol. 24, No. 34, pp. 38-40, 2007. [6] D. J. Engebretson. “UTMs are not for everybody”.

Security Distributing & Marketing, Vol. 37, Supplement, pp. 7, 2007.

[7] M. Sarrel. “Unified Threat Management”. PC Magazine, Vol. 27, No. 3, pp. 102-102, 2008.

[8] J. M. Crespo. “El valor añadido de los appliance UTM para la Pyme”. Online [Mar. 2011].

[9] A fondo. “UTM: seguridad “todo en uno””. Network World, No. 10, pp. 24-28.

[10] NETGEAR. “Dispositivo ProSecure Para la gestión Unificada de las amenazas”. Online [Mar. 2011].

[11] G. Hulme. “Unified Threat Management for SMBs”. Channel Advisor, pp.15-16, spring, 2008.

[12] http://www.pfsense.org/

Page 43: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

43

ROLES DE LOS CENTROS UNIVERSITARIOS MUNICIPALES (CUM) EN EL

DESARROLLO LOCAL DE LOS MUNICIPIOS CUBANOS

Carlos A. Hernández M. Centro Universitario Municipal Camajuaní, Cuba.

[email protected]

(Tipo de Artículo: Reflexión. Recibido el 04/02/2012. Aprobado el 08/05/2012)

RESUMEN Se conceptualiza en el aporte de la Educación Superior al Desarrollo Local en los municipios, cómo se inserta en el proceso, las amenazas a su participación y las oportunidades generadas por su inclusión. Se analiza la situación actual y perspectiva y las Estrategias a seguir por la Educación Superior en los municipios. Se define como se trabaja la seguridad alimentaria en función del Desarrollo Local, la superación de Postgrado en el CUM, la formación y superación de los cuadros, la participación en proyectos pertinentes en energía, medio ambiente, servicios a la población, industrias locales y problemas socio - comunitarios y la formación vocacional y articulación pertinente con la Enseñanza Técnico Profesional. Por último se hace una propuesta de Indicadores y herramientas para medir el impacto de la Gestión del Conocimiento y la Innovación dentro del Programa de Desarrollo Local dividida en 2 grupos: Indicadores de funcionamiento interno del CUM e Indicadores de funcionamiento del CUM hacia el Desarrollo Local del Municipio.

Palabras clave Educación superior, desarrollo local, gestión del conocimiento y la innovación, postgrado, indicadores.

ROLES OF MUNICIPAL UNIVERSITARY CENTERS (MUC) IN THE LOCAL DEVELOPMENT OF CUBAN MUNICIPALITIES

ABSTRACT A conceptualization is made on the contribution of Higher Education to Local Development in the municipalities, how it is inserted in the process, the threats to their participation and the opportunities generated by their inclusion. The current situation, the perspective and the Strategies to adopt for Higher Education in the municipalities are also analyzed. It is defined how alimentary security works regarding to Local Development, postgraduate degree in MUC, education and self-improvement of Chiefs, participation in pertinent projects in the fields of energy, environment, community services, local industries, social-community problems and vocational education and pertinent articulation with Professional Technician Teaching. Finally a proposal is made about Indicators and tools to measure the effect of Knowledge and Innovation Management within Local Development Program, it has two parts: Indicators of internal operation of the MUC and Indicators of operation of the MUC regarding Local Development of the Municipality. Keywords Higher education, local development, knowledge and innovation management, postgraduate degree, indicators.

ROLES DES CENTRES UNIVERSITAIRES MUNICIPALES (CUM) DANS LE DEVELOPEMENT LOCALE DES COMMUNES CUBAINES

RÉSUMÉ On conceptualise sur l’apport de l’Education Supérieure dans le développement local dans les communes, comment s’insère-elle dans le processus, les menaces à son participation et les opportunités produites par son inclusion. On analyse la situation, perspective et les stratégies par rapport à l’Education Supérieur dans les communes. On définit comment est travaillée la sécurité alimentaire dans fonction du Développement Locales, les diplômes de troisième cycle dans MUC, la formation et dépassement des Chefs, la participation dans projets pertinents dans énergie, environnement, services pour la population, industries locales et des problèmes sociocommunautaires, la formation vocationnelle et l’articulation pertinent avec l’Enseignement Technique Professionnelle. Finalement on propose des indicateurs et outils pour mesurer l’effet de la gestion de la connaissance et l’innovation à l’intérieur du Programme de Développement Locale en deux parties : Indicateurs de fonctionnement interne du CUM et indicateurs de fonctionnement du CUM par rapport au Développement Local de la Commune.

Mots-clés Education supérieure, développement locale, gestion de la connaissance et l’innovation, études de troisième cycle, indicateurs.

C. A. Hernández M. “Roles de los Centros Universitarios Municipales CUM en el desarrollo local de los municipios cubanos”. Ing. USBMed, Vol. 3, No. 1, pp. 43-49. ISSN: 2027-5846. Enero-Junio, 2012.

Page 44: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

44

“La auténtica dignidad de cualquier ser humano radica en la satisfacción de poseer un trabajo estimulante,

de ser capaz de desarrollarse en él y de encontrar que lo que hace es valioso” Shigeru Kboyaschi

1. INTRODUCCIÓN Todos los modelos contemporáneos de relación universidad-sociedad se basan en la necesidad de trabajar en redes. por tanto los CUM, para cumplir su misión, necesitan realizar su trabajo en redes cuyos actores sean el gobierno local, las otras filiales del territorio, las bibliotecas y centros de información, las empresas, los representantes locales de ministerios como el CITMA, las organizaciones políticas, sociales y profesionales y los movimientos sociales como el fórum de ciencia y técnica. La gestión del conocimiento en este contexto consiste en gran medida en colaborar en la identificación de problemas locales que lo requieran para su solución y en contribuir a identificar las organizaciones o personas que pueden aportarlo, para luego construir los nexos, las redes y los flujos de conocimientos que permitan su asimilación, evaluación, procesamiento y uso. Los CUM pueden actuar como agentes relevantes en la construcción social del mismo y en el establecimiento de las conexiones que permitan el flujo entre los actores de la red local de su territorio [1]. La producción de conocimiento a nivel local plantea varios retos de gran complejidad: 1. Frecuentemente, los problemas son complejos y

necesitan un abordaje multi o inter-disciplinario, requiriendo de la integración de varias disciplinas en la búsqueda de respuestas cuya solución muchas veces se logra combinando inteligentemente los conocimientos existentes.

2. Generalmente, el conocimiento que se requiere está

integrado a la práctica, se necesita para resolver un problema y existe gran parte del mismo, por lo que sólo es necesario transferirlo con creatividad teniendo en cuenta la singularidad de las circunstancias locales.

3. Existe un fuerte nexo entre innovación y aprendizaje

por lo que para introducir lo nuevo antes hay que capacitar al personal que trabajará en el proceso.

El primer reto obliga a tener un levantamiento de información de los profesionales del territorio acompañada de los conocimientos que manejan y en qué pueden aportar al enfoque multi-disciplinario de la solución de cualquier problema. El segundo reto crea la necesidad del aprendizaje por parte de los actores locales de la red, para realizar las funciones que les corresponden en el contexto de la misma. Esto lleva a la necesidad de un programa de educación continua de estos profesionales que engrana con el tercer reto, al realizar esa capacitación y superación para prepararlos de cara a enfrentar los nuevos conocimientos generados.

De acuerdo con Lage [2], el “conocimiento relevante” producido a nivel local se debe caracterizar por ser: (a) colectivo, incorporado a las organizaciones, (b) combinatorio, de fuentes y disciplinas diversas, (c) concreto, vinculado a la solución de problemas específicos, (d) tácito, frecuentemente no estructurado y (e) local, lo que ilustra el tipo de conocimientos que deberán gestionar los CUM para atender los problemas del territorio que los rodea. En la gestión del conocimiento a nivel local se debe eliminar las distancias que se han creado artificialmente entre las disciplinas, entre los actores y entre los procesos de aprendizaje, de superación, de capacitación, de investigación y de innovación. Esto es importante porque obliga a todos los actores a trabajar integradamente en función de la obtención de un conocimiento utilizable. Es imprescindible encaminar acciones para optimizar los recursos humanos disponibles y dar un trato adecuado y justo a las personas que integran la organización, lo que requiere una dirección centralizada de recursos que posibilite proyección prospectiva que favorezca los saltos cualitativos que se deriven de los cuantitativos. Con ello se avanza hacia una integración estratégica [3]. En un CUM, el logro de una dirección eficiente, eficaz e integrada [4] revierte singular importancia porque lleva aparejado una serie de acciones encaminadas sobre las concepciones educativas y curriculares asumidas que declaran el carácter nacional, científico, democrático, popular y político en un proceso de vinculación y mutua influencia con la sociedad. Además, lleva implícito el desarrollo de la investigación científico-tecnológica de dicha institución, lo que repercute en el apoyo intelectual a la teoría de las ciencias y en la economía productiva y social de la población y realiza una interacción integral con la comunidad a través de sus actividades de extensión. En 2002 se inició un proceso de transformaciones de la educación superior con el objetivo de garantizar el pleno acceso de la población a todas las actividades sustantivas, cultivando su inteligencia y multiplicando gradualmente sus conocimientos. A partir de los recursos materiales y humanos creados durante estos fructíferos años de revolución y que hoy se encuentran diseminados por toda la Isla [5]. Para dar respuesta a estas nuevas exigencias surgen los Centros Universitarios Municipales CUM y se inicia un amplio programa de Universalización en Cuba. La nueva universidad cubana, internacionalista y abierta a toda la sociedad, se distingue de la tradicional que existe en la mayoría de los países del mundo, porque trasciende sus muros y desarrolla sus procesos en íntima comunidad con el pueblo, perfeccionándose continuamente como parte de una interrelación en la que todos deben participar.

Page 45: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

45

En su primera etapa, los CUM se dedicaron a garantizar la continuidad de estudios con la calidad requerida en las carreras que se imparten y se han incorporado otros procesos sustantivos de la vida universitaria como respuesta a las necesidades del desarrollo de cada territorio. Estas misiones imponen la necesidad de lograr con urgencia la integración y cooperación de todos los factores del territorio para elevar la calidad, racionalidad y pertinencia de los resultados de las instituciones. Esa es la única forma de dar respuesta a las complicadas demandas que plantea el gobierno y las instituciones del territorio. A tono con las ideas anteriores, el punto de partida para identificar el papel y el lugar de la universidad actual y con ello poder establecer de la mejor forma posible su modelo de formación, se debe buscar en la propia misión de la universidad. Según Horruitiner [6], consiste en preservar, desarrollar y promover, a través de sus procesos sustantivos y en estrecho vínculo con la sociedad, la cultura de la humanidad.

La misión asignada a la nueva universidad cubana en las nuevas condiciones de la municipalización conduce a la siguiente interrogante: ¿Cómo lograr la integración de todos los factores del territorio garantizando el desarrollo local y el cumplimiento de la misión de la educación superior bajo las condiciones de la municipalización?

2. DESARROLLO Los CUM deben actuar en el contexto del municipio como gestores de conocimiento y la innovación y, para cumplir esa función, deben minimizar las amenazas y potenciar las oportunidades que se presenten en el entorno municipal a partir de las transformaciones en la educación superior y buscando la calidad, la eficiencia y la racionalidad económica. Además, aportan al desarrollo local identificando los problemas, potenciando la capacitación orientada a las necesidades, conectando el conocimiento a las necesidades sociales, colaborando en la gestión del conocimiento que facilitará las soluciones y formando valores en todos los actores locales.

2.1 Amenazas a la participación del CUM Insuficiencia de conocimiento, concientización y

herramientas metodológicas para la acertada incorporación del conocimiento como recurso imprescindible para el desarrollo local sostenible.

Limitada integración y coordinación inter-institucional y sectorial en la gestión del conocimiento.

Inadecuada incorporación de la gestión del conocimiento a los planes y programas del municipio.

Limitados recursos financieros e incentivos favorables a la gestión del conocimiento a escala de municipio, consejo popular y comunidad.

Tendencia a la disminución de las matrículas y carreras en los CUM.

Voluntarismo en la superación de directivos y profesionales del territorio.

Estilos de trabajo que no propician el cambio.

Falta de visión de los decisores en los organismos municipales sobre el papel del CUM como institución dinamizadora de la gestión del conocimiento y de la innovación en el territorio.

Débil formación vocacional que no está orientada a necesidades del territorio.

Articulación no pertinente de la enseñanza técnico profesional con la educación superior.

Poca generalización de las investigaciones que se realizan en los planes de ciencia y técnica.

Debilidad en dimensión jurídica y en ciencias sociales.

Existencia de empresas no subordinadas localmente.

2.2 Oportunidades generadas por la participación

Difusión de los resultados en los eventos y congresos nacionales e internacionales.

Posibilidad de capacitar a los diferentes actores en función de las prioridades del territorio.

El Pilotaje del MES a la IMDL posibilita el nexo sede Central-CUM-Gobierno en el municipio.

La articulación entre los actores locales y el nexo entre el saber académico y el saber popular viabiliza aplicar la máxima de pensamiento global y actuación local.

Presencia de una red de actores del territorio y su articulación con otras redes.

Papel protagónico del gobierno en el desarrollo local.

Integración pertinente de las funciones sustantivas de la educación superior para el desarrollo local.

Integración de todos los organismos formadores en función del desarrollo local.

2.3 Retos de la gestión del conocimiento y de la

innovación

Perfeccionar labor educativa de profesores y estudiantes.

Coadyuvar a un desarrollo humano sostenible. Lograr la integración entre la red de actores. Promover una investigación científica y pertinente. Lograr la Pertinencia universitaria. Formación de pregrado y postgrado orientada al

desarrollo local. Usar recursos financieros a partir de proyectos. Uso acelerado de las tecnologías. Articular las acciones de iniciativas con programas,

redes, organizaciones e instituciones locales, con el foco del desarrollo municipal y seguridad alimentaria.

Lograr un desarrollo social y económico sostenible con base en el conocimiento.

3. SITUACIÓN ACTUAL Y PERSPECTIVA DE LA

EDUCACIÓN SUPERIOR EN LOS MUNICIPIOS Hasta hoy el desarrollo local estaba implícito en el trabajo de la educación superior hacia el municipio, pero no era priorizado frente a la formación de profesionales. Hoy el desarrollo local pasa a ser una prioridad, pero la formación profesional en los CUM disminuye con tendencia a desaparecer, lo que hace

Page 46: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

46

que la pertinencia pase a ser casi virtual. Perder la integración pertinente de las funciones sustantivas con el desarrollo del territorio debido a la disminución acelerada de la formación profesional en el CUM, afecta el desarrollo Local. Se hace necesario, en esas complejas condiciones, un cambio de paradigma para los CUM debido a la necesidad de la universalización del conocimiento con equidad y justicia social, de lograr calidad y pertinencia con respuesta a las demandas del desarrollo local. Surge entonces este interrogante [7]: ¿Cómo aprovechar la oportunidad que brinda la prioridad recibida por el desarrollo local, conjurando la amenaza de la disminución de la formación profesional en los CUM, potenciando algunas fortalezas y neutralizando algunas debilidades existentes, para potenciar el desarrollo local con visión desde el CUM?

3.1 Estrategias de la educación superior en los

municipios Ante esa combinación de factores, que pueden potenciar o afectar el desarrollo local, es necesario desarrollar estrategias para aprovechar las oportunidades externas que ofrecen las prioridades para el desarrollo local y que han dado organismos para posibilitar el acceso a los créditos para los proyectos, la creación de las Delegaciones Municipales del MINAG, la atención de la comisiones de la ANPP al desarrollo local y las prioridades otorgadas por el CITMA a las ciencias sociales y humanísticas. Otra estrategia es potenciar las fortalezas logradas en el sistema MES para el desarrollo local, expresadas en el Lineamiento 10/2010 del MES, la experiencia acumulada en el Programa Ramal de Ciencia y Tecnología GUCID, la integración de las funciones sustantivas de la educación superior, la experiencia en la capacitación de actores y formación de capacidades a nivel de municipio. También incluyen a la Integración de sedes centrales y los CUM, la capacitación y educación de postgrado para la innovación realizada en el entorno local y las experiencias sistematizadas por algunos doctorados que se realizan en temas de desarrollo local. Como estrategia para neutralizar las debilidades en función del desarrollo local se debe lograr mayor articulación de las redes locales del MES y otras que operan en los municipios, fortaleciendo la capacidad de accionar del GUCID en los CUM. Se debe elevar la pertinencia e integración de las funciones sustantivas para el desarrollo local, aprovechar las posibilidades que brindan los proyectos de la IMDL y el MEP y participar en otros pilotajes y proyectos municipales en energía, medio ambiente, industria y servicios. Se debe potenciar la integración pertinente entre las sedes centrales y los CUM, el uso de estudiantes del municipio que estudian en las sedes en proyectos de producción de alimentos, vivienda o TIC y desarrollar y aplicar un sistema de indicadores GUCID para el desarrollo local.

La estrategia para conjurar la amenazas que acechan al desarrollo local debe aprovechar las posibilidades que brinda la función estatal de asesoría a la proyección estratégica del CAM, determinar las demandas reales de formación profesional a partir de los problemas y oportunidades existentes en el territorio y realizar una articulación consecuente de la agenda formativa entre la educación superior, la enseñanza media y la enseñanza técnico profesional. También se debe realizar una formación vocacional consecuente para el desarrollo local, una preparación dirigida al ingreso a la educación superior en función del desarrollo local, una gestión efectiva de matrícula en las carreras del CUM determinantes para el desarrollo local y un manejo adecuado del plan de estudios propio y electivo en función del mismo. Si se aprovechan las oportunidades de prioridad del desarrollo local, se conjuran las amenazas, se aprovechan las fortalezas y se neutralizan las debilidades mediante las capacidades creadas por el programa ramal GUCID en los CUM, es posible salvar el núcleo duro de perfiles de carreras y los CUM imprescindibles para realizar avances importantes en el desarrollo local.

3.2 Seguridad alimentaria en función del desarrollo

local La seguridad alimentaría esta íntimamente ligada al desarrollo local, sobre todo a partir de que la mayor parte de los municipios del país tienen una economía con un fuerte carácter agropecuario. La elaboración de la estrategia para la agricultura suburbana en un radio de 5 km. del municipio y 3 de cada consejo popular es un proceso en que los CUM pueden aportar [8]. La industria transformadora y conservadora de alimentos, que se deberá desarrollar en el país, jugará en muchos municipios un papel clave en el proceso de su industrialización mediante el desarrollo de la pequeña y mediana empresa. Para esto se requieren varias soluciones de financiamiento, energía y recursos humanos, es necesario encontrar financiamiento en los planes de la economía, sistema crediticio nacional que aún está por desarrollarse, los proyectos de IMDL del MEP, proyectos internacionales, sobre todo a través del ALBA, donativos y otras fuentes.

3.3 Papel del CUM en la formación y superación de

los cuadros para las necesidades del desarrollo

local A partir de la indicación del MES en 2005, las sedes universitarias municipales se convirtieron en figura protagónica en la preparación y superación de los cuadros y reservas del territorio. Para acometer esta tarea se usan todas las figuras de superación del postgrado y diferentes alternativas que incluyen la semi-presencialidad y capacitación desde el puesto de trabajo, aunque durante algunos años predominaron los cursos. Se crearon los grupos de trabajo municipales para la formación y superación de los cuadros y reservas,

Page 47: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

47

integrados por el profesor de la CUM que atiende la actividad, el funcionario que atiende cuadros en la AMPP, un grupo de entrenadores de cuadros de mayor experiencia y los capacitadotes de los OACE y otros organismos. Su función es asesorar y controlar el proceso de planeación estratégica e introducción de otras técnicas avanzadas de dirección y en las actividades de preparación y superación de los cuadros y reservas.

El proceso de conciliación de la estrategia de preparación y superación de los cuadros y reservas se ha sistematizado. Las conciliaciones de la estrategia de preparación y superación de los cuadros en el CAM, con participación de la CUM, llegan hasta las empresas y organismos de base como parte de un sistema de trabajo y avanzando en la implementación de la estrategia maestra de preparación política e Ideológica. Es una fortaleza el seguimiento dado por las sede centrales de la universidad a la formación académica de los cuadros y reservas. Ellos se han insertado en los diferentes programas de maestrías en dirección y otros están en formación, dentro de los cuales se encuentran directivos de empresas y organismos, presidentes de consejos populares, presidentes, vicepresidentes y secretarios de CAM. También hay cuadros egresados y matriculados en maestrías de otras ramas del saber afines con la labor que realizan, como la maestría de energía y la maestría de educación superior para los que imparten docencia en el CUM.

3.4 Formación de profesionales en el CUM en

función de las necesidades del desarrollo local La necesidad de formar a los profesionales en las instituciones de la educación superior del municipio en las especialidades necesarias para el desarrollo local es una prioridad. Por tanto las propuestas de necesidades de matrícula deben realizarse con una planificación a corto, mediano y largo plazo que responda al plan de desarrollo municipal que deriva del diagnóstico de necesidades del territorio.

Por lo general, esos estudios dan como resultado que en los municipios escaseen los profesionales especializados en la producción de alimentos, el desarrollo industrial, la planificación y control de la economía, el trabajo con los recursos humanos y las ciencias sociales. Esto indica la necesidad de mantener un núcleo fuerte en las carreras agropecuarias, industrial, contabilidad y finanzas y quizás alguna presencia de sociología o estudios socioculturales. Para ello es necesario priorizar estas carreras en los planes de matrícula y promover la formación profesional, sobre todo en las menos atractivas.

3.5 Superación de postgrado en el CUM en función

de las necesidades del desarrollo local Para desarrollar las acciones de postgrado se ha diseñado un plan anual de superación postgraduada a nivel de sede central, las facultades y los CUM a partir del diagnóstico de las necesidades de los principales organismos e instituciones del territorio. Para lograr

una mayor satisfacción de las necesidades determinadas, se ha trabajado de forma integrada con la red del MES. Se parte de las demandas de los profesionales en lugar de hacer una simple oferta de cursos y otras formas de superación; se incluyen en esta modalidad formas de capacitación que no van dirigidas directamente a profesionales pero que resuelven necesidades locales de formación en trabajos de técnicos, obreros y oficios manuales. En la superación postgraduada se ha desarrollado diversos cursos, entrenamientos, diplomados y actividades dinámicas y en el postgrado académico, maestrías, especialidades y doctorados. Las principales temáticas a abordar en la actividad postgraduada para el desarrollo local giran alrededor de temas de manejo de recursos hídricos, bio-fertilizantes, abonos orgánicos, manejo integrado de plagas, lombricultura, salud y nutrición animal, manejo y conservación de suelos, producción de viandas y granos, educación ambiental, economía y desarrollo local, gestión de proyectos, uso de sistemas de información geográfica, proyección para la producción agropecuaria sostenible en pequeñas fincas, producción de alimentos en ecosistemas frágiles, idiomas, informática, pedagogía, ciencias sociales, economía y contabilidad, salud y energía entre otros.

Las lecciones aprendidas en el postgrado indican que no siempre los DNA son lo suficientemente objetivos para diseñar la Superación, porque no aplican los instrumentos apropiados para realizarlas, hay limitada utilización de enfoques y métodos de avanzada en la formación de postgrado, existen insuficientes recursos logísticos y bibliográficos físicos y digitalizados para desarrollar las actividades presenciales y semi-presenciales. También son restringidos los espacios para la comunicación, difusión y retroalimentación de las informaciones de los programas socioeconómicos, en los cuales participen autoridades de los órganos y organismos.

Los resultados a esperar del postgrado se concentran en nuevos y mejorados productos, servicios, procesos y tecnologías, mayor satisfacción de la población, incrementos de calidad de vida, disminución de pérdidas y afectaciones a la economía nacional e individual e incremento de efectividad en el modo actuar.

3.6 Participación en proyectos pertinentes en

energía, medio ambiente, servicios, industrias

locales y problemas socio-comunitarios Se debe capacitar a los actores locales en gestión energética empresarial para elevar las capacidades técnico-organizativas de las empresas para la mejora continúa de su eficiencia energética. Hay necesidad de realizar una fuerte gestión ambiental en colaboración con el CITMA y todos los organismos del territorio; se debe potenciar la aplicación de un sistema de acciones socio-culturales e incremento del nivel de participación comunitaria por la introducción de la metodología y estrategia para el trabajo comunitario en los consejos populares.

Page 48: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

48

Se deben realizar estudios en el municipio para incluir proyectos en la IMDL. Priorizar proyectos sobre producción de materiales para la construcción, financiado por PDHL, hábitat y otras iniciativas. A través de la vinculación de las carreras de ciencias sociales y humanísticas se realizarán en el territorio diferentes intervenciones sobre el diagnóstico y la caracterización de problemas del hábitat y la convivencia en asentamientos humanos. Hay que lograr la integración de las redes de actores municipales y su articulación a otras redes MES y nacionales para el desarrollo local participando en el movimiento de vaquerías escuelas y producción de alimento animal del ICA y en la entrega de tierras en cada municipio. Se mantendrán las páginas web de los CUM con visibilidad en la intranet del MES, perfeccionando el proyecto de informatización del gobierno y un grupo de organismos clave en el municipio, como el CUM, MINED, salud pública, la oficina municipal de estadística, vivienda y varias entidades de la agricultura. Se debe diseñar el portal municipal con una concepción descentralizada. Se necesita un diagnóstico de los recursos informáticos materiales y humanos disponibles y la conectividad tanto en el gobierno como en las entidades de subordinación local y nacional de mayor interés para a partir del proyecto de Informatización de la Sociedad. La participación en el proyecto de innovación agrícola local de extensión al municipio de la bio-diversidad y los piensos locales permite la realización de ferias de productores en el municipio, entrega de semillas a los productores, capacitación en tecnologías apropiadas y socialización de Procesos de Innovación para el desarrollo Municipal. Es una iniciativa que se debe aprovechar en función de la producción sostenible de alimentos en la localidad.

3.7 Formación vocacional y articulación pertinente

de enseñanza técnico profesional con

educación superior para el desarrollo local Con la participación de todos los actores locales implicados se debe lograr: Integración con el grupo de formación vocacional

del Ministerio de Educación. Vinculación con los politécnicos agropecuarios en la

selección de estudiantes que aseguren las carreras agropecuarias para su preparación al ingreso en el CUM.

Orientar la formación técnico profesional y la capacitación a los objetivos del desarrollo local del municipio, a través de propuestas curriculares integradoras de nivel superior y medio, orientadas al desarrollo local y propuestas curriculares de capacitación orientadas a oficios para el desarrollo local.

Gestión efectiva para matrícula de carreras determinantes para el desarrollo local.

3.8 Propuesta de indicadores y herramientas para

medir el impacto de la gestión del

conocimiento y la innovación dentro del

programa de desarrollo local Tras comparar las propuestas de un gran grupo de municipios participantes en los proyectos del programa ramal GUCID, a continuación se enumera un grupo de indicadores en que se logró consenso para considerarlos herramientas para evaluar el impacto de la labor del CUM en función del desarrollo local.

Grupo 1: Indicadores de funcionamiento interno del CUM:

Mejora de la estructura de categorías docentes de los claustros.

Plan de superación personalizado de todos los trabajadores del CUM.

Mejora en indicadores de control al PDE e indicadores docentes en pregrado y postgrado.

Está actualizada la demanda de profesionales y de superación por perfil.

Participación en la planeación estratégica del consejo de la administración municipal.

Capacitación directa a productores, cuadros y profesionales en todas las formas productivas.

Creación del grupo de desarrollo local sede central- CUM-Gobierno-CITMA-PDHL.

Renovadas las líneas de investigación de las carreras para el DESARROLLO LOCAL.

Impacto en la producción de alimentos por el acompañamiento de proyectos financiados por el IMDL.

Integradas y coordinadas las acciones de gestión del conocimiento e innovación entre instituciones y sectores que tributan al programa de la IMDL.

Se implementa el sistema de información gerencial y de informatización.

Grupo 2: Indicadores de funcionamiento del CUM hacia el desarrollo local municipal:

Uso de sistemas información geográfica para planificación local y entrega de tierras.

Fortalecimiento de la gestión económica de empresas y organismos del territorio.

Impacto sobre los volúmenes y la eficiencia de la producción.

Impactos sobre el desarrollo Infraestructural. Impactos sobre el empleo y la productividad del

trabajo. Impactos medioambientales. Impactos sobre el nivel de vida de la población y de

grupos vulnerables. Impactos sobre el desarrollo científico tecnológico y

del capital humano. Nuevas prácticas de manejo del recurso agua

introducidas por los productores. Se realizan acciones de conservación y

mejoramiento de suelo en las áreas seleccionadas. Identificadas las áreas y aplicados los paquetes

tecnológicos apropiadas para las producciones de arroz, frijol y humus de lombriz en los consejos populares, empresas y cooperativas seleccionadas.

Page 49: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

49

Incremento de las áreas boscosas del municipio. Recuperación de la cuenca de los ríos.

Disminución de los índices de degradación de los suelos por la aplicación de tecnologías de preparación de suelos conservacionistas, manejo adecuado y la mayor cobertura de los suelos.

Mejoramiento y conservación de la diversidad biológica de cultivos de importancia económica a través de la introducción de nueva variedades de fríjol, maíz, boniato, yuca, tomate y soya.

Reducción del nivel de delincuencia y la reinserción del 100% de los ex reclusos en las comunidades.

4. CONCLUSIONES La educación superior debe actuar en el municipio

como gestor de conocimiento e innovación. Se debe minimizar las amenazas y potenciar las

oportunidades que se presenten en el municipio para cumplir su función, a partir de las transformaciones en la educación superior con calidad, eficiencia y racionalidad.

Perder la integración pertinente de las funciones sustantivas con el desarrollo del territorio debido a la disminución acelerada de la formación profesional en el CUM, afecta el desarrollo local.

5. AGRADECIMIENTOS El autor reconoce las contribuciones de Israel Alonso Díaz, Bárbaro Cala Cristián y Mabel Claro González a la versión original de este documento. Agradece también a los organizadores del programa ramal GUCID del Ministerio de Educación Superior Dr. Jorge Nuñez Jover,

Dra. Aurora Fernández, MSc. José Lázaro Hernández, Lic. Roberto Garcés y Dr. José Luís García Cuevas por la formación lograda con su apoyo dentro de GUCID en la fijación de los criterios teóricos sobre este tema.

6. REFERENCIAS [1] J. Núñez; L. Montalvo & I. Pérez. “La gestión del

Conocimiento, la Ciencia, la Tecnología y la Innovación en la Nueva Universidad: una aproximación conceptual”. Revista Pedagogía Universitaria, Vol. XI, No. 2, pp. 1-14, 2006.

[2] A. Lage. Intervención en el Taller Nacional sobre Gestión del Conocimiento en la Nueva Universidad. 27 Junio - 1 de Julio. La Habana, Cuba. 2005.

[3] K. Cloke & J. Goldsmith. “El fin del management y el surgimiento de la democracia organizacional: Guía práctica para el puesto de trabajo del futuro”. John Wiley & Sons, 2002.

[4] P. G. Ronda. “Modelo de dirección estratégica para organizaciones de seguridad y protección en el contexto económico cubano”. PhD. Tesis, CETDIR, La Habana, Cuba. 2002.

[5] Ministerio de Educación Superior. “La Universidad que queremos”. Oficina del Viceministro Primero, La Habana, Cuba. 2004.

[6] P. Horruitinier. “La Universidad Cubana: el modelo de formación”. Ed. Félix Varela, 2008.

[7] J. L. García. “CUM: Gestores de Conocimiento y la Innovación. Amenazas y Oportunidades a partir de la Calidad y Pertinencia”. Primer Taller de Segunda Etapa del PR GUCID, 2010.

[8] A. Rubio. “Sobre la seguridad alimentaria”. Primer Taller de Segunda Etapa del PR GUCID, 2010.

Page 50: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

50

MINERÍA DE DATOS APLICADA EN DETECCIÓN DE INTRUSOS

Diego Vallejo P. Bancolombia. Medellín, Colombia

[email protected]

Germán Tenelanda V. HLB Fast & ABS Auditores. Medellín, Colombia

[email protected]

(Tipo de Artículo: Reflexión. Recibido el 25/11/2011. Aprobado el 25/04/2012)

RESUMEN

Con base a los fundamentos y técnicas de la minería de datos se pueden diseñar y elaborar modelos que permiten encontrar comportamientos clandestinos de fácil detección a simple vista como lo es la información no evidente -desconocida a priori y potencialmente útil- en referencia a hechos determinados. En particular la utilidad de la minería de datos en esta área radica en una serie de técnicas, algoritmos y métodos que imitan la característica humana del aprendizaje: ser capaz de extraer nuevos conocimientos a partir de las experiencias. La minería de datos posee características como: análisis de grandes volúmenes de información, generación de comportamientos que no son fácilmente perceptibles, depuración de datos para toma de decisiones. Estas características pueden ser de vital importancia para ser aplicadas en la seguridad de la información a través de la detección de intrusos. En la actualidad la seguridad de la información es uno de los grandes retos que tiene el mundo, y en especial, la detección de anomalías en los registros de acceso de los diferentes sistemas de información. Con esta aplicabilidad resulta un método básico y muy eficiente de poder prevenir intrusiones. Se centra el campo de en la detección de intrusos al nutrir el proceso de seguimiento de los acontecimientos que ocurren en la red informática, seguido del análisis de los mismos; con el fin de detectar los factores que ponen en peligro la confidencialidad, integridad, disponibilidad y no repudio de los datos. En el presente trabajo se pretende mostrar el aporte a la seguridad de la información de la minería de datos en el contexto de la detección de intrusos. Palabras clave Ataques, ciber-terrorismo, datos, denegación de servicios, fuga de datos, intrusiones, minería de datos, modelo, modelado,

predicción, vulnerabilidades.

DATA MINING APPLIED FOR INTRUSION DETECTION

ABSTRACT

Based on the fundamentals and techniques of data mining can design and develop models to find illegal behavior easy to detect with the naked eye as it is not obvious information-priori unknown and potentially useful, in reference to particular facts. In particular, the usefulness of data mining in this area lies in a range of techniques, algorithms and methods that mimic the human characteristic of learning: ability to extract new knowledge from experience. Data mining has features such as analysis of large volumes of information, generation of behaviors that are not easily discernible, treatment of data for decision making. These features can be of vital importance to be applied in information security through intrusion detection. At present the information security is one of the great challenges facing the world, and especially the detection of anomalies in the access logs of different information systems. With this basic method applied is very efficient and able to prevent intrusions. It focuses in the field of intrusion detection to nurture the process of monitoring the events occurring in the network, followed by analysis of the same, with a view to identifying the factors that threaten the confidentiality, integrity, availability and non-repudiation of data. In the present work aims to show the contribution to the information security of data mining in the context of intrusion detection. Keywords Attacks, cyberterrorism, data, data mining, denial of service, intrusions, vulnerabilities, leakage, model, modeling, prediction.

FOUILLE DE DONNEES APPLIQUE DANS DETECTION DES INTRUS RÉSUMÉ D’après les fondations et techniques de la fouille de données on peut se concevoir et réaliser des modèles qui permettent de trouver des conduites clandestines faciles de trouver à première vue comme l’information que n’est pas évident –inconnu a priori et qui est potentiellement utile- par rapport à des faits spécifiques. En particulier l’utilité de la fouille de données dans ce domaine réside dans un ensemble de techniques, algorithmes et méthodes qui imitent la caractéristique humaine de l’apprentissage : être capable d’extraire des nouvelles connaissances à partir des expériences. La fouille de données a des caractéristiques comme : l’analyse des grandes volumes d’information, la création des conduites qui ne sont pas percevables facilement, épuration des donnes pour la prise de décisions. Ces caractéristiques peuvent être très importants pour leur appliquer dans la sécurité de l’information à travers de la détection des intrus. Actuellement la sécurité de l’information est un des grands défis dans le monde entier, et particulièrement, la détection d’anomalies dans les registres d’accès des différents systèmes d’information. Avec cette applicabilité on a une méthode de base et très efficace pour prévenir des intrusions. On est centré sur le domaine de la détection des intrus à partir d’alimenter le processus de suivi des événements qui passent dans le réseau informatique, aussi avec l’analyse d’eux ; avec l’intention de détecter les facteurs qui mettent en danger la confidentialité, l’intégrité, la disponibilité et la non répudiation des données. Dans ce travail on prétendre de montrer l’apport à la sécurité de l’information de la fouille de données sur le contexte de la détection des intrus. Mots-clés Attaques, cyber-terrorisme, données, dénégation de services, fuite de données, intrusions, fouille de données, modèle, modelage, prédiction, vulnérabilités.

D. Vallejo P. & G. Tenelanda V. “Minería de datos aplicada en detección de intrusos”.

Ing. USBMed, Vol. 3, No. 1, pp. 50-61. ISSN: 2027-5846. Enero-Junio, 2012.

Page 51: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

51

1. INTRODUCCIÓN Actualmente, los datos son el activo más importante

para cualquier persona o empresa y por lo tanto se

deben proteger porque son vulnerables en el ambiente

de las redes locales y en internet. Es posible que

existan individuos o software malicioso (malware) que

intenten llegar a esos datos valiéndose de distintos

medios y generar consecuencias indeseables como

imprevisibles. Los vándalos informáticos aprovechan

las vulnerabilidades y atacan a los sistemas

computarizados, el control de flujo de navegación en la

red y el intercambio de correo, entre otros.

Muchas de estas batallas de bits pasan

desapercibidas, no se percibe el ataque, no se es

consciente de tener software malicioso latente en el

computador o que sea un zombi manipulado por

alguien en cualquier lugar del mundo. Todo esto puede

pasar desapercibido, por lo tanto, es necesario

detectar las anomalías que se presenten en los

registros de acceso, lo cual es posible mediante

técnicas de detección de intrusos, analizando aquellos

accesos que pongan en peligro la confidencialidad,

integridad, disponibilidad y no repudio de los datos.

Al registrar los datos del acceso a los sistemas y

almacenarlos para posterior análisis, se crea gran

volumen de datos que, a simple vista, no son fáciles de

analizar y de correlacionar entre sí. En este trabajo se

utiliza la minería de datos para buscar información no

trivial que se encuentre oculta o dispersa en ellos, es

decir, se exploran los datos para descubrir la

interconexión e interrelación y poder obtener la

información oculta [1-3].

La herramienta que se utiliza para la minería de datos

es IBM SPSS Modeler [4]; una aplicación que permite

elaborar modelos predictivos de forma rápida e intuitiva

sin necesidad de programación y que descubre

patrones y tendencias en datos estructurados o no

estructurados. Los datos con los que se trabaja se

toman de los utilizados en The Third International

Knowledge Discovery and Data Mining Tools

Competition [5] y fueron preparados y dirigidos por los

laboratorios de MIT Lincoln. Esta base de datos

contiene un conjunto estándar que incluye una amplia

variedad de intrusiones simuladas en un entorno de

red militar de la fuerza aérea de Norteamérica y son la

recopilación de siete semanas de tráfico TCP de red.

De este análisis se espera descubrir la utilidad de la

minería de datos en la exploración, a fin de encontrar y

predecir ataques que no son detectados por antivirus,

cortafuegos o sistemas de detección de intrusos.

2. DESCRIPCIÓN DE LA PROBLEMÁTICA 2.1 Causas del Problema Las redes de cómputo locales unidas a la Internet han

facilitado la comunicación de las personas y empresas,

pero a la vez ponen en riesgo el activo más importante:

los datos. Esta facilidad de intercambiar información

multiplica la capacidad de los ataques y promueve a

usuarios maliciosos y crackers a buscar objetivos

vulnerables, como las aplicaciones no actualizadas —

sistemas operativos, bases de datos—, sistemas

infectados con virus a través de correos electrónicos,

navegación por páginas web, redes de datos

empresariales, descargas de datos, ejecución de

servicios inseguros o puertos abiertos. Por lo tanto, es

necesario crear “alarmas” que ayuden a notificar a los

administradores y jefes de seguridad de la información

a fin de responder oportunamente a estas amenazas.

Esas alarmas son llamadas sistemas de detección de

intrusos.

2.2 Síntomas y signos Los ataques son todas las acciones que violan el

sistema de seguridad computacional, afectando la

confidencialidad, integridad, disponibilidad o no repudio

y pueden presentar los siguientes signos verificables:

(a) interrupción, el recurso se vuelve no disponible, (b)

intercepción, “alguien” no autorizado consigue acceso

a un recurso y (c) modificación, además de la

intercepción es capaz de manipular los datos. Todos

estos signos se podrían manifestar con lentitud y

desaparecer archivos y datos o hacer que los

periféricos funcionen incorrectamente.

Sin la utilización de herramientas especiales se pueden

presentar otros signos no identificables u ocultos, como

escanear puertos, buscar puertos abiertos y tomar los

de utilidad, ataques de autenticación, el atacante

suplanta a una persona que tiene autorización;

explotación de errores, los desarrollos

computacionales presentan fallas o agujeros de

seguridad, ataques de denegación de servicios,

consisten en saturar un servidor con múltiples

solicitudes hasta dejarlo fuera de servicio.

2.3 Consecuencias Las consecuencias de los ataques informáticos se

podrían clasificar en:

Datos dañados: la información que no contenía

daños pasa a tenerlos.

Denegación de servicios —Denial of Service-DoS—

servicios que deberían estar disponibles no lo

están.

Fuga de datos —Leakage—: los datos llegan a

destinos a los que no deberían llegar.

Sabotaje informático: daños realizados por

empleados descontentos.

Pornográfica: una fuente económica que mueve

mucho dinero.

Ciber-terrorismo: organizaciones criminales la

utilizan con fines terroristas.

En todo el mundo los periódicos y los noticieros dan

cuenta de las consecuencias: Republica Dominicana,

Page 52: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

52

el grupo Anonymus amenaza con atacar páginas del

Gobierno; Ecuador, Anonymus reveló datos de 45 mil

policías; México, el narcotráfico secuestra a hacker,

con el objeto de clonar tarjetas de crédito y robar datos

personales de internet; Brasil, ciber-ataques paralizan

sitios del Gobierno brasileño que fueron atacados por

tercer día consecutivo por piratas cibernéticos; Reino

Unido, miembros de un grupo denominado

TeaMp0isoN filtró información privada del ex primer

ministro británico Tony Blair así como varios números

de teléfono y direcciones personales de responsables

políticos del país; España, el denominado grupo

Anonymous bloqueo las páginas oficiales de cuerpo

nacional de policía, o el servicio público de empleo

Estatal; Colombia, un ataque informático que colapsó

la página web de la Registraduría donde se iban a

publicar los resultados de las legislativas de marzo de

2010, al parecer tuvo como origen direcciones IP del

Ministerio de Defensa, la Policía y el Departamento

Administrativo de Seguridad.

2.4 Perspectivas de solución Partiendo de una base de datos con captura de

conexiones realizada para el The Third International

Knowledge Discovery And Data Mining Tools

Competition [5] y basados en la metodología CRISP-

DM [6] aplicada en minería de datos, se pretende

mostrar mediante diferentes técnicas de modelado,

basadas en cálculos estadísticos, cómo la aplicación

de esta técnica sirve para analizar y procesar grandes

volúmenes de datos de una manera predictiva, con

miras a entregar resultados de manera oportuna,

eficiente, eficaz y confiable y entregando información

que ayude en la toma de decisiones en la prevención

de posibles intrusiones.

3. METODOLOGÍA Y HERRAMIENTAS Metodología CRoss-Industry Standard Process for

Data Mining CRISP-DM [6]. Metodología lanzada en el

año 1996, por la comisión Europea (Figura 1), es

abierta y sin un propietario específico. Puede ser

desarrollada sobre cualquier herramienta de minería de

datos. Es un proceso viable y repetible que permite

plasmar las experiencias de análisis para luego

proceder a replicarlas. Ayuda en la planeación y

ejecución de modelos de minería de datos.

Fig. 1: Metodología CRISP-DM

3.1 Procedimiento

1. Análisis o entendimiento del negocio. Incluye la

comprensión de los objetivos y requerimientos del

proyecto desde una perspectiva empresarial, con el

fin de convertirlos en objetivos técnicos y en una

planificación.

2. Análisis o entendimiento de los datos.

Comprende la recolección inicial de datos, en orden

a que sea posible establecer un primer contacto con

el problema, identificando la calidad de los datos y

estableciendo las relaciones más evidentes que

permitan establecer las primeras hipótesis.

3. Preparación de los datos. incluye las tareas

generales de selección de datos a los que se va a

aplicar la técnica de modelado (variables y

muestras), limpieza de los datos, generación de

variables adicionales, integración de diferentes

orígenes de datos y cambios de formato.

4. Modelado. se seleccionan las técnicas de

modelado más apropiadas para el proyecto de

minería de datos específico.

5. Evaluación de resultados. Se evalúa el modelo,

no desde el punto de vista de los datos, sino del

cumplimiento de los criterios de éxito del problema.

6. Explotación o despliegue de resultados.

Normalmente los proyectos de minería de datos no

terminan en la implantación del modelo sino que se

debe documentar y presentar los resultados de

manera comprensible en orden a lograr un

incremento del conocimiento. Además, en la fase de

explotación se debe asegurar el mantenimiento de

la aplicación y la posible difusión de los resultados.

3.2 Comparación de herramientas Con el paso del tiempo han surgido herramientas para

la explotación de datos, con el fin de abarcar un

mercado que ha tenido gran auge en los últimos años y

brindando soluciones sobre las fuertes demandas de

las empresas. Para la aplicación de minería de datos

de acceso gratuito o licencia libre se puede mencionar:

MiningMart, Orange, TariyKDD, ARMiner y WEKA; por

el lado comercial: Cart, SAS Enterprise Miner, Tiberius,

Kxen, IBM SPSS Modeler, que es la herramienta de

minería que se aplica para realizar este artículo. En la

Figura 2 se muestra un comparativo entre algunas de

estas herramientas.

3.3 Herramientas seleccionadas El software de minería de datos utilizado es IBM SPSS

Modeler [4], que es un área de trabajo de minería de

datos que permite elaborar modelos predictivos de

forma rápida e intuitiva, sin necesidad de

programación. Descubre patrones y tendencias en

datos estructurados o no estructurados mediante una

Page 53: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

53

interfaz visual soportada por análisis avanzado. Modela

los resultados y reconoce factores que influyen en

ellos. Así, se puede aprovechar las oportunidades y

atenuar los riesgos. Para éste estudio se utilizó la

versión 14.2.

Fig. 2: Comparación de herramientas de Minería de Datos

4. TÉCNICA DE MODELADO PARA MINERÍA DE

DATOS Las técnicas de modelado se basan en el uso de

algoritmos. Existen tres clases principales de técnicas

de modelado y la herramienta utilizada, IBM SPSS

Modeler, ofrece varios ejemplos de cada uno:

clasificación, asociación, segmentación.

4.1 Los modelos de clasificación Utilizan el valor de uno o más campos de entrada para

predecir el valor de uno o más resultados o campos de

destino. Algunos ejemplos de estas técnicas son:

Modelo de árbol de clasificación y regresión C&R:

genera un árbol de decisión que permite pronosticar

o clasificar observaciones futuras. El método utiliza

la partición reiterada para dividir los registros de

prueba en segmentos minimizando las impurezas

en cada paso, un nodo se considera “puro” si el

100% de los casos del nodo corresponden a una

categoría específica del campo objetivo. Los

campos de entrada y objetivo pueden ser continuos

(numéricos) o categóricos (nominal, ordinal o

marca). Todas las divisiones son binarias (sólo crea

dos subgrupos).

Modelo QUEST: proporciona un método de

clasificación binario para generar árboles de

decisión; está diseñado para reducir el tiempo de

procesamiento necesario para realizar los análisis

de C&RT y reducir la tendencia de los métodos de

clasificación de árboles para favorecer a las

entradas que permitan realizar más divisiones. Los

campos de entrada pueden ser continuos

(numéricos), sin embargo el campo objetivo debe

ser categórico. Todas las divisiones son binarias.

El modelo CHAID: genera árboles de decisión

utilizando estadísticos de chi-cuadrado para

identificar las divisiones óptimas. A diferencia de los

nodos C&RT y QUEST, CHAID puede generar

árboles no binarios, lo que significa que algunas

divisiones generarán más de dos ramas. Los

campos de entrada y objetivo pueden ser continuos

(numéricos) o categóricos. CHAID exhaustivo es

una modificación de CHAID que examina con mayor

precisión todas las divisiones posibles.

El modelo C5.0: genera un árbol de decisión o un

conjunto de reglas. El modelo divide la muestra

basándose en el campo que ofrece la máxima

ganancia de información en cada nivel. El campo

objetivo debe ser categórico. Se permiten varias

divisiones en más de dos subgrupos.

Los modelos lineales predicen un destino continuo

tomando como base las relaciones lineales entre el

destino y uno o más predictores.

La regresión lineal: es una técnica estadística

común utilizada para resumir datos y realizar

pronósticos ajustando una superficie o línea recta

que minimice las discrepancias existentes entre los

valores de salida reales y los pronosticados.

La regresión logística: es una técnica estadística

para clasificar los registros en función los valores de

los campos de entrada. Es análoga a la regresión

lineal pero toma un campo objetivo categórico en

lugar de uno numérico.

El modelo Regresión de Cox: permite crear un

modelo de supervivencia para datos de tiempo

hasta el evento en presencia de registros

censurados. El modelo produce una función de

supervivencia que pronostica la probabilidad de que

el evento de interés se haya producido en el

momento dado (t) para valores determinados de las

variables de entrada.

El modelo Red bayesiana: permite crear un modelo

de probabilidad combinando pruebas observadas y

registradas con conocimiento del mundo real para

establecer la probabilidad de instancias. El nodo se

centra en las redes Naïve Bayes aumentado a árbol

(TAN) y de cadena de Markov que se utilizan

principalmente para la clasificación.

4.2 Modelos de Asociación Estos modelos encuentran patrones en los datos en los

que una o más entidades, como eventos, compras o

atributos, se asocian con una o más entidades. Los

modelos construyen conjuntos de reglas que definen

estas relaciones. Aquí los campos de los datos pueden

funcionar como entradas y destinos. Podría encontrar

estas asociaciones manualmente, pero los algoritmos

de reglas de asociaciones lo hacen mucho más rápido,

y pueden explorar patrones más complejos. Los

modelos inducción de reglas generalizado son:

Característica Modeler

SAS

Enterprise

Miner

Tariykdd Weka

Licencia libre No No Si Si

Requiere conocimientos avanzados No No No No

Acceso a SQL Si No Si Si

Multiplataforma No Si Si Si

Requiere bases de datos

especializadasNo --- No No

Métodos de máquinas de soporte

vectorialSi Si No Si

Métodos bayesianos Si --- No Si

Puede combinar modelos Si Si NoSi (no resulta

muy eficiente)

Modelos de clasif icación Si Si Si Si

Implementa arboles de decisión Si Si Si Si

Modelos de regresión Si Si No Si

Clusterin y agrupamiento Si Si No Si

Interfaz amigable Si Si Si Si

Permite visualización de datos Si Si Si Si

Page 54: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

54

Inducción de reglas generalizado GRI: es capaz de

encontrar las reglas de asociación existentes en los

datos. Por ejemplo, los clientes que compran

cuchillas y loción para después del afeitado también

suelen comprar crema de afeitado. GRI extrae

reglas con el mayor nivel de contenido de

información basándose en un índice que tiene en

cuenta tanto la generalidad (soporte) como la

precisión (confianza) de las reglas. GRI puede

gestionar entradas numéricas y categóricas, pero el

objetivo debe ser categórico.

El modelo A priori: extrae un conjunto de reglas de

los datos y destaca aquellas reglas con un mayor

contenido de información. A priori ofrece cinco

métodos diferentes para la selección de reglas y

utiliza un sofisticado esquema de indización para

procesar eficientemente grandes conjuntos de

datos. En los problemas de mucho volumen, A priori

se entrena más rápidamente que GRI, no tiene un

límite arbitrario para el número de reglas que puede

retener y puede gestionar reglas que tengan hasta

32 precondiciones. A priori requiere que todos los

campos de entrada y salida sean categóricos, pero

ofrece un mejor rendimiento ya que está optimizado

para este tipo de datos.

El modelo CARMA: extrae un conjunto de reglas de

los datos sin necesidad de especificar campos de

entrada ni de objetivo. A diferencia de A priori y

GRI, el nodo CARMA ofrece configuraciones de

generación basadas en el soporte de las reglas

(soporte para el antecedente y el consecuente), no

sólo en el soporte de antecedentes. Esto significa

que las reglas generadas se pueden utilizar en una

gama de aplicaciones más amplia, por ejemplo,

para buscar una lista de productos o servicios

(antecedentes) cuyo consecuente es el elemento

que se desea promocionar durante esta temporada

de vacaciones.

El modelo Secuencia: encuentra reglas de

asociación en datos secuenciales o en datos

ordenados en el tiempo. Una secuencia es una lista

de conjuntos de elementos que tiende a producirse

en un orden previsible. Por ejemplo, es probable

que un cliente que compra una cuchilla y una loción

para después del afeitado compre crema para

afeitar la próxima vez que vaya a comprar. El nodo

Secuencia se basa en el algoritmo de reglas de

asociación de CARMA, que utiliza un método de

dos pasos para encontrar las secuencias.

4.3 Modelos de Segmentación Dividen los datos en segmentos o conglomerados de

registros que tienen patrones similares de campos de

entrada. Como sólo se interesan por los campos de

entrada, los modelos de segmentación no contemplan

el concepto de campos de salida o destino. Ejemplos

de modelos de segmentación son:

El modelo K-medias: agrupa conjuntos de datos en

grupos distintos (o conglomerados). El método

define un número fijo de conglomerados a los que

asigna los registros de forma iterativa y ajusta los

centros hasta que no se pueda mejorar el modelo.

En lugar de intentar pronosticar un resultado, los

modelos k-medias utilizan el proceso de aprendizaje

no supervisado para revelar los patrones del

conjunto de campos de entrada.

El modelo Kohonen: genera un tipo de red neuronal

que se puede usar para conglomerar un conjunto de

datos en grupos distintos. Cuando la red se termina

de entrenar, los registros que son similares se

deberían presentar juntos en el mapa de resultados,

mientras que los registros que son diferentes

aparecerían aparte. Puede observar el número de

observaciones capturadas por cada unidad en el

nugget de modelo para identificar unidades fuertes.

Esto le proporcionará una idea del número

apropiado de conglomerados.

El modelo Bietápico: es un método de

conglomerado de dos pasos. El primer paso es

hacer una única pasada por los datos para

comprimir los datos de entrada de la fila en un

conjunto de sub-conglomerados administrable. El

segundo paso utiliza un método de conglomerado

jerárquico para fundir progresivamente los sub-

conglomerados en conglomerados cada vez más

grandes. El bietápico tiene la ventaja de estimar

automáticamente el número óptimo de

conglomerados para los datos de entrenamiento.

Puede tratar tipos de campos mixtos y grandes

conjuntos de datos de manera eficaz.

El modelo Detección de anomalías: identifica casos

extraños, o valores atípicos, que no se ajustan a

patrones de datos “normales”. Con este nodo, es

posible identificar valores atípicos aunque no se

ajusten a ningún patrón previamente conocido o no

se realice una búsqueda exacta.

5. CASO DE ESTUDIO

5.1 Descripción Debido al alto nivel de conectividad de los equipos de

cómputo, hoy tenemos acceso a gran cantidad de

datos e información de diferentes fuentes y desde de

cualquier lugar del mundo. El conocimiento está al

alcance de personas intentado realizar buenas

acciones o intrusos intentando llegar a los datos para

causar daño.

Antes se necesitaban conocimientos profundos de

computadores, de redes de computadores, conexiones

y otros para realizar un ataque de intrusión; hoy en día

a través de consultas en un navegador o a un clic, se

puede obtener información y herramientas que

permiten realizar intrusiones. Entonces, la detección de

intrusos es necesaria porque:

Page 55: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

55

Existen numerosas amenazas.

En la red circula tráfico normal y malicioso.

Es necesario un esquema de monitoreo para

eventos maliciosos en la infraestructura de las

compañías.

Una sola intrusión puede ocasionar un impacto catastrófico.

¿Cómo se detectan las intrusiones? Para este estudio

se toma una base de datos de evaluación de detección

de intrusos que fue utilizada en la Competición

Internacional de Datos KDD de 1999, que incluye una

amplia variedad de intrusiones simuladas en un

entorno militar típico de la Fuerza Aérea de Estados

Unidos y que contiene ataques de intrusión clasificados

en cuatro tipos de ataque:

Denegación de servicios (DoS- Denial of service). El objetivo es tratar de detener el funcionamiento de la red, la máquina o el proceso, de tal forma que un servicio o recurso sea inaccesible a los usuarios legítimos [7].

R2L (Remote to local). Acceso no autorizado desde una máquina remota.

U2R (User to root). Acceso no autorizado mediante escalamiento de privilegios de una cuenta de usuario autorizado hasta llegar a superusuario.

Indagación y exploración (Probing). Este ataque escanea las redes, en busca de vulnerabilidades mediante la recolección de información, tal como, direcciones IP validas, servicios, sistemas operativos y otros.

Esta simulación se centró en la selección y

clasificación de paquetes TCP/IP. Una conexión

TCP/IP es una secuencia de paquetes de datos con un

protocolo definido hacia y desde una dirección IP. Para

este caso los paquetes fueron clasificados como

normales y tipo de ataque detectado. La base de datos

contiene 41 variables independientes en cada registro,

con los cuales se describen diferentes características

de cada conexión y 24 tipos de ataque, con 14 tipos

adicionales en los datos de test [5], como se observa

en las Tablas 1-4.

TABLA 1. Tipos de ataques

Ataque Descripción Tipo

Back Ataque contra el servidor web Apache cuando un cliente pide una URL que contiene muchas barras.

DoS

Land

Envío de TCP/SYN falso con la dirección de la víctima como origen y destino, causando que se responda a sí mismo continuamente.

DoS

Neptune Inundación por envíos de TCP/SYN en uno o más puertos.

DoS

Pod Ping de la muerte: manda muchos paquetes ICMP muy pesados.

DoS

Teardrop Usa el algoritmo de fragmentación de paquetes IP para enviar paquetes corruptos a la víctima.

DoS

Ataque Descripción Tipo

Smurf

El atacante envía un ping, que parece proceder de la víctima, en broadcast a una tercera parte de la red, donde todos los host responderán a la víctima.

DoS

Ftp_write Usuario FTP remoto crea un archivo .rhost y obtiene un login local.

R2L

Guess_passwd Trata de adivinar la contraseña con telnet para la cuenta de visitante

R2L

Imap Desbordamiento remoto del búfer utilizando el puerto imap.

R2L

Multihop

Escenario de varios días donde el atacante primero accede a una máquina que luego usa como trampolín para atacar a otras máquinas.

R2L

Phf Script CGI que permite ejecutar comandos en una máquina con un servidor web mal configurado.

R2L

Spy Analizador de protocolos LAN por la interfaz de red.

R2L

Warezclient Los usuarios descargan software ilegal publicado a través de FTP anónimo por el warezmaster.

R2L

Warezmaster Subida FTP anónima de Warez (copias ilegales de software).

R2L

Buffer_overflow Desbordamiento de la pila del búfer. UR2

Loadmodule Ataque furtivo que reinicia la IFS para un usuario normal y crea un shell root.

UR2

Perl Establece el id de usuario como root en un script de perl y crea un shell de root.

UR2

Rootkit Escenario de varios días donde un usuario instala componentes de un rootkit.

UR2

Ipsweep Sondeo con barrido de puertos o mandando pings a múltiples direcciones host.

Probing

Nmap Escaneo de redes mediante la herramienta nmap.

Probing

Portsweep Barrido de puertos para determinar qué servicios se apoyan en un único host.

Probing

Satan Herramienta de sondeo de redes que busca debilidades conocidas.

Probing

TABLA 2. Atributos básicos de las conexiones TCP

Atributo Descripción Tipo

Duration Longitud (número de segundos) de la conexión.

Continuo

Protocol_type Tipo de protocolo (tcp...) Discreto

Service Tipo de servicio de destino (HTTP, Telnet, SMTP…)

Discreto

Src_bytes Número de bytes de datos de fuente a destino

Continuo

Dst_bytes Número de bytes de datos de destino a la fuente.

Continuo

Flag Estado de la conexión (SF, S1, REJ…)

Discreto

Land 1 si la conexión corresponde mismo host/puerto; 0 de otro modo.

Discreto

Wrong_fragment Número de fragmentos erróneos. Continuo

Urgent Número de paquetes urgentes. Continuo

TABLA 3. Atributos especiales

Atributo Descripción Tipo

Hot Número de indicadores “hot”. Continuo

Num_failed_logins Número de intentos de acceso fallidos.

Continuo

Logged_in 1 si acceso exitoso 0 de otro modo

Discreto

Num_compromised Número de condiciones “sospechosas”.

Continuo

Root_shell 1 si se obtiene superusuario para acceso a root; 0 de otro modo.

Discreto

Page 56: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

56

Su_attempted 1 si se intenta el comando “su root”; 0 de otro modo.

Discreto

Num_root Número de accesos a root. Continuo

Num_file_creations Número de operaciones de creación de ficheros.

Continuo

Num_shells Número de Shell prompts. Continuo

Num_access_files Número de operaciones de control de acceso a ficheros.

Continuo

Num_outbound_cmds Número de comandos de salida en una sesion ftp.

Continuo

Is_hot_login 1 si el login pertenece a la lista “hot”; 0 de otro modo.

Discreto

Is_guest_login 1 si el acceso es un “guest” 'login; 0 de otro modo.

Discreto

TABLA 4. Atributos con ventana de 2 segundos

Atributo Descripción Tipo

Count Número de conexiones a la misma máquina que la conexión actual en los dos últimos segundos

Continuo

Atributos que se refieren a las conexiones de mismo host

Serror_rate Porcentaje de conexiones que tienen errores “SYN”.

Continuo

Rerror_rate Porcentaje de conexiones que tienen errores “REJ”.

Continuo

Same_srv_rate Porcentaje de conexiones con el mismo servicio.

Continuo

Diff_srv_rate Porcentaje de conexiones con diferentes servicios.

Continuo

Srv_count Número de conexiones al mismo servicio que la conexión actual en los dos últimos segundos

Continuo

Atributos que se refieren a las conexiones de mismo servicio

Srv_serror_rate Porcentaje de conexiones que tienen errores “SYN”.

Continuo

Srv_rerror_rate Porcentaje de conexiones que tienen errores “REJ”.

Continuo

Srv_diff_host_rate Porcentaje de conexiones a diferentes hosts.

Continuo

6. RESULTADOS Para el caso de estudio se seleccionó la metodología

CRISP-DM [6] y se desarrollaron las siguientes etapas:

1. Análisis o entendimiento del negocio. Partiendo de los datos de la Base de Datos KDD se pretende predecir la repetición del ataque realizado en un periodo de tiempo dado, a través de definición de reglas creados para nuestro fin.

2. Análisis o entendimiento de los datos. Cuando se introducen los datos en Modeler, la herramienta permite representar diferentes tipos de tablas, información de tipo estadística y gráficas, que relacionan atributos de los datos allí contenidos.

En las Figuras 3 y 4 se observa información que se

puede obtener del nodo Auditar datos: Campo,

Gráfico de muestra, Medida, Mínimo, Máximo,

Media, Desviación Estándar, Asimetría, entre otros,

los cuales sirven para hacer una visualización inicial

de los datos. Se puede observar en este caso que

el número de registros que se tiene en la base de

datos es de 311.029 registros.

Fig. 3: Pantalla de muestra de información suministrada

por el Nodo Auditar Datos

Fig. 4: Pantalla de muestra de información suministrada

por el Nodo Auditar Datos

La Figura 5 muestra los diferentes campos

estadísticos que se pueden obtener para hacer los

diferentes cálculos en los modelos a evaluar.

Fig. 5: Pantalla de muestra de información Estadística

La Figura 6 muestra información tomada desde

“Modeler”, en la que se puede observar la tabla de

entrada de datos, registro por registro de la Base de

Datos de prueba.

Fig. 6: Pantalla de muestra de tabla de información

Page 57: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

57

En la Figura 7, se observa cual es la frecuencia con

la que aparece cada tipo de ataque en los datos de

prueba. Los ataques de denegación de servicio

(DoS), aparecen casi todos en muchas ocasiones

(„back‟ 1.098 veces, „pod‟ 87 veces, „teardrop‟ 12

veces o „land‟ con sólo 9 apariciones), destacando

los que se basan en inundación que sobresalen

ampliamente del resto, con las 58.001 apariciones

de „neptune‟ y „smurf‟ con 164.091 conexiones,

siendo el ataque más frecuente de todos. Los

ataques de tipo R2L y U2R están contenidos dentro

de un paquete de datos y suelen consistir en una

única conexión; se observa que casi todos o no

aparecen (como „ftp_write‟, „multihop‟, „perl‟,

„buffer_overflow‟, „rootkit‟ y „spy‟) o constan de una

única aparición (como „guess_passwd‟, „phf‟, „imap‟,

„loadmodule‟, y „warezmaster‟).

Fig. 7: Frecuencia de aparición de cada ataque

Aquellos ataques que no aparecen en la muestra

inicial de datos los modelos de minería de datos no

pueden predecirlos, dado que no se tienen

características mínimas para que el modelo los

procese.

En la Tabla 5, se puede apreciar que los ataques de

sondeo (probing) tienen varias ocurrencias cada

uno: „satan‟ (1.633), „portsweep‟ (354), „ipsweep‟

(306), „nmap‟ (84). También, se puede apreciar que

las conexiones normales son muchas (60.593), pero

no llegan a ser las más frecuentes, ganándole en

número los ataques de inundación (Smurf 164.091).

TABLA 5. Número de Ataques por Tipo

Ataque Cantidad

Smurf 164.091

Normal 60.593

Neptune 58.001 Snmpgetattack 7.741

Mailbomb 5.000

Guess_passwd 4.367

Snmpguess 2.406 Satan 1.633

Warezmaster 1.602

Back 1.098

Mscan 1.053 Otros ataques: apache2, processtable, saint, portsweep, ipsweep, httptunnel

3.444

En la Figura 8 y en la Tabla 7 se puede ver que el tipo

de ataque depende mucho del tipo de protocolo que se

use, como todos los ataques „smurf‟ usan „icmp‟, los

„teardrop‟ „udp„ y los de tipo „back‟, „tcp‟, por lo que este

atributo es muy importante para aumentar la calidad de

la predicción del modelo.

Fig. 8: Gráfica protocol_type - class

TABLA 7. Tipos de ataque

Protocolo Ataque Registros

Icmp Smurf. 164.091

Icmp Normal. 378

Icmp Ipsweep. 306

Icmp Saint. 102 Icmp Pod. 87

Icmp Snmpguess. 3

Icmp Satan. 1

Icmp Multihop. 1 Udp Normal. 16.097

Udp Snmpgetattack. 7.741

Udp Snmpguess. 2.403

Udp Satan. 413 Udp Saint. 27

Udp Teardrop. 12

Udp Multihop. 8 Udp Udpstorm. 2

Tcp Neptune. 58.001

Tcp Normal. 44.118

Tcp Mailbomb. 5.000 Tcp Guess_passwd. 4.367

Tcp Warezmaster. 1.602

Tcp Satan. 1.219

Tcp Back. 1.098 Tcp Mscan. 1.053

Tcp Apache2. 794

Tcp Processtable. 759

Tcp Saint. 607 Tcp Portsweep. 354

Tcp Httptunnel. 158

Tcp Nmap. 84

Tcp Buffer_overflow. 22 Tcp Sendmail. 17

Tcp Named. 17

Tcp Ps. 16

Tcp Xterm. 13 Tcp Rootkit. 13

Tcp Multihop, xlock, land, xsnoop, ftp_write, perl, loadmodule, phf, worm, sqlattack, imap.

45

En la Figura 9 se observa que la mayoría de los

ataques „teardrop‟ tienen un número de fragmentos

erróneos (campo Wrong_fragment) superior al resto

de ataques.

Page 58: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

58

Fig. 9: Gráfica wrong_fragment - class

Con los atributos especiales también se ve cómo se

distribuyen los datos. Todos los ataques

„warezclient‟ y „back‟ tienen un „logged_in‟ exitoso

(Figura 10).

Fig. 10: Gráfica logged_in - class

En la Figura 11, respecto a los atributos basados en

tiempo de “mismo host'”, se puede observar que los

ataques de tipo „smurf‟ y „satan‟ presentan un

número elevado de conexiones a la misma máquina

que una conexión actual en los dos últimos

segundos. Esto sirve para verificar qué algunos

ataques de Probing, como „satan‟, escanean los

puertos con un intervalo de tiempo mucho mayor de

dos segundos. Así también se puede afirmar que

los atributos de “mismo host” van a ser de gran

utilidad para detectar este tipo de ataques.

Fig. 11: Gráfica count - class

De esta misma manera, se pueden hacer con

muchos de los atributos restantes visualizaciones,

donde algunos aportan mucha información

simplemente mirando las gráficas y con otros no

será tan fácil de ver simple vista. Así se intuye cómo

puede influir un atributo en la clasificación que hará

el modelo de predicción resultante, y decidir si

merece la pena su utilización respecto al costo

computacional que suponga incluirlo.

3. Preparación de los datos. En términos generales

durante esta etapa o fase, como su nombre lo indican, se preparan los datos que van a ser trabajados, para ello en algunos casos es necesario crear variables nuevas, cambiar los valores de continuos a nominales, o a tipo marca, etc. Este tipo de operaciones con los campos y/o con los registros son los que nos permiten obtener la muestra óptima para continuar con la siguiente etapa.

4. Modelado. En esta etapa se seleccionan las técnicas de modelado más apropiadas para el proyecto de minería de datos (Figura 12).

Fig. 12: Ambiente de la Aplicación IBM SPSS Modeler

para desarrollo de Modelos de Minería de Datos

Page 59: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

59

Algunos de los modelos evaluados en este caso

son (Figura 13): El modelo CHAID (Figuras 14-16),

el C 5.0 (Figuras 17-19) y el modelo árbol C&RT

(Figuras 20-22).

Fig. 13: Modelos evaluados

Modelo CHAID. A continuación mostramos

gráficamente algunos de los análisis que la

herramienta permite generar.

Fig. 14: Modelo CHAID. Importancia de un predictor

Fig. 15. Modelo CHAID. Visor de reglas generadas

Fig. 16: Modelo CHAID. Resumen

Fig. 17: Modelo C 5.0. Importancia de un predictor

Fig. 18: Modelo C 5.0. Visor de reglas generadas

Fig. 19: Modelo C 5.0. Resumen

Fig. 20: Modelo C&RT. Importancia de un predictor

Fig. 21: Modelo C&RT. Visor de reglas generadas

Fig. 22: Modelo C&RT. Resumen

Page 60: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

60

De la información generada por cada uno de los

modelos es pueden comenzar a diseñar reglas y

patrones que indican cuál es el modelo que más

puede adecuarse a la necesidad que se tiene.

5. Evaluación de resultados. Luego de evaluar cada uno de los modelos según la necesidad esperada, se procede a revisar los resultados entregados por el modelo, es de esta manera como se obtiene un mejor acercamiento a los datos entregados. En nuestro caso el modelo que mejor comportamiento tiene en evaluar la variable “Ataque” vs las otras variables de entrada fue el modelo CHAID.

6. Explotación o despliegue de resultados. Se puede pasar a realizar el despliegue de los resultados, en el cual se detallan cada uno de los puntos que el modelo ayuda a predecir. En la Figura 23 se observa un detalle de la información que suministra Modeler respecto al modelo utilizado.

Campos Objetivo Ataque Entradas class duration protocol_type service src_bytes dst_bytes wrong_fragment hot logged_in flag Configuración de creación Utilizar los datos en particiones: falso Resumen de entrenamiento Ruta: D:\divallejo\Especializacion Seguridad Informatica\Proyecto de grado\CasoEstudio.str Usuario: dvallejo Fecha de creación: 27/10/11 03:58 PM Aplicación: PASW® Modeler 14 Modelos planificados: 4 Modelos finalizados: 4 Modelos descartados según los resultados finales: 1 Modelos que no se han podido generar o puntuar: 0 Modelos no finalizados debidos a una interrupción: 0 Tiempo transcurrido para la generación del modelo: 0 horas, 3 minutos, 11 segundos Detalles del modelo C5 1 Análisis Profundidad del árbol: 1 Campos Objetivo Ataque Entradas class Configuración de creación Utilizar los datos en particiones: falso Calcular importancia de predictor: falso Calcular puntuaciones brutas de propensión: falso Calcular puntuaciones de propensión ajustada: falso Utilizar ponderación: falso Tipo de resultados: Árbol de decisión Agrupar simbólicos: falso Utilizar aumento: falso Efectuar validación cruzada: falso Modo: Simple Favorecer: Precisión Ruido esperado (%): 0 Utilizar costes de clasificación errónea: falso

Resumen de entrenamiento Algoritmo: C5 Tipo de modelo: Clasificación Ruta: D:\divallejo\Especializacion Seguridad Informatica/ Proyecto de grado\CasoEstudio.str Usuario: dvallejo Fecha de creación: 27/10/11 03:55 PM Aplicación: PASW® Modeler 14 Tiempo transcurrido para la generación del modelo: 0 horas, 2 minutos, 55 segundos Árbol C&R 1 Análisis Profundidad del árbol: 3 Campos Objetivo Ataque Entradas duration protocol_type service src_bytes dst_bytes wrong_fragment hot logged_in class Configuración de creación Utilizar los datos en particiones: falso Calcular importancia de predictor: verdadero Calcular puntuaciones brutas de propensión: falso Calcular puntuaciones de propensión ajustada: falso Utilizar frecuencia: falso Utilizar ponderación: falso Niveles por debajo del raíz: 5 Modo: Experto Número máximo de sustitutos: 5 Cambio mínimo en la impureza: 0,0 Medida de impureza para objetivos categóricos: Gini Criterios de parada: Utilizar porcentaje Número mínimo de registros en rama parental (%): 2 Número mínimo de registros en rama filial (%): 1 Podar árbol: verdadero Utilizar regla de error típico: falso Probabilidades previas: Basadas en datos de entrena. Corregir previas por costes de clasificación errónea: falso Utilizar costes de clasificación errónea: falso Resumen de entrenamiento Algoritmo: Árbol C&R Tipo de modelo: Clasificación Ruta: D:\divallejo\Especializacion Seguridad Informatica/ Proyecto de grado\CasoEstudio.str Usuario: dvallejo Fecha de creación: 27/10/11 03:55 PM Aplicación: PASW® Modeler 14 Tiempo transcurrido para la generación del modelo: 0 horas, 2 minutos, 55 segundos CHAID 1 Análisis Profundidad del árbol: 2 Campos Objetivo Ataque Entradas flag src_bytes dst_bytes class Configuración de creación Utilizar los datos en particiones: falso Calcular importancia de predictor: verdadero Calcular puntuaciones brutas de propensión: falso Calcular puntuaciones de propensión ajustada: falso Continuar entrenando modelo existente: falso Utilizar frecuencia: falso Utilizar ponderación: falso Niveles por debajo del raíz: 5 Alfa para división: 0,05 Alfa para fusión: 0,05 Épsilon para convergencia: 0,001

Page 61: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

61

Número máximo de iteraciones para la convergencia: 100 Utilizar corrección de Bonferroni: verdadero Permitir división de categorías fusionadas: falso Método de chi-cuadrado: Pearson Criterios de parada: Utilizar porcentaje Número mínimo de registros en rama parental (%): 2 Número mínimo de registros en rama filial (%): 1 Utilizar costes de clasificación errónea: falso Resumen de entrenamiento Algoritmo: CHAID Tipo de modelo: Clasificación Ruta: D:\divallejo\Especializacion Seguridad Informatica\Proyecto de grado\CasoEstudio.str Usuario: dvallejo Fecha de creación: 27/10/11 03:55 PM Aplicación: PASW® Modeler 14 Tiempo transcurrido para la generación del modelo: 0 horas, 2 minutos, 55 segundos

Fig. 23: Resultados entregados por IBM PASS MODELER

7. CONCLUSIONES La minería de datos es el proceso de ahondar en los

datos para detectar patrones y relaciones ocultos;

emplea una orientación empresarial clara y potentes

tecnologías analíticas para explorar rápida y

concienzudamente montañas de datos y extraer de

ellas la información útil y aplicable que se necesita.

Es precisamente por lo expresado anteriormente que

pudimos determinar que la minería de datos basada en

una metodología adecuada, puede ser muy útil en el

proceso de exploración de datos, toda vez que

mediante tecnologías analíticas y procesos

estadísticos nos permitió generar reglas a partir de

datos históricos de capturas, para generar reglas y

patrones que permiten predecir intrusiones.

A la fecha se están realizando investigaciones que

permiten la detección de intrusos en tiempo real

utilizando técnicas de minería de datos y análisis

estadísticos [8, 9].

8. AGRADECIMIENTOS A Sergio Gutiérrez Bonnet, Presidente de la Empresa

Informese IBM SPSS Modeler. A Dougglas Hurtado

Carmona, M.Sc. Ingeniería de Sistemas y

Computación, asesor de nuestro artículo. A Francisco

Antonio Ruiz Escobar, Director Dirección de

Cumplimiento, Bancolombia.

9. REFERENCIAS [1] M. S. Shin & K. J. Jeong. “Alert Correlation Analysis in

Intrusion Detection”. Proceedings of the Second international conference on Advanced Data Mining and Applications ADMA'06, pp. 1049-1056, 2006.

[2] M. Xue & C. Zhu. “Applied Research on Data Mining Algorithm in Network Intrusion Detection”. Proceedings International Joint Conference on Artificial Intelligence

JCAI '09, pp. 275-277, 2009. [3] M. Castellano & G. B. de Grecis. “Applying a Flexible

Mining Architecture to Intrusion Detection”. Proceedings Second International Conference on Availability, Reliability and Security, ARES 2007, pp. 845-852, 2007.

[4] IBM. SPSS Modeler. Online [Jun. 2011]. [5] KDD Cup 1999 Data. Online [Jun. 2011]. [6] P. Chapman et al. “CRISP-DM 1.0: Step-by-step data

mining guide”. SPSS Inc., 2000. [7] Wikipedia. “Ataque de denegación de servicio”. Online

[Jun. 2011]. [8] L. Wenke et al. “Real Time Data Mining-based Intrusion

Detection”. DARPA Information Survivability Conference and Exposition, pp. 89-101, 2000.

[9] L. Zenghui & L. Yingxu. “A Data Mining Framework for Building Intrusion Detection Models Based on IPv6”. Proceedings of the 3rd International Conference and Workshops on Advances in Information Security and Assurance ISA '09, pp. 608-628, 2009.

Page 62: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

62

COMPARACIÓN DE MÉTODOS DE INTERPOLACIÓN PARA LA GENERACIÓN DE MAPAS DE RUIDO EN ENTORNOS URBANOS

Diego Murillo Irene Ortega Juan David Carrillo Andrés Pardo Jeiser Rendón Universidad de San Buenaventura. Medellín, Colombia

[email protected] [email protected] [email protected] [email protected] [email protected]

(Tipo de Artículo: Investigación. Recibido el 07/02/2012. Aprobado el 08/05/2012)

RESUMEN

En este trabajo se presenta el estudio efectuado con el propósito de analizar la congruencia de los métodos de interpolación en la generación de mapas de ruido. Para esto, se realizaron mediciones del nivel de presión sonora equivalente de acuerdo con la resolución 0627 del Ministerio del Medio Ambiente, Vivienda y Desarrollo Territorial en dos áreas de la ciudad de Medellín. Para la obtención de las curvas de niveles de ruido se utilizaron los métodos de interpolación Kriging e IDW en el software SIG ArcGis. En el aplicativo se varió la configuración de los parámetros de entrada y se efectuó un análisis estadístico para determinar qué modelo presentaba resultados más precisos. Por último, se llevó a cabo una valoración del mapa de ruido obtenido comparándolo con la legislación colombiana. Palabras clave

Interpolación, SIG, mapas de ruido, ruido ambiental.

A COMPARISON OF INTERPOLATION METHODS FOR CREATING NOISE MAPS IN URBAN ENVIRONMENTS

ABSTRACT This paper presents a study focused on the analysis of the congruence of interpolation methods for creating noise maps. For this purpose noise measurements were performed in two areas of Medellin - Colombia- in compliance with the National Standard 0627 issued in 2006. Subsequently, this information was analyzed in the software for geographic information systems called ArcGIS. To obtain the noise curves the Kriging and IDW interpolation methods were used, varying the configuration of the input parameters and performing a statistical analysis to determine which model had more accurate results. Finally, an assessment was made by comparing the resultant noise map with the issues established by Colombian laws. Keywords Environmental noise, Geographic Information Systems (GIS), interpolation, noise mapping.

UNE COMPARAISON DES METHODES D’INTERPOLATION POUR LA CRÉATION DES CARTES DE BRUIT DANS ENVIRONNEMENTS URBAINES

RÉSUMÉ Cet article présent une étude réalisée avec l’intention d’analyser la congruence des méthodes d’interpolation dans la création des cartes de bruit. Pour réussir cela, on a réalisé des mesures des niveaux de bruit d’après la résolution 0627 du Ministère d’Environnement, Logement et Développement Territorial dans deux zones de la ville de Medellín-Colombie. Pour trouver les courbes de niveau de bruit on a utilisée les méthodes d’interpolation Kriging et IDW sur le logiciel pour systèmes d’informat ion géographique appelé ArcGIS. Dans l’application on a varié la configuration des paramètres d’entrée et on a réalisé une analyse statistique pour déterminer quel modèle présentait des résultats plus précis. Finalement, on a fait une évaluation de la carte de bruit obtenu au moyen d’une comparaison avec ce qu’établit la législation colombienne. Mots-clés Interpolation, Systèmes d’Information Géographique (SIG), Cartes de bruit, Bruit de l’environnement.

D. Murillo et al. “Comparación de métodos de interpolación para la generación de mapas de ruido en entornos urbanos”. Ing. USBMed, Vol. 3, No. 1, pp. 62-68. ISSN: 2027-5846. Enero-Junio, 2012.

Page 63: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

63

1. INTRODUCCIÓN Los mapas de ruido se han convertido en las últimas décadas en un instrumento esencial para la caracterización del grado de contaminación acústica en las ciudades y la generación de planes de mitigación sonora. La información obtenida de los mismos, permite a los entes gubernamentales tomar decisiones con relación a la planificación del territorio, estableciendo niveles máximos de acuerdo a los usos del suelo que en la ciudad existan. En Colombia, la Resolución 0627 de 2006 estipula la metodología para la medición de los niveles de ruido ambiental así como los estándares máximos permisibles de acuerdo al sector y las actividades que en él se desarrollan. Igualmente resuelve que estas mediciones deben ser insumo para la elaboración de mapas de ruido en las ciudades que posean más de 100.000 habitantes [1]. Para la elaboración de los mapas existen diferentes metodologías que permiten la construcción de las curvas de ruido. Usualmente, se realizan mediciones in situ de ruido ambiental que posteriormente, al aplicar técnicas de interpolación, se estiman valores desconocidos a partir de los registros realizados. Actualmente los métodos más usados son Kriging e IDW (Inverse Distance Weighting) que se basan en la auto-correlación espacial de los puntos para la predicción y generación de superficies continuas. Estas técnicas de interpolación han sido ampliamente utilizadas para la generación mapas de ruido ya que permiten crear superficies continuas facilitando el análisis de la condición acústica del sector en estudio [2 - 5]. Amal Iaaly-Sankary et al. [6] elaboraron el mapa de ruido de la ciudad El-Mina mediante una rejilla de 50 m para sectores densamente poblados y de 150 m para los menos poblados; la técnica de interpolación utilizada fue IDW y como conclusión se pudo determinar los sectores con mayor grado de contaminación sonora [6]. Surya Aditya et al. [7] realizaron el mapa de ruido de Rawatpur combinando mediciones en campo con modelado por medio de software. Para ello realizaron 56 mediciones durante intervalos de tiempo en los que existieran altos niveles emisión de ruido automotor. Cada uno de los puntos fue geo-referenciado y con un SIG se realizó el proceso de interpolación por medio de Kriging [7].

En el contexto nacional el área metropolitana del Valle de Aburrá realizó el mapa de ruido de Medellín, Bello, La Estrella, Sabaneta, Itagüí, Girardota, Copacabana, Barbosa y Caldas utilizando el método de interpolación Kriging. En este estudio se seleccionaron diferentes tamaños de rejilla con base a la zona bajo estudio; en municipios como La Estrella se realizó el estudio con una cuadrícula de 200 metros para un total de 77 puntos, mientras que para el mapa de ruido de Medellín se utilizó una de 400 metros para un total de 418 puntos [8]. 2. BASES TEÓRICAS En estadística la interpolación es usada para estimar valores desconocidos a partir de una serie de datos

conocidos y ponderados. Cada técnica busca determinar una función que represente adecuadamente el fenómeno bajo estudio y así disminuir la cantidad de información a recolectar en campo. Existen varias técnicas o métodos, entre los que se encuentran IDW y Kriging. 2.1 Inverse Distance Weighting (IDW) Es un método matemático de interpolación que usa una función inversa de la distancia, parte del supuesto que las cosas que están más cerca son más parecidas, por lo tanto tienen más peso e influencia sobre el punto a estimar [9]. Matemáticamente se expresa como:

( ) ∑ ( ) (1)

En el cual Z(So) es el valor a predecir, N es el número de muestras alrededor del punto a predecir, λi son los pesos asignados a cada punto vecino y Z(Si) son los valores medidos. Los pesos de los puntos vecinos están dados por:

(2)

En el cual d es la distancia entre el lugar de predicción (So) y el lugar muestral (Si); P es un factor de reducción de peso, cuyo valor se encuentra minimizando el error cuadrático medio o error de predicción. 2.2 Kriging ordinario Es un método basado en auto correlación espacial de las variables. El Kriging es un estimador lineal insesgado que busca generar superficies continuas a partir de puntos discretos. Asume que la media, aunque desconocida, es constante y que las variables son estacionarias y no tienen tendencias. Permite transformación de los datos, eliminación de tendencias y proporciona medidas de error. Para determinar la auto correlación se usan semivariogramas y vecindades obtenidos a partir de un análisis exploratorio de los datos. El semivariograma permite a partir de la covarianza entre los puntos, representar la variabilidad de los mismos y su dependencia en función de la distancia y la dirección. La fórmula general es: ( ) ( ) ( ) (3)

En el cual Z(S) es la variable de interés, µ(S) es una constante desconocida, ε(S) son errores aleatorios de estimación y S son coordenadas espaciales (x, y). La predicción de un punto está dada por:

( ) ∑ ( ) (4)

En el cual ( ) es el valor predicho, λi es el peso de cada valor observado y Z(Si) es el valor medido en un lugar. Además: ( ) ∑ ( ) (5)

Page 64: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

64

Para que los valores pronosticados no estén sesgados la suma de los pesos debe ser igual a 1. Para minimizar el error se agrega el multiplicador de LaGrange (Г), obteniendo:

(6)

En el cual Г es la matriz de valores del semivariograma teórico, λ es el vector de pesos a encontrar y g es el vector de semivarianza teórica en cada punto.

3. MÉTODOS El barrio Laureles es un sector residencial en el cual existen algunos establecimientos comerciales y cuya fuente principal de ruido es el tráfico automotor. Se caracteriza por ser una zona tranquila en el interior del barrio pero con altos niveles de ruido en las periferias debido a las vías principales. San Benito es un sector comercial en el que se encuentran inmersas varias instituciones educativas además de contener pequeña y mediana industria. La principal fuente de ruido es el tráfico automotor, teniendo mayor incidencia en las vías perimetrales de la zona de estudio.

Para el desarrollo del mapa en Laureles se efectuaron 48 mediciones en un área aproximada de 517.447,08 m

2 (Figura 1). En San Benito se registraron 40

mediciones en un área aproximada de 139.609,83 m2

(Figura 2). El procedimiento de medición se realizó con base en la resolución 0627 de 2006.

Fig. 1: Puntos de medición sector Laureles

Fig. 2: Puntos de medición sector San Benito

Luego de las mediciones se procedió a la construcción de las curvas de ruido en el software ArcGis. El primer paso consistió en un análisis exploratorio con el fin de identificar sesgos en las mediciones y tendencias en los datos. Para esto, se corroboró que la información adquirida se ajustara a una distribución normal y así determinar si era necesario efectuar una transformación en los datos. Como se evidencia en las Figuras 3 y 4, los datos se ajustan a una distribución normal con algunas excepciones que corresponden a puntos específicos en los que los niveles de ruido presentan una variación debido a calles cerradas o glorietas en donde el flujo variaba significativamente en el intervalo de medición.

Fig. 3: Análisis de distribución mediciones Laureles

Fig. 4: Análisis de distribución mediciones San Benito

Realizado este proceso, se efectuó un análisis de tendencias identificando concentraciones en la información. En las Figuras 5a a 5c y 6a a 6c se presentan las tendencias de acuerdo a un polinomio de grado uno, dos y tres. En los mismos se puede observar que existe una favorabilidad hacia la dirección occidente-oriente y sur-norte en el sector de Laureles y oriente-occidente en el caso de San Benito.

Fig. 5a: Análisis tendencias Laureles: polinomio grado 1

Fig. 5b: Análisis tendencias Laureles: polinomio grado 2

Page 65: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

65

Fig. 5c: Análisis tendencias Laureles: polinomio grado 3

Fig. 6a: Análisis San Benito: polinomio grado 1

Fig. 6b: Análisis San Benito: polinomio grado 2

Fig. 6c: Análisis San Benito: polinomio grado 3

Una vez efectuado el análisis exploratorio se generaron múltiples escenarios (15 por sector) con el método Kriging e IDW en los que se varió el factor de potencia, la forma y ángulo de vecindad, el número de vecinos y el modelo teórico del semivariograma. Como criterio de selección se determinó que la media del error, la varianza, el error promedio estándar, la media estandarizada y la varianza estandarizada fueran lo menor posible. Igualmente se predijeron los puntos medidos y se analizó cual escenario tuvo mayor congruencia entre los estadísticos (media, máximo, mínimo, suma y desviación estándar) de los datos predichos y los medidos [9]. 4. RESULTADOS En las Figuras 7a a 7d se presentan los mapas generados con el método Kriging para cada sector.

Fig. 7a: Modelo 1 método Kriging sector Laureles

Fig. 7b: Modelo 2 método Kriging sector Laureles

Fig. 7c: Modelo 1 método Kriging sector San Benito

Page 66: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

66

Fig. 7d: Modelo 2 método Kriging sector San Benito

En las Tablas 1 a 4 se muestran los parámetros seleccionados para determinar la congruencia del proceso de interpolación en ambos sectores. Como base se analizan los estadísticos: media, mínimo, máximo, desviación estándar, obtenidos con los valores registrados en campo y los resultantes por medio de la predicción con el método de interpolación.

TABLA 1. Modelo 1 Laureles

TABLA 2. Modelo 2 Laureles

TABLA 3. Modelo 1 San Benito

TABLA 4. Modelo 2 San Benito

En las Figuras 8a a 8d se presentan los mapas generados por el método IDW para cada sector.

Fig. 8a: Modelo 3 método IDW sector Laureles

Fig. 8b: Modelo 4 método IDW sector Laureles

TENDENCIA

REMOVIDA MODELO ESTADISTICOS

RANGO DE

ERROR MEDIDOS DIFERENCIA

1 ESFERICO Media 0.4899 -5.894 Minimo 64.637556 59.8 4.837556

RMS 3.298 8.3067 Maximo 76.225917 77.2 -0.974083

Error Promedio Estandar 0.115 Suma 3355.714873 3332.2 23.514873

Media Estandarizada 4.284 Media 69.910727 69.420833 0.489894

RMS Estandarizado 28.72 Desviacion Estandar 2.594176 3.745551 -1.151375

PREDICHOS

TENDENCIA

REMOVIDA MODELO ESTADISTICOS

RANGO DE

ERROR MEDIDOS DIFERENCIA

1 ESFERICO Media 0.4899 -5.894 Minimo 64.637556 59.8 4.837556

RMS 3.298 8.3067 Maximo 76.225917 77.2 -0.974083

Error Promedio Estandar 0.115 Suma 3355.714873 3332.2 23.514873

Media Estandarizada 4.284 Media 69.910727 69.420833 0.489894

RMS Estandarizado 28.72 Desviacion Estandar 2.594176 3.745551 -1.151375

PREDICHOS

TENDENCIA

REMOVIDA MODELO ESTADISTICOS

RANGO DE

ERROR MEDIDOS DIFERENCIA

3 ESFERICO Media -0.079 -5.8961 Minimo 61.453422 59.8 1.653422

RMS 3.056 6.8114 Maximo 76.921319 77.2 -0.278681

Error Promedio Estandar 0.1968 Suma 3328.390838 3332.2 -3.809162

Media Estandarizada -0.406 Media 69.341476 69.420833 -0.079357

RMS Estandarizado 15.54 Desviacion Estandar 3.324884 3.745551 -0.420667

PREDICHOS

TENDENCIA

REMOVIDA MODELO ESTADISTICOS

RANGO DE

ERROR MEDIDOS DIFERENCIA

3 ESFERICO Media -0.079 -5.8961 Minimo 61.453422 59.8 1.653422

RMS 3.056 6.8114 Maximo 76.921319 77.2 -0.278681

Error Promedio Estandar 0.1968 Suma 3328.390838 3332.2 -3.809162

Media Estandarizada -0.406 Media 69.341476 69.420833 -0.079357

RMS Estandarizado 15.54 Desviacion Estandar 3.324884 3.745551 -0.420667

PREDICHOS

TENDENCIA

REMOVIDA MODELO ESTADISTICOS

RANGO DE

ERROR MEDIDOS DIFERENCIA

2 ESFERICO Media 0.0003 -4.582 Minimo 71.243374 66.4 4.843374

RMS 3.46 10.446 Maximo 83.183786 83.5 -0.316214

Error Promedio Estandar 2.443 Suma 3065.210654 3065.2 0.010654

Media Estandarizada 0.0009 15.028 Media 76.630266 76.63 0.000266

RMS Estandarizado 1.415 Desviacion Estandar 3.138516 4.335447 -1.196931

PREDICHOS

TENDENCIA

REMOVIDA MODELO ESTADISTICOS

RANGO DE

ERROR MEDIDOS DIFERENCIA

2 ESFERICO Media 0.0003 -4.582 Minimo 71.243374 66.4 4.843374

RMS 3.46 10.446 Maximo 83.183786 83.5 -0.316214

Error Promedio Estandar 2.443 Suma 3065.210654 3065.2 0.010654

Media Estandarizada 0.0009 15.028 Media 76.630266 76.63 0.000266

RMS Estandarizado 1.415 Desviacion Estandar 3.138516 4.335447 -1.196931

PREDICHOS

TENDENCIA

REMOVIDA MODELO ESTADISTICOS

RANGO DE

ERROR MEDIDOS DIFERENCIA

3 ESFERICO Media -0.004 -9.5354 Minimo 70.139214 66.4 3.739214

RMS 3.692 9.2471 Maximo 83.97969 83.5 0.47969

Error Promedio Estandar 2.576 Suma 3065.028922 3065.2 -0.171078

Media Estandarizada -0.003 18.7825 Media 76.625723 76.63 -0.004277

RMS Estandarizado 1.428 Desviacion Estandar 3.61144 4.335447 -0.724007

PREDICHOS

TENDENCIA

REMOVIDA MODELO ESTADISTICOS

RANGO DE

ERROR MEDIDOS DIFERENCIA

3 ESFERICO Media -0.004 -9.5354 Minimo 70.139214 66.4 3.739214

RMS 3.692 9.2471 Maximo 83.97969 83.5 0.47969

Error Promedio Estandar 2.576 Suma 3065.028922 3065.2 -0.171078

Media Estandarizada -0.003 18.7825 Media 76.625723 76.63 -0.004277

RMS Estandarizado 1.428 Desviacion Estandar 3.61144 4.335447 -0.724007

PREDICHOS

Page 67: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

67

Fig. 8c: Modelo 3 método IDW sector San Benito

Fig. 8d: Modelo 4 método IDW sector San Benito

El análisis de estadísticos resultantes del método IDW en ambos sectores se muestra en la Tablas 5 a 8.

TABLA 5. Modelo 3 Sector Laureles

TABLA 6. Modelo 4 Sector Laureles

TABLA 7. Modelo 3 Sector San Benito

TABLA 8. Modelo 4 Sector San Benito

5. ANÁLISIS DE RESULTADOS Las configuraciones que presentaron menor error fueron las construidas mediante Kriging con los parámetros del modelo 2 (Laureles) y el modelo 1 (San Benito). Se evidencia una alta congruencia entre los datos estadísticos de los puntos predichos y los medidos, su media fue la más cercana a cero (0) y la desviación estándar fue la mínima entre todas las condiciones. Aunque existe una buena correlación entre los estadísticos de los puntos medidos y los predichos, se encuentra una alta divergencia al comparar los valores de ruido registrados en campo y los que predice el método de interpolación. Estas diferencias se ubican entre el rango de -6.42 dB(A) y 7.56 dB(A), lo cual es bastante significativo si se tiene en cuenta que el criterio de tolerancia usado internacionalmente para comparar los valores medidos con los simulados es ±3 dB. Por último, con relación a la norma colombiana, se analiza que el nivel mínimo registrado en las mediciones en ambos sectores supera los 65dB(A), siendo este el nivel máximo permitido en sectores de tranquilidad y ruido moderado (sector más restrictivo debido a zonas residenciales). Esto indica que todos los puntos exceden la norma, presentando además puntos críticos en las periferias correspondientes a vías principales. 6. CONCLUSIONES En ambos escenarios, el método kriging se correlaciona de mejor manera con los estadísticos de los puntos medidos, la media general es más cercana a 0 y la desviación estándar es menor que en IDW, por lo cual es más preciso para generar curvas isoruido.

Los resultados obtenidos aplicando un mismo método de interpolación no presentan variaciones

ESTADISTICOS

RANGO DE

ERROR MEDIDOS DIFERENCIA

X 286 Media -0.128 -6.4622 Minimo 66.267117 59.8 6.467117

Y 286 RMS 3.459 9.4739 Maximo 74.776605 77.2 -2.423395

Angulo 333 Suma 3326.081026 3332.2 -6.118974

Media 69.293355 69.420833 -0.127478

Desviacion Estandar 2.000611 3.745551 -1.74494

PREDICHOSPROPIEDADES

ESTADISTICOS

RANGO DE

ERROR MEDIDOS DIFERENCIA

X 286 Media -0.128 -6.4622 Minimo 66.267117 59.8 6.467117

Y 286 RMS 3.459 9.4739 Maximo 74.776605 77.2 -2.423395

Angulo 333 Suma 3326.081026 3332.2 -6.118974

Media 69.293355 69.420833 -0.127478

Desviacion Estandar 2.000611 3.745551 -1.74494

PREDICHOSPROPIEDADES

ESTADISTICOS

RANGO DE

ERROR MEDIDOS DIFERENCIA

X 286 Media -0.081 -6.3584 Minimo 64.682755 59.8 4.882755

Y 286 RMS 3.397 8.7366 Maximo 74.904125 77.2 -2.295875

Angulo 333 Suma 3328.308854 3332.2 -3.891146

Media 69.339768 69.420833 -0.081065

Desviacion Estandar 2.14215 3.745551 -1.603401

PROPIEDADES PREDICHOS

ESTADISTICOS

RANGO DE

ERROR MEDIDOS DIFERENCIA

X 286 Media -0.081 -6.3584 Minimo 64.682755 59.8 4.882755

Y 286 RMS 3.397 8.7366 Maximo 74.904125 77.2 -2.295875

Angulo 333 Suma 3328.308854 3332.2 -3.891146

Media 69.339768 69.420833 -0.081065

Desviacion Estandar 2.14215 3.745551 -1.603401

PROPIEDADES PREDICHOS

ESTADISTICOS

RANGO DE

ERROR MEDIDOS DIFERENCIA

X 100 Media -0.002 -6.7871 Minimo 68.87119 66.4 2.47119

Y 100 RMS 3.786 9.6758 Maximo 80.946943 83.5 -2.553057

Angulo Suma 3065.124209 3065.2 -0.075791

Media 76.628105 76.63 -0.001895

Desviacion Estandar 2.965103 4.335447 -1.370344

PREDICHOSPROPIEDADES

ESTADISTICOS

RANGO DE

ERROR MEDIDOS DIFERENCIA

X 100 Media -0.002 -6.7871 Minimo 68.87119 66.4 2.47119

Y 100 RMS 3.786 9.6758 Maximo 80.946943 83.5 -2.553057

Angulo Suma 3065.124209 3065.2 -0.075791

Media 76.628105 76.63 -0.001895

Desviacion Estandar 2.965103 4.335447 -1.370344

PREDICHOSPROPIEDADES

ESTADISTICOS

RANGO DE

ERROR MEDIDOS DIFERENCIA

X 250 Media -0.07 -6.6649 Minimo 70.164639 66.4 3.764639

Y 250 RMS 3.68 8.5662 Maximo 80.745971 83.5 -2.754029

Angulo Suma 3062.414551 3065.2 -2.785449

Media 76.560364 76.63 -0.069636

Desviacion Estandar 2.603065 4.335447 -1.732382

PROPIEDADES PREDICHOS

ESTADISTICOS

RANGO DE

ERROR MEDIDOS DIFERENCIA

X 250 Media -0.07 -6.6649 Minimo 70.164639 66.4 3.764639

Y 250 RMS 3.68 8.5662 Maximo 80.745971 83.5 -2.754029

Angulo Suma 3062.414551 3065.2 -2.785449

Media 76.560364 76.63 -0.069636

Desviacion Estandar 2.603065 4.335447 -1.732382

PROPIEDADES PREDICHOS

Page 68: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

68

significativas. Sin embargo, al observar los mapas construidos con IDW se evidencia que no hay coherencia entre el comportamiento del ruido descrito por el modelo y el existente en la zona de estudio. Lo anterior se evidencia en variaciones de 5 dB(A) entre puntos con características similares y que no se ajustan a la emisión generada por fuentes automotoras que son las que predominan en ambos sectores. En el caso de los mapas obtenidos con kriging, se puede apreciar que los niveles más altos encontrados se deben a las vías principales e intercambios viales, lo que es congruente con la descripción dada anteriormente de los sectores. Sin embargo, se observa que para lograr una adecuada estimación se debe tomar un gran número de puntos de medición (rejilla de máximo 100 m entre vértices laureles, 60 m en San Benito), ya que la precisión de la estimación depende directamente del número de muestras obtenidas lo que se traduce en altos costos económicos. Debido a que los métodos de interpolación no contemplan la manera como se propaga el sonido y la existencia de fenómenos acústicos como absorción, reflexión, difracción y atenuación generados por edificaciones y demás objetos existentes en el entorno, la representación de los niveles de presión sonora presenta grandes divergencias con relación al comportamiento del fenómeno in situ. Esta falencia se puede optimizar incrementando la resolución de la rejilla (mayor número de mediciones) con el fin de registrar las variaciones del sonido a medida que se propaga. Lo anterior se corrobora al analizar y comparar los niveles de ruido predichos con los puntos medidos.

Dado que los niveles de ruido ambiental exceden el umbral máximo permisible en ambos sectores, las autoridades ambientales deben adoptar mecanismos de control que propendan a la mitigación de los niveles de ruido con el fin de brindar espacios acústicamente sanos a la población. 7. REFERENCIAS [1] Ministerio de Ambiente, Vivienda y Desarrollo Territorial.

Res. 0627 Norma Nacional de ruido de emisión y ruido ambiental, 2006.

[2] E. Pueyo; J. Ortega & D. Urraga. “Mapas de ruido nocturno en la ciudad”. XVIII Congreso Internacional de Ingeniería Grafica. España, 2006.

[3] A. López; E. Quílez & C. Abellán. “Mapas acústicos en zonas urbanas mediante predicción estadística”. Proceedings 37º Congreso Nacional de Acústica Tecniacústica, 2006.

[4] B. Bossam. “Noise Mapping In Urban Environments: Application at Suez City Center”. Proceedings Computers & Industrial Engineering CIE, pp. 1722-1727, 2009.

[5] V. Lobos. “Evaluación del ruido ambiental de la ciudad de Puerto Montt”. Proceedings VI Congreso Iberoamericano de Acústica FIA, 2008.

[6] A. Iaaly-Sankari. “Urban noise mapping: the case of the city of El-Mina, North Lebanon”. Proceedings Middle East & North Africa Users Conference ESRI, 2010.

[7] S. Aditya; Y. Ghanshyam & S. Biswas. “Traffic Noise Mapping”. Gim International, Vol. 24, No. 6, 2010.

[8] Politécnico Colombiano Jaime Isaza Cadavid; Área Metropolitana Del Valle De Aburrá & Universidad Nacional De Colombia - Sede Medellín. “Elaboración de los mapas acústicos y de concentraciones de monóxido de carbono para los municipios de la jurisdicción del Área Metropolitana del Valle de Aburrá”, Convenio 680 de 2005. Politécnico Colombiano Jaime Isaza Cadavid, 2006.

[9] R. Cañada et al. “Sistemas y análisis de la información geográfica”. Alfaomega, 2008.

Page 69: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

69

MAPEO DE LA EVOLUCIÓN DE UNA ENFERMEDAD USANDO SISTEMAS

NEURO-DIFUSOS. CASO DE ESTUDIO: ESCLEROSIS MÚLTIPLE

Héctor A. Tabares O. Instituto Tecnológico Metropolitano ITM. Medellín, Colombia

[email protected]

(Tipo de Artículo: Investigacion. Recibido el 26/03/2012. Aprobado el 08/05/2012)

RESUMEN El presente artículo propone un modelo para estudiar la evolución de la esclerosis múltiple, enfermedad desmielinizante, neurodegenerativa y crónica del sistema nervioso central. El modelo planteado se basa en la utilización de un sistema neuro-difuso como herramienta para describir la progresión de la enfermedad, empleando un caso particular para su validación. Los datos de estudio corresponden a la historia clínica de un paciente con diagnóstico de esclerosis múltiple desde 2003, quien ha padecido cinco episodios críticos. El modelo desarrollado permitió detectar los cambios de la inflación neurológica del paciente.

Palabras clave Esclerosis múltiple, sistema neuro-difuso.

MAPPING OF DISEASE EVOLUTION USING NEURO-FUZZY SYSTEMS. CASE STUDY: MULTIPLE SCLEROSIS

ABSTRACT The aim of this paper is to propose a model for studying multiple sclerosis disease evolution. Multiple sclerosis is a central nervous system, demyelinating, neurodegenerative and chronic disease. The proposed model is based on the use of a neuro-fuzzy system as a tool for describing the progression of the disease. A specific case is used for the validation of the model. The data used for the study correspond to the medical record of a patient suffering multiple sclerosis since 2003; this patient faced five serious episodes during this time. The model that has been developed allows detecting changes in neurological inflation during treatment. Keywords Multiple sclerosis, neuro-fuzzy system, forecasting.

CARTOGRAPHIE DE L’ÉVOLUTION D’UNE MALADIE EN UTILISANT SYSTÈMES NEURO-FLOUS. ÉTUDE DE CAS : SCLÉROSE MULTIPLE

RÉSUMÉ Cet article propose un modèle pour étudier l’évolution de la sclérose multiple, qui est une maladie démyélinisant, neuro-dégénérative et chronique du système nerveux central. Le model proposé est basé sur l’utilisation d’un système neuro-flou comme un outil pour décrire la progression de la maladie, en utilisant un cas particulier pour sa validation. Les données de l’étude sont du dossier médical personnel d’un patient diagnostique avec sclérose multiple depuis 2003, qui a éprouvé cinq épisodes critiques. Le model développé permet de détecter les changements de l’inflation neurologique du patient. Mots-clés Sclérose multiple, système neuro-flou.

H. A. Tabares O. “Mapeo de la evolución de una enfermedad usando sistemas neuro-difusos. Caso de estudio: esclerosis múltiple”. Ing. USBMed, Vol. 3, No. 1, pp. 69-73. ISSN: 2027-5846. Enero-Junio, 2012.

Page 70: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

70

1. INTRODUCCIÓN La esclerosis múltiple (EM) es una enfermedad desmielinizante, neuro-degenerativa y crónica del sistema nervioso central. En su génesis actúan mecanismos autoinmunes y, a causa de sus efectos, puede tener como consecuencia una movilidad reducida e invalidez en los casos más severos. Después de la epilepsia es la enfermedad neurológica más frecuente entre los adultos jóvenes desde la erradicación de la poliomielitis, y es la causa más frecuente de parálisis en los países occidentales [1]. En [2] se informa que la EM afecta aproximadamente 1 de cada 1000 personas con edades entre 20 y 40 años, más comúnmente en las mujeres. Con el propósito de estudiar la evolución clínica de la enfermedad, se han empezado a usar nuevas herramientas informáticas inteligentes, tales como las redes neuronales artificiales (RNA) y los sistemas neurodifusos (ND) [3]. Estos últimos combinan las técnicas de las redes neuronales artificiales y las técnicas de inferencia borrosa. La lógica borrosa proporciona un mecanismo de inferencia sobre la incertidumbre y las redes neuronales ofrecen las ventajas computacionales en cuanto al aprendizaje y la generalización. Un detallado estudio sobre los sistemas ND está más allá del ámbito de esta sección. En [4] se ofrece un excelente estudio con referencias específicas.

Un sistema neuronal artificial fue aplicado en [5] para detectar células que producen cáncer de pulmón. A partir de este estudio surgieron otros trabajos en reconocimiento de imágenes en radiología, dermatología, patología, endoscopia [6], análisis de rayos X aplicados en exámenes de mamografía y radiografías de pecho [7]. Dentro de la literatura médica, existen numerosos estudios que emplean modelos ND. En [8], realizaron una clasificación morfológica de imágenes obtenidas con exámenes de resonancia magnética. Consiste en procesar las imágenes usando una RNA para aumentar su tasa de reconocimiento. Como resultado final, se presenta una RNA capaz de distinguir los diferentes contornos de plaquetas producidas por la EM. Otros estudios evaluaron la aplicación de sistemas ND para el diagnóstico de infarto del miocardio [9, 10], artritis celular [11, 12], tipos de cáncer [13], pronosticar la duración de pacientes en la unidad de cuidados intensivos [14], evolución de enfermedades después de realizarse una operación de trasplantes [15, 16]. Otros estudios que usan RNA están relacionados con enfermedades cardio-pulmonares y grado de sobrevivencia después del trauma [17, 18], interpretación de pruebas de diagnóstico relacionadas con el páncreas [19, 20] y tiroideos [21, 22]. Es por eso como en el Instituto Tecnológico Metropolitano (ITM) se ha venido trabajando en el desarrollo de modelos computacionales [23, 24] que esperan realimentarse con resultados de estudios

experimentales y clínicos, para llegar a convertirlos en una herramienta de apoyo para el diagnóstico de una enfermedad. En este caso, se propone un nuevo modelo computacional usando un sistema ND. En este trabajo se presenta un sistema ND del tipo ANFIS (Adaptative Neuro Fuzzy Inference Systems) para estudiar la evolución de un paciente con padecimiento de EM. La información del paciente fue tomada de su historia clínica y el patrón de evaluación fue escalado según la gravedad de las recaídas. El sistema ND ANFIS fue entrenado y posteriormente validado. El modelo logró estimar la progresión de la enfermedad con un error menor de 0,01 considerado como una buena medida. La creación de este sistema ND le ofrece al médico una herramienta de fácil observación de las lesiones presentadas y de los cambios neurológicos del paciente ante los fármacos aplicados.

Como una forma de contribuir a la confiabilidad del diagnóstico y eficiencia del tratamiento, se propone en este artículo mapear la serie histórica de registros de recaídas usando un sistema ND. Su utilización ayuda al médico a evaluar, de manera más ágil, la variación de la enfermedad y su impacto en el mediano y largo plazo.

1. DESARROLLO

1.1 Patrón cualitativo Respetando la confidencialidad de la información médica del paciente y el secreto profesional dentro del marco ético y legal vigente, así como a la custodia de los registros de resonancia magnética y a no ser sujeto de una investigación experimental sin su plena información y libre consentimiento, se presenta a continuación el caso de un paciente anónimo con diagnóstico de EM desde el año 2003, quien ha presentado cinco recaídas entre enero de 2003 hasta marzo de 2010. El paciente recibió dentro de su tratamiento la aplicación de ampollas de Betaferón. La evaluación del tratamiento fue del tipo cualitativo a través de criterios clínicos y seguimiento visual de las lesiones activas mediante exámenes de resonancia magnética cuyos síntomas y observaciones médicas pueden observarse en la Tabla 1. Tabla 1. Historia clínica, paciente con diagnóstico de EM

Examen RM No.: 1, Junio de 2003.

Tipo: Columna cervical

Síntomas: Dolor en la región cervical irradiado a miembros superiores y espalda

Conclusión: Se halla mielitis trasversa a la altura de C2-C3 y C3-C4

Examen RM Nro: 2, Enero de 2006

Tipo: Cerebral y Columna cervical

Síntomas: Anestesia miembros inferiores

Conclusión: Proceso desmielinizante tipo EM con signo de actividad

Examen RM Nro: 3, Septiembre de 2007

Tipo: Cerebral y Columna cervical

Síntomas: Parestesias miembros inferiores

Conclusión: Placa desmielinizante lateral izquierda a la altura de C3. EM estable con respecto a control previo de enero de 2006

Page 71: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

71

Examen RM Nro: 4, Octubre de 2008

Tipo: Cerebral

Síntomas: Parestesias miembros inferiores, Fasciculaciones

Conclusión: Alteraciones se encuentran estables con respecto a la RM3

Examen RM Nro: 4, Octubre de 2010

Tipo: Cerebral

Síntomas: Parestesias miembros inferiores, Fasciculaciones

Conclusión: Paciente con DX EM sin cambios con respecto al estudio de 2008. No hay lesión de reciente aparición y las alteraciones conocidas permanecen estables en el intervalo de tiempo. Evolución satisfactoria

1.2 Patrón cuantitativo Para obtener el patrón de evaluación cuantitativa del paciente, fue necesario escalar de 0 a 100 la severidad de las lesiones provocadas por las recaídas (0 sin afectación y 100 máximo grado de afectación) cuya información fue tomada de la historia clínica y de una entrevista con el paciente para evaluar el grado de afectación de la enfermedad.

1.3 Sistema Neurodifuso El sistema ND ANFIS propuesto para modelar la evolución de la EM presenta como variable de entrada el tiempo y de salida el grado de progresión de la enfermedad. Se realizaron 23 lecturas de la evolución de la enfermedad, 14 de ellas se utilizaron para realizar el entrenamiento del sistema ND, corresponden a las evaluaciones en los episodios críticos y las 9 restantes (consideradas como episodios no críticos) fueron usadas para la validación. Para las pruebas del sistema ND fue utilizado el ToolBox NeuroFuzzy de MATLAB®. La topología del sistema ND ANFIS seleccionado se puede observar en la Figura 1. Consistió en una neurona de entrada, una neurona de salida, con 5 funciones de membresía (MFs), con funciones de activación Trimf para la entrada de la red y lineal para la salida.

Fig. 1: Topología del sistema ND tipo ANFIS

Los parámetros de los nodos de la capa inputmf son ajustables. Su entrada corresponde a la variable input y la salida del nodo es el grado de pertenencia de dicha entrada. Los nodos de la capa rule calcula el grado de activación de la regla asociada a dicho nodo. La capa outputmf calcula la salida y la última capa combina todas las salidas en un único nodo. Para entrenar el sistema, se configuró la red para usar el método de optimización híbrido Neuro-fuzzy, error final en la aproximación de 0,01, con 500 iteraciones. Fue empleado el algoritmo de entrenamiento de primer orden gradiente descendente para optimizar los constantes que caracterizan las funciones de

pertenencia y el algoritmo de mínimos cuadrados para determinar los parámetros lineales de la salida del modelo de inferencia. Básicamente lo que se hace es generar, a partir de una entrada o salida especifica un sistema de inferencia donde los parámetros de membresía son ajustados usando el algoritmo de retro-propagación (red neuronal artificial). Esto provoca que el sistema difuso aprenda de los datos de entrada o salida proporcionados. Con el propósito de evitar que la red, durante la etapa de entrenamiento, se sobreajuste a los datos, se utilizó el método de detección temprana (early stopping) que emplea dos conjuntos: datos para el entrenamiento y datos para la validación.

2. RESULTADOS Y DISCUSION

2.1 Patrón cuantitativo La Tabla 2 presenta el registro histórico de recaídas del paciente, organizado de forma cuantitativa, que incluye: fecha de los episodios, duración y grado de afectación.

Tabla 2. Registro clínico cuantitativo

Fecha: Junio / 2003.

Grado afectación: 100%, AMIyS

Duración: 15 meses

Descripción: Al finalizar el episodio, el paciente se recuperó en su totalidad (100%)

Fecha: 2, Enero de 2006

Grado afectación: 100% AMI

Duración: 12 meses

Descripción: Al finalizar el episodio, el paciente se recuperó en un 85%.

Fecha: Septiembre de 2007

Grado afectación: 50% AMI

Duración: 8 mese

Descripción: ECP. Sin progresión.

Fecha: Octubre de 2008

Grado afectación: 50% AMI

Duración: 7 meses

Descripción: ECP. Sin progresión.

Fecha: Marzo de 2010

Grado afectación: 50% AMI

Duración: 5 meses

Descripción: ECP. Sin progresión.

La Figura 2 representa la progresión cuantitativa de la enfermedad.

Fig. 2: Progresión de la enfermedad esclerosis multiple

2.2 Sistema neurodifuso tipo ANFIS La Figura 3 muestra la curva de la serie histórica del paciente mapeada por el sistema ND ANFIS. Los datos en círculo son los utilizados para entrenar la red y los

Page 72: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

72

que se presentan en rectángulo, para la validación del entrenamiento.

Fig. 3: Evolución de la enfermedad de EM obtenida a

partir de la RNA entrenada

El sistema ND mapeó la serie de recaídas logrando una aproximación a la serie histórica en 500 iteraciones, con un error cuadrático medio de 0,00096863/0,01, lo cual en la literatura es considerado una buena medida. Ohno [3] realizó un trabajo similar. La RNA creada por Ohno contó con 24 neuronas en la capa de entrada, cada una con un ejemplo de entrenamiento (lo que presupone una complejidad de función relativamente sencilla), y cuatro neuronas de salida. Con este método no se puede realizar futuras predicciones por cuanto solo se utilizó un ejemplo para el entrenamiento de la red. La red propuesta en este artículo logró mapear la historia clínica de un paciente con EM, utilizando una variable de entrada y una de salida cada una agrupando un total de 23 registros. En este caso la complejidad de la función a ser aproximada es mucho mayor, facilitando así mismo realizar futuras estimaciones.

3. CONCLUSIONES Este trabajo permitió desarrollar un modelo basado en sistemas ND tipo ANFIS para estudiar la evolución de un paciente con padecimiento de EM. El modelo logró estimar la progresión de la enfermedad con un error de 0,00096863 en la aproximación a la serie histórica de recaídas, lo cual es considerado como una buena medida. El sistema ND le ofrece al médico una herramienta de fácil observación de los cambios neurológicos del paciente ante los fármacos aplicados y lesiones presentadas. La efectividad para modelar la progresión de la EM usando un sistema ND dependerá de la correcta medición de la frecuencia de recaídas y del grado de progresión de la enfermedad.

El método expuesto puede ser aplicado de manera generalizada para estudiar la evolución de cualquier enfermedad, cuando se dispone de los registros históricos con el cual mapear su progresión.

4. AGRADECIMIENTOS El autor reconoce la ayuda del médico José Fernando Zapata del Instituto Neurológico de Antioquia, de la profesora María Elena Moncada, investigadora del ITM y de Leonel Velásquez, director Ingeniería de Sistemas del ITM.

5. REFERENCIAS [1] A. Gutiérrez et al. “Esclerosis Múltiple”. R. Zurek (Ed.),

Consensos en Neurología: guías de práctica clínica. Exlibris Editores, Vol. I, pp.1-13, 2001.

[2] American Academic of Neurology. “Isocoric Pupil Dysfunction”. Continuum. Lifelong learning in neurology, Vol.10, No. 6, pp. 213-217, 2004.

[3] L. Ohno. “Modular neural networks for medical prognosis: quantifying the benefits of combining neural networks for survival prediction”. Connection Science: Journal of Neural Computing, Artificial Intelligence and Cognitive Research, Vol. 9, No. 1, pp.71-86, 1997.

[4] B. Martin del Brio & A. Sanz. “Redes Neuronales y Sistemas Difusos”. Alfa-Omega, 2002.

[5] Y. Chiou & Y. Lure. “Hybrid lung module detection (HLND) system”. Cancer Letters, Vol. 77, No. 2-3, pp. 119-126, 1994.

[6] C. Sthepan et al. “Three new serum markers for prostate cancer detection within a percent free PSA-based artificial neural network”. Prostate, Vol. 66, No. 6. pp. 651-657, 2006.

[7] Y. Wang & J. Shiun. “Artificial Neural Network to Predict Skeletal Metastasis in Patients with Prostate Cancer”. Medical Systems, Vol. 33, No. 2, pp. 91-100, 2009.

[8] A. Celona; G. Grasso & L. Puccio. “Artificial Neural Network (ANN) Morphological Classification by Euclidean Distance Histograms for Prognostic Evaluation of Magnetic Resonance Imaging in Multiple Sclerosis”. Proceedings SIMAI Congress, Vol. 3, pp. 283-292, 2009.

[9] F. Buarque. “Multiple Sclerosis Plaque: Computer Model and Simulations”. Internal Report, Imperial College of Science Technology and Medicine, 2000.

[10] D. Bizios; A. Heij & B. Bengtsson. “Trained artificial neural network for glaucoma diagnosis using visual field data: A comparison with conventional algorithms”. Journal of Glaucoma, Vol. 16, No. 1, pp. 20-28, 2007.

[11] M. Astion et al. “Application of neural networks to the classification of giant cell arteritis”. Arthritis and Rheumatism, Vol. 37, No. 5, pp.760-70, 1994.

[12] K. Borges; R. Moura & A. Steiner. “Diagnosis of Headache using Artificial Neural Networks”. International Journal of Computer Science and Network Security, Vol. 10, No.7, pp. 172-178, 2010.

[13] V. Bourdes et al. “Breast cancer predictions by neural networks analysis: a comparison with logistic regression”. Proceedings 29th Annual International Conference Medicine and Biology Society, pp. 5424-5427, 2007.

[14] D. Cook. “Artificial Neural Networks to Predict Mortality in Critical Care Patients: An Application of Supervised Machine Learning”. Australasian Anesthesia, Vol. 122, No 2, pp. 173-179, 2005.

[15] H. Doyle et al. “Predicting outcomes after liver transplantation. A connectionist approach”. Annals of Surgery, Vol. 219, No. 4, pp. 408-415, 1994.

[16] D. Gil et al. “Application of artificial neural networks in the diagnosis of urological dysfunctions”. Expert Systems with Applications, Vol. 36, No. 3, pp. 5754-5760, 2009.

[17] M. Ebell. “Artificial neural networks for predicting failure to survive following in-hospital cardiopulmonary resuscitation”. Journal of Family Practice, Vol. 36, No. 3, pp. 297-303, 1993.

[18] R. Harrison & L. Kennedy. “Artificial Neural Network Models for Prediction of Acute Coronary Syndromes Using Clinical Data from the Time of Presentation”. Annals of Emergency Medicine, Vol. 46, No. 5, pp. 431-440, 2005.

Page 73: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

73

[19] C. Kazmierczak; G. Catrou & F. Van Lente. “Diagnostic accuracy of pancreatic enzymes evaluated by use of multivariate data analysis”. Clinical Chemistry, Vol. 39, No. 9, pp. 1960-1965, 1993.

[20] A. Bartosch; B. Andersson & J. Nilsson. “Artificial neural networks in pancreatic disease”. British Journal of Surgery, Vol. 95, No. 7, pp. 817-826, 2008.

[21] P. Sharpe et al. “Artificial neural networks in diagnosis of thyroid function from in vitro laboratory tests”. Clinical Chemistry, Vol. 39, No. 11, pp. 2248-2253, 1993.

[22] A. Gannous & R. Elhaddad. “Improving an Artificial Neural Network Model to Predict Thyroid Bending Protein Diagnosis Using Preprocessing Techniques”. World Academy of Science, Engineering and Technology, Vol. 74, pp. 126-130, 2011.

[23] M. Moncada & H. Cadavid. “Estimación de variables eléctricas en un muslo 3D con fractura de diáfisis femoral estimulado magnéticamente”. Revista Facultad de Ingeniería Universidad de Antioquia, No. 42, pp. 120-131, 2007.

[24] M. Moncada et al. “Desarrollo experimental y computacional para estimar variables eléctricas inducidas en muestras de fémur bovino estimuladas por campos magnéticos de baja frecuencia”. Revista Cubana de Investigaciones Biomédicas, Vol. 27, No. 2, pp. 1-9, 2008

Page 74: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

74

REVISIÓN DE LOS SISTEMAS DE CONTROL DE VERSIONES UTILIZADOS EN EL DESARROLLO DE SOFTWARE

Edgar Tello-Leal Claudia M. Sosa R. Diego A. Tello-Leal Universidad Autónoma de Tamaulipas, México University of Southampton, UK

[email protected] [email protected] [email protected]

(Tipo de Artículo: Investigación. Recibido el 14/05/2012. Aprobado el 26/06/2012)

RESUMEN

Uno de los retos a los que se enfrentan los desarrolladores de software es generar productos eficientes y de calidad sin sacrificar tiempo o costos. Este objetivo sólo se alcanza si los actores involucrados en tal proceso pueden disponer de toda la información relacionada con el proyecto. Los sistemas de control de versiones son aplicaciones que ayudan al proceso de desarrollo de software, facilitando la gestión del control de versiones de los archivos de código fuente generados por los desarrolladores, proporcionando herramientas para la fusión y generación de una nueva versión de un proyecto, permitiendo que múltiples desarrolladores trabajen en el mismo proyecto sin ocasionar pérdida de datos o bloqueos de archivos. Además, permiten recuperar archivos generados previamente, los cuales pueden ser utilizados para solucionar errores del sistema. En el presente trabajo de investigación se presenta una revisión de las principales aplicaciones de software disponibles para la gestión del control de versiones con un enfoque hacia su utilización en el desarrollo de software. Adicionalmente, se analiza su funcionamiento de acuerdo al método de administración de la información contenida en los repositorios, describiendo el proceso de creación, actualización y generación de versiones de archivos de código almacenados en los repositorios. Palabras clave

Desarrollo de software, desarrolladores, sistemas de control de versiones, SCV centralizados, SCV distribuidos.

A REVIEW OF VERSION CONTROL SYSTEMS USED IN SOFTWARE DEVELOPMENT

ABSTRACT Nowadays, one of the main challenges faced by software developers is creating efficient and quality products without impairing time or costs. This goal only can be achieved if people involved in the process can have all the information related to the project. Version control systems are applications that contribute in the software development process; they make easier the management of version control of source code files produced by developers, they also provide tools for the fusion and generation of a new project version thus allowing that different developers could work on the same project without causing data loss or blocking the access to files. Additionally, version control systems allow retrieving previously generated files, which can be used to fix system errors. In this work we present a review of the main software applications available for version control management from the point of view of their use in software development. Control version systems are also analyzed according to the management method of the information stored in repositories, by describing the process of creating, updating, and generating a new version of source code files stored in there. Keywords Centralized VCS, developer, distributed VCS, software development, version control systems.

UNE RÉVISION DES SYSTÈMES DE GESTION DE VERSION UTILISÉS EN DÉVELOPPEMENT LOGICIEL

RÉSUMÉ Une des challenges qu’affrontent les développeurs logiciels est de créer des produits efficaces et de qualité sans affecter temps ou coûts. Cet objectif est obtenu si les personnes impliquées peuvent disposer de toute l’information liée au projet. Les systèmes de gestion de version sont des applications qu’aident au processus de développement logiciel, en facilitant la gestion du control des versions des fichiers de code source produit par les développeurs, en fournissant des outils pour la fusion et création d’une nouvelle version d’un projet, en permettant à plusieurs développeurs de travailler sur le même projet sans perte des données ou problèmes d’accès aux fichiers. En outre, les systèmes de gestion de version permettent de récupérer des fichiers déjà produits, lesquels peuvent être utilisés pour résoudre des erreurs systèmes. Dans cet article on présente une révision des principales applications logicielles disponibles pour la gestion du contrôle de version d’après son utilisation en développement logiciel. Les systèmes de gestion de version sont analysés selon la méthode de gestion de l’information qui est contenue dans les entrepôts, en décrivant le processus de création, actualisation et génération de versions de fichiers de code conservés. Mots-clés Développement logiciel, développeurs, systèmes de gestion de version, SGV centralisés, SGV distribués.

E. Tello-Leal; C. M. Sosa R. & D. A. Tello-Leal. “Revisión de Sistemas de Control de Versiones utilizados en el desarrollo de software”. Ing. USBMed, Vol. 3, No. 1, pp. 74-81. ISSN: 2027-5846. Enero-Junio, 2012.

Page 75: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

75

1. INTRODUCCIÓN En la actualidad, la industria del software juega un papel cada vez más importante para la economía global. El software ha transformado los procesos de control de la mayoría de los servicios de los cuales dependemos. Cada día surgen más y mejores tecnologías y con ellas novedosas aplicaciones, generando nuevos retos para los implicados en los procesos de software.

Un sistema de software se describe como diversos programas independientes, archivos de configuración que se utilizan para ejecutar estos programas, un sistema de documentación que describe la estructura del sistema, la documentación para el usuario que explica cómo utilizar el sistema y sitios web que permitan a los usuarios descargar información de productos recientes [1]. Por otro lado, en [2] se define software como un conjunto de actividades, métodos, prácticas y transformaciones que las personas utilizan para desarrollar y mantener el software y los productos asociados —proyectos, documentación de diseño, código, casos de prueba y manuales de usuario—.

En el área de desarrollo de software el disponer de una herramienta de control de versiones que permita el registro de las modificaciones que se hayan realizado a los programas o documentos, y que proporcione las versiones previas del software, puede evitar conflictos al momento de generar un producto final. El control de versiones es el proceso de almacenar y recuperar cambios de un proyecto de desarrollo [3]. Los sistemas de control de versiones SCV, permiten disponer de una versión anterior para corregir errores o actualizar funciones. Dentro de sus funcionalidades está el conservar las versiones que se hayan generado a través del tiempo, así como los diferentes archivos que integran el proyecto en cuestión, uniendo en forma automática las aportaciones de los integrantes de un equipo de trabajo [4]. Los SCV pueden ser utilizados en muchos entornos, tales como el gestionar las versiones de documentos generados por procesadores de texto, presentaciones multimedia, archivos del sistema, correo electrónico y código fuente, por mencionar algunos [3]. En el entorno de desarrollo de software es recomendable contar con un mecanismo que permita coordinar las actividades y resultados de todos los desarrolladores involucrados en tal proceso. Los SCV permiten que un proyecto pueda avanzar con varias versiones al mismo tiempo y generar informes que muestren los cambios entre las etapas del proyecto [3]. Los SCV también son identificados como sistemas de control de código fuente (Source Control Code Systems, SCCS) [5], sistemas de gestión de control de código (Source Control Management Systems, SCMS) [6], sistemas de control de revisiones (Revision Control Systems, RCS) [6] o gestión de configuración de software (Software Configuration Management SCM) [7]. En el presente trabajo de investigación se hace

referencia a los SCV enfocándolos exclusivamente a los sistemas, herramientas o aplicaciones desarrolladas para el control de versiones en el ambiente de desarrollo de software.

Los principales beneficios de utilizar una herramienta SCV son [6]: (1) cualquier revisión almacenada de un archivo puede ser recuperada para visualizarse o modificarse, (2) pueden desplegarse las diferencias entre distintas versiones, (3) las correcciones pueden ser creadas automáticamente, (4) múltiples desarrolladores pueden trabajar simultáneamente en el mismo proyecto o archivo sin pérdida de datos, (5) los proyectos pueden ser divididos para permitir el desarrollo simultáneo en varias versiones, estas divisiones pueden ser fusionadas para alcanzar el objetivo principal del desarrollo y 6) el desarrollo distribuido, es soportado a través de las redes de datos con diferentes mecanismos de autentificación. Estos beneficios favorecen la participación simultánea de los desarrolladores enriqueciendo el proceso de desarrollo de software, tal como se afirma en [8]: el control de versiones es una herramienta para manejar información que pueda estar disponible de manera colectiva y que se modifique constantemente. Por lo expuesto anteriormente, en el presente trabajo de investigación se revisan las principales características de los SCV, analizando su clasificación en base a su entorno con enfoques centralizados y distribuidos. Además se detalla el funcionamiento y operación de los sistemas de control de versiones, describiendo los principales desarrollos de SCV de tipo abierto (Open-Source) y propietario, manteniendo una orientación hacia la aplicación del control de versiones en el desarrollo de software. 2. FUNCIONAMIENTO DE LOS SISTEMAS DE

CONTROL DE VERSIONES Los SCV son aplicaciones que guardan en repositorios las versiones de un software generadas en el transcurso de su desarrollo y evolución. Otero [9] describe a estos sistemas como los que se encargan de gestionar los diferentes estados por los que pasa una aplicación durante todo el periodo de su desarrollo, guardando un historial con todos los cambios realizados entre las versiones. Esto representa una importante ventaja para los desarrolladores, ya que estas versiones pueden estar disponibles para más participantes distribuidos geográficamente, propiciando que los actores (stakeholders) puedan contribuir en forma organizada, enriqueciendo y agilizando los procesos de desarrollo, sin sacrificar la calidad o elevar los costos [10].

Adicionalmente, el SCV almacena en un repositorio la fecha y hora de los cambios, así como el nombre del desarrollador que realizó las modificaciones, destacando las diferencias entre los archivos antes y después de los cambios. El contar con esta información facilita el reconstruir archivos previos cuando sea necesario, así como disponer en cualquier momento de las diferentes versiones del código fuente

Page 76: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

76

[11]. En la Figura 1 se muestran las principales funciones de un SCV, destacando la gestión de versiones, la creación de división de trabajo y el almacenamiento del historial de cambios.

Fig. 1: Funcionamiento de un sistema de control de

versiones

3. CLASIFICACION DE LOS SCV Por la forma en que la información contenida en los proyectos es compartida y manipulada, los SCV se clasifican en centralizados y distribuidos. Los sistemas centralizados se caracterizan por contar con un servidor central de donde los desarrolladores toman información de alguna versión del proyecto, la manipulan y al finalizar el proceso de desarrollo, la actualizan en el servidor central. Los sistemas distribuidos no necesitan un servidor central para almacenar la información, sino que pueden disponer de alguna versión y trabajar localmente con la información, generando nuevas versiones, sin necesidad de almacenar la versión resultante en un servidor central. A continuación se analizan cada una de esas clasificaciones. 3.1 Sistemas de control de versiones centralizados En un SCV centralizado todas las diferentes versiones de un proyecto están almacenadas en un único repositorio de un servidor central. Para que los desarrolladores puedan acceder a esas versiones o códigos fuente deben solicitar al SCV una copia local, en la cual realizan todos los cambios necesarios, y al finalizar recurren nuevamente al SCV para que almacene las modificaciones realizadas como una nueva versión. Es entonces cuando esa versión generada estará a disposición de los demás desarrolladores, al igual que las versiones anteriores.

Fig. 2: Funcionamiento de un SCV centralizado

En la Figura 2 se muestra el funcionamiento de un SCV centralizado. Todos los desarrolladores trabajan sobre una rama o ramas (branches) en el mismo servidor central que aloja la última versión del proyecto. Este tipo de SCV requiere tener conexión de red para realizar las actualizaciones del servidor central [9]. Las principales aplicaciones de tipo SCV centralizado son el CVS [12] y Subversion [13].

Concurrent Version System (CVS). El CVS [12] fue por mucho tiempo la principal herramienta para el control de versiones en ambientes Open-Source. Mediante su operación en red ha soportado que múltiples desarrolladores, dispersos geográficamente, puedan compartir sus aportaciones favoreciendo el trabajo colaborativo a través de una arquitectura cliente-servidor. De acuerdo con Lasa [4] los CVS se utilizan para gestionar los cambios al código fuente del proyecto, de modo que varios desarrolladores puedan trabajar de manera coordinada sobre el mismo código fuente. Pero estos sistemas no se limitan al código fuente, también se pueden usar para todo tipo de documentos o archivos que estén expuestos a sufrir cambios y se requiere conservar sus diferentes versiones, o en situaciones donde varias personas trabajen en un mismo proyecto [3].

En la Figura 3 se muestra el proceso de actualización de un repositorio utilizando la aplicación CVS. Del repositorio base, el programador A y el programador B obtienen cada uno una copia de trabajo del mismo proyecto (checking out). Al disponer cada desarrollador de una copia independiente de los archivos requeridos, puede modificarlos libremente, sin existir ningún tipo de restricción. Al finalizar el proceso de cambios, los desarrolladores llevarán a cabo el registro de los cambios (commit); de existir una situación de conflicto (conflict) generada por intentar modificar la misma línea o área de texto por ambos desarrolladores, CVS emitirá una notificación de error, colocando un “marcador de conflicto” en la ubicación que está provocando dicha situación. En este punto, los desarrolladores involucrados buscarán una solución a este escenario. Por el contrario, si los cambios realizados por ambos desarrolladores no generan conflictos, se llevará a cabo la actualización en el repositorio, generándose automáticamente un número de versión y almacenando información adicional (log-message), que incluye datos como la fecha y el nombre de los autores de los cambios [14].

Fig. 3: Proceso de actualización de un repositorio

utilizando CVS

Subversion. El sistema Subversion [13] es un SCV

de código abierto (open-source), que maneja los cambios realizados tanto en archivos como en directorios; esto permite recuperar versiones anteriores de sus datos o examinar la historia de cómo cambiaron sus datos. Por otro lado, ofrece una estructura de árbol de directorios en un

Page 77: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

77

repositorio central; el repositorio es como un servidor de archivos excepto que recuerda todos los cambios realizados a sus archivos y directorios. Subversion permite conservar distintas versiones de los directorios, característica que no soporta su antecesor CVS [4]. Además Subversion soluciona la mayoría de las deficiencias presentadas por CVS.

Subversion permite al usuario obtener del repositorio una copia del proyecto, con la cual los desarrolladores trabajan en paralelo realizado sus cambios, para finalmente integrar sus copias en una versión final [8]. Subversion utiliza un modelo copiar-modificar-fusionar (copy-modify-merge) como alternativa para evitar el bloqueo de archivos en el proceso de actualización. En este modelo cada usuario se conecta al repositorio del proyecto y crea una copia personal (copia espejo de los archivos y directorios contenidos en el repositorio) en la cual trabajará. Después los usuarios pueden trabajar simultáneamente modificando sus copias privadas y personales. Finalmente las copias privadas son fusionadas en una nueva versión. Subversion facilita el proceso de fusión de las diferentes copias pero el desarrollador es el responsable de que se realice correctamente esta parte del proceso [15]. La forma de operar de Subversion mejora la productividad debido a que los archivos están siempre disponibles, al no bloquearlos cuando se pretendan actualizar por varios desarrolladores al mismo tiempo. La Figura 4 muestra un ejemplo del proceso de actualización en un repositorio por parte de dos desarrolladores, basado en la propuesta descrita en [15].

Fig. 4: Proceso de actualización de los archivos en un

repositorio utilizando Subversion

Subversion ofrece importantes ventajas con respecto a su antecesor CVS [15]:

Versionado de directorios. CVS sólo controla la historia de los archivos en forma individual. En cambio, Subversion implementa un sistema de archivos "virtual" de versiones que sigue los cambios de la estructura de directorios. Tanto a los directorios como a los archivos se les asigna una versión.

Control de historial. Dado que CVS está limitado al control de versiones de archivos, no permite copiarlos y/o renombrarlos. Además, CVS no puede reemplazar un archivo versionado con otro que lleve el mismo nombre, sin que el nuevo archivo herede el historial del anterior, que tal vez sea completamente distinto al nuevo archivo. En cambio, con Subversion, se puede agregar, eliminar, copiar y renombrar archivos y directorios. Adicionalmente, cada archivo nuevo que es añadido inicia con un historial limpio o vacío.

Atomicidad. Un conjunto de modificaciones sólo

puede integrarse al repositorio si está totalmente completo. Esto permite a los programadores realizar cambios como unidades lógicas, lo cual evita los problemas que pueden ocurrir cuando sólo una parte de las modificaciones son enviadas al repositorio. El término “atómico” implica la indivisibilidad e irreductibilidad del proceso, ya que éste debe realizarse en su totalidad o de lo contrario no realizarse.

Versión en los Metadatos. Cada directorio y

archivo tienen un conjunto de propiedades asociadas, las cuales se pueden crear y almacenar arbitrariamente.

Conexión en diferentes capas de red. Los

accesos al repositorio se pueden implementar mediante diferentes mecanismos de red. Subversion puede conectarse a un servidor Apache usando el protocolo HTTP. Esto dota a Subversion de una ventaja en estabilidad e interoperabilidad, además de las características que provee el servidor Apache, tales como autenticación, autorización y compresión de datos. También una versión ligera del servidor de Subversion está disponible, la cual utiliza un protocolo propio que puede encapsularse sobre el protocolo SSH.

Manejo de datos consistente. Subversion

identifica las diferencias de un archivo usando un algoritmo de diferenciación binario, que funciona exactamente igual en archivos de texto (legibles) y archivos binarios (ilegibles por los humanos). Ambos tipos de archivos se almacenan comprimidos en el repositorio y las diferencias se transmiten en ambas direcciones a través de la red.

Team Foundation Server. Microsoft Visual Studio

Team Foundation Server [16] es un software propietario cuya plataforma de colaboración se encuentra en el núcleo de la solución de Visual Studio para la administración del ciclo de vida de una aplicación. Team Foundation Server (TFS) proporciona servicios fundamentales como control de versiones, seguimiento de elementos de trabajo y errores, automatización de la compilación y almacén de datos. TFS es un sistema centralizado que aporta una serie de herramientas que permiten

Page 78: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

78

colaborar y coordinar las tareas de un equipo de trabajo para llevar a cabo un proyecto, mejorando la comunicación entre los integrantes. Además, permite la creación de informes, implementación de metodologías de procesos, tendencia histórica y visibilidad del estado general del proyecto mediante un panel basado en etiquetas. Adicionalmente, se pueden visualizar métricas en tiempo real que alertan sobre potenciales problemas en etapas tempranas del desarrollo de software de modo que se puedan tomar las decisiones basadas en datos y aplicarse las correcciones adecuadas [16].

TFS ofrece interfaces para facilitar la administración y visualización de ramas y manejo de cambios. Su sistema de reportes está basado en Windows Workflow Foundation 4.0. Otra de las características importantes de TSF es el almacenamiento de los datos del control de versiones en un servidor de base de datos SQL.

3.2 Sistemas de control de versiones distribuidos En el SCV distribuido cada desarrollador realiza una copia del repositorio de proyectos completo a su computadora, generándose un repositorio local del proyecto. Este repositorio local incluye todos los archivos del proyecto y el historial de cambios generado en previas actualizaciones. Cuando cada desarrollador realice modificaciones a los archivos de su repositorio local, el contenido de este repositorio se irá distanciando de los repositorios locales de otros desarrolladores, lo que provocará que se generen ramas de un mismo proyecto en los repositorios de cada desarrollador. De esta manera los desarrolladores pueden trabajar paralela e independientemente, guardando sus propias versiones en un repositorio local [9].

En la etapa del proceso de desarrollo del proyecto que requiera unir los repositorios locales de los desarrolladores, el SCV realizará una sincronización de copias, con lo cual se generará una nueva versión del proyecto conteniendo todos los cambios realizados por cada desarrollador. Este tipo de SCV mantiene un repositorio como referencia para realizar la sincronización de repositorios locales. En el SCV distribuido no es necesario mantener una conexión de red permanente a un servidor que contenga el repositorio de referencia, las conexiones de red por parte de los desarrolladores solo se requieren cuando se realiza el proceso de sincronización. Los principales SCV distribuidos de acuerdo a la clasificación presentada en [10] son GIT, Mercurial, BZR y BeetKeeper.

Fig. 5: Funcionamiento del SCVD

En la Figura 5 se muestra brevemente el funcionamiento de un sistema de control de versiones distribuido. Git [17]. Es uno de los SCV distribuidos más

populares, inicialmente desarrollado para Linux. Git permite a varios programadores trabajar paralelamente con sus propias copias de trabajo obtenidas de un repositorio, como lo efectúan todos los SCV distribuidos. Git está compuesto de una estructura de tres secciones [9], como se describe en la Figura 6, las cuales son:

Directorio de Git. Es donde se guardan los

objetos que mantienen el historial con los cambios que se han producido en el proyecto.

Directorio de trabajo. Contiene los archivos de la

versión actual del proyecto sobre los que se realizan los cambios.

Área de preparación o índice. Es un archivo que

incluye la información de los cambios que se van a enviar en la próxima confirmación.

Fig. 6. Estructura de trabajo de Git

Git utiliza ramas favoreciendo el trabajo paralelo sobre un mismo proyecto. En el momento de iniciar un repositorio se genera una rama maestra, de donde se extienden nuevas ramas que incluirán todo el historial del proyecto. Cuando se han realizado los cambios en una rama, permite que ésta se combine con otras ramas, uniéndose a la rama maestra (merge), integrando historiales y archivos de las ramas participantes; es entonces cuando se genera una nueva versión [9]. El trabajo en ramas de Git se ilustra en la Figura 7.

Fig. 7: Funcionamiento del trabajo en ramas de Git

El proceso de actualización de los archivos contenidos en un repositorio y la posterior generación de una nueva versión utilizando Git es el siguiente: cada desarrollador debe generar una copia del repositorio original en su computadora, creando un repositorio local. Este repositorio local contiene toda la información del historial de cambios y los archivos del directorio de trabajo. En esta etapa el desarrollador puede empezar a trabajar en el repositorio Git local, creando y modificando los archivos de acuerdo a sus requerimientos.

Page 79: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

79

Para crear y almacenar una nueva versión el procedimiento es el siguiente: primeramente se debe consultar el estado del repositorio, con lo cual se obtiene un listado de los archivos que han sido modificados. Enseguida, se seleccionan los que se almacenarán en la nueva versión, esto es, los archivos que contienen cambios y se quieren incluir en la nueva versión. Posteriormente, se detallan los cambios que se han realizado en los archivos, esto servirá a los desarrolladores para identificar las versiones. Al finalizar estos pasos, Git almacenará en la sección "área de preparación" una nueva copia en el historial del proyecto con todos los cambios incluidos. Posteriormente, el desarrollador debe confirmar los cambios, con lo cual Git almacenará una nueva versión del proyecto en la sección "directorio de git" conteniendo los archivos que sufrieron cambios y, de los archivos que no fueron modificados solo guarda el enlace al archivo anterior, que ya se encontraba en el repositorio del proyecto.

En esta parte del proceso del funcionamiento de Git, los cambios y actualización de versión solo se han realizado en el repositorio local del desarrollador. Enseguida se debe realizar un proceso de fusión (merge), el cual consiste en combinar una o varias ramas de un proyecto en un repositorio local al repositorio origen o al repositorio de otros desarrolladores. La acción de merge realiza una combinación de los historiales y archivos de las dos ramas implicadas. Git detecta los cambios que existen en las dos ramas, combinándolas y generando una única versión con los cambios realizados en ambas ramas. Al efectuar el merge se cambian todos los archivos en la rama del proyecto destino, generándose una nueva versión.

Mercurial. El SCV distribuido Mercurial [18] permite copiar un repositorio, conteniendo toda la historia del desarrollo del proyecto, esta copia del repositorio local funciona en forma independiente y autónoma sin requerir acceso a la red o a un servidor. La copia incluirá todos los archivos del proyecto y su historial. El repositorio local identifica la ubicación del repositorio origen, pero Mercurial no se comunicará con ese repositorio, a menos que el desarrollador lo realice. Mercurial tiene una interfaz de web de gran alcance que ofrece las siguientes funciones [6]: navegación sobre la estructura de repositorios, visualización del historial de cambios, despliegue del contenido de directorios y archivos, utilización de Atom y RSS para estar al tanto de los cambios en el repositorio, soporta usuarios remotos para copiar, modificar y actualizar repositorios.

El sistema Mercurial permite, mediante una extensión convert, importar proyectos de aplicaciones como Subversion, CVS, Git, Darcs, convertiendo toda la historia del proyecto en uno nuevo en el repositorio Mercurial. Adicionalmente, la extensión convert permite exportar los cambios a Subversion, posibilitando el llevar a cabo en paralelo el desarrollo de un proyecto.

Una de las características principales de Mercurial es su funcionamiento en línea de comandos. El proceso básico del funcionamiento de Mercurial es el siguiente: primero se debe de crear una copia local del repositorio (hg clone); el repositorio del proyecto local contendrá todos los archivos relacionados al proyecto con su registro histórico. En esta etapa el desarrollador puede iniciar los cambios o actualizaciones en los archivos del proyecto en su repositorio local, posteriormente el desarrollador puede generar una nueva revisión (hg commit) la cual incluye los archivos que han sido modificados. Enseguida el desarrollador debe autorizar los cambios, generándose una nueva versión en su repositorio local (hg push). Para integrar la nueva versión al directorio de trabajo y que pueda ser copiada por otros desarrolladores a sus repositorios locales se debe de realizar una actualización (hg update).

4. TRABAJOS RELACIONADOS En los procesos de migración de plataforma de control de versiones, por ejemplo de CVS [12] a Subversion [13], normalmente los nuevos repositorios sólo contienen un resumen de la historia de los archivos de código fuente y del proyecto de desarrollo, lo cual ocasiona la pérdida de información histórica del desarrollo de software y en algunos casos puede limitar la re-utilización de código por falta de información de los cambios en los archivos. Para solucionar este problema y permitir proyectos de software más eficientes en [19] se proponen un enfoque para construir un sistema universal histórico de versiones, en el que múltiples sistemas de control de versiones se puedan conectar a los diferentes repositorios para recuperar información de los cambios en los archivos.

En [20] se presenta un enfoque que permite combinar datos de los sistemas de control de versiones con los sistemas de control de errores o fallas con el objetivo de proporcionar una visión completa sobre la evolución de un proyecto de software. Para lo cual propone utilizar una base de datos que contendrá información histórica de los dos sistemas y mediante un análisis encontrar los puntos de unión. Enseguida, pueden ser aplicadas consultas a los datos estructurados para obtener puntos de vista significativos que muestren la evolución de un proyecto de software. Estos puntos de vista permiten un razonamiento más preciso de los aspectos que han cambiado en el proyecto y se puedan anticipar los futuros cambios en el proyecto.

En [21] presentan un sistema que permite visualizar la evolución del desarrollo de software usando técnicas de grafos. El sistema propuesto extrae información de programas basados en Java almacenados en repositorios de CVS [12] y la muestra usando un visualizador basado en grafos. La información presentada permite a los programadores comprender la evolución de los programas, su estructura, los programadores que han participado en el desarrollo de ese programa, en qué parte del programa y durante

Page 80: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

80

qué periodos, y las secciones del programa que se han comportado inestables y han requerido gran cantidad de cambios. Esta información proporcionada por el sistema es un complemento a la que generan las herramientas estadísticas como los buscadores de códigos y los analizadores estadísticos. En conjunto pueden ser de gran utilidad para los líderes de proyecto en ambientes de desarrollo de software.

En [22] se presenta un sistema que soporta la exploración visual de los repositorios de Subversion [13], así como su evolución con respecto al proceso de desarrollo y los cambios en el código fuente. Se hace uso de la estructura jerárquica de archivos para dar soporte a los usuarios en las tareas de navegación y orientación de manera que puedan obtener una visión de los datos en diferentes niveles de detalle (directorios, archivos y líneas de códigos). El enfoque utiliza diferentes técnicas de visualización lo que permite generar diversos tipos de gráficas, facilitando el análisis del progreso de los desarrollos de software. En [23] se presenta una comparación entre Subversion [13] y Git [17], sistemas de control de versiones de tipo centralizado y distribuido respectivamente. Mediante el desarrollo e implementación de un escenario en paralelo, se detalla paso a paso la operación de los dos enfoques y se presenta un comparativo en cada una de las fases de la operación de los sistemas, describiendo sus funcionalidades y describiendo las ventajas que ofrece el sistema distribuido sobre el enfoque centralizado. En [24] se presenta un escenario para implementar un sistema de control de versiones utilizando Mercurial, con el objetivo de incorporar la utilización de sistemas de control de versiones en los planes de estudio de ingeniería de sistemas, lo cual permitirá a los estudiantes trabajar en forma colaborativa con actividades y proyectos reales. Además, de conocer las expectativas prevalentes en las comunidades de desarrollo de software. En [25] presentan un sistema de replicado de control de versiones basado en Git [17], el cual proporciona mecanismos de replicación de un repositorio global en combinación con repositorios descentralizados del lado del cliente. Este enfoque combina modelos de objetos fragmentados con anotaciones semánticas que permiten personalizar y optimizar los mecanismos de replicación. El sistema ofrece ventajas en la infraestructura de replicación, tales como la capacidad de proveer código de los clientes mediante un servicio remoto y el soporte para la optimización del protocolo que permite la interacción remota, lo que contribuye a generar un potente sistema de replicación de control de versiones con tolerancia a fallos. En [26] se propone utilizar tecnologías de Web semántica para transformar los sistemas de control de versiones distribuidos en una Web semántica social. En la propuesta se hace uso de ontologías que permiten capturar y representar la historia de los

cambios en los archivos y su posterior recuperación en escenarios de control de versiones basados en Git [17], Mercurial [18] y Bazaar [27]. Mediante este enfoque se permite a cada nodo de la red publicar grupos de datos semánticos. Enseguida, estos grupos de datos pueden ser consultados a través de enlaces transversales ejecutando "queries" basadas en cálculo de métricas y descubrimiento de nodos o clientes de la red semántica. 5. CONCLUSIONES Los sistemas de control de versiones ofrecen un soporte muy importante en el proceso de desarrollo de software, coadyuvando en la gestión del control de versiones de los archivos de código fuente e impulsando el trabajo colaborativo al permitir que múltiples desarrolladores trabajen paralelamente en un mismo proyecto en forma autónoma e independiente. Adicionalmente, los sistemas de control de versiones proporcionan los mecanismos para que cualquier versión de un proyecto pueda ser recuperada para visualizarse o modificarse, desplegando las diferencias entre las versiones existentes. Por otro lado, el desarrollo distribuido es soportado a través de redes de datos con diferentes mecanismos de autentificación. En el presente trabajo de investigación se presentó un análisis de los sistemas de control de versiones, tanto “open-source” como propietarios, describiendo las principales funciones que ofrecen al momento de realizar una implementación y/o aplicación en el desarrollo de software. Además se define el proceso de creación y actualización de repositorios, tanto en el enfoque centralizado como distribuido, detallándose el proceso de actualización de archivos de código fuente de acuerdo a cada una de las herramientas revisadas. Cabe destacar que la presente investigación servirá como base teórica para el desarrollo de una herramienta para el control de versiones basado en servicios web que el grupo de investigación tiene planeado desarrollar en un futuro y cuyo fundamento se contempla dentro de las líneas de investigación y de los proyectos vigentes del cuerpo académico. 6. REFERENCIAS [1] I. Sommerville. “Ingeniería del Software”. Pearson

Educación, 2005. [2] F. Medina. “Marco Metodológico para la Mejora de la

Eficiencia de Uso de los Procesos de Software”. Tesis Doctoral, Universidad Carlos III de Madrid, España, 2010.

[3] J. Vesperman. “Essential CVS”. O’Really Media Inc, 2007.

[4] M. Lasa. "Desarrollo de aplicaciones en entornos de software libre". Tesis de Maestría, Universitat Oberta de Catalunya, España, 2010.

[5] M. J. Rochkind. "The Source Code Control System", IEEE Transitions on Software Engineering, Vol. Se-1, No. 4, pp. 364-370, 1975.

Page 81: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

81

[6] B. O’Sullivan. “Mercurial: The Definitive Guide”. O’Really Media Inc, 2009.

[7] M. Koegel et al. "Comparing State- and Operation-based Change Tracking on Models”. Proceedings 14th IEEE International Enterprise Distributed Object Computing, EDOC2010, pp. 163-172, 2010.

[8] F. Solsona & E. Viso. “Manual de supervivencia en Linux”. Universidad Autónoma de México, Facultad de Ciencias, 2007.

[9] D. Otero. "Desarrollo de una aplicación Web para control de versiones de software". Tesis Doctoral, Universidad Carlos III de Madrid, España, 2011.

[10] B. Alwis & J. Sillito. "Why are Software Projects Moving from Centralized to Decentralized Version Control Systems?" Proceedings Workshop on Cooperative and Human Aspects on Software Engineering, ICSE2009. pp. 36-39, 2009.

[11] K. Hinsen; K. Läufer & G. K. Thiruvathukal. "Essential Tools: Version Control Systems". Journal of IEEE Computing in Science & Engineering, Vol. 11, No. 6, pp. 84-91, 2009.

[12] Concurrent Version System. Online [Feb. 2012]. [13] Apache Subversion. Online [Jan. 2012]. [14] M. Bar & K. Fogel. “Open Source Development with

CVS”. Paraglyph Press, 2003. [15] B. Collins-Sussman; B. W. Fitzpatrick & C.M. Pilato.

“Version Control with Subversion”. O´Reilly Media, 2004.

[16] C. Menegay. “Using Source Code Control in Team Foundation”. Microsoft Visual Studio 2005 Team System, 2005.

[17] Git. Online [Feb. 2012]. [18] Mercurial SCM. Online [Jan. 2012]. [19] A. Mockus. "Amassing and indexing a large sample of

version control systems: towards the census of public

source code history". Proceedings 6th IEEE International Working Conference on Mining Software Repositories, MRS '09", pp. 11-20, 2009.

[20] M. Fischer; M. Pinzger & H. Gall. "Populating a Release History Database from Version Control and Bug Tracking Systems". Proceedings International Conference on Software Maintenance, ICSM '03, pp. 23-32, 2003.

[21] C. Collberg et al. "A System for Graph-Based Visualization of the Evolution of Software". Proceedings 2003 ACM symposium on Software visualization, SoftVis '03, pp. 77-87, 2003.

[22] C. Müller et al. "Subversion Statistics Sifter". Lecture Notes in Computer Science Volume, Vol. 6455, pp. 447-457, 2010.

[23] C. Bird et al. "The Promises and Perils of Mining Git". Proceedings 6th IEEE International Working Conference on Mining Software Repositories, MRS '09", pp. 1-10, 2009.

[24] D. Rocco & W. Lloyd. "Distributed Version Control in the Classroom". Proceedings 42nd ACM technical symposium on Computer science education. SIGCSE'11, pp. 637-642, 2011.

[25] R. Kapitza; P. Baumann & H. P. Reiser. "Using Object Replication for Building a Dependable Version Control System". Distributed Applications and Interoperable Systems, Vol. 5053, pp.86-99, 2008.

[26] K. Aslan; H. Skaf-Molli & P. Molli. "Connecting Distributed Version Control Systems Communities to Linked Open Data". Proceedings the International Conference on Collaboration Technologies and Systems, CTS 2012, pp. 1-9, 2012.

[27] Bazaar. Online [Mar. 2012].

Page 82: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

82

DESCRIPCIÓN DE LOS COMPONENTES DE UN SISTEMA FEDERATIVO TIPO EDUROAM

Gustavo Vélez

Freelance [email protected]

(Tipo de Artículo: Reflexión. Recibido el 21/05/2012. Aprobado el 26/05/2012)

RESUMEN

Las federaciones de identidad están surgiendo en los últimos años con el fin de facilitar el despliegue de entornos de uso compartido de recursos entre las organizaciones. Como una característica común de estos entornos es el uso de mecanismos de control de acceso basado en la identidad del usuario, desafortunadamente, la mayoría de las federaciones se han dado cuenta que la identidad del usuario no es suficiente para ofrecer un control de acceso más grano y el valor agregado. Por lo tanto, la información adicional, como los atributos de usuario, deben ser tenidos en cuenta. En este artículo se hace la descripción de los componentes de un sistema federativo tipo Eduroam, teniendo en cuenta el uso de atributos de usuarios adoptando las decisiones de autorización durante el control del proceso de acceso. Palabras Clave

Eduroam, sistema federativo, identidad del usuario, control de acceso, federaciones, recursos compartidos.

DESCRIPTION OF THE COMPONENTS OF A FEDERATED SYSTEM OF TYPE EDUROAM

ABSTRACT Identity federations are emerging in recent years to make easier the deployment of environments of shared-use resources between companies. A common feature of these environments is the use of mechanisms for access control based on the identity of the user; unfortunately, most of federations have found that the identity of the user is not enough neither to provide a more grained access control nor the added value. Therefore, additional information, such as user attributes, must be taken into account. This article describes the components of a federated system of type Eduroam, considering the use of user attributes adopting authorization decisions during the control of access process. Keywords Eduroam, federated system, user's identity, access control, federations, shared resources.

DESCRIPTION DES COMPOSANTS D’UN SYSTEME FEDERE DU TYPE EDUROAM

RÉSUMÉ Les fédérations d’identité sont apparues ces dernières années pour faciliter le déploiement d’environnements d’usage partagé de ressources entre les entreprises. Une caractéristique commune de ces environnements est l’usage de mécanismes de contrôle d’accès en se basant sur l’identité des utilisateurs, mais la plupart des fédérations ont compris que l’identité des utilisateurs n’est pas suffisante pour offrir un contrôle d’accès plus grain et la valeur ajoutée. Par conséquent, toute l’information additionnelle, comme les attributs des utilisateurs, doit être considéré. Dans cet article on fait la description des composants d’un système fédéré du type Eduroam en considérant les attributs des utilisateurs en adoptant les décisions d’autorisation pendant le contrôle du processus accès. Mots-clés Eduroam, système fédéré, identité d’utilisateur, contrôle d’accès, fédérations, ressources partagés.

G. Vélez. “Descripción de los componentes de un Sistema Federativo tipo Eudoroam”. Ing. USBMed, Vol. 3, No. 1, pp. 82-86. ISSN: 2027-5846. Enero-Junio, 2012.

Page 83: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

83

1. INTRODUCCION En los últimos años se ha experimentado el surgimiento de enfoques federados en los recursos compartidos. Las federaciones, entendidas como vínculos de confianza, se establecen entre las diferentes organizaciones autónomas con el fin de otorgarles a los usuarios el acceso a los recursos compartidos con una sola identidad. Ejemplos importantes de estos enfoques son la creación de federaciones del mundo académico y los conceptos alrededor del Grid Computing. De hecho, muchos aspectos de este enfoque federado han sido planteados por varios proyectos, como por ejemplo, Santo y Seña [1] y Liberty Alliance [2]. Sin embargo, otros aspectos generalmente relacionados con la gestión de identidad integral aún están abiertos, especialmente frente a las propuestas. En cuanto a la movilidad del usuario y la movilidad de la Fuerza de Tarea TERENA [3] se establece como un foro para el intercambio de experiencias y conocimientos sobre las tarifas de itinerancia de las diferentes actividades de desarrollo en la Unión Europea. Como resultado de este esfuerzo, este grupo de trabajo ha definido y probado una arquitectura entre los Sistemas Nacionales de Investigación y Redes de la Educación NREN de roaming, llamada Eduroam [4], sobre la base de AA de servidores RADIUS [5] y el estándar 802.1X [6]. El Eduroam les permite a los usuarios y a las instituciones participantes acceder a Internet utilizando su casa como credencial de la institución, todo esto con una carga administrativa mínima. Dependiendo de las políticas locales, en las instituciones que utilizan este servicio los participantes de Eduroam cuentan también con recursos adicionales a su disposición, llegando al punto de utilizar el sistema como mecanismo de autenticación y autorización a fin de intercambiar información —credenciales— acerca de los usuarios. El objetivo principal del proyecto DAME [7] es definir esta autenticación unificada a través de un sistema de autorización para servicios federados alojado en la red Eduroam, con el fin de permitir el uso de las credenciales del usuario cómo medio autorizador. Estos servicios federados pueden ir desde el control de acceso a la red de servicios distribuidos, como Grid Computing. Eduroam define la federación cómo el proceso de autenticación de gestión. Con el fin de lograr esto, DAME hace uso de la infraestructura NAS-SAML [8], un sistema de control de acceso a la red basado en la arquitectura AA a partir de atributos de autorización. La propuesta se basa en lenguaje de marcado de aserción de seguridad SAML [9] y el extensible Control de acceso Markup Language XACML [10], normas que se utilizan para expresar y acceder a las políticas de control basadas en los atributos, las declaraciones de autorización y los protocolos de autorización. De acuerdo con esto en este artículo se establece información que proporciona una visión general del

servicio Eduroam, definiendo la infraestructura subyacente de roaming y describiendo el NAS-SAML y el acceso a la red de servicios de control que proporciona la red Eduroam.

2. EDUROAM (Education Roaming) Es un servicio de roaming interinstitucional basado en la red 802.1X y una arquitectura de infraestructura jerárquica basada en RADIUS. Esta iniciativa les permite a los usuarios móviles de las instituciones participantes acceder a Internet en diferentes lugares, utilizando las credenciales de su institución de origen y con un costo administrativo mínimo de sobrecarga.

El servidor de nivel superior de la jerarquía RADIUS lo proporcionan TERENA y los NREN pertenecientes a Eduroam desde los cuales esas infraestructuras se encuentran conectadas. Por último, cada institución que esté dispuesta a unirse tendrá la facilidad de conectarse al servidor a través de los NREN [11].

Un ejemplo de este proceso es cuando el usuario de una institución A busca tener acceso a la red inalámbrica en la Institución B y ambos pertenecen a la federación, en esta situación el control de acceso se lleva a cabo siguiendo el estándar 802.1X, es decir, al usuario conectado al punto de acceso inalámbrico AP en su servidor local, RADIUS le facilita que se lleve a cabo su identificación. Una vez que el servidor identifica que el usuario pertenece a un dominio diferente y con base en el identificador de usuario, la solicitud de autenticación se envía a través de la jerarquía de RADIUS para el servidor en el centro de origen del usuario [12]. A continuación, el usuario se autentica y la respuesta se envía de vuelta a la Institución B, donde el AP permite la conexión solicitada, como se puede observar en la Figura 1.

Fig. 1: Infraestructura Eduroam con los mecanismos de

autorización [4]

3. ANÁLISIS DE LAS ESTRUCTURAS DERIVADAS DE LA INTEGRACIÓN EDUROAM - NAS-SAML

La integración de NAS-SAML en Eduroam como servicio de autorización puede llevarse a cabo de varias maneras, dependiendo de los requisitos impuestos por las instituciones participante o la aplicación de AA. Por un lado, la entidad objetivo debe recibir la información adicional que describe el usuario de la institución origen; por otro lado, la información obtenida se debe utilizar en la institución de destino para determinar si el usuario puede acceder al servicio que solicita.

Page 84: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

84

Una primera aproximación a dicho proceso, que se puede denominar autorización de fusión, le permite a la institución de origen tener una estrategia para devolver la información sobre el usuario en el mismo canal establecido de autenticación. Es decir, cuando RADIUS recibe la solicitud de autenticación de la institución origen la remite a la infraestructura NAS-SAML, donde se autentica y recuperan algunos atributos adicionales. Esa información puede ser codificada en la respuesta como atributos de RADIUS. Desde el sistema NAS-SAML se trabaja con el traductor Radius Diámetro [13], el cual se debe utilizar como una puerta de entrada para acceder a la arquitectura NAS-SAML. Una vez el servidor RADIUS destino obtiene dicha información, se lleva a cabo una consulta a un elemento local de la infraestructura NAS-SAML, el PDP, con el objetivo de obtener la decisión de autorización. Por último, una vez obtenida autorización de entrada, los RADIUS apropiados se devuelven a la AP, de tal forma que este enfoque se puede considerar de óptima relación de dominio entre las comunicaciones. El principal inconveniente de esta alternativa es la extensión y, por tanto, el uso de RADIUS estándar no denominados como atributos para el transporte de la información acerca de los usuarios entre las diferentes instituciones, se debe pasar por alto en cualquier servidor RADIUS intermediario [14]. Con el fin de evitar la modificación del proceso de autenticación se define el Eduroam mediante la introducción de los atributos no estándar; una segunda alternativa se puede definir a través de las llamadas autorizaciones independientes. El proceso de autorización debe comenzar una vez que la autenticación de se ha creado a raíz de los perfiles actuales de Eduroam. Una vez que el servidor RADIUS objetivo recibe la respuesta de autenticación, la fase de autorización se inicia para determinar el tipo de servicio que se suministrará. Esta etapa también se realiza través de NAS-SAML, en primer lugar, para recuperar la información sobre el usuario de la institución base y, a continuación, para obtener la decisión de autorización en la institución destino. Considerando que este enfoque no modifica el proceso de autenticación, se introduce la necesidad de la definición de una interfaz entre el servidor RADIUS y la arquitectura NAS-SAML —diámetro base— para solicitar decisiones de autorización y las obligaciones derivadas de esa decisión. Además, este enfoque tiene dos inter-dominios comunicacionales que son, en primera instancia, la autenticación y la autorización; por lo tanto, a partir de estos dos puntos se soporta la introducción de una sobrecarga adicional para la autenticación y la autorización y la introducción de una sobrecarga adicional. Una tercera alternativa, siguiendo el mismo método de autenticación diferenciada y los diferentes pasos de

autorización, se podría lograr mediante la ampliación del protocolo RADIUS con un nuevo perfil de la definición de nuevos atributos y mensajes. De esta manera la fase de autorización facilitaría el uso del protocolo RADIUS como un mecanismo de transporte para obtener la información necesaria para el proceso de autorización, en la actualidad esta propuesta está siendo desarrollada por Internet 2 [15].

4. ESTABLECIENDO UNA ACCION GENERADORA DE EDUROAM

Es necesario tener en cuenta que el sistema Eduroam ya ha sido desplegado, en otras palabras, cientos de instituciones lo están utilizando; por lo tanto es necesario introducir cambios gradualmente y manteniendo hacia atrás la compatibilidad. De este modo se han diseñado ambas alternativas, pero sólo se mantienen independientes por el tipo de autorización que se ha aplicado hasta el momento y porque es el más adecuado para las pruebas iniciales en los sistemas comunicacionales.

Frente a la búsqueda de una ampliación de la infraestructura Eduroam, con el fin de ofrecer mecanismos de autorización con el mínimo impacto en las instituciones dispuestas a seguir utilizando el proceso estándar, se ha decidido preservar el mecanismo de autenticación actual en el enfoque aplicado —autorización independiente— para desplegar una nueva autorización desde la infraestructura. De este modo, empleando estos mecanismos, las instituciones pueden decidir alternativamente sí desean utilizar un servidor RADIUS extendido conectado a la arquitectura NAS-SAML de la autenticación y autorización o un archivo estándar, es decir, sólo la autenticación. En la Figura 2 se muestra este enfoque.

Fig. 2: Implementación de la arquitectura Eduroam [1]

Por otra parte, de acuerdo con el enfoque que se observa en la Figura 3, una vez que el usuario móvil se registra siguiendo el mecanismo de Eduroam estándar, el servidor RADIUS destino utiliza la infraestructura NAS-SAML para conducir el proceso de autorización. Por lo tanto, el servidor principal Diámetro se consulta acerca de los atributos del usuario y, una vez que esta información se recupera, se obtendrá una decisión autorizadora mediante el PDP [16].

Además, un conjunto de obligaciones puede ser devuelto junto con la decisión de autorización que contiene algunas de las propiedades específicas de la red que puedan ser aplicadas por el punto de acceso.

Page 85: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

85

Fig. 3: Propuesta para la ampliación de la infraestructura

Eduroam con los mecanismos de autorización [4]

El servidor Diámetro objetivo envía un mensaje en el servidor de casa, incluyendo una sentencia SAMLA ttributeQuery, que contiene la identidad del usuario, es en este momento donde se establecen los atributos establece atributos (AA), desde una política de lanzamiento de atributos. Esta política, basada en XACML, especifica el usuario atributos que se pueden liberar de esa institución de destino. Una vez establecido lo anterior, los atributos permitidos, y sus valores correspondientes, se envían de vuelta por medio de una sentencia SAML Attribute Statement. Una vez que los atributos son recuperados en la institución destino, se envía una solicitud SAML Authorization Decision Query al Punto de Decisión de Políticas PDP. Esta consulta contiene la identidad del usuario, el identificador de recursos, la acción solicitada y los atributos del usuario. Con esta información el PDP es capaz de obtener la decisión de autorización y de acuerdo con la política de acceso a los recursos que también se basa en la tecnología de XACML. Por último, el PDP devuelve una respuesta SAML Authorization Decision Statement, que puede contener obligaciones específicas. El mecanismo utilizado por el servidor de diámetro establece el objetivo de encontrar el servidor principal que pueda estar basado en el identificador de usuario, tal como lo define [17]. 5. EXPERIENCIA DE EDUROAM EN USA Como uno de los exponentes más importantes que ha debatido la experiencia del Sistema Eduoram en Estados Unidos se encuentra Ken Klingenstein, quien ha sido muy activo en lo que respecta al actual esfuerzo de la implantación de Eduroam e Internet en el país, a partir de la experiencia InCommon y el Grupo de soluciones comunes [18]. De estas discusiones se obtuvo un compendio de ideas y de intereses y apoyo acerca del tema en general, vislumbrando el esfuerzo de mover Eduroam Estados Unidos hacia delante. Por otra parte, Philippe Hanset aplicó una sesión de presentación y otra BOF para discutir esta temática. Actualmente, Philippe Hanset se encuentra en las últimas etapas de la aplicación para una beca de la

Fundación Nacional de Ciencias en relación con software para Eduroam. Dentro de las ideas principales se tienen: (1) Una colección de herramientas de software, que actualmente no existe, para apoyar el servicio en las áreas de automatización, (2) el monitoreo RADIUS para análisis de registros de seguridad y apoyo, (3) la depuración en una infraestructura que abarque todas las zonas horarias, (4) explorar una integración con perfSONAR, un proyecto Internet, (5) una interfaz entre el InCommon existente y las federaciones Eduroam utilizando el estándar SAML para mejorar el aspecto de cortesía de los dos servicios, que se llevaría a cabo en colaboración con la Federación InCommon y (6) la participación activa en el desarrollo de la generación de Eduroam que se realiza en colaboración con los proyectos GN2 y GN3, financiados por la Unión Europea [19]. Además del desarrollo del software, ce centrará mucho esfuerzo en documentar el servicio y sus herramientas, así como en escribir un Acuerdo de Nivel de Servicio y las políticas asociadas. La infraestructura actual, ya instalado en UTK, se convertirá en un sistema de alta disponibilidad. Hanset ha llevado y sigue llevando la mayor parte de la carga por el esfuerzo Eduroam-Estados Unidos. 6. RECOMENDACION PARA ESTABLECER

PROPUESTAS EN COLOMBIA A través de la experiencia académica de los sistemas de información de las universidades colombianas, surge la propuesta de intervención de un sistema que permita el manejo adecuado de los mecanismos de autenticación y autorización que es el cuello de botella de muchas de esas instituciones. Este hecho problema se presenta cuando se tiene en cuenta el constante cambio de los usuarios, inducida por su naturaleza abierta y por el establecimiento adecuado de un programa de autenticación y autorización de infraestructuras y, sobre todo, de los esquemas que permitan su integración a través de los mecanismos de las TIC, tanto académicos como administrativos. Dentro de los objetivos que se establecen para poner en marcha el programa de autenticación y autorización de usuarios académicos se encuentra: Establecer un sistema que sirva a las necesidades

de cualquier usuario en las instituciones participantes: personal administrativo, estudiantes, investigadores, profesores…,

Buscar un sistema que les permita a las instituciones seleccionar la tecnología que prefieran para la conexión, con base en un estado de gestión de identidades.

Establecer esquemas estándar para el intercambio

de datos de personal con gran respeto por la privacidad del usuario y su consentimiento.

Page 86: FACULTAD DE INGENIERÍAS

Ing. USBMed, Vol. 3, No. 1, Enero-Junio 2012

86

Implementar acciones de referencia para la validación y los propósitos de prueba.

Crear una serie de casos de uso comunes que podrían ser utilizados para el despliegue de los servicios, con un enfoque especial de servidor interactivo.

Utilizar tanto software de código abierto como sea

posible. Como metodología de intervención el proyecto establece la utilización de tecnologías basadas en la utilización de infraestructuras Eduroam con mecanismos de autorización. Cada institución participante instalará al menos un proveedor de identidad conectado a su gestor de infraestructura y su sistema de datos relacional, de tal manera que las identidades del usuario real se utilicen como servicios pilotos. Además, se busca que algunas de las instituciones desplieguen servicios federados para ser usados por la comunidad. El software que se necesita para poner en práctica dichos servicios, será utilizado por los miembros del grupo de trabajo designado para dicho fin a través de las respuestas de autorización Eduroam. Con el fin de identificar las necesidades que deben ser abordadas, los miembros más expertos del grupo deben señalar los puntos débiles frente a la implementación de los federativos de dominio Eduroam. Una vez que los requisitos y las mejoras han sido recogidos, el grupo de trabajo elaborará un documento con las especificaciones y los protocolos de funcionamiento. Durante las fases de diseño y de prueba, esta validación se realizará con base en la producción de los servicios de producción de algunas de las instituciones participantes y el éxito del programa como tal. 7. CONCLUSIONES Este artículo presenta cómo establece el sistema Eduroam una estandarización de un usuario real y el servicio de roaming ampliamente desarrollado por una red inter-NREN, del cual se puede tomar ventaja la utilización de la autorización de los servicios, con el fin de ofrecer un acceso más graneado de la red de control de procesos.

El servicio de autorización basado en NAS-SAML, tratado en el documento, define los componentes de la arquitectura que se deben utilizar con el fin de integrar ambos escenarios. La propuesta de arquitectura proporciona dos alternativas diferentes a fin de tener en cuenta los requisitos de las instituciones involucradas, como el nivel de intrusión en el desplegado y la autenticación de la infraestructura o los requisitos de latencia. El primer enfoque —la autorización de fusión— permite un dominio remoto para obtener las credenciales de autorización en el mismo canal de autenticación, lo que implica unos

requisitos mínimos de latencia. Por otro lado, el sistema debe hacer uso de los atributos RADIUS no estándar con el fin de transportar la autorización de las credenciales, las cuales pueden ser distribuidas en los servidores intermedios.

El segundo enfoque —autorización independiente—define el proceso de control de acceso conjunto en dos etapas: el proceso de autenticación, a través de la infraestructura de RADIUS subyacente y el proceso de autorización, a través de la infraestructura NAS-SAML. Este enfoque genera e implica un mayor impacto en la estructura de los sistemas Eduroam, permitiendoles a las instituciones mantener el proceso de autenticación de corte tradicional sin ninguna alteración.

8. REFERENCIAS

[1] S. Cantor & T. Scavo. “Shibboleth Architecture. Technical Overview”. 2005.

[2] J. Beatty. “Liberty Protocols and Schema Specification Version 1.1”. 2003.

[3] Terena. Trans-European Research and Education Networking Association. Online [Jun. 2011].

[4] K. Wierenga & L. Florio. “Eduroam: past, present and future”. Computational methods in science and technology, Vol. 11, No. 2, pp. 169-173, 2005.

[5] C. Rigney et al. “Remote Authentication Dial in User Service (RADIUS)”. Network Working Group, 2000.

[6] L. Man. “IEEE Draft P802.1X/D11. Standards for Local

and Metropolitan Area Networks: Standard for Port based Network Access Control”. IEEE, 2001.

[7] Dame. Data Mining & Exploration Project. Online [Jun. 2011].

[8] G. López et al. “A network access control approach based on the aa architecture and authorzation attributes”. Journal of Network and Computer Applications, Vol. 30, No. 3, pp. 900-919, 2007.

[9] M. Eve; M. Prateek & P. Rob. “Assertions and Protocols for the OASIS Security Assertion Markup Language”. Oasis Open, 2004.

[10] A. Anderson. “Extensible Access Control Markup Language (XACML)”. Technology Report, 2003.

[11] C. De Laat et al. “Generic AAA Architecture”. Network Working Group, 2003.

[12] O. Cánovas; G. Lopez & A. F. Gómez-Skarmeta. “A credential conversion service for SAML-based scenarios”. Lecture Notes in Computer Science, Vol. 3093, pp. 297-305, 2004.

[13] P. Calhoun et al. “Diameter Network Access Server Application”. AAA Working Group, 2003.

[14] P. Calhoun et al. “Diameter base protocol”. Network Working Group, 2003.

[15] S. Carmody. “Radius profile of SAML”. Brown University, 2006.

[16] G. López; O. Cánovas & A. F. Gómez. “Use of XACML policies for a network access control service”. Proceedings of the 2005 conference on Applied Public Key Infrastructure: 4th International Workshop: IWAP 2005, pp. 111-122, 2005.

[17] S. Skarmeta & D. Chadwick. “A heterogeneos network access service based on PERMIS and SAML”. Lecture Notes in Computer Science, Vol. 3545, pp. 55-72, 2005.

[18] A. Filip & E. Vásquez T. “Seguridad en redes WIFI Eduroam”. Escuela Técnica Superior de Ingenieros, 2010.

[19] Eduroam. Onlilne [May. 2012].