Post on 19-Jun-2015
SEGURIDAD ATRIBUTO CRÍTICO DE UN SISTEMA.
Pablo Alzuripalzuri@genexusconsulting.com
FAIL
¿Qué costos tenemos cuando encontramos un problema de seguridad en nuestro sistema?
o Costo $ corrección
o Perdidas $
o Perdidas imagen
o Incumplimientos (acuerdos, contratos, leyes)
¿Qué debemos hacer para nuestro sistema sea seguro? ¿Cuándo debemos hacerlo?
Agenda
Conceptos preliminares.
Actividades incorporadas por GXC en su framework de desarrollo.
Concluciones
Conceptos preliminares
•Proteger la información de lecturas no autorizadas.
Confidencialidad o Privacidad
•Proteger la información de modificaciones no autorizadas.
Integridad
•Asegurar que toda persona que tenga autorizado el acceso a cierta información pueda accederla.
Disponibilidad
Conceptos preliminares (IAAA)
•Yo digo quien soy
Identificación
•Algo que se sabe.
•Algo que se tiene.
•Algo que se es.
•Donde se esta.
Autenticación
•Control de Acceso Discrecional (DAC)
•Control de Acceso Obligatorio (MAC)
•Control de Acceso Basado en Roles (RBAC – NIST)
Autorización
•Redundancia de componentes
•Granjas y clúster
Disponibilidad
Requerimientos
Funcionalidades de seguridad seguridad
Anti-requerimientos
Casos de Abuso:
[McDermott J, Fox C, (1999) ”Using Abuse Case
Models for Security Requirements Analysis”]
Casos de Mal Uso:
[Sindre G, Opdahl AL, (2000) “Eliciting security
requirements by misuse cases” ]
Análisis Requerimientos
Aproximadamente el 50% de los problemas de seguridad son causados debido a fallas de diseño.
Análisis de Riesgo
OWASP - Threat Risk Modeling
Codificación
Pautas de desarrollo (OWASP Top Ten)
Revisiones de código por pares
Revisión de código (Security Scanner)
Pautas de desarrolloPara enriquecer o definir sus pautas desarrollo les recomiendo:
1. Consultar el OWASP Top Ten en la pagina de OWASP.
2. Ver la presentación “Desarrollando aplicaciones seguras con Genexus”, Alejandro Silva - Artech en el evento GeneXus 2011.
2. Consultar la documentación del wiki: “OWASP Top 10 in GeneXus Applications”
Pautas de desarrolloo Mecanismo de autenticación y
autorización adecuados (GAM) “¿Qué hace hoy GeneXus por la seguridad de nuestras
Aplicaciones?” - Sala 2C, Alejandro Zeballos - Artech, hora: 10:30
“Cómo hacer aplicaciones seguras en GeneXus Evolution 2” - Sala 2C, Sabrina Juárez - Artech, hora: 11:00
o Uso urls encriptadaso Uso cuidadoso de comando SQLo Uso cuidadoso de text blocks (HTML)
Security Scanner
Testing
•Manual
•Automatizada
Testing funcionalidades
de seguridad seguridad
•Pruebas diseñadas en función de los casos de abuso, mal uso y análisis de riesgos.
Testing de seguridad basada
en riesgos
Testing seguridad automatizado
Testing seguridad automatizado
Implantación
Test de penetración o “hackeo ético”
Objetivo validar el software desarrollado en el ambiente de ejecución en el cual será puesto en producción.
Conclusiones
Pablo Alzuri
palzuri@genexusconsulting.com
¡Mucha Gracias!