El creciente número de datos alojados  en el mundo digital provoca la necesidad de disponer de una metodología para gestionar la seguridad que se pueda aplicar en los diferentes proyectos relacionados con el desarrollo de software, donde a la postre se alojará o por donde circulará uno de los activos más importantes: la información.

El creciente número de datos alojados  en el mundo digital provoca la necesidad de disponer de una metodología para gestionar la seguridad que se pueda aplicar en los diferentes proyectos relacionados con el desarrollo de software, donde a la postre se alojará o por donde circulará uno de los activos más importantes: la información.

Si bien en los últimos años se han desarrollado  buenas prácticas para fases concretas de desarrollo  y ciertos lenguajes de programación, no existe en la actualidad ninguna metodología que cubra por completo la seguridad sobre todas las fases del desarrollo de aplicaciones.

Un equipo de inLab ha analizado el estado del arte a este respecto y ha generado una metodología para evitar la aparición de vulnerabilidades durante el desarrollo de un producto y facilitar su posterior auditoría.

Se ha creado una herramienta con el fin de facilitar la aplicación de la metodología creada a los responsables de proyecto. Igualmente se ha  probado el  procedimiento creado en varios proyectos realizados por nuestro personal.

 

Uso de la metodología

Para facilitar la gestión de la metodología se han creado tareas que permiten verificar si un control se cumple. Igualmente los controles se han agrupado según la fase del desarrollo en que se deben analizar.

La metodología parte del  estudio de las diferentes propuestas al respecto publicadas hasta el momento y ha sido complementada con la experiencia de expertos en seguridad y en desarrollo.

 

Las diferentes fases en que se estructura la metodología  parten del ciclo de vida del desarrollo según ISACA, la podemos usar para todas las fases en las que se dicide un proyecto de desarrollo de software:

 

Dificultades encontradas a la hora de desarrollar la metodología

La primera dificultad  ha sido crear controles de la metodología, cuyo objetivo es protegerse de un ataque, a partir de los controles ofrecidos por metodologías cuyo objetivo es el opuesto (OSSTTMM o OWASP), es decir, lograr vulnerar la seguridad de un software.

La segunda dificultad fue llevar a cabo la fusión de los controles y sus tareas asociadas obtenidos de las diferentes fuentes de información. Esto se debe a que no toda la nomenclatura utilizada es la misma en las fuentes consultadas y obliga a tener cuidado a la hora de unir múltiples controles.

 

La tercera dificultad ha sido el volumen de controles y tareas obtenido. Con el fin de facilitar la aplicación de los controles y su adaptación a diferentes proyectos ha sido necesario desarrollar un software específico. Este software permite la edición de la metodología para su posterior aplicación en un proyecto.

El desarrollo de la herramienta S2D2 no ha estado exento de dificultades al ser necesario crear una interfaz de usuario capaz de adaptarse a la estructura cambiante del modelo de datos. Esto ha obligado a emplear capas de abstracción, en forma de Interface en Java, que en caso de no existir una interfaz gráfica habrían sido innecesarias.

 

Futuro de la metodología

Tanto la metodología como la herramienta serán implantadas en el ámbito de la Universitat Politècnica de Catalunya durante el año 2015 con el fin de minimizar los riesgos de las aplicaciones desarrolladas en los próximos años en el ámbito académico.