Cono Sur, Febrero de 2008

 

Número 22 

 

Del Editor

Brian Johnson

 

Seguridad desde la perspectiva del arquitecto

Para el arquitecto de software, la seguridad representa uno de los atributos de calidad más importantes de un sistema. Se trata de un atributo naturalmente multidimensional que abarca varios temas extremadamente relevantes. Según Michael Howard y Steve Lipner, autores del libro “The Security Development Lifecycle”, la seguridad debería ser abordada a partir de una metodología probada y rigurosa que cuantitativamente tienda a disminuir las vulnerabilidades en la arquitectura de una aplicación.

 

¿Cómo abordar este tema?

Para crear aplicaciones seguras debemos necesariamente incorporar prácticas de seguridad durante todo el ciclo de vida de desarrollo. La siguiente tabla intenta resumir que prácticas de seguridad deberíamos incorporar dependiendo de la fase y del tipo de tarea que estemos realizando:

Fase o Iteración

Tarea típica

Práctica de Seguridad

Requerimientos y Análisis

Análisis de Requerimientos Funcionales, Requerimientos No Funcionales y Requerimientos Tecnológicos

Determinar objetivos de seguridad

Arquitectura y Diseño

Definir y documentar Arquitectura, Construir Guías de Diseño

Revisar vulnerabilidades de la Arquitectura

Modelar amenazas

Construir guías de diseño de seguridad

Desarrollo

Testing unitario

Revisión de código

Building automatizado

Definir guías para crear código seguro

Revisar vulnerabilidades en el código

Testing

Pruebas de Integración

Pruebas Funcionales

Definir y ejecutar pruebas de seguridad

Distribución

Generar deployment automatizado

Identificar vulnerabilidades de seguridad a nivel del deployment

 

Modelado de amenazas (Threat Modeling)

Una de las prácticas de seguridad que consideramos más relevantes es el “Modelado de amenazas”. Dicha práctica se basa en un concepto muy simple, para crear aplicaciones seguras debemos identificar y comprender las distintas amenazas a las cuales se expone nuestra aplicación. Por lo general, esta actividad consiste en lo siguiente:

-          Identificar activos (assets) de la aplicación. Un activo representa algo valioso a proteger (ej. la base de datos).

-          Detectar amenazas (threats). Una amenaza es un potencial evento indeseado que podría ocurrirle a un activo (ej. eliminación o alteración no autorizada de datos).

-          Identificar vulnerabilidades por donde se pueda atacar la aplicación. Un ataque es la acción de llevar a cabo una amenaza (ej. hackear la base de datos utilizando SQL Injection).

-          Identificar contramedidas (countermeasures). Una contramedida combate una vulnerabilidad para eliminar o disminuir la probabilidad de un ataque (ej. encapsular correctamente la lógica de acceso a datos y utilizar sentencias SQL parametrizables)

Para conocer más sobre esta práctica, los invitamos a revisar esta página del Microsoft Security Developer Center dedicada exclusivamente a este tema. De hecho podrán encontrar una herramienta muy interesante denominada “Microsoft Threat Analysis & Modeling Tool” que sirve para generar visualmente modelos de análisis de amenazas.

 

Conclusión

Escribir sobre seguridad es y será siempre muy desafiante, en esta nueva edición del Architect Newsletter hemos seleccionado una serie de artículos y recursos vinculados con seguridad que esperamos les aporte al día a día laboral de cada uno de ustedes.

 

Será hasta la próxima edición!

 

Martín Cabrera

Arquitecto de Software

Microsoft Cono Sur

Martin.Cabrera@microsoft.com

http://dmartincabrera.spaces.live.com

http://blogs.msdn.com/mcabrera

 

è Conoce nuestra Comunidad de Arquitectura de Software en Español

 

 

 

Silverlight 2.0 está a la vuelta de la esquina
En las primeras semanas de marzo, se estará lanzando la primera versión Beta de Silverlight 2.0. La nueva versión de Silverlight incorpora un entorno de ejecución .NET optimizado para el browser y multiplataforma.

 

HelloSecureWorld site

HelloSecureWorld es un portal que les ofrece una serie muy importante de presentaciones, webcasts y videos vinculados con temas de seguridad. El portal esta desarrollado en Silverlight y tiene un aspecto realmente muy divertido.

 

Se viene Internet Explorer 8

Los invitamos a revisar el blog oficial de Internet Explorer para enterarse de las últimas novedades.

 

MIX08 se viene con todo!

La edición 2008 del evento para Diseñadores y Desarrolladores Web más importante del mundo llego a su segundo “Sold Out” consecutivo. Será del 5 al 7 de marzo en la Vegas, imperdible!

 

 

Silverlight, en el camino de las experiencias ricas
En las primeras semanas de marzo, se estará lanzando la primera versión Beta de Silverlight 2.0. La nueva versión de Silverlight incorpora un entorno de ejecución .NET optimizado para el browser y multiplataforma.

 

Integrating the Policy Injection Application Block with WCF Services

Con el Policy Injection Application Block podemos agregarle a nuestros servicios WCF capacidades como ser performance monitoring, authorization y caching sin necesidad de codificar una sola línea de código.

 

Programming LINQ and the ADO.NET Entity Framework

La combinación de Language Integrated Query (LINQ) y el Nuevo ADO.NET Entity Framework nos permite implementar una capa de acceso a datos robusta e independiente de la base de datos física que estemos utilizando.

 

 

 

Enlaces

 

Arquitectum.org, primera comunidad de Arquitectura de Software en español

Writing secure code, recursos de seguridad del Microsoft Security Developer Center

Journal de Arquitectura
de Microsoft Corp

 

Microsoft Architecture Resource Center

 

Microsoft Patterns & Practices

 

MSDN Magazine

 

International Association
of Software Architects

 

The Server Side NET

 

Channel 9 Videos

 

Conozca las experiencias de éxito de sus colegas:

- Argentina

- Bolivia

- Chile

- Paraguay

- Uruguay

 

 

 

 

 

Eventos

 

Webcasts de
Arquitectura (español)

 

 

 

 

 

<Arquitectura>
Modelado de amenazas 

http://tbn0.google.com/images?q=tbn:2qWVGa1rtAVX0M:http://lib.colostate.edu/research/newspapers/newspaper_3.gif

 

En este artículo, Shawn Hernan, Scott Lambert, Tomasz Ostwald y Adam Shostack , pertenecientes a diferentes grupos de seguridad dentro de Microsoft, nos introducen en la práctica de modelado de amenazas (Threat Modeling) impulsada por Microsoft.

 

Leer Artículo…