29 May
Introducción
En esta unidad se resalta la importancia del empleo de técnicas de inteligencia basadas en fuentes abiertas (OSINT) para el desarrollo seguro de las aplicaciones.
Diversas organizaciones elaboran clasificaciones para los diferentes tipos de vulnerabilidades que se pueden encontrar en aplicaciones informáticas.
Vulnerabilidades Populares
Entre las vulnerabilidades más populares se encuentran: Inyección SQL, secuencia de comandos en sitios cruzados (XSS), falsificación de peticiones en sitios cruzados (CSRF) o el empleo de algoritmos de cifrado débiles.
Entre las clasificaciones de vulnerabilidades, actualmente destacan las publicadas por organizaciones como OWASP o la Corporación MITRE.
OWASP (Open Web Application Security Project)
- Organización sin ánimo de lucro fundada en 2004, cuyo propósito es “ser la comunidad más próspera que impulse la visión y la evolución de la seguridad y protección en el software mundial”.
- Realiza periódicamente la clasificación de los riesgos de seguridad más críticos para las aplicaciones web y móviles. Estos documentos son conocidos como OWASP Top 10.
- El principal objetivo del estándar de verificación de seguridad ASVS de OWASP es proporcionar una guía normalizada para el desarrollo y mantenimiento de aplicaciones web y móviles, que sirva de ayuda para establecer y verificar los requisitos de seguridad que estas deben cumplir.
Fuentes Abiertas (OSINT)
Las técnicas y herramientas más utilizadas para obtener información OSINT son:
Buscadores Habituales
Rastrean continuamente Internet, obteniendo e indexando prácticamente todo lo que se encuentra abierto.
- Google Hacking: Es la técnica para obtener información sensible publicada.
- Google Dork: Son expresiones que utilizan operadores autorizados para encontrar información interesante.
Buscadores Especializados
- Shodan: Permite realizar búsquedas de recursos, como cámaras web, sistemas SCADA, etc.
- NameCHK: Comprueba si un usuario existe en más de 150 plataformas web.
Buscadores de Personas
- Destaca Spokeo.
Herramientas de Extracción de Metadatos
- Metagoofil: Permite la extracción de metadatos de documentos públicos.
- Exiftool: Similar a la anterior, permite también la modificación de metadatos.
APIs REST de Redes Sociales
- Maltego: Software especializado en analizar las relaciones entre entidades (personas, dominios, etc.).
- Recon-ng: Permite añadir módulos con diferentes motores de búsqueda.
- TheHarvester
- SearchCode: Permite buscar código fuente público en repositorios.
OSINT Framework
- Colección de recursos de fuentes abiertas, clasificados en función de su tipología.
¿Qué son los Metadatos?
Datos que describen otros datos.
Protección frente a Técnicas OSINT
- Eliminar los metadatos de forma automática al subirlos al servidor.
- Realizar búsquedas de correos electrónicos expuestos en Internet del dominio de la organización.
- Exponer al público solo las carpetas y archivos necesarios.
- Utilizar las herramientas OSINT para identificar información expuesta.
- Revisar la configuración de privacidad de las redes sociales.
- Comprobar de forma exhaustiva todas las APIs.
Proyectos Clave de la Fundación OWASP
OWASP Top 10 Web Application Security Risks
Listado de los 10 riesgos de seguridad más importantes y comunes en el desarrollo web.
OWASP Top 10 Mobile Security Risks
Listado similar al anterior, pero enfocado en riesgos de seguridad para aplicaciones móviles.
OWASP Dependency-Track
Plataforma para el análisis inteligente de componentes de software, que permite minimizar el riesgo de vulnerabilidades.
OWASP Juice Shop
Aplicación web deliberadamente vulnerable, diseñada para el aprendizaje y la práctica de pruebas de seguridad. Basada en Node.js.
OWASP Mobile Security Testing Guide (MSTG)
Recurso exhaustivo para el desarrollo y las pruebas de seguridad en aplicaciones móviles.
OWASP Web Security Testing Guide (WSTG)
Recurso completo para probar la seguridad de las aplicaciones y los servicios web.
Requisitos de Verificación y Niveles de Seguridad
No todo el software debe cumplir con los requisitos de seguridad con el mismo nivel o grado de exigencia.
El proyecto ASVS de OWASP proporciona una lista de requerimientos de seguridad o pruebas para determinar el grado de seguridad. Sus dos objetivos principales son:
- Ayudar a las organizaciones en el desarrollo y mantenimiento de aplicaciones seguras.
- Permitir la alineación entre las necesidades y ofertas de los servicios de seguridad.
Objetivos de los Requisitos ASVS
- Usarlos como métrica de seguridad.
- Utilizarlos como referencia para el desarrollo seguro.
- Emplearlos durante el proceso de adquisición de software.
Niveles de Verificación ASVS de OWASP
OWASP define tres niveles principales de verificación en ASVS:
ASVS Nivel 0 – Superficial
No forma parte del estándar oficial. Permite a cada organización definir sus propios requisitos mínimos de seguridad para una aplicación, pudiendo saltarse directamente al Nivel 1.
ASVS Nivel 1 – Oportunista
Diseñado para todo tipo de software, sin necesidad de acceso al código fuente. Se enfoca en verificar vulnerabilidades comunes, como las listadas en el OWASP Top 10. Es adecuado para aplicaciones con bajo riesgo de seguridad.
ASVS Nivel 2 – Estándar
Dirigido a aplicaciones que manejan datos sensibles y requieren cumplir requisitos de seguridad más estrictos. Exige una evaluación más profunda, incluyendo un análisis técnico y el uso de herramientas avanzadas.
ASVS Nivel 3 – Avanzado
Destinado a sistemas críticos que manejan datos altamente confidenciales o funciones vitales. Exige un análisis exhaustivo, modularidad en la arquitectura, alta resiliencia y documentación detallada.
OWASP Mobile Security Testing Guide (MSTG)
Este recurso define y detalla las pruebas de seguridad para aplicaciones móviles. Describe un conjunto de requerimientos y pruebas exhaustivas, agrupadas por tipo, como:
- Áreas de almacenamiento privado.
- Almacenamiento local de datos.
- Comunicación con servicios externos (APIs, servicios web).
- Autenticación y autorización.
- Interacción con el sistema operativo.
- Calidad del código.
- Técnicas para evitar la manipulación e ingeniería inversa del código.
Principales Ataques Cubiertos
- Sniffing y Man-in-the-Middle (MITM).
Deja un comentario