Evaluación de seguridad de aplicaciones web: herramientas y metodologías (OWASP, SAST, DAST)

La evaluación sistemática de seguridad en aplicaciones web es ahora mandatoria bajo ley chilena (21.663, 21.719) además de ser best practice global. Las vulnerabilidades en aplicaciones web son el vector de ataque primario para 65% de brechas de datos en 2025.

1. OWASP Top 10 2025: Las Vulnerabilidades Críticas Que Debes Priorizar

OWASP publica cada 4 años la lista de vulnerabilidades más críticas. La versión 2025 (actualizada septiembre 2025) reemplaza la 2021.

Las 10 Vulnerabilidades (Ranking 2025)

1. Broken Access Control (A01): 34.4% de aplicaciones afectadas. Usuarios no autenticados o con privilegios insuficientes acceden a funciones o datos. Ejemplo: Cliente ve datos de otro cliente cambiando parámetro (user_id=123 → user_id=456).

2. Cryptographic Failures (A02): Datos sensibles expuestos por criptografía débil. Incluye contraseñas en plaintext, hashing débil (MD5), HTTPS faltante, claves hardcoded.

3. Injection (A03): SQL injection, command injection, XSS (cross-site scripting). Atacante inserta código malicioso en campos de input no validados. SQL Injection ejemplo: ' OR '1'='1' bypasa autenticación.

4. Insecure Design (A04): Vulnerabilidades en fase de diseño, no implementación. Missing threat modeling, sin rate limiting (permite brute force), funcionalidad innecesariamente compleja.

5. Security Misconfiguration (A05): Configuración por defecto insegura. Directory listing habilitado, debugging activo en producción, default credentials (admin/admin), missing security headers.

6. Vulnerable and Outdated Components (A06): Librerías con vulnerabilidades conocidas. Usar jQuery 1.6 con CVE-2011-4969 expone a XSS. 70%+ de aplicaciones tienen componentes vulnerables.

7. Identification and Authentication Failures (A07): Credenciales débiles, session management inseguro, MFA faltante. Sessions no expiran, passwords predecibles.

8. Software and Data Integrity Failures (A08): Actualizaciones de software sin validación. Plugins sin signature verification, dependencies sin SBOM, insecure CI/CD.

9. Security Logging and Monitoring Failures (A09): Insuficiente logging. No registrar failed logins, cambios sensibles, sin alertas de anomalías. Impacta forensics post-brecha.

10. Server-Side Request Forgery (SSRF) (A10): Servidor realiza requests HTTP a URLs sin validar. Atacante proporciona http://localhost:8080/admin para acceder a servicios internos.


2. OWASP API Top 10 2023: Vulnerabilidades Específicas de APIs

APIs son cada vez más comunes y atacadas. OWASP mantiene lista separada.

Top 5 API Vulnerabilities:

  1. BOLA (Broken Object Level Authorization): Atacante accede a objetos de otros usuarios (user 123 ve datos de user 456)
  2. Broken Authentication: Falta de protección en endpoints de autenticación
  3. Broken Object Property Level Authorization: Acceso a propiedades sensibles de objetos
  4. Unrestricted Resource Consumption: DoS attacks, costos cloud masivos
  5. Broken Function Level Authorization: Escalada de privilegios

3. SAST vs DAST: Dos Enfoques Complementarios Que Debes Usar

SAST (Static Application Security Testing)

Definición: Analiza código fuente sin ejecutarlo (white-box testing). Busca patrones de código inseguro.

Características clave:

  • Revisa línea por línea del código fuente
  • Identifica vulnerabilidades temprano (antes de deployment)
  • Integra directamente en IDE y CI/CD pipeline
  • Language-specific (cada herramienta soporta ciertos lenguajes)

Ventajas:

  • Shift-left: Detectar vulnerabilidades cuando son 10x más baratas de arreglar
  • Resultados en pull requests (developers no olvidan)
  • Full code coverage posible (teóricamente)
  • Developer-friendly (feedback en su workflow)

Desventajas:

  • Muchos false positives (reporta “vulnerabilidades” que no lo son)
  • No detecta vulnerabilidades runtime (misconfigurations, auth flaws)
  • Lento en repositorios grandes
  • Requiere acceso al código fuente

Top SAST Tools 2025 (Comparativa):

ToolLenguajesPrecioBest For
SonarQube25+ (Java, Python, C#, etc.)Free (Community) – $150+/dev/yrCode quality + security, built-in
Checkmarx One25+Enterprise (quote-based)Large orgs, compliance-heavy, custom rules
Fortify (OpenText)30+Starts ~$25K/yrFinance, healthcare (regulated industries)
Semgrep15+Free – $2400/yr (Team)Developer-friendly, rule-based, fast
Snyk Code9+Free (basic) – $50/mo/devModern dev teams, AI-assisted, supply chain

Herramientas Open Source:

  • SonarQube Community (Free, open-source)
  • Semgrep (Free, SAST rules)
  • OWASP Dependency-Check (Free, SCA for dependencies)

DAST (Dynamic Application Security Testing)

Definición: Prueba aplicación en ejecución sin acceso a código fuente (black-box testing). Simula ataques reales.

Características clave:

  • Simula como un atacante externo interactuaría
  • Testea aplicación running (staging o QA)
  • Technology-agnostic (funciona con cualquier framework/lenguaje)
  • Prueba comportamiento runtime (misconfigurations, auth, API endpoints)

Ventajas:

  • Detecta vulnerabilities runtime que SAST no ve (XSS, auth flaws, misconfigurations)
  • Technology-agnostic (no importa si es Java, Python, C#, Node)
  • Simula ataque real (como lo hace un hacker)
  • No necesita acceso a código fuente

Desventajas:

  • Late detection (típicamente después de deployment a QA)
  • Muchos false positives (requiere manual review)
  • Lento (scan de app grande = horas)
  • Requiere aplicación ejecutándose (no funciona en desarrollo)

Top DAST Tools 2025 (Comparativa):

ToolTipoPrecioBest For
OWASP ZAPOpen-sourceFreeTeams con presupuesto limitado, flexibility
Burp SuiteCommercialCustom quoteProfessional pentesters, advanced manual testing
Acunetix (Invicti)CommercialEnterprise pricingAccuracy focus (AcuSensor reduces false positives)
StackHawkCloud SaaS$50/app/moCI/CD first, API focus, developers
Aikido SecurityCloud SaaSFree tier + paidStartups, all-in-one DevSecOps

Herramientas Open Source:

  • OWASP ZAP (Free, fully featured DAST)
  • w3af (Free, open-source, flexible)
  • SQLMap (Free, SQL injection focused)

Cuándo Usar SAST vs DAST

FaseHerramientaPropósito
Development (developer pushing code)SASTCatch issues early, feedback in PR
CI/CD (before merge)SAST + SCACode quality gate, dependency check
QA/Staging (after deployment)DASTTest running app, discover runtime issues
Pre-productionManual penetration testDeep security assessment, business logic
ProductionDAST + WAF monitoringContinuous scanning, real-world threats

4. Container & Dependency Security: SBOM y SCA

Contexto: 80% de aplicaciones modernas tienen vulnerable dependencies. Vulnerabilidades en librerías open-source son cada vez más explotadas.

SBOM (Software Bill of Materials)

SBOM es lista de todos los componentes de software en una aplicación. Herramientas generan en estándares como CycloneDX o SPDX.

Beneficios:

  • Transparencia total de qué software hay instalado
  • Rápidamente identificar impact de CVE nueva
  • Compliance requirement (NIST, CISA, algunos reglamentos)
  • Supply chain security

Herramientas para generar SBOM:

  • Trivy (Free, open-source, rápido)
  • Syft (Free, accurate)
  • CycloneDX tools (Free)

Ejemplo Trivy:

trivy image --format cyclonedx -o sbom.json nginx:latest
# Output: JSON con todos los packages y versiones

SCA (Software Composition Analysis)

SCA tools escanean SBOM contra vulnerability databases para encontrar librerías vulnerable.

Top SCA Tools:

  • Snyk (SaaS, integrations, free tier)
  • OWASP Dependency-Check (Free, open-source)
  • WhiteSource (JFrog) (Enterprise SBOM management)

5. Shift-Left Security: Integración en CI/CD Pipeline

Shift-Left = mover security testing lo más temprano posible en desarrollo

Pipeline Tradicional (Riesgoso):

Code written → Build → Unit Tests → Deploy to Staging → Deploy to Production
(sin security tests) (vulnerabilidades descubiertas acá = muy tarde)

Pipeline Shift-Left (Seguro):

Code written → SAST (IDE) → Push → Build → DAST (CI/CD) → Deploy
↓ ↓ ↓ ↓ ↓
Developer GitHub Build Staging Production
Real-time Checks Gate Gate Verified
Feedback Block if Security

Herramientas para Integración:

  • GitHub Actions (Free, built-in, 2000 min/mo free)
  • GitLab CI (Free community, built-in scanning)
  • Jenkins (Free, open-source, extensive plugins)

Presupuesto Realista (Empresa Mediana, 18 meses):

ComponenteAño 1Año 2Total
SAST Tool License$30K$15K$45K
DAST Tool License$40K$20K$60K
Penetration Testing$50K$25K$75K
Personnel (1 AppSec Engineer)$60K$60K$90K
Training + Tools$10K$5K$15K
CI/CD Setup$20K$20K
TOTAL$210K$125K$305K

Para presupuesto limitado, stack gratis recomendado:

  • SAST: SonarQube Community
  • SCA: OWASP Dependency-Check
  • DAST: OWASP ZAP
  • CI/CD: GitHub Actions o GitLab CI
  • Total cost: $0 (solo infraestructura)

6. Penetration Testing Metodología

Complementar herramientas automatizadas con penetration testing manual para identificar vulnerabilidades de lógica de negocio que automatización no ve.

Fases Estándar (OWASP Testing Guide):

  1. Reconnaissance: Gather información pública (DNS, whois, social media)
  2. Mapping: Identificar endpoints, formularios, workflows
  3. Vulnerability Assessment: Usar SAST/DAST para identificar issues
  4. Exploitation: Intentar explotar vulnerabilidades encontradas
  5. Post-Exploitation: Qué damage si vulnerability es explotada
  6. Reporting: Documentar hallazgos, severity, remediation

Providers de Penetration Testing en Chile:

  • Assertiva Security
  • NLT SECURE
  • NIVEL4
  • Seguricom
  • Typical cost: $5K-20K por aplicación crítica

7. Contexto Latinoamericano: Amenazas y Tendencias

Datos de amenazas regional (H1 2025):

  • Organizaciones en LATAM experimentan 39% más ataques semanal que promedio global (2,716 vs 1,955)
  • Información disclosure es exploit #1 (75% de organizaciones impactadas)
  • Email es vector #1 (62% de malware delivery)
  • Application Security Market en LATAM: $1.55 billones USD en 2025, crecimiento 17.4% anual
  • Web Application Penetration Testing Market: $4.5 billones en 2025 (proyectado $14B by 2033)

Top ransomware groups atacando LATAM: CL0P, LockBit, Mispadu, Blind Eagle, Horabot

Esto significa: Invertir en aplicación security no es opcional—es defensivo contra amenazas que están atacando LATAM ahora.


8. Checklist de Implementación Rápida

Semana 1 (Hoy):

  •  Seleccionar SAST tool (SonarQube si presupuesto limitado)
  •  Inventariar aplicaciones web críticas
  •  Definir OWASP Top 10 vulnerabilities a testear

Mes 1:

  •  Deploy SAST en CI/CD
  •  Escanear base de código histórica
  •  Triaging inicial de findings

Mes 2-3:

  •  Integrar SCA (Dependency-Check o Snyk)
  •  Deploy DAST (ZAP o similar)
  •  API security assessment

Mes 4+:

  •  Penetration testing en aplicaciones críticas
  •  Continuous DAST en staging
  •  Compliance reporting (OWASP ASVS)

La evaluación sistemática de seguridad es la diferencia entre encontrar vulnerabilidades antes que atacantes vs después que ya causaron daño.