SlideShare una empresa de Scribd logo
1 de 35
Ing.Pablo Andrés Garzón Vera Magister Dirección Estratégica en Ingeniería de Software dilema de la seguridad actualdesarrollando softwareEscribiendo código seguro
Agenda Necesidad de Sistemas Seguros. Principios de Seguridad(SD3+C) Proceso Proactivo de Desarrollo Seguro Modelo de Amenzas(Threat Modeling)
Prerrequisitos de la Sesión Experiencia en desarrollo de software 0, Experiencia en seguridad informática. Microsoft Security Development Lifecycle(SDLC).
Agenda Necesidad de Sistemas Seguros. Principios de Seguridad(SD3+C) Proceso Proactivo de Desarrollo Seguro. Modelo de Amenazas(Threat Modeling)
¿Por que es importante? Mas del 70% de los ataques ocurren en la aplicación – Garther. Iniciativas de la legislación en UK Y EEUU que responsabilizan a desarrolladores si el código causa una falla de seguridad. Posee la empresa, algún seguro contra incidentes de seguridad? ¿Es esto posible en Panamá?
Por que debe cambiar el Desarrollo de Software Producir aplicación de calidad es un requisito mandatorio.. El costo de arreglar defectos luego de la implementación es casi 15 veces mas grande que detectar y eliminar durante el desarrollo.
Total de costo en desarrollo
¿Por qué ocurren Vulnerabilidades de Seguridad? Profesionales de Seguridad No Conocen sobre las Aplicaciones Como profesionales de seguridad informática, no se como las aplicaciones de mi compañía deben funcionar de forma que implemente una solución adecuada… solution…no se si estoy protegiendo lo necesario. Desarrolladores y Profesionales de QA No Conocen sobre Seguridad Como desarrolladores de aplicaciones ,pueden añadir grandes funciones mientras cumplo con  fechas de entrega, pero no se como incluir la seguridad en mis aplicaciones.
From: Bill Gates Sent: Tuesday, January 15, 2002 5:22 PM To: Microsoft and Subsidiaries: All FTE Subject: Trustworthycomputing Today, in the developed world, we do not worry about electricity and water services being available. Computing falls well short of this, ranging from the individual user who isn't willing to add a new application because it might destabilize their system, to a corporation that moves slowly to embrace ebusiness because today's platforms don't make the grade. Great features won't matter unless customers trust our software. So now, when we face a choice between adding features and resolving security issues, we need to choose security. This priority touches on all the software work we do. By delivering on Trustworthy Computing, customers will get dramatically more value out of our advances than they have in the past. The challenge here is one that Microsoft is uniquely suited to solve.
¿Por qué desarrollar Código Seguro  es un Reto?
Agenda Necesidad de Sistemas Seguros. Principios de Seguridad(SD3+C) Proceso Proactivo de Desarrollo Seguro. Modelo de Amenazas(Threat Modeling)
Marco de Seguridad SD3+C “Threat modeling”. Inspección de Código. Mejoras en Procesos. Funciones apagadas por defecto. Reducir área de ataque. Menor Privilegio. Guías “Howto” y de Arquitectura. Herramientas de Seguridad. Entrenamiento y Educación. Compromiso con Comunidad. Documentación. Políticas Claras.
Construye ProductosAnticipado Fallas en el Código Atacantes atacan todo el código No enfocarse en «hacerlo bien la próxima vez» Remover código viejo. Eliminar funciones antiguas. Reemplazar protocolos viejos. Reconocer que el código fallara y reducir la superficie de ataque.
Educación y Entrenamiento Educación en seguridad es requerida anualmente. Registro de asistencia por cada VP Créditos en profundidad. Threat Modeling en profundidad. Diseño Seguro. Patrones de Seguridad. Defectos de Seguridad en Detalle. Pruebas Fuzz. SDL para Managers Writing Secure Code 2 en lectura obligatoria es Microsoft.
SD3+C Windows Server 2003 Inspección de Código. “Threat modeling”. 3 meses de entrenamiento. (grupo del producto). Scripting deshabilitado en IE. 20 servicios apagados por defecto. Local Service / Network Service. No hay juegos. Windows Update. Documentación (cantidad y detalle)
Agenda Necesidad de Sistemas Seguros. Principios de Seguridad(SD3+C) Proceso Proactivo de Desarrollo Seguro. Modelo de Amenazas(Threat Modeling)
Mejorando el Proceso de Desarrollo de la Aplicación Considerando la seguridad. Al inicio del proceso, Durante el desarrollo, Durante la implementación. En todas las metas de revisión de software. No dejes de buscar «bugs» de seguridad hasta el final del proceso de desarrollo»
Security Development Lifecycle(SDL-IT) Evolucionando y con nuevos factores, como la privacidad que están siendo añadidos. Efectivo en responder a las necesidades de seguridad; diseñado para producir RESULTADOS DEMOSTRABLES (no todas las metodologías cumplen con esto) Ha demostrado ser altamente efectivo en reducir vulnerabilidades en software comercial. Basado en experiencias reales. Cuenta con 100% de apoyo ejecutivo.
Desarrollo de un Producto Seguro
Secure By Design Aumentar conciencia de seguridad del equipo      de diseño. Utilizar entrenamiento en curso Cambiar actitudes - “Lo que no conozco no me puede lastimar” no aplica!. Utilizar la seguridad correctamente durante la fase de diseño. Definir las metas de seguridad para el producto Implementar seguridad como una característica clave del producto. Utilizar “threat modeling” durante la fase de diseño.
Agenda Necesidad de Sistemas Seguros. Principios de Seguridad(SD3+C) Proceso Proactivo de Desarrollo Seguro. Modelo de Amenazas(Threat Modeling)
Necesidad de Threat Modeling Si conoces a tu enemigo y a tu persona, no necesitar temer por el resultado de cien batallas. Si conoces a tu persona pero no al enemigo, por cada victoria ganada también sufrirás una derrota. Si no conoces al enemigo ni a tu persona, sucumbirás en cada batalla. – SunTzu, El Arte de la Guerra
Necesidad de Threat ModelingSeguridad de Aplicación Prueba de Penetración. Intenta simular al adversario mientras realiza una intrusión. Revisión de Código de Seguridad. Detecta fallas de seguridad en código base. Revisión del Diseño de Seguridad. Detecta fallas de seguridad en arquitectura de software.
Necesidad de Threat Modeling Amenaza      Realizada a 	través… Ataques Realizados por     	medio de… Vulnerabilidades Mitigadas con… Medidas de Protección Posibilidad de que algo malo ocurra Como ocurre     (el “exploit”) Porque ocurre     (la causa) Como prevenirlo     (la cura)
Necesidad de Threat Modeling Si un impacto negativo al negocio no puede ser ilustrado, no es una Amenaza!
Necesidad de Threat ModelingPerspectiva del Adversario Estado actual de la seguridad de aplicación es     fundamentalmente sobre la perspectiva del     adversario. Prueba de Penetración. Revisión de Código de Seguridad. Revisión del Diseño de Seguridad. Buscando vulnerabilidades que pueden ser     utilizadas para realizar un ataque. Vulnerabilidades y ataques son simplemente      los medios a un fin.
Necesidad de Threat ModelingPerspectiva del Defensor  Amenazas no pueden comprenderse     desde una perspectiva del adversario Antes de iniciar con la ingeniería,      necesitamos comprender como pueden      ocurrir estas amenazas. Construir una estrategia de seguridad. Implementada y probada durante SDLC(SDL-IT).
Necesidad de Threat Modeling Principio detrás de “ACE Threat modeling”. No se puede construir un sistema seguro sin antes comprender sus amenazas. Por qué un modelo de amenazas?. Para identificar amenazas. Crear una estrategia de seguridad. “Threat Modeling” provee administración de riesgo en la aplicación a través de SDLC.
¿Qué es “Threat Modeling”? La metodología de “Threat Modeling” se enfoca      en aplicaciones de línea de negocio (LOB) para      empresas. Objetivos Provee una metodología consistente para identificar y evaluar objetivamente amenazas en aplicaciones. Traduce el riesgo técnico a impacto del negocio. Permite que el negocio administre riesgo. Crea conciencia entre equipos de dependencias y suposiciones en seguridad. Todo sin requerir maestría en seguridad (SME).
¿Qué es “Threat Modeling”?Beneficios Beneficios para Equipos de Aplicación Traduce el riesgo técnico en impacto del negocio. Provee una estrategia de seguridad. Prioritizafunciones de seguridad. Comprende valor de medidas de protección. Beneficios para Equipo de Seguridad. Más enfocado en Evaluaciones de Seguridad. Traduce vulnerabilidades a impacto del negocio. Mejora ‘Concienciación de Seguridad’. Cierra la brecha entre equipos de seguridad y aplicaciones.
¿Qué es Threat Modeling?Ataques • PasswordBruteForce • Buffer Overflow • Canonicalization • Cross-Site Scripting • CryptanalysisAttack • Denial of Service • ForcefulBrowsing • Format-StringAttacks • HTTP Replay Attacks • IntegerOverflows • LDAP Injection • Man-in-the-Middle • Network Eavesdropping • One-Click/Session Riding/CSRF • RepudiationAttack • Response Splitting • Server-Side Code Injection • SessionHijacking • SQL Injection • XML Injection
Programación de la Seguridad WCF Seleccione uno de los enlaces predefinidos adecuado a sus requisitos de aplicación. Seleccione uno de los modos de seguridad para el enlace. Tenga en cuenta que el enlace que seleccione determinará las opciones de modo disponibles. Por ejemplo, WSDualHttpBinding no permite la seguridad de transporte (no es una opción). De igual forma, ni MsmqIntegrationBinding ni NetNamedPipeBinding permiten el modo de seguridad. La seguridad de transporte depende del mecanismo que utilice el enlace que ha seleccionado. Por ejemplo, si utiliza WSHttpBinding, el mecanismo de seguridad es Secure Sockets Layer (SSL) (también es el mecanismo para el protocolo HTTPS).  MessageEl modo de seguridad significa que cada mensaje incluye los encabezados y datos necesarios para mantener el mensaje protegido. TransportWithMessageCredentialEsta opción utiliza el nivel de transporte para proteger la transferencia del mensaje, mientras que cada mensaje incluye las credenciales enriquecidas que otros servicios necesitan.
Code Analysis http://www.bestechvideos.com/2009/04/03/visual-studio-team-system-19-how-do-i-enforce-coding-standards-with-code-analysis
Mas Información Microsoft Application Threat Modeling Blog • http://blogs.msdn.com/threatmodeling/ MSDN: Threat Modeling • http://msdn.microsoft.com/security/securecode/ threatmodeling/default.aspx MSDN: Application Threat Modeling • http://msdn.microsoft.com/security/securecode/thr eatmodeling/acetm/ Michael Howard’s Web Blog • http://blogs.msdn.com/michael_howard/

Más contenido relacionado

La actualidad más candente

Análisis de riesgos de un proyecto de software
Análisis de riesgos de un proyecto de softwareAnálisis de riesgos de un proyecto de software
Análisis de riesgos de un proyecto de software
Angel Reyes
 

La actualidad más candente (17)

Ppi t4 3
Ppi t4 3Ppi t4 3
Ppi t4 3
 
Metodología implantación y certificación de PyMEs en ISO-27001
Metodología implantación y certificación de PyMEs en ISO-27001Metodología implantación y certificación de PyMEs en ISO-27001
Metodología implantación y certificación de PyMEs en ISO-27001
 
Curso: Control de acceso y seguridad: 03 Análisis de riesgos 2
Curso: Control de acceso y seguridad: 03 Análisis de riesgos  2Curso: Control de acceso y seguridad: 03 Análisis de riesgos  2
Curso: Control de acceso y seguridad: 03 Análisis de riesgos 2
 
Guia para desarrollo de software seguro
Guia para desarrollo de software seguroGuia para desarrollo de software seguro
Guia para desarrollo de software seguro
 
Mvp cluster auditoria ambientes share point (1)
Mvp cluster   auditoria ambientes share point (1)Mvp cluster   auditoria ambientes share point (1)
Mvp cluster auditoria ambientes share point (1)
 
Brochure Impala Risk - Simulación / Servicios / Capacitación
Brochure Impala Risk - Simulación / Servicios / CapacitaciónBrochure Impala Risk - Simulación / Servicios / Capacitación
Brochure Impala Risk - Simulación / Servicios / Capacitación
 
3.5.1 Tipos-de-riesgos
3.5.1 Tipos-de-riesgos3.5.1 Tipos-de-riesgos
3.5.1 Tipos-de-riesgos
 
Buenas Prácticas de Seguridad en el Proceso de Desarrollo de Software
Buenas Prácticas de Seguridad en el Proceso de Desarrollo de SoftwareBuenas Prácticas de Seguridad en el Proceso de Desarrollo de Software
Buenas Prácticas de Seguridad en el Proceso de Desarrollo de Software
 
Pruebas De Seguridad Aplicadas a QA
Pruebas De Seguridad Aplicadas a QAPruebas De Seguridad Aplicadas a QA
Pruebas De Seguridad Aplicadas a QA
 
Trabajo analisisriesgo22
Trabajo analisisriesgo22Trabajo analisisriesgo22
Trabajo analisisriesgo22
 
sesión 14
sesión 14sesión 14
sesión 14
 
Análisis de riesgos de un proyecto de software
Análisis de riesgos de un proyecto de softwareAnálisis de riesgos de un proyecto de software
Análisis de riesgos de un proyecto de software
 
Gestión de riesgos de software
Gestión de riesgos de softwareGestión de riesgos de software
Gestión de riesgos de software
 
Riesgos
RiesgosRiesgos
Riesgos
 
Seguridad informatica avanzada 2012
Seguridad informatica avanzada 2012Seguridad informatica avanzada 2012
Seguridad informatica avanzada 2012
 
Gestión de riesgos
Gestión de riesgosGestión de riesgos
Gestión de riesgos
 
Gestión de riesgo
Gestión de riesgoGestión de riesgo
Gestión de riesgo
 

Similar a Dilema de seguridad actual

Claves para Gerenciar Seguridad y Minimizar Los Riesgos (2005)
Claves para Gerenciar Seguridad y Minimizar Los Riesgos (2005)Claves para Gerenciar Seguridad y Minimizar Los Riesgos (2005)
Claves para Gerenciar Seguridad y Minimizar Los Riesgos (2005)
Gabriel Marcos
 
Hacia la seguridad del software: Enfoque preventivo del análisis de código. -...
Hacia la seguridad del software: Enfoque preventivo del análisis de código. -...Hacia la seguridad del software: Enfoque preventivo del análisis de código. -...
Hacia la seguridad del software: Enfoque preventivo del análisis de código. -...
Optimyth Software
 
Disponible, Controlado, Protegido y Flexible (2006)
Disponible, Controlado, Protegido y Flexible (2006)Disponible, Controlado, Protegido y Flexible (2006)
Disponible, Controlado, Protegido y Flexible (2006)
Gabriel Marcos
 
Ingenieria de requerimientos-05
Ingenieria de requerimientos-05Ingenieria de requerimientos-05
Ingenieria de requerimientos-05
Juana Rodríguez
 
Red segura
Red seguraRed segura
Red segura
rosslili
 

Similar a Dilema de seguridad actual (20)

Ciberseguridad - IBM
Ciberseguridad - IBMCiberseguridad - IBM
Ciberseguridad - IBM
 
Microsoft Threat Modeling Tool
Microsoft Threat Modeling ToolMicrosoft Threat Modeling Tool
Microsoft Threat Modeling Tool
 
Claves para Gerenciar Seguridad y Minimizar Los Riesgos (2005)
Claves para Gerenciar Seguridad y Minimizar Los Riesgos (2005)Claves para Gerenciar Seguridad y Minimizar Los Riesgos (2005)
Claves para Gerenciar Seguridad y Minimizar Los Riesgos (2005)
 
Modelo de madurez de aseguramiento de software
Modelo de madurez de aseguramiento de softwareModelo de madurez de aseguramiento de software
Modelo de madurez de aseguramiento de software
 
Ricardo Suárez
Ricardo SuárezRicardo Suárez
Ricardo Suárez
 
Expo
ExpoExpo
Expo
 
Presentación Rubén Vergara
Presentación Rubén VergaraPresentación Rubén Vergara
Presentación Rubén Vergara
 
ModeladoAmenazas.pptx
ModeladoAmenazas.pptxModeladoAmenazas.pptx
ModeladoAmenazas.pptx
 
Aplicaciones seguras
Aplicaciones seguras Aplicaciones seguras
Aplicaciones seguras
 
Seguridad en el ciclo de desarrollo del software
Seguridad en el ciclo de desarrollo del softwareSeguridad en el ciclo de desarrollo del software
Seguridad en el ciclo de desarrollo del software
 
Hacia la seguridad del software: Enfoque preventivo del análisis de código. -...
Hacia la seguridad del software: Enfoque preventivo del análisis de código. -...Hacia la seguridad del software: Enfoque preventivo del análisis de código. -...
Hacia la seguridad del software: Enfoque preventivo del análisis de código. -...
 
Be Aware Webinar - Maximice su inversión en nuestras soluciones de seguridad
Be Aware Webinar - Maximice su inversión en nuestras soluciones de seguridadBe Aware Webinar - Maximice su inversión en nuestras soluciones de seguridad
Be Aware Webinar - Maximice su inversión en nuestras soluciones de seguridad
 
empresa creadora de software.docx
empresa creadora de software.docxempresa creadora de software.docx
empresa creadora de software.docx
 
Implementando owasp samm en latam
Implementando owasp samm en latamImplementando owasp samm en latam
Implementando owasp samm en latam
 
Disponible, Controlado, Protegido y Flexible (2006)
Disponible, Controlado, Protegido y Flexible (2006)Disponible, Controlado, Protegido y Flexible (2006)
Disponible, Controlado, Protegido y Flexible (2006)
 
Ingenieria de requerimientos-05
Ingenieria de requerimientos-05Ingenieria de requerimientos-05
Ingenieria de requerimientos-05
 
Seguridad
SeguridadSeguridad
Seguridad
 
xd2.0.pptx
xd2.0.pptxxd2.0.pptx
xd2.0.pptx
 
Seguridad Informática
Seguridad InformáticaSeguridad Informática
Seguridad Informática
 
Red segura
Red seguraRed segura
Red segura
 

Más de Jaime Restrepo

i fought the law and the law lost
i fought the law and the law losti fought the law and the law lost
i fought the law and the law lost
Jaime Restrepo
 
How to build a powerfull open source soc4
How to build a powerfull open source soc4How to build a powerfull open source soc4
How to build a powerfull open source soc4
Jaime Restrepo
 
Zer 0 no zer(0 day) dragon jar
Zer 0 no zer(0 day)   dragon jarZer 0 no zer(0 day)   dragon jar
Zer 0 no zer(0 day) dragon jar
Jaime Restrepo
 
Alta seguridad para clusters críticos
Alta seguridad para clusters críticosAlta seguridad para clusters críticos
Alta seguridad para clusters críticos
Jaime Restrepo
 
Bogotá Wardriving (Spanish)
Bogotá Wardriving (Spanish)Bogotá Wardriving (Spanish)
Bogotá Wardriving (Spanish)
Jaime Restrepo
 
IoT Cyber Attacks: Comprometiendo la Ciberseguridad de Gasolineras en Latinoa...
IoT Cyber Attacks: Comprometiendo la Ciberseguridad de Gasolineras en Latinoa...IoT Cyber Attacks: Comprometiendo la Ciberseguridad de Gasolineras en Latinoa...
IoT Cyber Attacks: Comprometiendo la Ciberseguridad de Gasolineras en Latinoa...
Jaime Restrepo
 
WordPress, another terror story (Spanish)
WordPress, another terror story (Spanish)WordPress, another terror story (Spanish)
WordPress, another terror story (Spanish)
Jaime Restrepo
 
Hunting Buffer Overflow. A la caza de funciones inseguras en GNU/Linux
Hunting Buffer Overflow. A la caza de funciones inseguras en GNU/LinuxHunting Buffer Overflow. A la caza de funciones inseguras en GNU/Linux
Hunting Buffer Overflow. A la caza de funciones inseguras en GNU/Linux
Jaime Restrepo
 
Hackeando el mundo exterior a través de Bluetooth Low-Energy
Hackeando el mundo exterior a través de Bluetooth Low-EnergyHackeando el mundo exterior a través de Bluetooth Low-Energy
Hackeando el mundo exterior a través de Bluetooth Low-Energy
Jaime Restrepo
 
Memorias perito vol_7_dragonjar_con
Memorias perito vol_7_dragonjar_conMemorias perito vol_7_dragonjar_con
Memorias perito vol_7_dragonjar_con
Jaime Restrepo
 
Cloud native security en tiempo de coronavirus dragon jar
Cloud native security en tiempo de coronavirus dragon jarCloud native security en tiempo de coronavirus dragon jar
Cloud native security en tiempo de coronavirus dragon jar
Jaime Restrepo
 
Analysis of time windows to detect botnets behaviours
Analysis of time windows to detect botnets behavioursAnalysis of time windows to detect botnets behaviours
Analysis of time windows to detect botnets behaviours
Jaime Restrepo
 
Threat intel malware_analysis
Threat intel malware_analysisThreat intel malware_analysis
Threat intel malware_analysis
Jaime Restrepo
 
Técnicas de Inteligencia en la lucha contra el Crimen Organizado y el Terrorismo
Técnicas de Inteligencia en la lucha contra el Crimen Organizado y el TerrorismoTécnicas de Inteligencia en la lucha contra el Crimen Organizado y el Terrorismo
Técnicas de Inteligencia en la lucha contra el Crimen Organizado y el Terrorismo
Jaime Restrepo
 

Más de Jaime Restrepo (20)

I Know You ( iKy OSINT Tool )
I Know You ( iKy OSINT Tool )I Know You ( iKy OSINT Tool )
I Know You ( iKy OSINT Tool )
 
i fought the law and the law lost
i fought the law and the law losti fought the law and the law lost
i fought the law and the law lost
 
How to build a powerfull open source soc4
How to build a powerfull open source soc4How to build a powerfull open source soc4
How to build a powerfull open source soc4
 
Zer 0 no zer(0 day) dragon jar
Zer 0 no zer(0 day)   dragon jarZer 0 no zer(0 day)   dragon jar
Zer 0 no zer(0 day) dragon jar
 
Alta seguridad para clusters críticos
Alta seguridad para clusters críticosAlta seguridad para clusters críticos
Alta seguridad para clusters críticos
 
Bogotá Wardriving (Spanish)
Bogotá Wardriving (Spanish)Bogotá Wardriving (Spanish)
Bogotá Wardriving (Spanish)
 
IoT Cyber Attacks: Comprometiendo la Ciberseguridad de Gasolineras en Latinoa...
IoT Cyber Attacks: Comprometiendo la Ciberseguridad de Gasolineras en Latinoa...IoT Cyber Attacks: Comprometiendo la Ciberseguridad de Gasolineras en Latinoa...
IoT Cyber Attacks: Comprometiendo la Ciberseguridad de Gasolineras en Latinoa...
 
WordPress, another terror story (Spanish)
WordPress, another terror story (Spanish)WordPress, another terror story (Spanish)
WordPress, another terror story (Spanish)
 
Hunting Buffer Overflow. A la caza de funciones inseguras en GNU/Linux
Hunting Buffer Overflow. A la caza de funciones inseguras en GNU/LinuxHunting Buffer Overflow. A la caza de funciones inseguras en GNU/Linux
Hunting Buffer Overflow. A la caza de funciones inseguras en GNU/Linux
 
Hackeando el mundo exterior a través de Bluetooth Low-Energy
Hackeando el mundo exterior a través de Bluetooth Low-EnergyHackeando el mundo exterior a través de Bluetooth Low-Energy
Hackeando el mundo exterior a través de Bluetooth Low-Energy
 
Memorias perito vol_7_dragonjar_con
Memorias perito vol_7_dragonjar_conMemorias perito vol_7_dragonjar_con
Memorias perito vol_7_dragonjar_con
 
Cloud native security en tiempo de coronavirus dragon jar
Cloud native security en tiempo de coronavirus dragon jarCloud native security en tiempo de coronavirus dragon jar
Cloud native security en tiempo de coronavirus dragon jar
 
Analysis of time windows to detect botnets behaviours
Analysis of time windows to detect botnets behavioursAnalysis of time windows to detect botnets behaviours
Analysis of time windows to detect botnets behaviours
 
Bug Bounty Experiences (Spanish)
Bug Bounty Experiences (Spanish)Bug Bounty Experiences (Spanish)
Bug Bounty Experiences (Spanish)
 
Threat intel malware_analysis
Threat intel malware_analysisThreat intel malware_analysis
Threat intel malware_analysis
 
Bugbounty en Español, todo lo que no te han dicho
Bugbounty en Español, todo lo que no te han dichoBugbounty en Español, todo lo que no te han dicho
Bugbounty en Español, todo lo que no te han dicho
 
Técnicas de Inteligencia en la lucha contra el Crimen Organizado y el Terrorismo
Técnicas de Inteligencia en la lucha contra el Crimen Organizado y el TerrorismoTécnicas de Inteligencia en la lucha contra el Crimen Organizado y el Terrorismo
Técnicas de Inteligencia en la lucha contra el Crimen Organizado y el Terrorismo
 
Gestión del tiempo en tiempos del COVID-19
Gestión del tiempo en tiempos del COVID-19Gestión del tiempo en tiempos del COVID-19
Gestión del tiempo en tiempos del COVID-19
 
Pentest: Técnicas alternativas para un cliente “experimentado” – Nelson Boris...
Pentest: Técnicas alternativas para un cliente “experimentado” – Nelson Boris...Pentest: Técnicas alternativas para un cliente “experimentado” – Nelson Boris...
Pentest: Técnicas alternativas para un cliente “experimentado” – Nelson Boris...
 
CSRF: El "Nuevo" Target - Juan David Castro
CSRF: El "Nuevo" Target - Juan David CastroCSRF: El "Nuevo" Target - Juan David Castro
CSRF: El "Nuevo" Target - Juan David Castro
 

Dilema de seguridad actual

  • 1. Ing.Pablo Andrés Garzón Vera Magister Dirección Estratégica en Ingeniería de Software dilema de la seguridad actualdesarrollando softwareEscribiendo código seguro
  • 2. Agenda Necesidad de Sistemas Seguros. Principios de Seguridad(SD3+C) Proceso Proactivo de Desarrollo Seguro Modelo de Amenzas(Threat Modeling)
  • 3. Prerrequisitos de la Sesión Experiencia en desarrollo de software 0, Experiencia en seguridad informática. Microsoft Security Development Lifecycle(SDLC).
  • 4. Agenda Necesidad de Sistemas Seguros. Principios de Seguridad(SD3+C) Proceso Proactivo de Desarrollo Seguro. Modelo de Amenazas(Threat Modeling)
  • 5. ¿Por que es importante? Mas del 70% de los ataques ocurren en la aplicación – Garther. Iniciativas de la legislación en UK Y EEUU que responsabilizan a desarrolladores si el código causa una falla de seguridad. Posee la empresa, algún seguro contra incidentes de seguridad? ¿Es esto posible en Panamá?
  • 6. Por que debe cambiar el Desarrollo de Software Producir aplicación de calidad es un requisito mandatorio.. El costo de arreglar defectos luego de la implementación es casi 15 veces mas grande que detectar y eliminar durante el desarrollo.
  • 7. Total de costo en desarrollo
  • 8. ¿Por qué ocurren Vulnerabilidades de Seguridad? Profesionales de Seguridad No Conocen sobre las Aplicaciones Como profesionales de seguridad informática, no se como las aplicaciones de mi compañía deben funcionar de forma que implemente una solución adecuada… solution…no se si estoy protegiendo lo necesario. Desarrolladores y Profesionales de QA No Conocen sobre Seguridad Como desarrolladores de aplicaciones ,pueden añadir grandes funciones mientras cumplo con fechas de entrega, pero no se como incluir la seguridad en mis aplicaciones.
  • 9. From: Bill Gates Sent: Tuesday, January 15, 2002 5:22 PM To: Microsoft and Subsidiaries: All FTE Subject: Trustworthycomputing Today, in the developed world, we do not worry about electricity and water services being available. Computing falls well short of this, ranging from the individual user who isn't willing to add a new application because it might destabilize their system, to a corporation that moves slowly to embrace ebusiness because today's platforms don't make the grade. Great features won't matter unless customers trust our software. So now, when we face a choice between adding features and resolving security issues, we need to choose security. This priority touches on all the software work we do. By delivering on Trustworthy Computing, customers will get dramatically more value out of our advances than they have in the past. The challenge here is one that Microsoft is uniquely suited to solve.
  • 10. ¿Por qué desarrollar Código Seguro es un Reto?
  • 11. Agenda Necesidad de Sistemas Seguros. Principios de Seguridad(SD3+C) Proceso Proactivo de Desarrollo Seguro. Modelo de Amenazas(Threat Modeling)
  • 12.
  • 13. Marco de Seguridad SD3+C “Threat modeling”. Inspección de Código. Mejoras en Procesos. Funciones apagadas por defecto. Reducir área de ataque. Menor Privilegio. Guías “Howto” y de Arquitectura. Herramientas de Seguridad. Entrenamiento y Educación. Compromiso con Comunidad. Documentación. Políticas Claras.
  • 14. Construye ProductosAnticipado Fallas en el Código Atacantes atacan todo el código No enfocarse en «hacerlo bien la próxima vez» Remover código viejo. Eliminar funciones antiguas. Reemplazar protocolos viejos. Reconocer que el código fallara y reducir la superficie de ataque.
  • 15. Educación y Entrenamiento Educación en seguridad es requerida anualmente. Registro de asistencia por cada VP Créditos en profundidad. Threat Modeling en profundidad. Diseño Seguro. Patrones de Seguridad. Defectos de Seguridad en Detalle. Pruebas Fuzz. SDL para Managers Writing Secure Code 2 en lectura obligatoria es Microsoft.
  • 16. SD3+C Windows Server 2003 Inspección de Código. “Threat modeling”. 3 meses de entrenamiento. (grupo del producto). Scripting deshabilitado en IE. 20 servicios apagados por defecto. Local Service / Network Service. No hay juegos. Windows Update. Documentación (cantidad y detalle)
  • 17. Agenda Necesidad de Sistemas Seguros. Principios de Seguridad(SD3+C) Proceso Proactivo de Desarrollo Seguro. Modelo de Amenazas(Threat Modeling)
  • 18. Mejorando el Proceso de Desarrollo de la Aplicación Considerando la seguridad. Al inicio del proceso, Durante el desarrollo, Durante la implementación. En todas las metas de revisión de software. No dejes de buscar «bugs» de seguridad hasta el final del proceso de desarrollo»
  • 19. Security Development Lifecycle(SDL-IT) Evolucionando y con nuevos factores, como la privacidad que están siendo añadidos. Efectivo en responder a las necesidades de seguridad; diseñado para producir RESULTADOS DEMOSTRABLES (no todas las metodologías cumplen con esto) Ha demostrado ser altamente efectivo en reducir vulnerabilidades en software comercial. Basado en experiencias reales. Cuenta con 100% de apoyo ejecutivo.
  • 20. Desarrollo de un Producto Seguro
  • 21. Secure By Design Aumentar conciencia de seguridad del equipo de diseño. Utilizar entrenamiento en curso Cambiar actitudes - “Lo que no conozco no me puede lastimar” no aplica!. Utilizar la seguridad correctamente durante la fase de diseño. Definir las metas de seguridad para el producto Implementar seguridad como una característica clave del producto. Utilizar “threat modeling” durante la fase de diseño.
  • 22. Agenda Necesidad de Sistemas Seguros. Principios de Seguridad(SD3+C) Proceso Proactivo de Desarrollo Seguro. Modelo de Amenazas(Threat Modeling)
  • 23. Necesidad de Threat Modeling Si conoces a tu enemigo y a tu persona, no necesitar temer por el resultado de cien batallas. Si conoces a tu persona pero no al enemigo, por cada victoria ganada también sufrirás una derrota. Si no conoces al enemigo ni a tu persona, sucumbirás en cada batalla. – SunTzu, El Arte de la Guerra
  • 24. Necesidad de Threat ModelingSeguridad de Aplicación Prueba de Penetración. Intenta simular al adversario mientras realiza una intrusión. Revisión de Código de Seguridad. Detecta fallas de seguridad en código base. Revisión del Diseño de Seguridad. Detecta fallas de seguridad en arquitectura de software.
  • 25. Necesidad de Threat Modeling Amenaza Realizada a través… Ataques Realizados por medio de… Vulnerabilidades Mitigadas con… Medidas de Protección Posibilidad de que algo malo ocurra Como ocurre (el “exploit”) Porque ocurre (la causa) Como prevenirlo (la cura)
  • 26. Necesidad de Threat Modeling Si un impacto negativo al negocio no puede ser ilustrado, no es una Amenaza!
  • 27. Necesidad de Threat ModelingPerspectiva del Adversario Estado actual de la seguridad de aplicación es fundamentalmente sobre la perspectiva del adversario. Prueba de Penetración. Revisión de Código de Seguridad. Revisión del Diseño de Seguridad. Buscando vulnerabilidades que pueden ser utilizadas para realizar un ataque. Vulnerabilidades y ataques son simplemente los medios a un fin.
  • 28. Necesidad de Threat ModelingPerspectiva del Defensor Amenazas no pueden comprenderse desde una perspectiva del adversario Antes de iniciar con la ingeniería, necesitamos comprender como pueden ocurrir estas amenazas. Construir una estrategia de seguridad. Implementada y probada durante SDLC(SDL-IT).
  • 29. Necesidad de Threat Modeling Principio detrás de “ACE Threat modeling”. No se puede construir un sistema seguro sin antes comprender sus amenazas. Por qué un modelo de amenazas?. Para identificar amenazas. Crear una estrategia de seguridad. “Threat Modeling” provee administración de riesgo en la aplicación a través de SDLC.
  • 30. ¿Qué es “Threat Modeling”? La metodología de “Threat Modeling” se enfoca en aplicaciones de línea de negocio (LOB) para empresas. Objetivos Provee una metodología consistente para identificar y evaluar objetivamente amenazas en aplicaciones. Traduce el riesgo técnico a impacto del negocio. Permite que el negocio administre riesgo. Crea conciencia entre equipos de dependencias y suposiciones en seguridad. Todo sin requerir maestría en seguridad (SME).
  • 31. ¿Qué es “Threat Modeling”?Beneficios Beneficios para Equipos de Aplicación Traduce el riesgo técnico en impacto del negocio. Provee una estrategia de seguridad. Prioritizafunciones de seguridad. Comprende valor de medidas de protección. Beneficios para Equipo de Seguridad. Más enfocado en Evaluaciones de Seguridad. Traduce vulnerabilidades a impacto del negocio. Mejora ‘Concienciación de Seguridad’. Cierra la brecha entre equipos de seguridad y aplicaciones.
  • 32. ¿Qué es Threat Modeling?Ataques • PasswordBruteForce • Buffer Overflow • Canonicalization • Cross-Site Scripting • CryptanalysisAttack • Denial of Service • ForcefulBrowsing • Format-StringAttacks • HTTP Replay Attacks • IntegerOverflows • LDAP Injection • Man-in-the-Middle • Network Eavesdropping • One-Click/Session Riding/CSRF • RepudiationAttack • Response Splitting • Server-Side Code Injection • SessionHijacking • SQL Injection • XML Injection
  • 33. Programación de la Seguridad WCF Seleccione uno de los enlaces predefinidos adecuado a sus requisitos de aplicación. Seleccione uno de los modos de seguridad para el enlace. Tenga en cuenta que el enlace que seleccione determinará las opciones de modo disponibles. Por ejemplo, WSDualHttpBinding no permite la seguridad de transporte (no es una opción). De igual forma, ni MsmqIntegrationBinding ni NetNamedPipeBinding permiten el modo de seguridad. La seguridad de transporte depende del mecanismo que utilice el enlace que ha seleccionado. Por ejemplo, si utiliza WSHttpBinding, el mecanismo de seguridad es Secure Sockets Layer (SSL) (también es el mecanismo para el protocolo HTTPS). MessageEl modo de seguridad significa que cada mensaje incluye los encabezados y datos necesarios para mantener el mensaje protegido. TransportWithMessageCredentialEsta opción utiliza el nivel de transporte para proteger la transferencia del mensaje, mientras que cada mensaje incluye las credenciales enriquecidas que otros servicios necesitan.
  • 35. Mas Información Microsoft Application Threat Modeling Blog • http://blogs.msdn.com/threatmodeling/ MSDN: Threat Modeling • http://msdn.microsoft.com/security/securecode/ threatmodeling/default.aspx MSDN: Application Threat Modeling • http://msdn.microsoft.com/security/securecode/thr eatmodeling/acetm/ Michael Howard’s Web Blog • http://blogs.msdn.com/michael_howard/