cd ~/blog

~/vulns/cookie-tampering.md

Cookie Tampering

webautor: Jordy Pérez Osorio aviso legal
webCookie-Tampering

~2 min de lectura


1. Descripción técnica

Cookie Tampering aparece cuando una aplicación confía en un valor de estado enviado por el cliente sin comprobar su integridad ni contrastarlo con estado del servidor. El navegador permite modificar las cookies; por tanto, autorización, puntuaciones, precios o roles no deben aceptarse como verdaderos sólo porque regresan con una solicitud.

A cookie visible no implica una vulnerabilidad. El fallo se confirma cuando modificar su contenido cambia una decisión sensible sin una validación independiente.

2. Impacto y condiciones

El impacto depende de la decisión asociada: puede alterar lógica de negocio, acceder a funciones, suplantar atributos o evadir controles. Se necesita una cookie controlable y una ruta del servidor que consuma su valor como autoridad.

3. Validación y detección

Se compara una solicitud legítima con otra que cambia sólo la cookie y se observa la decisión del servidor. Es importante distinguir integridad de confidencialidad: cifrar puede ocultar un valor, mientras una firma o MAC permite detectar modificaciones. En logs, valores fuera de rango y transiciones imposibles pueden indicar manipulación.

4. Explotación documentada en los writeups

4.1 150-banner

/api/submit utilizaba directamente user_score como puntuación inicial. Al enviar user_score=1000, el servidor sumó la respuesta correcta y liberó la flag sin verificar el valor contra una sesión firmada o un registro interno.

5. Mitigación

  • Mantener el estado sensible en el servidor y entregar al cliente sólo un identificador opaco.
  • Si el cliente debe transportar estado, aplicar autenticidad criptográfica y validar expiración, contexto y formato antes de usarlo.
  • Recalcular en el servidor las decisiones de autorización y lógica de negocio.
  • Registrar y rechazar valores imposibles o relaciones incoherentes entre cookies.

6. Clasificación

CampoValor
SuperficieAplicación web
Entrada controladaCookie enviada por el cliente
DebilidadFalta de validación de integridad o estado
ImpactoAlteración de lógica de negocio o control de acceso

7. Referencias y conexiones

// relacionados