Evolución en arquitecturas de seguridad para el desarrollo de aplicaciones. Daniel Yankelevich –...
-
Upload
loida-sabino -
Category
Documents
-
view
4 -
download
1
Transcript of Evolución en arquitecturas de seguridad para el desarrollo de aplicaciones. Daniel Yankelevich –...
Evolución en arquitecturas de seguridad para el desarrollo de aplicaciones.
Daniel Yankelevich – Guillermo Daniel Yankelevich – Guillermo MarroMarro
Pragma ConsultoresPragma Consultores
OutlineOutlineObjetivosObjetivos
Tendencias en SeguridadTendencias en Seguridad
Modelos de Seguridad: EvoluciónModelos de Seguridad: Evolución
Caso de estudio: Web ServicesCaso de estudio: Web Services
Web Services: Esfuerzos Vigentes en Web Services: Esfuerzos Vigentes en SeguridadSeguridad
RecomendacionesRecomendaciones
ObjetivosObjetivosGarantizar la funcionalidad deseadaGarantizar la funcionalidad deseada
Garantizar performance adecuadaGarantizar performance adecuada
Lograr confiabilidad y robustezLograr confiabilidad y robustez
Asegurar interoperabilidad con otros sistemasAsegurar interoperabilidad con otros sistemas
Mantener el presupuesto de desarrollo dentro de lo Mantener el presupuesto de desarrollo dentro de lo estipuladoestipulado
Respetar los tiempos de desarrollo planeadosRespetar los tiempos de desarrollo planeados
Garantizar premisas básicas de seguridad Garantizar premisas básicas de seguridad (confidencialidad, integridad, disponibilidad, no-(confidencialidad, integridad, disponibilidad, no-repudiación,etc)repudiación,etc)
Amenazas TangiblesAmenazas Tangibles
Qué cambió?Qué cambió?
Ud abriría un file …Ud abriría un file ….exe?.exe?.ppt?.ppt?.jpeg?.jpeg?
GDIplus vulnerabilityGDIplus vulnerabilityAtaques al Ataques al Graphic Device Interface dll, Graphic Device Interface dll, usando buffer overflowusando buffer overflowHubo MUCHOS cambios, este es sólo un Hubo MUCHOS cambios, este es sólo un ejemplo de una tendencia.ejemplo de una tendencia.
Pasado vs FuturoPasado vs Futuro
La seguridad es un La seguridad es un problema puramente problema puramente técnicotécnico
La seguridad es un La seguridad es un gastogasto
El objetivo es la El objetivo es la seguridadseguridad
Me voy a comprar el Me voy a comprar el gadget que me gadget que me garantiza la garantiza la seguridad!seguridad!
La seguridad es un La seguridad es un problema que compete a problema que compete a toda la organizacióntoda la organización
La seguridad es una La seguridad es una inversióninversión
El objetivo es la El objetivo es la continuidad de negociocontinuidad de negocio
Seguridad es un procesoSeguridad es un proceso
Antes Ahora
Evolución de los AtaquesEvolución de los Ataques
Tendencias en ataquesTendencias en ataquesAutomatizaciónAutomatización
Evolución de frameworks de ataqueEvolución de frameworks de ataque
Sofisticación semánticaSofisticación semántica
Descubrimiento vertiginoso de Descubrimiento vertiginoso de vulnerabilidadesvulnerabilidades
Permeabilidad en defensas perimetrales Permeabilidad en defensas perimetrales convencionalesconvencionales
Amenazas asimétricasAmenazas asimétricas
Evolución en tecnología de Evolución en tecnología de deteccióndetección
Evolución en Modelos de Evolución en Modelos de SeguridadSeguridad
FortalezaFortaleza
AeropuertoAeropuerto
Peer-to-PeerPeer-to-Peer
Modelo Modelo FortalezaFortaleza
Protección Protección perimetralperimetral
Estático, no diferenciadoEstático, no diferenciado
Difícil de modificar y Difícil de modificar y adaptaradaptar
Descuida el Descuida el insider insider problemproblem
Modelo Modelo AeropuertoAeropuerto
Mayor flexibilidadMayor flexibilidad
Múltiples zonas de seguridad basadas en Múltiples zonas de seguridad basadas en rolesroles
Protecciones multinivel interzonasProtecciones multinivel interzonas
Colección jerárquica de fortalezas Colección jerárquica de fortalezas interactuantesinteractuantes
Modelo Modelo Aeropuerto (cont.)Aeropuerto (cont.)
Modelo Modelo Peer-to-Peer Peer-to-PeerConceptos dinámicos de confianza, Conceptos dinámicos de confianza, autenticación y autorizaciónautenticación y autorización
Requerimientos comerciales-Requerimientos comerciales->Requerimientos tecnológicos>Requerimientos tecnológicos
Inferir en tiempo real Inferir en tiempo real qué quiero hacer y qué quiero hacer y con quién quiero hacerlocon quién quiero hacerlo
Puede requerir servicios provistos por Puede requerir servicios provistos por TTPTTP ((Trusted Third PartiesTrusted Third Parties))
Autorización Autorización DinámicaDinámica
Caso de estudio: Caso de estudio: Web Web ServicesServicesNuevo modelo de servicios y distribución Nuevo modelo de servicios y distribución de contenido basado en estándares XMLde contenido basado en estándares XML
Nueva generación de desarrollo sobre Nueva generación de desarrollo sobre InternetInternet
Aprovecha la ubicuidad de protocolos Aprovecha la ubicuidad de protocolos HTTP/S y plataformas de consulta (web HTTP/S y plataformas de consulta (web browsers)browsers)
Firewalls con politicas permisibles en Firewalls con politicas permisibles en puertos 80 y 443puertos 80 y 443
Enormes desafíos en seguridad en el caso Enormes desafíos en seguridad en el caso de contenido distribuidode contenido distribuido
Web Services: desafíosWeb Services: desafíos
SSL/TLS no alcanza!
WS: Que hay disponible?WS: Que hay disponible?XML Signature XML Signature (W3C/IETF): (W3C/IETF): Valida integridad de mensaje y provee no repudiación para Valida integridad de mensaje y provee no repudiación para
documentos XMLdocumentos XML
XML Encryption XML Encryption (W3C)(W3C)::Permite cifrar partes de documentos XMLPermite cifrar partes de documentos XML
XKMSXKMS (W3C): (W3C):Especifica protocolos para la registración y distribución de Especifica protocolos para la registración y distribución de
claves públicasclaves públicas
XACML XACML (OASIS):(OASIS):Permite expresar semánticamente políticas de control de Permite expresar semánticamente políticas de control de
accesoacceso
SAMLSAML (OASIS): (OASIS):Permite a las aplicaciones emitir predicados de confianzaPermite a las aplicaciones emitir predicados de confianza
WS: Que hay disponible? (cont.)WS: Que hay disponible? (cont.)XCBF XCBF (OASIS):(OASIS):
Facilita el intercambio de datos biométricos de autenticaciónFacilita el intercambio de datos biométricos de autenticación
XrML XrML (OASIS):(OASIS):
Permite especificar requerimientos de DRMPermite especificar requerimientos de DRM
WS-SecurityWS-Security (IBM-Microsoft-Verisign): (IBM-Microsoft-Verisign):Extiende SOAP, con protección de integridad, confidencialidad Extiende SOAP, con protección de integridad, confidencialidad
y autenticación de mensajesy autenticación de mensajes
Liberty Alliance Project (Liberty Alliance Project (Conglomerado de Conglomerado de OrgsOrgs):):Se intenta imponer el concepto de identidad federada de red, Se intenta imponer el concepto de identidad federada de red,
para facilitar para facilitar SSOSSO a traves de múltiples redes, dominios y a traves de múltiples redes, dominios y organizaciones.organizaciones.
Mejoras del proceso de Mejoras del proceso de desarrollo de aplicacionesdesarrollo de aplicaciones
Tenga en cuenta la seguridadTenga en cuenta la seguridadAl comienzo del procesoAl comienzo del proceso
Durante el desarrolloDurante el desarrollo
Durante la implementaciónDurante la implementación
En los hitos de revisión del softwareEn los hitos de revisión del software
No deje de buscar errores de seguridad No deje de buscar errores de seguridad hasta el final del proceso de desarrollohasta el final del proceso de desarrollo
SDSD33
SeguroSeguro porpor diseñodiseño
SeguroSeguro dede formaforma
predeterminadapredeterminada
SeguroSeguro enen implementaciónimplementación
ArquitecturaArquitectura yy códigocódigo segurossegurosAnálisis de amenazasAnálisis de amenazasReducción de los puntos Reducción de los puntos vulnerablesvulnerables
MenorMenor áreaárea expuestaexpuesta aa ataquesataquesLas características que no se usan Las características que no se usan están desactivadas de forma están desactivadas de forma predeterminadapredeterminadaPrivilegios mínimosPrivilegios mínimosProtección:Protección: detección,detección, defensa, defensa, recuperaciónrecuperación yy administraciónadministraciónProceso: guías de procedimientos Proceso: guías de procedimientos y de arquitecturay de arquitecturaUsuarios: aprendizajeUsuarios: aprendizaje
Estructura de seguridad Estructura de seguridad SDSD33
Esquema temporal del desarrollo Esquema temporal del desarrollo de productos segurosde productos seguros
Planes dePlanes de pruebaprueba
completoscompletos
DiseñosDiseñoscompletoscompletos
ConceptoConcepto CódigoCódigocompletocompleto
EnvíoEnvío DespuésDespuésdel envíodel envío
Pruebas depuntos vulnerables
de seguridad
Evaluar losconocimientos de
seguridad al contratarintegrantes del grupo
Determinar loscriterios de firma
de seguridad
Someter arevisión externa
Analizar las
amenazas Aprendery afinar
Realizar larevisión del grupo
de seguridad
Entrenar a los integrantesdel grupo
Probar la alteración de datos y los privilegios
mínimos
Resolver problemas de seguridad, comparar el código con las
directrices de seguridad
=continuado
Técnicas de análisis de riesgosTécnicas de análisis de riesgos
Riesgo = Probabilidad * Daños Riesgo = Probabilidad * Daños potencialespotenciales
Clasificar Amenazas: DREADClasificar Amenazas: DREAD
•DDaños potenciales años potenciales •Capacidad de Capacidad de RReproducción eproducción •AprovAprovEEchamiento chamiento •Usuarios Usuarios AAfectados fectados •Capacidad de Descubrimiento Capacidad de Descubrimiento
MITIGARMITIGAR
Consideraciones para DesarrolloConsideraciones para DesarrolloLa seguridad es parte de los requerimientos
La seguridad es parte fundamental del diseño y de la arquitectura de la aplicación
Siempre validar los inputs
Manejo de claves y resguardo de información sensitiva (DPAPI)
No almacenar información sensitiva en el cliente
Reducir superficie de ataque (no incluya Funcs en una API si no hacen falta/no use servicios que no necesita)
Mantenerse actualizado sobre las “debilidades” de la tecnología utilizada
Ejecutar con privilegios mínimos necesarios
Revisión de Código
Incluir auditoría de transacciones, logs...
Usar protocolos seguros para los datos críticos
Documentar, no asumir que el no dar información es barrera!
Estrategia recomendadaEstrategia recomendadaComenzar con políticas de alto nivel que tengan en cuenta un BIA (Business Impact Analysis) de su organización
Utilizar plantillas funcionales de arquitectura de seguridad, que implementen las best practices correspondientes
Evangelizar a la comunidad desarrolladora de los beneficios de considerar a la seguridad como premisa inicial de diseño
Migrar modelos del tipo fortaleza a modelos del tipo aeropuerto, que representen más fielmente los procesos de negocio
En proyectos autocontenidos (Intranets), desarrollar IPv6-compatible, para aprovechar las provisiones de seguridad nativas del protocolo
Pensar en un horizonte de 5 a 7 años para migrar a modelos de seguridad tipo Peer-to-Peer
La seguridad es un proceso y no un proyecto
Evolución en Arquitectura del Evolución en Arquitectura del SoftwareSoftware
“It's not the strongest of the species that survive, nor the most intelligent, but the ones most responsive to change”
Charles Darwin
ReferenciasReferencias““The Evolution of Security Architecture”The Evolution of Security Architecture”
Gartner's 2004 Strategic Planning Series.Gartner's 2004 Strategic Planning Series.
““The Semantic Web: A guide to the future of XML, Web The Semantic Web: A guide to the future of XML, Web Services and Knowledge Management”Services and Knowledge Management”
Michael C. Daconta et al. Wiley & Sons.Michael C. Daconta et al. Wiley & Sons.
““CERT/CC Overview Incident and Vulnerability Trends”CERT/CC Overview Incident and Vulnerability Trends”
CERT® Coordination Center - Carnegie Mellon CERT® Coordination Center - Carnegie Mellon University.University.
““Security in a Web Services World: A Proposed Security in a Web Services World: A Proposed Architecture Architecture and Roadmapand Roadmap””
Joint White Paper from Microsoft & IBM.Joint White Paper from Microsoft & IBM.
ReferenciasReferenciasSitioSitio dede seguridadseguridad dede Microsoft (todos los usuarios)Microsoft (todos los usuarios)
http://www.microsoft.com/security
Sitio de seguridad de MSDN (desarrolladores)Sitio de seguridad de MSDN (desarrolladores)
http://msdn.microsoft.com/securitymsdn.microsoft.com/security
Sitio de seguridad de TechNet (profesionales de IT)Sitio de seguridad de TechNet (profesionales de IT)
http://www.microsoft.com/technet/securitytechnet/security
Para Mayor InformaciónPara Mayor Información
Argentina
San Martín 575 4to
(C1004AAK) Buenos Aires
Tel (+54-11) 4327-1999
España
Sta. Engracia, 169
(28003) Madrid
Tel (+ 34-91) 295-1547
Visite nuestros WEB SITES:
www.pragmaconsultores.com- Información Detallada de Servicios
- Nuestra Experiencia: Clientes y Proyectos
- Nuestro Compromiso y Nuestra Metodología de Trabajo
www.qafactory.com- Fábrica de Aseguramiento de la Calidad
- Beneficios y Detalle del Servicio
Contáctenos:
Chile
Luis T. Ojeda 0191 Of. 407,
Providencia, Santiago
Tel (+56-2) 3343361