Artículo BIT
Metodología de Desarrollo Web Seguro Basado en Formación a Medida
Metodología de Desarrollo Web Seguro Basado en Formación a Medida Rafael San Miguel Carrasco La Política de Seguridad de una organización es un instrumento eficaz para proteger los recursos que posibilitan la práctica del modelo de negocio de dicha organización. Habitualmente, las políticas diferencian la aplicación de medidas de carácter organizativo, administrativo o de gestión de aquellas fundamentalmente técnicas, que consisten en la implantación de sistemas de seguridad hardware/software en la infraestructura tecnológica existente. Sin embargo, la combinación de ambas puede dar lugar a nuevos conceptos de solución más transparentes a la evolución de la tecnología: en este artículo se presenta una solución para prevenir intrusiones web basada en la formación a medida en el ámbito de la auditoría técnica de seguridad. METODOLOGÍA PROPUESTA Cada vez son más las organizaciones que dependen de la fiabilidad de sus servicios web para lograr sus objetivos de negocio. Por otra parte, el mercado exige que dichos servicios evolucionen rápidamente para adaptarse a las necesidades cambiantes del usuario y ofrecer en todo momento una propuesta diferenciada e innovadora. Este marcado carácter dinámico puede entrar en conflicto con los requisitos de seguridad que indudablemente deben definirse para cada servicio. En muchos casos no es posible realizar pruebas de seguridad sobre los servicios en proceso de desarrollo antes de que éstos se trasladen a entornos productivos. Por este motivo, es preciso implantar una metodología de desarrollo e integración seguros en la que estas pruebas no sean necesarias. Esta metodología está basada en la integración de cuatro actividades: análisis del entorno de desarrollo (AED), realización de pruebas de intrusión (RPI) sobre los servicios web, sesiones de concienciación (SC) y formación especializada (FE) a cada uno de los perfiles del equipo de desarrollo. En la siguiente figura se presenta una versión esquemática de la metodología propuesta, en la que se observa la interrelación entre las cuatro actividades. FASES DEL PROYECTO En las secciones sucesivas se describen cada una de las etapas que aparecen en el diagrama. El objetivo es proporcionar una visión completa y general de la forma en la que puede ponerse en práctica la metodología propuesta. Análisis del entorno de desarrollo En esta fase se estudian diferentes aspectos del enfoque de programación utilizado por el equipo de desarrollo web de la organización. De esta forma se consigue una fotografía del estado actual que permite adecuar los nuevos procedimientos de desarrollo seguro a la metodología existente. Algunos de los aspectos que se contemplan en esta fase son los siguientes: – tecnologías de desarrollo – herramientas de programación – arquitectura de los servicios web – procedimientos de integración – organización del equipo de trabajo – matriz de responsabilidad sobre las tareas Al término de esta fase es posible definir e interpretar las necesidades específicas de seguridad del enfoque de programación actual. Revisión técnica de seguridad preliminar La revisión técnica preliminar se basa en la ejecución de pruebas de intrusión para detectar las vulnerabilidades o deficiencias que existen actualmente en los servicios web de la organización. De esta forma es posible identificar aquellos problemas de seguridad que por su criticidad requieren la aplicación de medidas de forma inmediata, así como orientar de manera más precisa el contenido de las sesiones de formación al equipo de desarrollo. Elaboración de un plan de formación Una vez finalizado el análisis preliminar, se disponde de la información suficiente para elaborar un Plan de Formaciónpersonalizado. En esta fase se confeccionan los temarios de las sesiones de concienciación y formación y las guías de programación segura que se distribuirán entre los miembros del equipo de desarrollo. Las guías no son compendios generales con técnicas de programación segura, sino que plantean soluciones específicas a los problemas encontrados en la fase de análisis, describiendo la forma de reemplazar la técnica o procedimiento actual con la alternativa segura que se propone. Las categorías de reemplazo que se describen en la guía son las siguientes: – Código fuente (para el Desarrollador) – Metodología de programación (para el Analista Programador) – Procedimiento de integración (para el Ingeniero de Sistemas) – Asignación de responsabilidades (para el Jefe de Proyecto) Sesiones de concienciación En estas sesiones el equipo de desarrollo conoce las posibilidades que brinda a un atacante el empleo de metodologías de programación que no contemplan cuestiones de seguridad. Se presentan las evidencias recogidas durante la revisión técnica preliminar para contextualizar problemas genéricos de seguridad en el ámbito de los servicios web de la propia organización. El objetivo es concienciar a los miembros del equipo de desarrollo acerca de la necesidad de cambiar algunos aspectos de la metodología actual. Sesiones de formación para especialistas El objetivo de estas sesiones es formar a cada uno de los perfiles involucrados en la creación de servicios web, indicando qué medidas pueden incorporar al desarrollo de su actividad para garantizar la adecuación de los resultados a los requisitos de seguridad que exigen dichos servicios. En otras palabras, los miembros del equipo de desarrollo adquieren el knowhow que les permite trabajar conforme a los principios de seguridad requeridos. Aplicación de la nueva metodología En esta fase se pone en marcha la nueva metodología de desarrollo. La Guía de Programación Segura se convierte en el vehículo de la actividad desarrollada por cada uno de los perfiles del equipo, garantizado que en cada una de las tareas se emplean los procedimientos adecuados. Evaluación de resultados Las sucesivas revisiones técnicas se utilizan como mecanismo de evaluación del grado de aceptación que la nueva metodología está teniendo en el equipo de desarrollo. El grado de aceptación se incrementa a medida que se corrigen las deficiencias encontradas en cada iteración del proceso de revisión técnica. Para llevar a cabo dicha corrección se identifica a los responsables de cada deficiencia con objeto de incidir en los aspectos de las sesiones formativas que no han sido tenidos en cuenta durante el desarrollo del servicio web. Esta etapa se da por finalizada cuando no es posible identificar nuevos procedimientos de intrusión para comprometer los servicios web de la organización. Obviamente, en este punto se habrán alcanzado los objetivos de seguridad fijados al comienzo del proyecto. CONCLUSIONES La prevención de intrusiones a través de un Plan de Formación personalizado puede garantizar el cumplimiento de los requisitos de seguridad en los servicios web de una organización. El know-howadquirido por los responsables de la creación de dichos servicios puede emplearse en futuros desarrollos y permite abordar la problemática de la seguridad desde un punto de vista más general, creando una base de conocimiento que elimina de forma proactiva los riesgos asociados a la exposición de servicios en redes públicas.
30 oct 2015