Saltar al contenido
Lectura13 minPreview

Qué es A02 y por qué ocurre

Antes de revisar código conviene tener claro de qué se habla. En esta lección verá qué es la categoría A02 del OWASP Top 10, de dónde viene, por qué importa y los conceptos que el curso usará en cada lección.

Qué es A02

La criptografía es el conjunto de técnicas matemáticas que protegen la información para que solo la lean quienes deben (confidencialidad) y para detectar si alguien la alteró (integridad). Usted la usa todos los días sin verla: el candado del navegador, la app del banco o el mensaje de WhatsApp dependen de ella.

Una aplicación cae en A02 cuando protege mal la confidencialidad o la integridad de los datos por un problema criptográfico: datos que viajan en claro, algoritmos obsoletos (MD5, SHA-1, DES, RC4, modo ECB), contraseñas en texto plano o con un hash rápido sin sal, llaves escritas en el código o nunca rotadas, tokens generados con un generador predecible, y certificados o firmas que no se validan.

Breve historia y contexto

OWASP (Open Worldwide Application Security Project, antes Open Web Application Security Project) es una comunidad abierta nacida en 2001 y hoy una fundación sin fines de lucro. Publicó su primer Top 10 en 2003 y lo actualiza cada pocos años con datos de pruebas reales. En la edición 2017 esta categoría se llamaba A3: exposición de datos sensibles. En 2021 subió al segundo lugar y cambió de nombre a A02: fallas criptográficas: la exposición es el síntoma y la causa raíz es una decisión criptográfica equivocada o ausente. En la edición 2025 la categoría pasó al cuarto lugar (A04:2025); este curso usa la numeración 2021, que es la que todavía citan muchos reportes y herramientas.

Algunos hitos ayudan a entender por qué hay tanto código con algoritmos viejos:

AñoHito
1977DES se publica como estándar de cifrado en Estados Unidos
1992Se publica MD5 (RFC 1321)
1995Se publica SHA-1
1999Aparece bcrypt para guardar contraseñas
2001AES reemplaza a DES como estándar (FIPS 197)
2004Se demuestran colisiones prácticas en MD5
2015Argon2 gana la competencia de hashing de contraseñas
2017Se publica la primera colisión práctica de SHA-1 (SHAttered)
2018Se publica TLS 1.3 (RFC 8446)
2021TLS 1.0 y 1.1 se declaran obsoletos (RFC 8996)

Lo aceptable en 2005 hoy es un hallazgo, pero el código no se actualiza solo.

Por qué importa en ciberseguridad y en el trabajo

La criptografía falla en silencio. Un MD5 funciona perfectamente: el registro guarda, el inicio de sesión compara y las pruebas pasan. Nadie se entera hasta que la base se filtra y alguien recupera miles de contraseñas en una tarde.

Quienes trabajan con A02 a diario:

  • Desarrollo: elige librerías y parámetros correctos desde el primer commit.
  • Seguridad de aplicaciones (AppSec): revisa código y diseños, y define la lista de algoritmos aprobados.
  • Operaciones y SOC: vigila certificados, versiones de TLS, secretos filtrados y errores de descifrado.
  • Auditoría y cumplimiento: comprueba que existan "medidas de seguridad adecuadas", como exige la Ley 8968.

Si estas fallas no se dominan, una filtración pequeña se vuelve un incidente grande: contraseñas reutilizadas en otros servicios, cédulas expuestas y obligaciones legales de notificación. Las causas más frecuentes son código heredado, fragmentos copiados de foros antiguos, creer que Base64 "cifra", no haber clasificado los datos y la criptografía hecha a mano.

Dónde aparece

LugarQué se protegeFalla típica
Formularios web y APIsDatos en tránsitoHTTP sin TLS o sin HSTS
Base de datos de usuariosContraseñasMD5 o SHA-256 sin sal
Columnas con datos personalesCédula, teléfonoTexto plano o Base64
Código y repositoriosLlaves y tokensSecretos escritos en el código
Sesiones y enlaces de recuperaciónTokensGenerador predecible
Respaldos y registrosCopias de todo lo anteriorSin cifrar o con contraseñas dentro

Conceptos clave

ConceptoQué significa
Texto planoEl dato original, legible por cualquiera
CodificaciónCambio de formato reversible por cualquiera, sin llave (Base64, hex). No protege
HashResumen de tamaño fijo que no se puede revertir; sirve para integridad y, si es lento y con sal, para contraseñas
SalValor aleatorio único por usuario que se mezcla con la contraseña antes del hash
CifradoTransformación reversible solo con la llave; protege lo que se debe recuperar
LlaveEl secreto que permite cifrar y descifrar; su protección es tan importante como el algoritmo
EntropíaCantidad de imprevisibilidad de un valor; poca entropía vuelve adivinable un token
TLSProtocolo que cifra y autentica la conexión entre cliente y servidor (el candado de HTTPS)
CWECatálogo público de tipos de debilidad; cada falla del curso lleva su número

Codificación, hash y cifrado son las tres operaciones que más se confunden: solo el cifrado protege un dato que se debe recuperar. Si ve un campo "cifrado" que en realidad es Base64, ya encontró un hallazgo de A02.

CWEs principales

OWASP asocia 29 debilidades CWE a esta categoría y destaca tres: CWE-259 (contraseña escrita en el código), CWE-327 (algoritmo roto o riesgoso) y CWE-331 (entropía insuficiente). Otras, como CWE-319 (datos en claro), CWE-328 (hash débil) o CWE-916 (hash de contraseña con esfuerzo insuficiente), aparecerán en cada lección junto al error que describen.