Documentos de Académico
Documentos de Profesional
Documentos de Cultura
INFORMACIÓN
MODULO III:
SEGURIDAD DE APLICACIONES Y SISTEMAS OPERATIVOS
AGENDA DE HOY
ACTIVIDAD
• CUAL PROCESO SE UTILIZA? CASCADA VS AGILE
• PERMITE IDENTIFICAR A LOS ACTORES
• CONTROLES AUTOMÁTICOS VS MANUALES
• EL PROCESO Y LA SEGURIDAD
• REQUISITOS
• IDENTIFICAR LOS DATOS INVOLUCRADOS
• DISEÑO
• ARQUITECTURA DE INFRAESTRUCTURA Y DE APLICATIVO
• CIFRADO DE TRANSPORTE Y DE DATOS
• VERSIONES DE SOFTWARE A UTILIZAR
• DESARROLLO
• EDUCAR A LOS DESARROLLADORES
• PENTESTING (MANUAL O AUTOMATIZADO)
• TESTING
• UTILIZAR DATA TOKENIZADA (NO PRODUCTIVA)
• DESPLIEGUE
• REQUISITOS DE LA GESTIÓN DE CAMBIOS (PENTESTING, EH, OTROS)
Algunos proyectos:
Proyecto Top Ten
Proyecto Defectdojo
Proyecto ZAP
Proyecto Cheat Sheet Series
Proyecto Web Security Testing Guide (WSTG)
Proyecto OWTF
Ver https://owasp.org/projects/
OWASP :: FOUNDATION
Proyecto OWASP TOP10
Continuamente identifica los vectores de ataques más recurrentes,
siendo un semáforo para la industria donde poner los esfuerzos
(OWASP TOP10 2017)
Php: $query = “select * from alumnos where nombre =“.$_GET[“IDN”].”’”; John the Ripper:
Prevención Prevención
Usar POST en vez de GET Proteger archivos de password (ie: /etc/shadow)
Normalizar las entradas: Utilizar cifrado fuerte (AES256 o superior)
$stmt=$conn.prepare(“select * from alumnos where nombre = ‘?’”); Poner expiración a cookies de session (15min)
$stmt=bind_param(‘s’, $_GET[“IDN”]);
Cifrar transporte (TLS 1.2 o superior)
Prevención Prevención
Cifrar/tokenizar datos almacenados (AES256, FPE) Actualizador librerías procesadoras de XML
Cifrar datos en transporte (SCP, TLS 1.2) Utilizar SAST para detectar posible XXE
Si no se guarda, no se puede exponer Validar y/o normalizar XMLs o utilizar whitelisting para fuentes
WAF/Virtual Patching
Prevención Prevención
Aplicar regla-0 (Zero Trust) Definir y aplicar hardening o líneas base, actualizarlas
regularmente
Asignar permisos basados en roles
Diseñar con Defense-in-Depth
Mantener permisos roles monitoreados
Revisar regularmente las reglas de firewall
Mantener usuario asignados a roles monitoreados y su actividad
Utilizas Security Headers (Content-Security-Policy, X-XSS-
Poner expiración a cookies de sesión (15min) Protection, X-Frame-Options, Strict-Transport-Security). Ver
OWASP Security Headers
https://www.youtube.com/watch?v=QQxBukCSW8E
Prevención Prevención
Usar frameworks de desarrollo que escapan XSS por diseño (Ruby
Realizar deserialización en ambientes con mínimo privilegio
on Rails, React JS, otros)
(Docker, Kubernetes)
Utilizar Content-Security-Policy (CSP) y X-XSS-Protection
Implementar firma criptográficas en la deserialización
WAF (CloudFlare, ModProbe Security, Akamai)
Utilizar fuentes en formatos JSON o YAML y no en formato
Ver OWASP Cheat Sheet XSS binario
Prevención Prevención
Mantener un inventario actualizado de las versiones de software Tener un monitoreo higienico (actividad de usuarios y puntos
utilizadas de la red)
Utilizar librerías, frameworks y programas de fuentes oficiales Proteger los logs de auditoría
OPC
Entrega directrices que todo proyecto de desarrollo de software debería seguir
https://owasp.org/www-project-proactive-controls/
https://owasp.org/www-project-application-security-verification-standard/
https://cheatsheetseries.owasp.org/
REFERENCIAS
• 9 Best DevSecOps Tools To Integrate Throughout The DevOps Pipeline:
https://www.whitesourcesoftware.com/resources/blog/devsecops-
tools/#Codacy
• Desarrollo Seguro: https://www.youtube.com/watch?v=oi6p7UjMjAM
REFERENCIAS