domingo, 12 de diciembre de 2010

Tiempos de Cambio: OSSTMM 3 - Una Introducción


Introducción

Algunos días atrás, recordaba gratamente cuando allá por el 2000, comenzaba a interesarme por las tarea de un reducido numero de personas, quienes bajo el nombre de Ideahamster (Nickname con el que suele referirse a aquellas personas que dan vueltas alrededor de nuevas ideas, tal como un hamster lo hace con su rueda), planeaban llevar adelante un conjunto de proyectos relacionados con seguridad de la información, que para el momento lucían revolucionarios.

Quizás el mas promisorio de estos proyectos, era el que ya por aquel entonces se publicaba bajo el mismo nombre por el cual hoy lo conocemos: OSSTMM (“Open Source Security Testing Methodology Manual”), claro esta que de aquel documento con no mas de 12 paginas en su versión inicial, al material con mas de 200 que pronto podrán disfrutar, muchas son las cosas que han cambiado. 

En tal sentido, el presente articulo tiene por objeto, presentar brevemente ISECOM y uno de sus mas importantes proyectos (El OSSTMM), a todos aquellos que aun no han tenido oportunidad de conocerlos, como así también contar a cada uno de los profesionales que al rededor del mundo utilizan o se basan en el OSSTMM para llevar adelante sus trabajo diario relacionado con evaluaciones de seguridad, mi opinión personal respecto de algunas de las novedades que podrán encontrar en la versión 3 de dicho manual próxima a publicarse, y como estas probablemente impacten en su trabajo.

Conociendo ISECOM

ISECOM (Institute for Security and Open Methodologies), es una organización internacional sin ánimo de lucro, que trabaja desde hace mas de diez anos, en el desarrollo de metodologías de libre utilización para la verificación de la seguridad, la programación segura, la verificación de software y la concientización en seguridad.

Dirigida por Pete Herzog y Marta Barceló Jordan, y con el apoyo de gran parte de la comunidad de profesionales de la seguridad de la información, ISECOM ha estado trabajando desde sus inicios como Ideahamster, en una serie de proyectos los cuales con el tiempo, se han convertido en recursos de consulta obligada por parte del profesional.

Dentro de ISECOM, no solo se han gestado proyectos de la talla de la OSSTMM (Open Source Security Testing Methodology Manual) comentado en estas mismas páginas, sino que por el contrario, otros tales como SCARE (Source Code Analysis Risk Evaluation), HSM (Home Security Vacation Guide), HHS (Hacker High School: Information Awareness for Teens) o el mas reciente BPP (Bad People Project) por mencionar solo alguno de ellos, sin lugar a dudas se han hecho merecedores del privilegiado lugar que hoy ostentan.

Conociendo el OSSTMM

El OSSTMM por sus siglas en ingles “Open Source Security Testing Methodology Manual” o “Manual de la Metodología Abierta del Testeo de Seguridad” tal como fuera nombrada oficialmente su versión en español, es uno de los estándares profesionales más completos y comúnmente utilizados a la hora de revisar la Seguridad de los Sistemas desde Internet.

Creado por Pete Herzog (Manager Director de ISECOM) y fruto del esfuerzo ininterrumpido de sus mas de 150 colaboradores directos, quienes junto a la comunidad mundial de profesionales de la seguridad en su conjunto, han sabido conjugar en este exquisito proyecto la dosis correcta de ambición, estudio y años de experiencia; el OSSTMM se ha convertido en un estándar profesional de facto, cuando del testeo de la seguridad en cualquier entorno desde el exterior al interior se trata.

La aparición de la primera versión del OSSTMM en Diciembre del 2000, ha marcado un punto de inflexión, revolucionando el modo en el que los testeos de seguridad son llevados a cabo, dotando al mismo tiempo a las personas que desarrollamos dichos testeos, de un marco de trabajo que permite brindar servicios de alta calidad y absoluta transparencia.

Si bien dicha afirmación podría ser tomada por algunos como exagerada, lo cierto es que hasta que el OSSTMM fuera publicado, no existía documento alguno que recogiera de forma abierta y estandarizada, las diferentes necesidades del profesional al momento de realizar una verificación de seguridad o las mismas existían pero carecían de aspectos tales como el carácter abierto y el sentido de colaboración por parte de la propia comunidad profesional, pilares esenciales a partir de los cuales se encuentra construido el OSSTMM.

A lo largo de estos años mucho ha sido el esfuerzo y el trabajo de investigación llevado adelante por el equipo de ISECOM, no obstante no muchas han sido las versiones de carácter publico, aunque cada una de ellas ha brindado muestras claras de la dirección que el proyecto debía tomar, siendo esta, una que permitiera arribar a una metodología capaz de cubrir las necesidades del profesional de seguridad y las organizaciones, respecto de las tareas de evaluación de la seguridad, siendo capaz a la vez de evolucionar de modo tal que fuera posible eliminar la mayor cantidad posible de subjetividades de los test de evaluación, brindando de este modo una visión algo mas “científica” de la tarea.

Ahora bien, para aquellos que nada conocen del manual, comenzaré diciendo que desde sus primeras versiones el OSSTMM comprende gran parte de los aspectos a tener en cuenta al momento de realizar testeos de seguridad desde el exterior hacia el interior y esto no ha cambiado en la ultima versión.

Quizás uno de los aspectos que mas me ha impresionado la primera vez que tome contacto con versiones primitivas de OSSTMM, es que el mismo no solo alcanza los ámbitos técnicos y de operación de seguridad tradicionales, sino que se encarga de fijar estándares respecto de aspectos tales como: las credenciales del profesional a cargo del test, la forma en la que el test debe ser comercializado desde el inicio mismo de su ofrecimiento de cara al cliente, la forma en la que los resultados del mismo deben ser presentados, las normas éticas y legales que deben ser tenidas en cuenta al momento de concretar el test y los tiempos que deberían ser tenidos en cuenta para cada una de las tareas. Todos y cada uno de estos puntos, se encuentran claramente definidos a lo largo de la metodología.

A pesar que lo mencionado hasta aquí, puede darnos una idea de la importancia de contar con una herramienta como el OSSTMM a la hora de llevar adelante nuestras evaluaciones de seguridad, sin dudas un concepto aun mas importante ha sido la introducción a partir de la versión 2.2 (¿?), de los denominados RAVs o “Valores de Evaluación de Riesgo” y con ellos todo un mundo de nuevas posibilidades, pero de esto hablaremos unos párrafos mas adelante, puesto que los RAVs son considerados parte fundamental en la ultima entrega del OSSTMM.

Un primer vistazo a la versión 3 del OSSTMM

Ahora si, habiendo sentado las bases de conocimiento mínimo necesario respecto de ISECOM y el OSSTM, me concentrare a continuación, en intentar brindar en tan solo algunos párrafos, algunas de las características que en mi opinión, hacen de la versión 3 (3.01) del OSSTMM una metodología varias veces mejor que su antecesoras, en muchos y diversos aspectos!

Comencemos! Probablemente coincidan conmigo respecto que una metodología de seguridad, no es una cosa simple. De hecho, para ser efectiva, una metodología debe ser capaz de tomar procesos complejos y reducir los mismos a un conjunto de componentes de fácil comprensión y capaces de describir a través de primitivas, procesos complejos! Claro que si todo esto puede medirse de algún modo, mucho mejor!

Cada nueva versión del OSSTMM ha mostrado ser mas efectiva que la anterior a la hora de medir la seguridad a un nivel operativo, intentando eliminar la evidencia anecdótica basada en presunciones realizadas por parte de las personas involucradas en un test, puesto que como metodología, el OSSTMM ha sido designado para ser consistente y repetible.

Ahora bien… lo cierto, es que con cerca de 130 paginas y varias secciones incompletas, la ultima versión públicamente disponible del OSSTMM (2.2) en Diciembre del 2006, no terminaba de descubrir la verdadera visión que sí comenzaría a verse plasmada recién en el 2008, cuando la aparición de lo que se dio en llamar OSSTMM v3 Lite, nos permitió comenzar a comprender el giro radical que la metodología comenzaría a sufrir.

Pero de que estamos hablando cuando hablamos de OSSTMM 3 (3.01)?? Un nuevo update?? Definitivamente no... En rigor de verdad, en su ultima entrega nos encontramos frente a una metodología completamente re-escrita, la cual a la luz de los resultados, sin dudas valió la pena esperar!

Al iniciar la lectura de esta nueva versión, uno encuentra rápidamente respuesta a la eterna pregunta que nos ha tocado responder en mas de una oportunidad: Por que tanta demora en la publicación de la nueva versión? Cuando será liberada? Se dará continuidad al proyecto? ... bien dicha respuesta es sumamente sencilla!! Sucede que mucha nueva investigación debió ser llevada a cabo antes de escribir gran parte de este manual, de modo tal que pueda ser provisto de un método científico por medio del cual seamos capaces de obtener una visión clara y acertada de la seguridad operacional, a través de la exanimación y correlación de resultados obtenidos a lo largo de un conjunto de pruebas y la materialización de formulas capaces de brindar información cuantitativa respecto del riesgo operacional identificado en cada una de nuestras evaluaciones!

Tiempos de Cambio

Pero si vamos a mencionar aquellos aspectos en verdad trascendentes en esta versión, debemos comenzar por el principio. Recuerdan haber leído acerca de los RAVs en el OSSTMM v2.2?? y en la versión 3 Lite?? Citando lo que leíamos por aquel momento en el OSSTMM, los “Valores de la Evaluación de Riesgo” o RAVs, básicamente se definen como la degradación de la seguridad (o elevación del riesgo) sobre un ciclo de vida específico, basándose en mejores prácticas para tests periódicos. Bien... tengo una buena y una mala noticia... la buena es que las formulas de calculo detrás de ellos ha sufrido una mejora excepcional, convirtiéndolos en una herramienta imprescindible, como así también en la espina dorsal de la nueva metodología. La mala... es que las métricas de la versión 2.2 no son compatibles con esta nueva versión y deben ser re calculadas :) pero créanme... incluso este punto, sin dudas pueda ser considerado una buena noticia!


Un dato importante, es que ahora todo lo relativo a RAVs, se encuentra muy bien documentado, permitiendo que su entendimiento se encuentre al alcance de todos incluso siendo un tema complejo en muchos aspectos. La verdad es que en versiones anteriores, debía ponerse mucho esfuerzo en comprender los diversos conceptos asociados al cálculo de estas métricas. A partir de una nueva y completa sección al respecto, seguramente los mismos se encuentren al alcance de mucha mas gente… y esto es realmente bueno!

Un aspecto que sin dudas traerá sonrisas a más de un profesional, es la introducción del concepto de dashboards a la hora de mostrar resultados procedentes de los RAVs, a partir de los cuales es posible comunicar fácil y claramente, el nivel de seguridad del objetivo a testear, en diferentes momentos temporales. Dicha funcionalidad, no solo permite dotarnos de una excelente herramienta a la hora de comunicar resultados a la gerencia, sino que a su vez, permite estar en sintonía con los diversos aspectos de “Cumplimiento” a los que a diario, solemos encontrarnos atados.

Otro punto a tener en cuenta en esta nueva versión, es el re-ordenamiento sufrido en lo que antiguos usuarios del OSSTMM recordaran como el Mapa de Seguridad. Este se compone tal como se introdujera en la versión OSSTMM 3 Lite, de 3 clases (Physical Security-PHYSSEC, Spectrum Security-SPECSEC y Communications Security-COMSEC) divididas en 5 canales (Human, Physical, Wireless, Telecommunications & Data Networks) y 17 módulos por cada canal. Si bien parecería en principio no ser un gran aporte respecto de versiones anteriores, la forma en la que la metodología aborda cada una de las acciones dispuestas detrás de cada canal y la utilización de un mismo camino para cada modulo, permiten simplificar enormemente su uso.
Por otra parte, esta nueva versión, se encuentra totalmente orientada a la generación de métricas respecto de la seguridad operacional y esto se desprende de la lectura de cada página. De este modo, mucho esfuerzo se ha puesto en la generación de algoritmos capaces de determinar la superficie de ataque, sin importar que tan extraño sea nuestro TOE (Target of Evaluation). De que modo se logra tal objetivo? En parte generando escalas numéricas capaces de mostrar cuan desprotegido y/o expuesto se encuentra el TOE al momento de ser evaluado. Y cual es la ventaja? Básicamente la posibilidad de utilizar OSSTMM, incluso en proyectos no convencionales de evaluación!

Por ultimo, pero no por ello menos importante, otro punto que ha sufrido mejoras importantes, es la sección relacionada con el modo en que los resultados del análisis son reportados. STAR (Security Test Audit Report) sigue siendo el camino para mostrar hallazgos producto de un análisis OSSTMM, aunque esta vez, el manual dispensa muchas mas paginas e información, respecto de cómo el mismo puede ser elaborado de modo tal que cada uno de los resultados, permita observar claramente el estado de seguridad a un momento determinado.

Consejos Fundamentales a la Hora de acercarse al OSSTMM 3

Bien… hasta aquí e intentado en tan solo algunos párrafos, brindar alguna información respecto de ISECOM, OSSTMM y algunas de sus nuevas y renovadas características. Sin embargo, tal ha sido el cambio en esta nueva versión, que ha sido necesario incluso generar nuevo vocabulario o al menos darle nuevo sentido a algunas viejas definiciones conocidas por todos los profesionales de seguridad de la información. Por tal motivo, es probable que estos cambios, puedan desorientarte al tener el primer contacto con la metodología. Si así fuera… que esto no te desanime... cambios es a lo que sin dudas estamos acostumbrados en nuestra profesión! Incluso si estos plantean modificar conceptos sumamente arraigados en el ámbito de nuestra profesión…

Mi consejo es que intentes poner en blanco tu cabeza y comprender el porque de cada cambio como un todo dentro del contexto especifico de la metodología. Solo de este modo, será posible sobrellevar la típica resistencia al cambio, a la cual nosotros mismos solemos referirnos con frecuencia, cuando hablamos de lo difícil de implementar determinadas acciones en nuestros clientes.

Recuerda que puedes estar en desacuerdo con muchas de las cosas que el OSSTMM propone, la buena noticia… es que se trata de un proyecto abierto a la colaboración! Por lo tanto… no tienes mas que unirte al grupo de desarrollo y discutir tu punto de vista! Sin dudas tu ayuda será apreciada!

En resumen, el OSSTMM ha mostrado a través de esta versión, que es posible crear una mirada diferente, de las mismas cosas con las que hemos venido trabajando hace años. También ha demostrado que con esfuerzo, muchas horas de investigación y una comunidad activa e interesada en el desarrollo de herramientas abiertas y de calidad, todo es posible. Ahora te toca a ti utilizar esta y retroalimentar el proyecto a través de tu experiencia de campo. Bienvenido al mundo de OSSTMM, bienvenido a El Manual que estabas esperando.


CISSP-CSSLP-CEH-MCP-QCS
Security Director at SIClabs