Introducción
Como proyecto final para obtener mi título de Ingeniería de Sistemas, realicé una evaluación exhaustiva mediante pruebas de penetración al sistema web SISGAA de la Universidad Mayor de San Simón. El proyecto aplicó metodologías estándar de la industria bajo OWASP Top 10 y OWASP API Security Top 10 para identificar, analizar y recomendar mitigaciones para vulnerabilidades de seguridad.
Nota: Puedes ver el documento completo de este proyecto en el repositorio institucional de la UMSS.
Antecedentes del Proyecto
El sistema SISGAA (Sistema de Gestión Académica y Administrativa) es una aplicación web crítica utilizada por el Departamento de Informática y Sistemas. Gestiona datos académicos y administrativos sensibles, haciendo que su seguridad sea esencial para proteger tanto la información personal como institucional.
Metodología
Mi enfoque siguió una metodología estructurada para pruebas de penetración:
- Planificación y Definición del Alcance: Establecimiento de límites y objetivos claros para la evaluación de seguridad.
- Recopilación de Información: Recolección de datos sobre la arquitectura del sistema y su base tecnológica.
- Análisis de Vulnerabilidades: Identificación de posibles deficiencias en seguridad.
- Explotación: Verificación de vulnerabilidades mediante pruebas controladas.
- Documentación: Hallazgos y recomendaciones detalladas.
Enfoque Técnico
El proceso de pruebas de penetración incorporó dos marcos complementarios:
Pruebas de Aplicaciones Web (OWASP Top 10)
Realicé pruebas detalladas para vulnerabilidades web comunes, las cuales incluyeron:
- Cross-Site Scripting (XSS)
- Autenticación Rota (Broken Authentication)
- Exposición de Datos Sensibles
- Configuraciones Erróneas de Seguridad
Pruebas de Seguridad en APIs (OWASP API Security Top 10)
Dado que las aplicaciones modernas dependen en gran medida de las APIs, implementé una metodología especializada:
- Descubrimiento: Mapeo de la estructura de la API y sus endpoints.
- Análisis de Endpoints: Examen de patrones en peticiones y respuestas.
- Pruebas de Autenticación: Verificación de mecanismos de ingreso.
- Explotación de Autorizaciones: Pruebas de los límites del control de acceso.
Hallazgos Clave
Mi evaluación reveló varias vulnerabilidades de seguridad en el sistema SISGAA:
- Cross Site Scripting (Reflejado): Permitía la inyección potencial de scripts maliciosos.
- Autorización a Nivel de Objetos Rota: Permitía acceso no autorizado a recursos.
- Autorización a Nivel de Funciones Rota: Habilitaba acceso a funcionalidades no autorizadas.
- Fuga de Documentación en la API: Exponía información delicada de endpoints a través de Swagger.
- Falta de Cabeceras de Seguridad: Ausencia de configuraciones críticas de seguridad para el navegador.
- Librerías JavaScript Vulnerables: Uso de componentes desactualizados con fallas conocidas.
Implementación Técnica
El proyecto utilizó herramientas especializadas de seguridad:
- OWASP ZAP: Para escaneo automatizado de vulnerabilidades.
- Burp Suite: Para interceptar y analizar solicitudes HTTP.
- Scripts Personalizados: Para probar fallas de autorización en la API.
- Herramientas de Desarrollo del Navegador: Para analizar el comportamiento de la aplicación.
Impacto y Mitigación
Para cada vulnerabilidad, proporcioné estrategias detalladas de mitigación:
- Validación de Entradas y Codificación de Salidas: Para prevenir ataques XSS.
- Controles Adecuados de Autorización: Para hacer cumplir el control de acceso.
- Controles de Seguridad de API: Para proteger endpoints sensibles.
- Implementación de Cabeceras de Seguridad: Para potenciar la seguridad del navegador.
- Actualización de Componentes: Para eliminar vulnerabilidades conocidas.
Conclusión
Este proyecto demostró cómo las pruebas de penetración sistemáticas pueden identificar vulnerabilidades de seguridad críticas en aplicaciones web antes de que sean explotadas por actores maliciosos. Los resultados enfatizaron la importancia de incorporar la seguridad a lo largo de todo el ciclo de desarrollo, particularmente en sistemas que manejan información sensible.
Las recomendaciones dadas ayudarán a fortalecer la postura de seguridad del sistema SISGAA, protegiendo tanto a la institución como a sus usuarios de posibles ciberamenazas.
Habilidades Técnicas Demostradas
- Evaluación de seguridad en aplicaciones web
- Pruebas de seguridad de APIs
- Técnicas de explotación de vulnerabilidades
- Documentación y elaboración de reportes de seguridad
- Aplicación práctica de metodologías OWASP