SlideShare una empresa de Scribd logo
1 de 15
Seguridad ágil? Dejamos de
ser los villanos!
1
El squad
carlos.montero@i4s.com
https://es.linkedin.com/in/cmonteroe
Agile experiences
https://plus.google.com/u/0/communities/104006137025221336239
https://es.linkedin.com/in/pedroserrano/es
pedro.serrano@i4s.com
@jaripES
De dónde venimos? (Histórico)
Waterfall
3
Análisis
Diseño
Desarrollo
Testing
Implementación
Despliegue
Hacking
ético
Previsiones a X años vista
Añadimos X tiempo a la previsión fallida
De dónde venimos? (I4S)
Agile + Hacking ético
4
Análisis y diseño
Desarrollo
Testing
Implementación
Análisis y diseño
Desarrollo
Testing
Implementación
Análisis y diseño
Desarrollo
Testing
Implementación
Deploy
Deploy
Deploy
Iteración 1/Release 1
ESO NO ES
AGILE!!!!
Hacking
ético
Hacking
ético
TiempoIteración 2/Release 2 Iteración 3/Release 3
DÓNDE HE VISTO ESTO
ANTES?
A dónde vamos?
Agile con seguridad integrada
5
Deploy
Deploy
Deploy
Iteración 1 Iteración 2 Iteración N
Análisis y diseño
Desarrollo
Testing
Implementación
Análisis y diseño
Desarrollo
Testing
Implementación
Análisis y diseño
Desarrollo
Testing
Implementación
Desarrollo +
Seguridad
Desarrollo +
Seguridad
Desarrollo +
Seguridad
Cómo integrar la seguridad en el desarrollo? (I)
Agile con seguridad integrada (I4S)
6
Equipo
de
trabajo
scrum 1
Sec Dev
Ops
Escenario seguridad
Feature
Seguridad
Product Owner
Scrum
Feature 1
Feature 2
Feature 3
Feature n
Backlog Scrum
DoRDoD
Cómo integrar la seguridad en el desarrollo? (II)
Agile con seguridad integrada (Alternativa)
7
Product Owner
Scrum1
Product Owner
Scrum2
Product Owner
Seguridad
Feature 1
Feature 2
Feature
Seguridad 1
Feature n
Feature 1
Feature 2
Feature 3
Feature
Seguridad 1
Feature 1
Feature 2
…
Feature n
Equipo
de
trabajo
scrum 1
Equipo
de
trabajo
scrum 1
Equipo de
trabajo de
seguridad
Integración,
despliegue o entrega
continua.
Backlog Scrum 1 Backlog Scrum 2
Backlog
Seguridad
Cómo funciona BDD
Behaviour Driven Development
8
Historia de usuario
Gherkin -> .feature
Feature
@tag
Scenario
Given 1
When 2
Then 3
Traducción
Sacar todos los
comportamientos
esperados
STEPS -> .py
@given(‘1')
def step_impl(context):
assert False
@when(‘2')
def step_impl(context):
assert False
@then(‘3')
def step_impl(context):
assert False
~
TDD
+
Product Owner
UX
QA
Dev Team
….
Unión con varios estándares del MITRE como:
– CAPEC: Common Attack Pattern Enumeration and Classification
– CWE: Common Weakness Enumeration
– CVE: Common Vulnerabilities and Exposures
Historias de seguridad en BDD
Historias de seguridad desarrolladas en base a:
– OWASP
– SAFEcode
– Expertise propio
– Patrones de seguridad definidos
9
Tipos de historias:
– SQLi
– XSS
– HTTPfuzzing
– SSL/TLS configuration
– DoS
– Technical Compliance (VATS)
– …
Historias de seguridad en BDD
10
FUNCIONAL
SEGURIDAD
Cómo tenemos montado nuestro BDD?
Integración continua
11
Archivo
configuración
APP RUNNING
Behave Behave
…
Behave Behave
Output
BDD
Gherkin ->
.feature
STEPS -> .py
Ejemplo práctico
12
Conclusiones
Cualquier dev team puede contar con las features de seguridad para
pasarlas desde el día 1.
Reaprovechamiento de escenarios ya desarrollados.
Seguridad no entra el último en el ciclo de desarrollo ágil.
Se reducen las vuelta atrás en el desarrollo por lo que realmente si se
desarrolla de manera ágil.
Automatización de un alto % de historias de seguridad porque las
vulnerabilidades son heredadas del software.
Equipos de hacking reducidos para issues específicos.
Comunidad para las features de seguridad en el future. (Our wish)
Otros frameworks: BDD Security (Irius Risk), Gauntlt, mittn (F-Secure).
13
It’s over
14
MUCHAS GRACIAS!
Preguntas?
14
carlos.montero@i4s.com pedro.serrano@i4s.com
@jaripES
Agile experiences
https://plus.google.com/u/0/communities/104006137025221336239

Más contenido relacionado

Similar a Seguridad ágil? Dejamos de ser los villanos!

Similar a Seguridad ágil? Dejamos de ser los villanos! (20)

Presentacion DevSecOps Argentina
Presentacion DevSecOps ArgentinaPresentacion DevSecOps Argentina
Presentacion DevSecOps Argentina
 
Developers: Ignorance is... bliss?
Developers: Ignorance is... bliss?Developers: Ignorance is... bliss?
Developers: Ignorance is... bliss?
 
Pruebas de seguridad continuas para dev ops
Pruebas de seguridad continuas para dev opsPruebas de seguridad continuas para dev ops
Pruebas de seguridad continuas para dev ops
 
Como planear pruebas de intrusion en ICS
Como planear pruebas de intrusion en ICSComo planear pruebas de intrusion en ICS
Como planear pruebas de intrusion en ICS
 
Novedades en CI/CD
Novedades en CI/CDNovedades en CI/CD
Novedades en CI/CD
 
Asegúr@IT IV - Microsoft y Seguridad
Asegúr@IT IV - Microsoft y SeguridadAsegúr@IT IV - Microsoft y Seguridad
Asegúr@IT IV - Microsoft y Seguridad
 
Trilogía The Lord of Cloud Native P3: El retorno del ¡Oops!
Trilogía The Lord of Cloud Native P3: El retorno del ¡Oops! Trilogía The Lord of Cloud Native P3: El retorno del ¡Oops!
Trilogía The Lord of Cloud Native P3: El retorno del ¡Oops!
 
Menos Buffer Overflows, más SQL Injections
Menos Buffer Overflows, más SQL InjectionsMenos Buffer Overflows, más SQL Injections
Menos Buffer Overflows, más SQL Injections
 
Webinar CISOBeat - Detectar Ataques de Red Utilizando SNORT
Webinar CISOBeat - Detectar Ataques de Red Utilizando SNORTWebinar CISOBeat - Detectar Ataques de Red Utilizando SNORT
Webinar CISOBeat - Detectar Ataques de Red Utilizando SNORT
 
Comenzando a usar el Continuous Delivery
 Comenzando a usar el Continuous Delivery Comenzando a usar el Continuous Delivery
Comenzando a usar el Continuous Delivery
 
Capacitacion sobre Desarrollo Seguro - SDL / OWASP 2013
Capacitacion sobre Desarrollo Seguro - SDL / OWASP 2013Capacitacion sobre Desarrollo Seguro - SDL / OWASP 2013
Capacitacion sobre Desarrollo Seguro - SDL / OWASP 2013
 
TDC2021-fn-serverless.pptx
TDC2021-fn-serverless.pptxTDC2021-fn-serverless.pptx
TDC2021-fn-serverless.pptx
 
Extendiendo la seguridad en Elastix con Snort IDS/IPS
Extendiendo la seguridad en Elastix con Snort IDS/IPSExtendiendo la seguridad en Elastix con Snort IDS/IPS
Extendiendo la seguridad en Elastix con Snort IDS/IPS
 
De Hacker a C-Level
De Hacker a C-LevelDe Hacker a C-Level
De Hacker a C-Level
 
Charla evento TestinUY 2015 - Enfoque Práctico para Construir Aplicaciones si...
Charla evento TestinUY 2015 - Enfoque Práctico para Construir Aplicaciones si...Charla evento TestinUY 2015 - Enfoque Práctico para Construir Aplicaciones si...
Charla evento TestinUY 2015 - Enfoque Práctico para Construir Aplicaciones si...
 
Tema 9 comando kali linux (1)
Tema 9 comando kali linux (1)Tema 9 comando kali linux (1)
Tema 9 comando kali linux (1)
 
¿Cómo detectar ataques de red utilizando Snort? | CISObeat
¿Cómo detectar ataques de red utilizando Snort? | CISObeat¿Cómo detectar ataques de red utilizando Snort? | CISObeat
¿Cómo detectar ataques de red utilizando Snort? | CISObeat
 
Guia para desarrollo de software seguro
Guia para desarrollo de software seguroGuia para desarrollo de software seguro
Guia para desarrollo de software seguro
 
Eq 4 seg- fiis- sans institute
Eq 4  seg- fiis- sans instituteEq 4  seg- fiis- sans institute
Eq 4 seg- fiis- sans institute
 
Extendiendo la Seguridad de Elastix con Snort
Extendiendo la Seguridad de Elastix con SnortExtendiendo la Seguridad de Elastix con Snort
Extendiendo la Seguridad de Elastix con Snort
 

Último

S07_s1-Control Acceso-Amenazas de seguridad de capa 2.pdf
S07_s1-Control Acceso-Amenazas de seguridad de capa 2.pdfS07_s1-Control Acceso-Amenazas de seguridad de capa 2.pdf
S07_s1-Control Acceso-Amenazas de seguridad de capa 2.pdf
larryluna927
 
TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptxTECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
UPSE
 
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdfTECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
UPSE
 

Último (7)

S07_s1-Control Acceso-Amenazas de seguridad de capa 2.pdf
S07_s1-Control Acceso-Amenazas de seguridad de capa 2.pdfS07_s1-Control Acceso-Amenazas de seguridad de capa 2.pdf
S07_s1-Control Acceso-Amenazas de seguridad de capa 2.pdf
 
contabilidad para la inflacion, contabilidad superior
contabilidad para la inflacion, contabilidad superiorcontabilidad para la inflacion, contabilidad superior
contabilidad para la inflacion, contabilidad superior
 
TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptxTECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
 
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdfTECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
 
Modelado de Casos de uso del negocio
Modelado de  Casos  de  uso  del negocioModelado de  Casos  de  uso  del negocio
Modelado de Casos de uso del negocio
 
Especificación casos de uso del negocio
Especificación  casos de uso del negocioEspecificación  casos de uso del negocio
Especificación casos de uso del negocio
 
El necesario mal del Legacy Code (Drupal Iberia 2024)
El necesario mal del Legacy Code (Drupal Iberia 2024)El necesario mal del Legacy Code (Drupal Iberia 2024)
El necesario mal del Legacy Code (Drupal Iberia 2024)
 

Seguridad ágil? Dejamos de ser los villanos!

  • 1. Seguridad ágil? Dejamos de ser los villanos!
  • 3. De dónde venimos? (Histórico) Waterfall 3 Análisis Diseño Desarrollo Testing Implementación Despliegue Hacking ético Previsiones a X años vista Añadimos X tiempo a la previsión fallida
  • 4. De dónde venimos? (I4S) Agile + Hacking ético 4 Análisis y diseño Desarrollo Testing Implementación Análisis y diseño Desarrollo Testing Implementación Análisis y diseño Desarrollo Testing Implementación Deploy Deploy Deploy Iteración 1/Release 1 ESO NO ES AGILE!!!! Hacking ético Hacking ético TiempoIteración 2/Release 2 Iteración 3/Release 3 DÓNDE HE VISTO ESTO ANTES?
  • 5. A dónde vamos? Agile con seguridad integrada 5 Deploy Deploy Deploy Iteración 1 Iteración 2 Iteración N Análisis y diseño Desarrollo Testing Implementación Análisis y diseño Desarrollo Testing Implementación Análisis y diseño Desarrollo Testing Implementación Desarrollo + Seguridad Desarrollo + Seguridad Desarrollo + Seguridad
  • 6. Cómo integrar la seguridad en el desarrollo? (I) Agile con seguridad integrada (I4S) 6 Equipo de trabajo scrum 1 Sec Dev Ops Escenario seguridad Feature Seguridad Product Owner Scrum Feature 1 Feature 2 Feature 3 Feature n Backlog Scrum DoRDoD
  • 7. Cómo integrar la seguridad en el desarrollo? (II) Agile con seguridad integrada (Alternativa) 7 Product Owner Scrum1 Product Owner Scrum2 Product Owner Seguridad Feature 1 Feature 2 Feature Seguridad 1 Feature n Feature 1 Feature 2 Feature 3 Feature Seguridad 1 Feature 1 Feature 2 … Feature n Equipo de trabajo scrum 1 Equipo de trabajo scrum 1 Equipo de trabajo de seguridad Integración, despliegue o entrega continua. Backlog Scrum 1 Backlog Scrum 2 Backlog Seguridad
  • 8. Cómo funciona BDD Behaviour Driven Development 8 Historia de usuario Gherkin -> .feature Feature @tag Scenario Given 1 When 2 Then 3 Traducción Sacar todos los comportamientos esperados STEPS -> .py @given(‘1') def step_impl(context): assert False @when(‘2') def step_impl(context): assert False @then(‘3') def step_impl(context): assert False ~ TDD + Product Owner UX QA Dev Team ….
  • 9. Unión con varios estándares del MITRE como: – CAPEC: Common Attack Pattern Enumeration and Classification – CWE: Common Weakness Enumeration – CVE: Common Vulnerabilities and Exposures Historias de seguridad en BDD Historias de seguridad desarrolladas en base a: – OWASP – SAFEcode – Expertise propio – Patrones de seguridad definidos 9 Tipos de historias: – SQLi – XSS – HTTPfuzzing – SSL/TLS configuration – DoS – Technical Compliance (VATS) – …
  • 10. Historias de seguridad en BDD 10 FUNCIONAL SEGURIDAD
  • 11. Cómo tenemos montado nuestro BDD? Integración continua 11 Archivo configuración APP RUNNING Behave Behave … Behave Behave Output BDD Gherkin -> .feature STEPS -> .py
  • 13. Conclusiones Cualquier dev team puede contar con las features de seguridad para pasarlas desde el día 1. Reaprovechamiento de escenarios ya desarrollados. Seguridad no entra el último en el ciclo de desarrollo ágil. Se reducen las vuelta atrás en el desarrollo por lo que realmente si se desarrolla de manera ágil. Automatización de un alto % de historias de seguridad porque las vulnerabilidades son heredadas del software. Equipos de hacking reducidos para issues específicos. Comunidad para las features de seguridad en el future. (Our wish) Otros frameworks: BDD Security (Irius Risk), Gauntlt, mittn (F-Secure). 13

Notas del editor

  1. Quién soy y Qué hago Hablar de la trayectoria y de que hacemos productos de seguridad, tengo experiencia en productos similares (de la competencia) y creo que con eso, suficiente. Comunidad “Agile Experiences”
  2. Metodología clásica  mala vuelta atrás Anécdota de Project de VATS inicial a 2 años vista. Tras 3 años veo ese Project y se parece como un huevo a una castaña
  3. En casa del herrero cuchillo de palo En el agile “puro” cada deploy es a producción, en este caso el hacking puede hacer que esa iteración se pierda En el agile donde los deploys a producción se hacen con las releases, te puede hacer que varias interaciones se pierdan Suponiendo que se hiciera el deploy después de cada iteración a producción, cuando se realiza el hacking podría mandar atrás el desarrollo en cada iteración.
  4. Agile hacking BDD security integrado en los desarrollos Proceso análisis inicial (C104  amenazas, riesgos, contramedidas…) En el desarrollo  historias abusivas de hacking
  5. DoR  Historias de usuario siempre tienen que estar en gherkin para poder empezar con BDD DoD  Punto en el cual se tienen que pasar todos los test de seguridad asociados a las historias Hacer una explicación de la diferencia que hay entre hacer un desarrollo de un producto de seguridad y un producto seguro, cómo no hay necesariamente una relación entre los dos temas y cómo los perfiles necesarios (y los conocimientos) son distintos.
  6. Reutilización de historias
  7. Esquema desde historia de usuario a Gherkin (scenarios y tags) y como behave pasa los test Prerequisitos: logueado en la herramienta, que la herramienta esté arriba, que tengas la base de datos cargada…
  8. Ejemplo de gherkin con sus tags
  9. Esquema desde historia de usuario a Gherkin (scenarios y tags) y como behave pasa los test *Explicar flujo de trabajo entre PO y equipo de desarrollo con git Docker con behave por scenario Herramientas: Accunetix, Arachni…
  10. Explicación archive configuración Ejemplo login “básico” (Ejemplo con tags) (Ejemplo paralelización) Ejemplo parámetro configuración para cualquier herramienta (cifrado con Chameleon) Login con VATS Explicación funcionamiento (Jenkins, archive configuracion, Behave, Selenium, herramientas seguridad…)