«Application Security» con Microsoft SDL
El otro día estaba en una entrevista de trabajo en el que me preguntaban si tenía experiencia en metodologías de desarrollo seguro de software. Tras salir de allí pensé que nunca había escrito por aquí sobre ese tema y es algo que me costó encontrar cuando me quise enfrentar al reto de asimilarlo. Es por eso que os traigo la primera de varias entradas, ¡espero que os gusten!
Cuando trabajas como responsable de seguridad, participar en los procesos de desarrollo de software es una de las tareas en las que tienes que dar lo máximo.
Como es lógico, las aplicaciones estarán expuestas a todo tipo de usuario. Puede que sean para uso interno (limitando un poco la exposición) o pueden estar abiertas al mundo, pero siempre serán un objetivo para los fallos «espontáneos» o «buscados» de seguridad.
En la forma de trabajo que hemos tenido hasta «hace cuatro días», se desarrollaba siguiendo un modelo Waterfall, el que se daba (se sigue dando?) en la Universidad en la que todo tenía una secuencia inalterable basada en:
- Toma de requisitos
- Diseño
- Desarrollo
- Pruebas
- Mantenimiento (tras lanzamiento)
Todo muy encorsetado, siendo complicado arreglar ciertos problemas o añadir nuevos requisitos sobre la marcha. Es cierto que se logra una mejora al añadir la implementación de prototipos, lo que podría verse como un leve precursor del modelo agile.
En cualquier caso, utilizar este modelo ha llevado en muchas ocasiones a algo parecido al extreme programming donde se termina por lanzar a la papelera el diseño y los requisitos para realizar desarrollos inmersos en un éxtasis de locura, infinidad de horas y mucho café.
El problema de este tipo de forma de trabajar es que da lugar a todo tipo de fallos de seguridad, sobre todo en viejos modelos de pruebas de seguridad «binarios», lo que se traduce en «si da tiempo hago alguna prueba y si no…, pues no».
Como podrás entender, en un mundo en el que cada vez hay más tecnología, en el que todo está conectado y en el que los problemas de seguridad pueden arruinar literalmente negocios y grandes empresas, esa forma de desarrollar ya no es viable.
Microsoft y la seguridad
La multinacional de Redmond archiconocida por el sistema operativo Windows, desde hace años colabora de forma sistemática con gobiernos y organizaciones en la búsqueda de las mejores prácticas en materia de ciberseguridad.
Una muestra de esto es su definición del ciclo de vida de desarrollo seguro, más conocido como Microsoft SDL, que se estableció internamente para todos los desarrollos desde el año 2.004.
Como ejemplo, podemos ver cómo los productos Microsoft han mejorado sustancialmente con respecto a los fallos graves de seguridad detectados antes y después de la puesta en práctica del modelo.
![](https://securityinside.info/wp-content/uploads/sdl1.gif)
Figura 1 – Boletines de seguridad importantes y críticos de Windows antes y después del SDL
![](https://securityinside.info/wp-content/uploads/sdl2.gif)
Figura 2 – Boletines de seguridad de SQL Server 2000 antes y después del SDL
![](https://securityinside.info/wp-content/uploads/sdl3.gif)
Figura 3 – Boletines de seguridad para Exchange Server 2000 antes y después del SDL
Introducción a Microsoft SDL
La metodología que nos presenta Microsoft SDL se basa en tres conceptos principales que tendremos que tener siempre en cuenta:
Formación: todos los roles tanto técnicos como de gestión dentro de un proyecto deben estar debidamente formados en seguridad. Puesto que cada día aparecen nuevas vulnerabilidades y nuevos ataques, la formación debe ser continua en el tiempo y de la mejor calidad posible.
Mejora continua: es importante comprender la causa y el efecto de cada vulnerabilidad para evaluar de forma periódica todos los procesos, así podremos implementar los cambios que sean necesarios.
Responsabilidad: será muy importante archivar toda la información necesaria para realizar el mantenimiento de una aplicación cuando aparezcan los problemas. Tener un plan de detección y respuesta ante incidentes de seguridad nos permitirá poner en movimiento a todas las partes implicadas en el mismo.
Es por eso que el modelo de Microsoft SDL se estructura en cinco áreas de capacidades alineadas con las fases clásicas de desarrollo de software:
- Formación, directivas y capacidades organizativas
- Requisitos y diseño
- Implementación
- Comprobación
- Lanzamiento y respuesta
Con el paso del tiempo y la creciente utilización de metodologías ágiles, Microsoft ha implementado una versión especial del SDL para este tipo de forma de desarrollar. Dicho modelo lo iremos viendo en las próximas entradas.
¿Te lo vas a perder?
- GuardDuty: Un viaje a través del tiempo en AWS Security - 21 noviembre, 2023
- Webinar – Seguridad para familias - 11 enero, 2021
- SecurityInside Live: CISO Day 2020 - 17 septiembre, 2020
mexican online pharmacies prescription drugs: cmqpharma.com – mexican rx online
mexico pharmacies prescription drugs
https://cmqpharma.online/# mexico drug stores pharmacies
buying from online mexican pharmacy
mexican mail order pharmacies
https://cmqpharma.com/# purple pharmacy mexico price list
mexico drug stores pharmacies
indianpharmacy com: top 10 online pharmacy in india – best online pharmacy india
top online pharmacy india world pharmacy india online pharmacy india
pet meds without vet prescription canada: canadian pharmacy 24h com – best canadian pharmacy to order from
india pharmacy mail order Online medicine order india pharmacy
http://indiapharmast.com/# india pharmacy
online pharmacy india: reputable indian pharmacies – п»їlegitimate online pharmacies india
https://indiapharmast.com/# indian pharmacies safe
canada drugs online reviews canadian pharmacy king reviews pet meds without vet prescription canada
mexico drug stores pharmacies: mexican online pharmacies prescription drugs – mexican online pharmacies prescription drugs
online pharmacy india: india online pharmacy – online pharmacy india
top 10 pharmacies in india: cheapest online pharmacy india – top 10 pharmacies in india
indianpharmacy com mail order pharmacy india online shopping pharmacy india
canadian world pharmacy: canadian pharmacy mall – canadian pharmacy no scripts
indian pharmacy: reputable indian online pharmacy – indian pharmacy online
https://canadapharmast.com/# canadian mail order pharmacy
northwest canadian pharmacy: canada pharmacy 24h – safe canadian pharmacy
canada drugs online best rated canadian pharmacy canadianpharmacy com
canadian compounding pharmacy: legit canadian online pharmacy – canada pharmacy
canadian pharmacies comparison: canadian discount pharmacy – canadian pharmacy sarasota
medication from mexico pharmacy: mexico pharmacy – medicine in mexico pharmacies
best online pharmacies in mexico mexican rx online pharmacies in mexico that ship to usa
https://canadapharmast.online/# online canadian pharmacy
canadian pharmacy victoza: best canadian online pharmacy reviews – canada drugs online review
canadian pharmacy prices: cheapest pharmacy canada – canadian pharmacy meds
https://indiapharmast.com/# indian pharmacy
canadian pharmacy meds: reliable canadian pharmacy reviews – canadian pharmacy sarasota
reputable mexican pharmacies online: mexican pharmaceuticals online – medicine in mexico pharmacies
mexican online pharmacies prescription drugs mexico pharmacy mexico drug stores pharmacies
canada drugs: canadian pharmacy sarasota – canadian world pharmacy
canadian world pharmacy best canadian pharmacy to buy from canadian pharmacy uk delivery
the canadian pharmacy: canada pharmacy online legit – canadianpharmacyworld com
reputable canadian online pharmacies: pharmacy rx world canada – canadian pharmacy 365
https://canadapharmast.com/# reliable canadian pharmacy
world pharmacy india: reputable indian online pharmacy – buy prescription drugs from india
paxlovid cost without insurance: Paxlovid over the counter – paxlovid pill
http://ciprodelivery.pro/# purchase cipro
http://paxloviddelivery.pro/# paxlovid generic
п»їpaxlovid: paxlovid pill – paxlovid india
https://amoxildelivery.pro/# amoxicillin canada price
https://clomiddelivery.pro/# where can i buy clomid without a prescription
amoxicillin discount coupon: amoxicillin 500 mg brand name – buy amoxicillin 250mg
https://paxloviddelivery.pro/# paxlovid cost without insurance
order cheap clomid without rx: where can i buy clomid without insurance – clomid buy
http://clomiddelivery.pro/# can i purchase clomid price
https://amoxildelivery.pro/# over the counter amoxicillin
buy ciprofloxacin: buy generic ciprofloxacin – ciprofloxacin generic
http://clomiddelivery.pro/# can you buy cheap clomid without rx
doxycycline without rx: doxycycline 40 mg cost – doxycycline 40 mg price
https://amoxildelivery.pro/# buy amoxicillin 500mg online
https://paxloviddelivery.pro/# paxlovid pill
where to buy amoxicillin 500mg: amoxicillin 825 mg – how much is amoxicillin prescription
https://amoxildelivery.pro/# amoxicillin 500mg cost
http://amoxildelivery.pro/# amoxicillin generic
how to get cheap clomid: buying clomid for sale – where can i get cheap clomid for sale
http://clomiddelivery.pro/# can you get cheap clomid price
http://amoxildelivery.pro/# buy amoxicillin over the counter uk
paxlovid price: Paxlovid over the counter – paxlovid buy
https://doxycyclinedelivery.pro/# cheap doxycycline online uk
buy cipro no rx: buy ciprofloxacin over the counter – buy cipro online without prescription
http://clomiddelivery.pro/# cost generic clomid
https://ciprodelivery.pro/# ciprofloxacin mail online
buy cipro: ciprofloxacin – buy cipro cheap
paxlovid cost without insurance: paxlovid pill – Paxlovid buy online
doxycycline generic pharmacy: doxycycline 50 mg price – azithromycin doxycycline
paxlovid price: Paxlovid buy online – paxlovid buy