Dilemas de la seguridad en el desarrollo de software

Esta es la quinta entrega de la serie de seguridad Informática en la ingeniería de software que nos envía el amigo Pablo Andrés Garzón, si no has leído los anteriores artículos, te invito que lo hagas. Formación de Seguridad con Security Development Lifecycle de Microsoft Seguridad Informática, un reto para la Ingeniería del Software o una necesidad Instalación de TFS, SQL Server 2008 y SDL Requerimientos para Security Development Lifecycle de Microsoft En esta entrega pablo nos trae una presentación que realizó para un diplomado, donde nos explica cuales son los dilemas actuales de la seguridad en el desarrollo de software, los modelos de desarrollo seguro y las amenazas mas comunes. Escrito por: Pablo Andrés Garzón Vera Ingeniero de Sistemas (Universidad Manuela Beltrán) Magister  en Dirección Estratégica en Ingeniería de software (Universidad de León). Para La Comunidad...

Leer Más

Requerimientos para Security Development Lifecycle de Microsoft

Esta es la cuarta entrega de la serie de seguridad Informática en la ingeniería de software que nos envía el amigo Pablo Andrés Garzón, si no has leído los anteriores artículos, te invito que lo hagas. Formación de Seguridad con Security Development Lifecycle de Microsoft Seguridad Informática, un reto para la Ingeniería del Software o una necesidad Instalación de TFS, SQL Server 2008 y SDL El tercer artículo cubrirá el primer nivel tratado en el SDL el cual se enfoca en la necesidad de considerar los aspectos de seguridad en una fase temprana del ciclo de vida, ya que es fundamental para el desarrollo de un sistema seguro, para esto se debe definir en la fase de la planificación ya que permite que los desarrolladores y arquitecto identifiquen los principales problema que se pueden presentar en la implementación de los controles de seguridad y así tener medidas que controle atrasos en la integración con los diferentes módulos desarrollados por el equipo. Los análisis de requisitos enfocados con la seguridad permiten conocer cómo será el diseño de la aplicación contemplando los requisitos de seguridad mínimo que se debe tener, también contempla como será su comportamiento en un entorno operativo planificado y como se manejara el temas de las vulnerabilidades para el control y seguimiento de estas recordando que el temas de control de bugs es de gran importancia para el ciclo de vida del software ya que una mala implementación de este nos podría producir costos elevados en tiempo y en dinero lo cual sería un problema para la empresa u organización. Calidad Gates/Barra de Errores La barra de error es una de las tareas más difíciles que puede enfrentar un equipo de desarrollo de software durante la evolución de ciclo de vida, para esto decidir el nivel de importancia que se le dará a un error y la probabilidad de que ese error no se pueda corregir en el tiempo de entrega de la versión puede tener muchos problemas que afecta al grupo de desarrollo. Aunque uno de los puntos más difíciles de tratar es que los programadores, arquitectos y otros miembros del grupo tienen diferentes puntos de vista de la clasificación del error o la probabilidad de poder gestionarlo en la fase de entrega de la versión, pero estos grupos cometen errores en sus decisiones de clasificación por factores individuales o por la experiencia ya tratada en una anterior clasificación recordando que la clasificación de un error puede variar dependiendo el proyecto a realizar y sobre esto se enfocan en los siguientes puntos como: Cuánto código tendría que regresión-probarse una vez realizada la corrección. Cómo cerrar para liberar...

Leer Más

Formación de Seguridad con Security Development Lifecycle de Microsoft

Esta es la tercera entrega de la serie de seguridad Informática en la ingeniería de software que nos envía el amigo Pablo Andrés Garzón, si no has leído los anteriores artículos, te invito que lo hagas. Seguridad Informática, un reto para la Ingeniería del Software o una necesidad Instalación de TFS, SQL Server 2008 y SDL El tercer artículo cubrirá el primer nivel tratado en el SDL el cual se enfoca en la capacitación de seguridad que deben tomar los miembros de un equipo de Desarrollo (Software) pero que tan cumplido es esto si tenemos en cuenta que la mayoría de proyectos no cubren este aspecto de capacitación a sus miembros en temas de seguridad ya que en la mayoría de veces la excusa es la falta de tiempo o la prioridad a otras fases del proyecto, pero estos equipos no saben el gran error que están cometiendo ya que en cada fase se incrementara el tiempo ajustado al cronograma que se tenía estimado. Pero que debe conocer el equipo de Desarrollo de software en temas de seguridad para esto los grandes aspectos a considerar y tener en cuenta por el equipo son los siguientes. Conceptos Básicos: Seguridad de diseño, que incluye los siguientes temas: Superficie de reducción de ataque. Defensa en profundidad. Principio de privilegios mínimos. Valores predeterminados de seguridad. Modelado de amenazas, incluyendo los siguientes temas: Visión general de modelado de amenazas. Diseño de un modelo de amenazas. Codificación a un modelo de amenazas. Pruebas para un modelo de amenazas. Segura de codificación, incluidos los temas siguientes: Saturaciones de búfer. Errores de entero aritméticos. Cross site scripting. Inyección de SQL. Criptografía débil. Cuestiones de código administrado (Microsoft .NET y Java). Pruebas de seguridad, incluidos los temas siguientes: Pruebas frente a pruebas funcionales de seguridad. Evaluación del riesgo. Metodologías de prueba automatización de pruebas. Privacidad, incluyendo los siguientes temas: Tipos de datos de privacidad. Las mejores prácticas de diseño de privacidad análisis de riesgos. Mejores prácticas de desarrollo de privacidad. Pruebas de las mejores prácticas de privacidad. Para estos temas se recomienda la guía de OWASP donde cubre los aspectos en temas de seguridad en aplicaciones webs donde se tratan algunos temas de los mencionados anteriormente y ya que es la guía fundamental en temas de seguridad por la comunidad involucrada en software. Por lo general los equipos de software no manejan la mayoría de temas básicos en seguridad llegando así a cometer errores en diseño, Arquitectura y codificación produciendo un nivel bajo en nivel de calidad teniendo en cuenta que un producto de calidad debe tener los aspectos de seguridad cubiertos en cada proceso realizado. Conceptos Avanzados:...

Leer Más

Instalación de TFS, SQL Server 2008 y SDL

Pablo Andrés Garzón Vera, quien ya ha compartido con nosotros artículos como “Seguridad Informática, un reto para la Ingeniería del Software o una necesidad” enfocados principalmente en la ingeniería de software y la participación de la seguridad informática en este proceso, se ha comprometido con nosotros a publicar mas de esta serie de artículos, que aportan tanto a la comunidad hispanohablante debido a la falta de documentación sobre el tema en nuestro idioma. Para que puedas llevar a la practica, las actividades de los próximos artículos, es necesarios que instales una serie de software como lo es el Microsoft SQL Server 2008, Microsoft  Team Fundation Server y Microsoft Security Development Lifecycle, que nos permitirán aplicar la seguridad informática en el desarrollo de software, enfocado principalmente en plataformas Microsoft. INSTALACIÓN DE SQL SERVER 2008 Para iniciar la instalación deberán instalar el SP1 de .Net Framework 3.5 y el Windows Installer 4.5 (los cuales vienen incluidos en el instalador). Una vez instalados estos dos componentes aparecerá la pantalla del SQL Server installation Center Para iniciar la instalación debemos ir a Installation y luego seleccionar New SQL Server stand-alone installation or add features to an existing installation (Aplica para el tipo de instalación que describimos en este post) El instalador ejecutará primeramente una revisión para identificar problemas que podrían ocurrir durante la instalación o limitaciones que podrían ocasionar que no podamos instalar SQL Server 2008. Luego debemos seleccionar la edición que deseamos instalar o ingresar el product key del SQL Server 2008. (En este caso voy a instalar la edición Enterprise de prueba) Aceptamos los téminos de licencia y damos clic en Next. A continuación se ejecutarán los archivos para la instalación de SQL Server 2008. A continuación el instalador ejecutará las acciones del Setup Support Rules (Estas se deben cumplir para poder continuar con la instalación) Luego deben seleccionar los componentes que desean instalar (estoy seleccionando todos los componentes): En este caso no tengo ninguna instancia de SQL Server y voy a proceder a instalar en el Default instance (En este paso pueden tambien renombrar el ID de la instancia y cambiar el directorio de la misma). Luego el instalador validará el espacio disponible de disco. Luego deberán configurar las cuentas con la que se inicará cada servicio de SQL Server 2008 (Yo tengo una cuenta creada con permisos administrativos en el servidor para iniciar sólo servicios de SQL Server). En este paso deberán seleccionar el modo de autenticación de SQL Server y agregar las cuentas que serán administradores de la instancia. Además podrán cambiar los directorios para la data, datos de usuarios, logs, Temp DB, Temp DB Log y el...

Leer Más

Siguenos!

O Puedes Subscribete

ANTES DE

SALIRTE ...

NO TE

ARREPENTIRÁS

!Gracias¡

NO OLVIDES NUESTRAS REDES SOCIALES