Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Clase 1
Disclaimer
Todo el contenido de esta presentación es únicamente con fines didácticos y
educativos. El uso indebido de las técnicas y/o conocimientos utilizadas en
esta presentación puede ir en contra de las leyes nacionales e
internacionales. El autor no se hace responsable por el uso del conocimiento
contenido en la siguiente presentación. La información contenida debe ser
utilizada únicamente para fines éticos y con la debida autorización.
Qué es una vulnerabilidad?
Fallo o debilidad en el diseño, la implementación, la operación o
la gestión de un sistema, que puede ser explotado con el fin de
violar la política de seguridad del sistema.
Ejemplos de vulnerabilidades:
• Error en el código de un software
• Control ineficiente en un proceso
• Error de configuración de un equipo
• Mal diseño de un protocolo de comunicación
EXPLOTACIÓN DE VULNERABILIDADES
El atacante aprovecha una falla de seguridad de un sistema para realizar alguna
acción que genere una respuesta imprevista.
● Puede ser una vulnerabilidad:
○ Local
○ Remota
● Puede ser utilizada para:
○ Punto de entrada a un sistema
○ Escalación de privilegios en un sistema
○ Movimiento lateral entre sistemas
Relación entre vulnerabilidad y riesgo
Exploits:
● Exploit-DB
● Injector Database
● Rapid7 DB (Metasploit)
● Markets en la Deep Web
Tipos de Vulnerabilidades
Vulnerabilidades por categoría
● Vulnerabilidades de bajo nivel: relacionados al sistema operativo y aplicaciones a bajo nivel,
se deben generalmente a errores en la programación. Interactúan directamente con el
contenido en memoria.
● Vulnerabilidades de red: afectan a software y componentes de red o interconexión de redes
(locales o Internet). Se deben a problemas en protocolos de red y/o vulnerabilidades
derivadas del análisis de tráfico (capa 1, 2, 3, 4).
● Vulnerabilidades de alto nivel: relacionadas a las aplicaciones de alto nivel, se deben
generalmente a errores de programación, implementación y/o configuración de aplicaciones.
No interactúan directamente con la memoria y son independientes de la arquitectura de SO.
o Vulnerabilidades de aplicaciones web
o Vulnerabilidades en aplicaciones móviles
CVE vs CWE
● CWE: Common Weakness Enumeration: Es una entrada en la base de datos
correspondiente a una debilidad y no está relacionado con un producto o sistema.
https://cwe.mitre.org/documents/glossary/index.html
https://cwe.mitre.org/data/definitions/1000.html
Vulnerabilidades de Bajo nivel
• Buffer overflow
o Stack BoF
o Heap BoF
• Integer overflow
• Format String
• Use after free
• Out-of-bound read
VULNERABILIDADES EN APLICACIONES WEB
• Cross Site Scripting (XSS) • Remote File Inclusion (RFI)
• Cross Site Request Forgery (CSRF) • Local File Inclusion (LFI)
• Inyección SQL (SQLi) • Subida arbitraria de archivos
• Inyección LDAP • Path Traversal
• Inyección XML
• Ejecución remota de código (RCE)
• Inyección de comandos
VULNERABILIDADES DE PROTOCOLOS DE RED
• Falta de autenticación (src/dst)
• Baja entropía en nros. de secuencia
• Envío de datos en texto plano
• …