Auditoría SW

Modalidades de Auditoría al Software

Tipos de Auditoría de Software

La auditoría de software se puede enfocar desde múltiples perspectivas según los objetivos, alcance y metodologías empleadas. Cada modalidad ofrece insights específicos y complementarios para una evaluación integral.

1. Auditoría al Código Fuente (SAST)

La auditoría al código fuente examina el código escrito por desarrolladores para identificar problemas de calidad, seguridad, mantenibilidad y cumplimiento de estándares.

Objetivos Principales:

  • Detectar vulnerabilidades de seguridad (SQL injection, XSS, CSRF)
  • Identificar anti-patrones y code smells
  • Verificar cumplimiento de estándares de codificación
  • Evaluar complejidad ciclomática y acoplamiento
  • Detectar código duplicado o redundante

Técnicas Principales

Análisis Estático (SAST)

Examina código sin ejecutarlo. Herramientas: SonarQube, Fortify, Checkmarx

Revisión Manual

Peer review por expertos para lógica compleja

Análisis de Composición (SCA)

Audita dependencias y librerías de terceros

80%+ Cobertura objetivo
<10 Complejidad ciclomática

2. Auditoría al Código Binario

Examina software compilado o ejecutables cuando el código fuente no está disponible o se requiere validar la integridad del proceso de compilación.

Casos de Uso:

  • Software de terceros sin código fuente
  • Verificación de supply chain attacks
  • Análisis de malware potencial
  • Validación de procesos de build

Técnicas:

  • Ingeniería inversa
  • Análisis dinámico
  • Fuzzing
  • Análisis forense
Herramientas Especializadas
Análisis: Radare2, Binary Ninja, IDA Pro
Sandboxes: Cuckoo, Any.run
Fuzzers: AFL, LibFuzzer

3. Auditoría al Rendimiento

Evalúa la capacidad del software para operar eficientemente bajo diferentes condiciones de carga, recursos y escenarios operacionales.

Dimensiones Evaluadas

Tiempo de respuesta

Latencia de operaciones críticas

Throughput

Transacciones por segundo (TPS)

Utilización de recursos

CPU, memoria, I/O, red

Escalabilidad

Capacidad de crecimiento

Tipos de Pruebas

Pruebas de Carga

Simular carga esperada normal y pico

Pruebas de Estrés

Llevar el sistema más allá de límites

Pruebas de Resistencia

Operación prolongada bajo carga (soak testing)

Pruebas de Pico

Aumentos súbitos de carga

Métricas Clave de Rendimiento

<200ms
P95 Latency objetivo
99.9%
Availability target
<0.1%
Error rate objetivo
0.85+
Apdex Score

4. Auditoría a las Seguridades

Evaluación integral de controles de seguridad implementados para proteger confidencialidad, integridad y disponibilidad de información.

Autenticación y Autorización

  • • Mecanismos MFA, SSO, OAuth2
  • • Control de acceso basado en roles (RBAC)
  • • Gestión de sesiones y tokens
  • • Políticas de contraseñas

Seguridad de Datos

  • • Encriptación en reposo (AES-256)
  • • Encriptación en tránsito (TLS 1.3)
  • • Tokenización y enmascaramiento
  • • Gestión de claves criptográficas

Seguridad de Aplicación

  • • Validación de inputs
  • • Protección contra inyecciones
  • • Protección CSRF y XSS
  • • Manejo seguro de errores

Seguridad de Infraestructura

  • • Hardening de servidores
  • • Segmentación de red
  • • Firewalls de aplicación web (WAF)
  • • Protección DDoS

Cumplimiento OWASP

Verificación contra los riesgos de seguridad más críticos:

OWASP Top 10 - 2021

A01: Broken Access Control Crítico
A02: Cryptographic Failures Alto
A03: Injection Alto
7 más...

Cumplimiento ARIA

Estándares para aplicaciones web accesibles:

Principios WCAG 2.1

Perceptible
Operable
Comprensible
Robusto
Niveles de Conformidad
Nivel A Nivel AA Nivel AAA